33
1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar „Aktive Datenbanken“ Filterung von zusammengesetzten Ereignissen Ramon Fleischhauer

1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

Embed Size (px)

Citation preview

Page 1: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

1

Friedrich – Schiller - Universität Jena

Lehrstuhl für Datenbanken und Informationssysteme

Seminar „Aktive Datenbanken“

Filterung von zusammengesetzten Ereignissen

Ramon Fleischhauer

Page 2: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

2

Gliederung

1. Einleitung

2. Wichtige Begriffsdefinitionen

3. Implementierungsmöglichkeiten zur Erkennung von Ereignissen

4. Zwei – Schritt – Verfahren zur Filterung von zusammengesetzten Ereignissen

5. Schlüsselkriterien für ein Filterverfahren

5.1 Filtermodell

5.2 Die innere Darstellung eines Filters

6. Zusammenfassung

Page 3: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

3

1. Einleitung

• Filterung: Prüfen aller eintretenden Ereignisse anhand von bestimmten festgelegten Kriterien

• Hauptziel: Erkennung von zusammengesetzten Ereignissen

• Ereignisse haben entscheidenden Einfluss auf ECA (Event – Condition – Action)

• Ereignisdefinitionen und Ereigniserkennung sind ein wichtiges Thema in DB- Forschung

Page 4: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

4

2. Grundlegende Begriffe

Ereignisse:

• „happening of interest“ ( Gehani et al )

• „Auftreten einer Situation, die eine möglicherweise automatische Reaktion erfordert“ ( Unland und Zimmer )

• Unterscheidung: primitive, zusammengesetzte Ereignisse

primitive Ereignisse:

Ereignistypen

DB- spezifische temporale externe

Page 5: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

5

zusammengesetzte Ereignisse:

• durch Kombination von Ereignissen (primitive, zusammengesetzte) anhand bestimmter Operatoren

• Beispiele: - Konjunktion/ Disjunktion: z = x und/ oder y- Sequenz : z = x muss vor y eintreten- Negation: nicht x innerhalb eines bestimmten Zeitintervalles- …

Page 6: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

6

• Filterverfahren benötigen 2 Schritte zur Filterung von zusammengesetzten Ereignissen

• „consumption mode“: wie primitive Ereignisinstanzen zur Bildung von zus. Ereignissen verwendet und anschließend gelöscht werden:

recent, chronicle, continuous, cumulative

Fiterverfahren

Datenstruktur Modell Algorithmus

Ereignisdefinition

Filterausdrücke

Page 7: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

7

3. Implementierungsmöglichkeiten

• verschiedene Möglichkeiten zur Darstellung und Erkennung von Ereignissen

Graphen Bäumen Automaten Petri - Netze

via

Page 8: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

8

Implementierung via Graphen

• gerichteter azyklischer Graph (DAG) • jedes zusammengesetzte Ereignis als DAG dargestellt• Knoten = Ereignisbeschreibungen• Kanten = Ereigniszusammensetztungen• tritt primitives Ereignis ein werden Vaterknoten informiert• Beziehungen zu Ereignissen werden gespeichert

Page 9: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

9

Implementierung via Graphen

• „event graph“ - in Sentinel

• Kombination von Eventbäumen zu Graphen

• Blätter = primitive Ereignisse

• Knoten = enthalten Operatoren, separaten Speicher für „Kinder“

• Pfeile im Graph repräsentieren Ereigniserkennung (bottom up)

AND

OR

E1 E2

E3

Page 10: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

10

V. Krishnaprasad; Event detection for supporting active capability in an OODMS: Semantics, architecture and implementation; page 78; University of Florida; 1994

Page 11: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

11

Implementierung via Bäumen

• „detection tree“• aufgebaut aus „detection graph‘ s“• eigener Baum pro zusammengesetztem

Ereignis• Knoten entweder Blatt, Wurzel, Operator• Ereigniserkennung: bottom up• Operatorknoten verwalten primitive

Ereignisse• Wurzel ergibt zusammengesetztes

Ereignis

U. Jaeger, J. K. Obermaier; Parallel Event Detection in Active Database Systems: The Heart of the Matter; page 4; Humboldt-Universität zu Berlin

Page 12: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

12

Implementierung via Automaten

• durch deterministische endliche Automaten (DFA) • jeder Zustand stellt Ereignis dar• Übergang zwischen 2 Zuständen ist Ereigniseintritt• step – by – step • von COMPOSE verwendet:- Implementierung der Eventausdrücke mittels Automaten- Input = primitiven Ereignisse- Automaten durch „Sub- Automaten“ konstruiert- 3- Zustandsautomat (Start-, Akzeptanz-, Nichtakzeptanzzustand)

Page 13: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

13

Implementierung via Automaten

• zusammengesetztes Ereignis erkannt, wenn Automat Akzeptanzzustand erreicht hat

• Erweiterung der Automaten mit Datenstrukturen zur Speicherung von Informationen

G. Lörincze; Modellierung, Analyse und Simulation von Regeln in der aktiven Schicht ALFRED; Diplomarbeit; Universität Bern; 1996

Page 14: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

14

Implementierung via Petri – Netze (PN)

• in SAMOS verwendet• Erweiterung: „coloured“ PN• Aufbau: Input place = primitive Ereignisse, Output = zus. Ereignis• token = zur Markierung, enthält aktuelle Ereignisparameter• guard functions = zur Evaluation• Algorithmus: step – by – step• geordnete Reihenfolge aller primitiven Ereignisse muss bekannt

sein

Page 15: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

15

Implementierung via Petri – Netze

• wenn alle Inputs vorhanden, guard function positiv evaluiert,

dann „feuert“ transition zum Output zusammengesetzte Event

S. Gatziu, K.R. Dittrich;Detecting composite events in active database syxstems using Petri Nets; to appear in : Proc. Of the 4th Intl. Workshop on Research Issues in Data Engineering: Active Database Systems, Houston, Texas, February 1994, page 5

Page 16: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

16

S. Gatziu, K.R. Dittrich; Events in an Active Object-Oriented Database System; to appear in Proc. of the 1.Intl. Workshop on Rules in Database Systems; page 8; Edinburgh,August 93.

Page 17: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

17

• Probleme bestehender Verfahren• Automat: Anzahl der Zustände Erreichbarkeitsanalyse,

Zustandsminimierung• Bäume/ Graphen: betrachtet jedes primitive Ereignis und damit

unnötige Filteroperationen• PN: in SAMOS nur chronicle consumption mode

Page 18: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

18

4. Zwei - Schritt - Verfahren

• Grundlage: baumbasierter Ansatz, Matchingalgorithmus, Verwendung der Idee der partiellen Ereignisverarbeitung,

• Zusammengesetze Ereignisfilterung in zwei Schritten:• 1. Schritt : Erkennung primitiver Ereignisse• 2. Schritt: Ergebnisse = Input für zusammengesetzte

Ereignisfilterung

• betrachten primitiven Ereignisse : e1, e2, e3

• Nutzer A : E(a) = e1

• Nutzer B : E(b) = e1 und e2

• Nutzer C : E(c) = Sequenz(e2;e3)

Page 19: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

19

Page 20: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

20

Page 21: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

21

Page 22: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

22

Erweiterung des Zwei – Schritt - Verfahrens

• Erweiterung des Verfahrens 1 – Schritt – Verfahren• bedeutet: 2. Schritt in den 1. Schritt integriert wird

Zeiteinsparung• 2 Möglichkeiten: - Ein – Schritt – Verfahren mit Löschen

- Ein – Schritt – Verfahren ohne Löschen:- alle Teilprofile werden im Baum gehalten- Blätter werden um Listen erweitert- 2 Zustände: aktiv (o), inaktiv (x)

• betrachten primitiven Ereignisse : e1, e2, e3

• Nutzer A : E(a) = e1

• Nutzer B : E(b) = e1 und e2

• Nutzer C : E(c) = Sequenz(e2;e3)

Page 23: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

23

Page 24: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

24

Page 25: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

25

Page 26: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

26

Page 27: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

27

Page 28: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

28

• 1 – Schritt – Verfahren mit Löschen:• nur aktuell relevante Teilprofile im Baum gehalten• abgearbeitete Teilprofile werden gelöscht• Aufnahme von Teilprofilen sobald sie relevant werden

• Performancebewertung der 3 Verfahren:• beste Verfahren ist das 1 - Schritt – ohne Löschen• dann das 2 – Schritt – Verfahren• schlechteste Verfahren ist 1 – Schritt – Verfahren mit Löschen

Page 29: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

29

5. 1 Filtermodell

• determiniert die Struktur der Ereignisfilterkomponenten • wie Ereignisdefinitionen und Filterausdrucksdefinitionen• gutes Modell ist flexibel jede gewünschte Funktionalität zu formen• Auswirkungen auf:

- Performance

- Allgemeingültigkeit

- Ausdrucksmächtigkeit

Page 30: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

30

5. 2 Innere Darstellung des Filters

• determiniert die Struktur und Ausführung des Filtermechanismus• Ausführung durch Algorithmus• Datenstruktur zur Erkennung von Events

( Graph-, Baum-, Petri-Netz- oder Automatenbasiert)• Hauptauswirkungen:

- Performance

Page 31: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

31

6. Zusammenfassung

• verschiedenen Systeme benutzen verschiedene Spezifikationen• verschiedene Möglichkeiten der Implementierung• 2 Schritte für zusammengesetzten Ereigniserkennung• Ereignisfilterung nicht nur in aktiven DB wichtig

• Trend: parallele Erkennung zusammengesetzter Ereignisse vorallem bei Bäumen

Page 32: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

32

Literaturverzeichnis

• N. H. Gehani, H. V. Jagadish, and O. Shmueli. Composite event specification in active databases: Model & implementation. In Proceedings of the 18th International Conference on Very Large Data Bases, 1992.

• S. Chakravarthy, V. Krishnaprasad, E. Anwar, S.K. Kim, "Composite events for active databases: semantics, contexts and detection" in Proceedings of the 20th International Conference on Very Large Data Bases, VLDB ’94, Santiago, Chile, pp. 606-617, 1994.

• N.W. Paton, O. Diaz, "Active database systems" , Technical report, Department of Computer Science, University of Manchester, England, 1994.• S. Chakravarthy and D. Mishra. Snoop: An expressive event specification language for active databases. , Technical Report UF-CIS-TR-93-007,

University of Florida, Gainesville, Department of Computer and Information Sciences, March 1993.• S. Gatziu and K. R. Dittrich. SAMOS: An Active Object-Oriented Database System. IEEE Quarterly Bulletin on Data Engineering, Special Issue on

Active Databases, 15(1-4):23–26, December 1992.• Ehab Al-Shaer. High-Performance Event Filtering: Survey and Evaluation. Technical Report ODU-CS-96, Computer Science Department, Old Dominion

University, March 1996.• A. Hinze: Efficient filtering of composite events. In Proceedings of the 20th British National Conference on Databases (BNCD’03), Coventry, UK, July,

2003• D. Zimmer, R. Unland: The Formal Foundation of the Semantics of Complex Events in Active Database Management Systems. Cooperative Computing

& Communication Laboratory, Technical Report Nummer 22/1997, Paderborn, Deutschland, 1997.• E. S. Al-Shaer; High-performance Event Filtering for Distributed Dynamic Multi-point Applications: Survey and Evaluation; Computer Science

Department, Old Dominion University, March 1996.• E. S. Al-Shaer; Event Filtering Framework: Key Criteria and Design Trade-offs; in the IEEE 21st International Conference on Computer Software and

Application, held in Washington, D.C., USA, August 1997• S. Chakravarthy, V. Krisshnaprasad, E. Anwar, and S. K. Kim. Anatomy of a Composite Event Detector. Technical Report CIS TR-93-039, University of

Florida, December 1993• S. Chakravarthy, V. Krishnaprasad, E. Anwar, and S. K. Kim. Composite Events for Active Databases: Semantics, Contexts and Detection. In

Proceedings of the 20th VLDB Conference, p. 606-617, Sep. 1994• N. H. Gehani, H. V. Jagadish, and O. Shmueli. Event Specification in an Active Object-Oriented Database. In Proceedings of the ACM SIGMOD

International Conference on Management of Data, p. 91-90, 1992.• S. Bittner. Implementierung und Analyse von Filterverfahren für parametrisierbare zusammengesetzte Ereignisse. Diplomarbeit, Freie Universität

Berlin, Institut für Informatik, 2004• S. Chakravarthy. Sentinel: An object-oriented DBMS with event-based rules. In Proceedings of the ACM SIGMOD International Conference on

Management of Data, Tucson, AZ, 1997.• S. Gatziu and K. R. Dittrich. Detecting composite events in active database systems using petri nets. In Proceedings of the RIDE Workshop on

Research Issues in Data Engineering, Houston, TX, 1994.

Page 33: 1 Friedrich – Schiller - Universität Jena Lehrstuhl für Datenbanken und Informationssysteme Seminar Aktive Datenbanken Filterung von zusammengesetzten

33

Vielen Dank für Ihren Aufmerksamkeit!