Swiss Active Mechanism based Object- oriented Database System Aktive Datenbanken SS2007 Yves Laske Aktive Datenbanken.

Slides:



Advertisements
Ähnliche Präsentationen
Persistente Domänenmodelle mit JPA 2.0 und Bean Validation
Advertisements

C Sharp (C#) Martin Saternus Senior Student Partner
Algorithmentheorie 08 – Dynamische Programmierung (1)
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Konzepte objektorientierter Systeme
Objektorientierte Datenbanken
Zeitliche Verwaltung XML-basierter Metadaten in digitalen Bibliotheken M. Kalb, G. SpechtUniversität Ulm, Abteilung DBIS.
Unter- und Oberklassen: Beispiel
Vorlesung: Prof. Norbert Fuhr
Einführung in Informationssysteme
Datenbanken I (0,*) Produkt 3 Karczewski Datenbanken I.
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Indirekte Adressierung
Java: Grundlagen der Objektorientierung
Erweiterte Datenmodelle Referentin: Lena Becker HS: Datenbanken vs. Markup Datum:
Objektorientierte Konzepte
Gliederung der Vorlesung Software Engineering WS 2001/2002
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 5 Polymorphismus Sommersemester 2003 Lars Bernard.
Einsatz von XML zur Kontextspeicherung in einem agentenbasierten ubiquitären System Faruk Bagci, Jan Petzold, Wolfgang Trumler und Theo Ungerer Lehrstuhl.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
Software-Engineering
Modellierung der Zugriffslogik auf Datenbanktabellen Software Component Technology for Distributed Applications Andreas Fink.
JAVA RMI.
Access 2000 Datenbanken.
Seminar: Verteilte Datenbanken
1 Reverse Engineering WS 07 / 08 A. Zündorf. Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University 2 Organisatorisches.
Universität Karlsruhe (TH) © 2008 Univ,Karlsruhe, IPD, Prof. LockemannDBI 0 Datenbankimplementierung und -tuning Einführung.
Synchronisation paralleler Transaktionen AIFB SS Konzept der Transaktion 4.2 Konzept der Transaktion (1/4) Eine Transaktion ist ein in sich geschlossener,
Wizards & Builders GmbH Einführung in die objektorientierte Programmierung Norbert Abb.
Einführung und Überblick
Forschungszentrum Informatik, Karlsruhe Objektorientierte Systeme unter der Lupe Markus Bauer Oliver Ciupke.
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
Terminierung in aktiven DBMS Friedrich-Schiller-Universität Jena Institut für Informatik Seminar: Aktive Datenbanken (Siegmundsburg) Leitung: Prof. Dr.
Tino Reindanz - FSU Jena Seminar Aktive Datenbanken – SS 2007 Folie 1 Seminar Aktive Datenbanken Rule Development Rule Development for Active Database.
1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten.
Visualisierung objektrelationaler Datenbanken
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte*
Ham EST Das Schwein Schmatz.. Fressen Beginnen wir.... mit einer Geschichte:
Proseminar Programmiersprachen Python
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Überblick über die Datenbankproblematik
WS 2012/13 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #11 Transaktionsverwaltung.
Innovator Die Komponenten.
Universität Stuttgart Xiaolong Wan Abschlußpräsentation:
Thread Synchronisation in JAVA
Zustandsübergangsdiagramme (1)
Objectives Verstehen was unterDelegate verstanden wird
SOFTWARE TECHNOLOGY 2009/2010 Faculty of Electrical Engineering and Technical Informatics Budapest University of Technology and Economics OO problems 1.
Universität Stuttgart Enforcing Constraints and Triggers for Active Data Services Xiaolong Wan Abschlußpräsentation:
Eike Schallehn, Martin Endig
Chair of Software Engineering Einführung in die Programmierung Prof. Dr. Bertrand Meyer Lektion 18: Mehr über Vererbung und Agenten.
Time and Dates. Telling time To ask: What time it is? Wie spät ist es? Wie viel Uhr ist es?
Persistenz: Objekt-Lebensdauer In RDBMS wird Lebensdauer von Werten durch ihren Typ festgelegt: Instanzen von Relationstypen sind persistent, alle anderen.
RelationentheorieObjektorientierte Datenbanken  AIFB SS Grenzen relationaler Datenbanksysteme (1/2) Eine Reihe von Anwendungsgebieten, insbesondere.
Einführung Dateisystem <-> Datenbanksystem
Motivation Motivation für objektorientierte DBMS (ODBMS): –„Impedance Mismatch“ zwischen relationalem Datenmodell und Programmiersprachen-Datenmodell erfordert.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Modellierung der Wirklichkeit
1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme.
Konfluenz in aktiven DB Vortragsreihe zum Thema „Aktive Datenbanken“ des Lehrstuhls für Datenbanken und Informationssysteme der Friedrich-Schiller-Universität.
Vortrag: OSCAR und die Regelsprache ORCA Seminar: „Aktive Datenbanken“ FSU Jena Lehrstuhl für Datenbanken und Informationssysteme Betreuer:
Distributed Database Systems Parallele Datenbanksysteme von Stefan Schneider.
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Vortrag Einführung in AspectJ. Gliederung 1 Einleitung 2 Querschnittsfunktionalitäten in AspectJ 2.1 Sprachelemente 3 Beispiel 4 Join Point Modell 5 Weaving.
Einführung in AspectJ ● Inhalt: 1)Überblick 2)Elemente des crosscuttings in AspectJ 3)„Hello World“ in AspectJ 4)Wie Aspekte in Java verwoben werden 5)Join.
Implementieren von Klassen
 Präsentation transkript:

Swiss Active Mechanism based Object- oriented Database System Aktive Datenbanken SS2007 Yves Laske Aktive Datenbanken

Fahrplan 1Grundsätzliches 2Ereignisarten 3Regeldefinition 4SAMOS-Architektur 5Kritische Wertung Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske

1 Grundsätzliches Swiss Active Mechanism based Object-oriented Database System 60 Minuten nach Buchung auf dem Waren- eingangskonto, jedoch nur vormittags… Aktive Datenbanken SS2007 Yves Laske

1 Grundsätzliches Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske SAMOS als Prototyp eines aDBS Umfasst eigene Architektur/ Implementierung und Ereignissprache Entwicklung an der Universität Zürich seit 1991, Ende der 90er Jahre abgeschlossen Vertreter: Stella Gatziu, Klaus R. Dittrich Es erfolgte keine Veröffentlichung

1 Grundsätzliches Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske SAMOS auf kommerziellen DBMS ObjectStore auf Läuft auf SUN-Rechnern unter UNIX Objektorientierung in SAMOS: –Aktive Mechanismen mit Obj.-or. Eigenschaften realisiert –Ereignisse und Regeln sind Objekte Ziel: Ausdrucksstarkes Konzept zur Modellierung komplexer Umwelt- situationen

2 Ereignisarten Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske a) Primitive Ereignisse Zeitereignisse Absolute: ,09:30 Wiederkehrende: EVERY [frequency] (YEAR|DAY|HOUR|MINUTE) [interval] EVERY 10 DAY 20: Implizite: Eintritt aufgrund anderer Ereignisse occ_point(event_name) end_execution(rule_name)

2 Ereignisarten Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Methodenereignisse –Objekte kommunizieren durch Nachrichten –Nachrichten lösen Methoden aus –Methoden brauchen Zeitdauer zur Ausführung – BEFORE oder AFTER als Schlüsselwörter (BEFORE|AFTER).(class_name|object_name|*).method_name Klasse Ort, Methode Freie_Zimmer():integer BEFORE.Siegmundsburg.Freie_Zimmer Wertereignisse Operationen auf dem Wert eines Objektes (BEFORE|AFTER).(class_name|object_name).update(attr_name)

2 Ereignisarten Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Transaktionenereignisse Zu Beginn oder Ende der TA (BOT|EOT|ABORT)[transaction_name] Abstrakte Ereignisse Festlegung nicht automatisch erkennbarer Ereignisse DEFINE EVENT Zimmer_Abgebrannt RAISE Zimmer_Abgebrannt

2 Ereignisarten Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske b) Zusammengesetzte Ereignisse Ereigniskonstruktoren Möglichkeit der Ereigniskombination Konjunktion (E1,E2) Beide eingetreten, Reihenfolge beliebig Disjunktion (E1|E2) Eines von beiden Sequenz (E1;E2) Beide in der angegebenen Reihenfolge Negation NOT E Nichteintritt *-Operator *E Signalisierung nur beim ersten Auftritt

2 Ereignisarten Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Historische Ereignisse: Bei Relevanz der Auftrittshäufigkeit TIMES(n,E) TIMES([n1,n2],E)

3 Regeldefinition Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Kommunikationsmedium des Anwenders (Entwicklers) Basiert auf spezieller Syntax zum Beschreiben von Szenarien Umsetzung der ECA-Regeln Zahlreiche Methoden zum Arbeiten mit Ereignissen bereitgestellt z.B. occ_point(event_name),…

3 Regeldefinition Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske DEFINE RULE ON IF DO COUPLING MODE (, ) PRIORITIES (BEFORE | AFTER) I.d.R. wird jedes Ereigniss vorab deklariert: DEFINE EVENT

3 Regeldefinition Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske 60 Minuten nach Buchung auf dem Wareneingangs-konto, jedoch nur vormittags erfolgt Parallelbuchung auf Konto K1 DEFINE EVENT PB Einkauf.Buchung_erfolgt DEFINE RULE R1 ON PB IF if((occ_point(PB)+01:00) < 12:00) DO Einkauf.PB_K1 COUPLING MODE (immediate,deferred)

3 Regeldefinition Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Coupling Mode Wann Bedingungsauswertung bzw. Aktionsausführung beginnen Immediate: direkt nach Ereignisauslösung, nach Bedingungsauswertung Deferred: Am Ende der auslösenden TA, nach Bedingungsauswertung Decoupled: Ausweisung in separate TA COUPLING MODE (, ) coupling1: Wann wird Bedingung ausgeführt? coupling2: Wann wird Aktion ausgeführt?

4 SAMOS-Architektur Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske 3-Schichtenarchitektur Vorteil der Schichtenarchitektur: schnellere Implementierung Schichten: Objektorientiertes DBMS SAMOS-Kern Toolschicht

4 SAMOS-Architektur Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Untere Schicht: DBMS-Ebene als Black-Box DBMS ObjectStore (Object Design) C++-Implementierung Regeldefinitionen sind Instanzen der Klasse rule Speicherung von Regeln und Ereignissen in ObjectStore als Objekt

4 SAMOS-Architektur Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Mittlere Schicht: SAMOS-Kern Funktionale Elemente zur Ereigniserkennung Ausführung zur Laufzeit

4 SAMOS-Architektur Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Obere Schicht: Toolebene a)Vorabtools zur Regeldefinition –Editor/Compiler –Termination Analyzer –Browser b) Laufzeittools –Testing Component (vollst. Testumgebung) –Explanation Component (Visualisierung aktueller Vorgänge)

4 SAMOS-Architektur Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske SAMOS in Hindsight: Experiences in Building an Active Object-Oriented BDMS

5 Kritische Wertung Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske Ereignissprache mächtig, teilw. Zu komplex Beast-Benchmark als Indikator zur Performancesteigerung Event-Detector ist maßgebend für Performance Abhängigkeit vom DBMS problematisch

Literatur Swiss Active Mechanism based Object-oriented Database System Aktive Datenbanken SS2007 Yves Laske S. Gatziu, A. Geppert, K.R. Dittrich. The SAMOS Active DBMS Prototype (Demonstration). Proc. ACM SIGMOD Intl Conf. on Management of Data, San Jose, CA, May S. Gatziu, K.R. Dittrich: Events in an Active Object-Oriented Database System. In N.W. Paton, H.W. Williams (eds): Proc. Workshop on Rules in Database Systems, Edinburgh, UK, September 1993 (Workshops in Computing, Springer-Verlag, 1994). S. Gatziu, K.R. Dittrich: Detecting Composite Events in an Active Database Systems Using Petri Nets. Proc. of the 4th Intl. Workshop on Research Issues in Data Engineering: Active Database Systems, Houston, February K.R. Dittrich, H. Fritschi, S. Gatziu, u.a.: SAMOS in Hindsight: Experiences in Building an Active Object-Oriented DBMS. Database Technology Research Group. Technical Report , Zurich, S. Gatziu, K.R. Dittrich: Eine Ereignissprache für das aktive, objektorientierte Datenbanksystem SAMOS. Datenbanksysteme in Büro, Technik und Wissenschaft, 1993.