s wiss a ctive m echanism based o bject-oriented database s ystem
DESCRIPTION
S wiss A ctive M echanism based O bject-oriented Database S ystem. Aktive Datenbanken. Aktive Datenbanken SS2007 Yves Laske. S wiss A ctive M echanism based O bject-oriented Database S ystem. Fahrplan. 1Grundsätzliches Ereignisarten 3Regeldefinition - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/1.jpg)
Swiss Active Mechanism based Object-oriented Database
System
Aktive Datenbanken SS2007 Yves Laske
Aktive Datenbanken
![Page 2: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/2.jpg)
Fahrplan
1 Grundsätzliches
2 Ereignisarten
3 Regeldefinition
4 SAMOS-Architektur
5 Kritische Wertung
Swiss Active Mechanism based Object-oriented Database System
Aktive Datenbanken SS2007 Yves Laske
![Page 3: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/3.jpg)
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
![Page 4: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/4.jpg)
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
![Page 5: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/5.jpg)
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
![Page 6: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/6.jpg)
2 Ereignisarten
Swiss Active Mechanism based Object-oriented Database System
Aktive Datenbanken SS2007 Yves Laske
a) Primitive Ereignisse• Zeitereignisse
Absolute: 07.06.21,09:30Wiederkehrende: EVERY [frequency]
(YEAR|DAY|HOUR|MINUTE) <time>
[interval] EVERY 10 DAY 20:00 06.01.-07.31.Implizite: Eintritt aufgrund anderer Ereignisse occ_point(event_name) end_execution(rule_name)
![Page 7: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/7.jpg)
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
• WertereignisseOperationen auf dem Wert eines Objektes(BEFORE|AFTER).(class_name|object_name).update(attr_name)
![Page 8: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/8.jpg)
2 Ereignisarten
Swiss Active Mechanism based Object-oriented Database System
Aktive Datenbanken SS2007 Yves Laske
• TransaktionenereignisseZu Beginn oder Ende der TA(BOT|EOT|ABORT)[transaction_name]
• Abstrakte EreignisseFestlegung nicht automatisch erkennbarer EreignisseDEFINE EVENT Zimmer_AbgebranntRAISE Zimmer_Abgebrannt
![Page 9: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/9.jpg)
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
![Page 10: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/10.jpg)
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)
![Page 11: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/11.jpg)
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),…
![Page 12: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/12.jpg)
3 Regeldefinition
Swiss Active Mechanism based Object-oriented Database System
Aktive Datenbanken SS2007 Yves Laske
DEFINE RULE <rule_name>ON <event_clause>IF <condition>DO <action>COUPLING MODE (<coupling>,<coupling>)PRIORITIES (BEFORE | AFTER) <rule_name>
I.d.R. wird jedes Ereigniss vorab deklariert:
DEFINE EVENT <event_Name><event_clause>
![Page 13: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/13.jpg)
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)
![Page 14: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/14.jpg)
3 Regeldefinition
Swiss Active Mechanism based Object-oriented Database System
Aktive Datenbanken SS2007 Yves Laske
Coupling ModeWann 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>,<coupling2>)
coupling1: Wann wird Bedingung ausgeführt?
coupling2: Wann wird Aktion ausgeführt?
![Page 15: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/15.jpg)
4 SAMOS-Architektur
Swiss Active Mechanism based Object-oriented Database System
Aktive Datenbanken SS2007 Yves Laske
3-SchichtenarchitekturVorteil der Schichtenarchitektur:
schnellere Implementierung
Schichten:• Objektorientiertes DBMS• SAMOS-Kern• Toolschicht
![Page 16: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/16.jpg)
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
![Page 17: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/17.jpg)
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
![Page 18: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/18.jpg)
4 SAMOS-Architektur
Swiss Active Mechanism based Object-oriented Database System
Aktive Datenbanken SS2007 Yves Laske
Obere Schicht: Toolebenea) Vorabtools zur Regeldefinition
– Editor/Compiler– Termination Analyzer– Browser
b) Laufzeittools– Testing Component (vollst. Testumgebung)– Explanation Component (Visualisierung aktueller
Vorgänge)
![Page 19: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/19.jpg)
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“
![Page 20: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/20.jpg)
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
![Page 21: S wiss A ctive M echanism based O bject-oriented Database S ystem](https://reader035.vdocuments.mx/reader035/viewer/2022062717/56812a6c550346895d8defb4/html5/thumbnails/21.jpg)
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 Int’l 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.