Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Swiss Active Mechanism based Object- oriented Database System Aktive Datenbanken SS2007 Yves Laske Aktive Datenbanken."—  Präsentation transkript:

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

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

3 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

4 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

5 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

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

7 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)

8 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

9 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

10 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)

11 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),…

12 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

13 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)

14 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?

15 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

16 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

17 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

18 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)

19 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

20 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

21 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 1995. 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 1994. 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 2000.05, Zurich, 2000. S. Gatziu, K.R. Dittrich: Eine Ereignissprache für das aktive, objektorientierte Datenbanksystem SAMOS. Datenbanksysteme in Büro, Technik und Wissenschaft, 1993.


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

Ähnliche Präsentationen


Google-Anzeigen