Konfluenz in aktiven DB Vortragsreihe zum Thema „Aktive Datenbanken“ des Lehrstuhls für Datenbanken und Informationssysteme der Friedrich-Schiller-Universität.

Slides:



Advertisements
Ähnliche Präsentationen
8. Termin Teil B: Wiederholung Begriffe Baum
Advertisements

Agent based computational economics Das Konzept rationalen Verhaltens im Umfeld maschineller Akteure Spezielles Seminar Wirtschaftsinformatik SS2001 Frankfurt.
Partitionierungstechniken in Datenbanksystemen
Transkription in der Sprachsythese und –erkennung SS 2004 Regelgesteuerte automatische Transkription auf der Basis von Expertenwissen Referent: Freshta.
Datenbankdesign mit ACCESS.
Polynomial Root Isolation
Statistische Aspekte der PSG
7. Automaten Ein Automat ist ein Sechstupel A= (I, O, Q, , q0, F).
3. Kapitel: Komplexität und Komplexitätsklassen
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Mediennutzung Ergebnisse: Besitz von Büchern: Bücher werden überwiegend geschenkt, weniger selbst erworben. Bücher werden im Grundschulbereich und Sek.I.
An Axiomatic Proof Technique for Parallel Programs
Terminierung und Deadlocks Enkhbat Daginaa Betreuerin Prof. Heike Wehrheim Totale Korrektheit.
Heuristiken und Kontexteinflüsse
Numerik partieller Differentialgleichungen
REKURSION + ITERATION. Bemerkung: Die in den folgenden Folien angegebenen "Herleitungen" sind keine exakten Beweise, sondern Plausibilitätsbetrachtungen.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 - AVL-Bäume: Entfernen, Bruder-Bäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (20 - AVL-Bäume: Entfernen, Bruder-Bäume) Prof. Th. Ottmann.
Erweiterte Datenmodelle Referentin: Lena Becker HS: Datenbanken vs. Markup Datum:
Kapitel 2 Die rationalen und die irrationalen Zahlen.
3.1.7 Korrektheit von Objekten Voraussetzung für die Diskussion der Korrektheit von nichtsequentiell benutzten abstrakten Objekten: Modellbasierte Spezifikation:
Seminar: Architekturbeschreibungssprachen
Die Skriptsprache Perl (2) Wolfgang Friebel DESY Zeuthen.
Kombination von AOP und FOP Ein Vortrag für das Seminar erweiterte Programmiertechniken von Samuel Simeonov im Sommersemester 2007.
Intelligentes Crawling im WWW mit Hilfe intuitiver Suchbedingungen
Synchronisation paralleler Transaktionen AIFB SS Konzept der Transaktion 4.2 Konzept der Transaktion (1/4) Eine Transaktion ist ein in sich geschlossener,
Der VFP Debugger - Coverage und Profiling. © 1999 TMN-Systemberatung GmbH Der VFP Debugger n Neues Aussehen, eigene Task n Erweiterte Möglichkeiten n.
Swiss Active Mechanism based Object- oriented Database System Aktive Datenbanken SS2007 Yves Laske Aktive Datenbanken.
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.
Visualisierung objektrelationaler Datenbanken
Multikollinearität Wann spricht man von Multikollinearität?
Workshop: Lernbereich Wachstum
Effiziente Algorithmen
Einführung in die Programmierung
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Mehrkriterielle Optimierung mit Metaheuristiken
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
WS 2012/13 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #11 Transaktionsverwaltung.
Thread Synchronisation in JAVA
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Integritätserhaltung und -Überprüfung in deduktiven Datenbanken
Eike Schallehn, Martin Endig
Synchronisation paralleler Transaktionen  AIFB SS Synchronisationsverfahren 4.4 Synchronisationsverfahren (1/3) Typen von Synchronisationsverfahren.
Datenbank System (DBS) - Warum?
Korrektheit von Programmen – Testen
Kooperationstraining im Volleyball. Goethe-Universität Frankfurt am Main Gliederung 1.Einführung 2.Methode 3.Ergebnisse 4.Diskussion
Vortrag: OSCAR und die Regelsprache ORCA Seminar: „Aktive Datenbanken“ FSU Jena Lehrstuhl für Datenbanken und Informationssysteme Betreuer:
Gliederung der Vorlesung
Übungsblatt 4 Erläuterungen Wintersemester 15/16 DBIS.
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Seminararbeit Blackbox-Testverfahren Alexander Maas, Aachen,
 Gegenstandsbereich der Testtheorie: Analyse der Charakteristika von Tests:  Güte von Tests.  Struktur von Tests.  Schwierigkeit von Tests.  Gruppenunterschiede.
DB2 – SS 2019 von Baum allgemein bis B*-Baum
DB2 – SS 2019 von Baum allgemein bis B*-Baum
 Präsentation transkript:

Konfluenz in aktiven DB Vortragsreihe zum Thema „Aktive Datenbanken“ des Lehrstuhls für Datenbanken und Informationssysteme der Friedrich-Schiller-Universität Jena

Laura Elisabeth Hombach2 Gliederung (1) 1.„Was bedeutet Konfluenz“ – an einem Beispiel 2.Lösungsansätze a.RAG b.Kommutativität c.Erweiterte Aktionen d.Beeinflussungsfreiheit 3.Laufzeitüberwachung

Laura Elisabeth Hombach3 Gliederung (2) 4.Behandlungs-Möglichkeiten bei nicht konfluenten DB 5.Partielle Konfluenz 6.Umgang von DBMS mit Konfluenz 7.Zusammenfassung 8.Ausblick 9.Literatur

Laura Elisabeth Hombach4 Problemstellung Wenn n ungeordnete Paare von Regeln gleichzeitig getriggert, kann der Datenbank- Endzustand davon abhängen, in welcher Reihenfolge die Regeln ausgeführt werden.

Laura Elisabeth Hombach5 Ungeordnete Paare r 1, r 2  R wobei gilt: r 1 < r 2  P und r 2 < r 1  P gelten nicht

Laura Elisabeth Hombach6 Beispiel (1) Regel 1 (r 1 ): Es verringert sich der Preis eines Buches um 5 €, wenn das Erscheinungsdatum 1 Jahr zurückliegt Regel 2 (r 2 ): Wenn der Autor eine Aus- zeichnung bekommt, erhöht sich der Preis seiner Bücher um 2% Buchpreis = 10€

Laura Elisabeth Hombach7 Beispiel (2) Es greifen sowohl r 1 als auch r 2 Bei der Ausführungsreihenfolge r 1  r 2 sinkt der Buchpreis auf 5,10 € Bei der Ausführungsreihenfolge r 2  r 1 sinkt der Buchpreis auf 5,20 € Die Regelmenge ist nicht konfluent

Laura Elisabeth Hombach8 Definition - Konfluenz „Eine Regelmenge R ist konfluent, wenn für alle denkbaren Datenbankzustände DB und alle DML-Operationen der nach Regelauswertung erreichte Endzustand im Regelausführungsgraphen, in dem keine Regel mehr getriggert ist, eindeutig ist“ [Weik]

Laura Elisabeth Hombach9 Lösungsansätze Nutzer darauf aufmerksam machen, daß Konfluenz auftreten kann Ein Ereignis darf max. eine Regel auslösen Totale Ordnung der Regelmenge Partielle Ordnung der Regelmenge Sicherung der Kommutativität von Regelmengen

Laura Elisabeth Hombach10 Erläuterung Zur Konfluenz Erkennung  Unterscheidung zwischen drei Regeldefinitionen (Immediate, Deferred und Decoupled) Immediate und Decoupled gemeinsam betrachtet werden Wegen hohen Komplexität wird hier auf die Unterscheidung verzichtet (Für Weitere Informationen siehe [Weik])

Laura Elisabeth Hombach11 Regelausführungsgraph (RAG) Gerichteter Graph RAG = (V,E) R = Regelmenge R T sind die Regeln der Regelmenge, welche momentan getriggert sind Eckmengen E  SxS  (S,S‘)  E mit r  R T Ecken S = (DB, R T ) S I = Ausgangszustand

Laura Elisabeth Hombach12 RAG (2) SISI S2S1 S‘ r2r2 r1r1

Laura Elisabeth Hombach13 Kommutativität Zwei Regeln r 1, r 2 sind kommutativ, wenn bei der Ausführung von r 1  r 2 dasselbe Endergebnis erreicht wird wie bei der Ausführungsreihenfolge r 2  r 1 (ein r  R ist immer mit sich selber kommutativ)

Laura Elisabeth Hombach14 Kommutativität im RAG SISI S2S1 S‘ r2r2 r1r1 r1r1 r2r2

Laura Elisabeth Hombach15 Erweiterte Aktionen (1) Zwei Regeln r 1, r 2  R (r 1 und r 2 sind kommutativ) r 1 triggert r  R r > r 2  P (wobei P die Prioritätsmenge der Regeln ist) Daraus ergeben sich zwei Abarbeitungs- reihenfolgen  Kein eindeutiges S‘

Laura Elisabeth Hombach16 EA im RAG SISI S2S1 r2r2 r1r1 rr2r2 S1‘S2‘ r1r1 r

Laura Elisabeth Hombach17 Erweiterte Aktionen (2) EA1 = Alle r  R, welche direkt oder indirekt durch r 1 getriggert werden EA2 = Alle r  R, welche direkt oder indirekt durch r 2 getriggert werden

Laura Elisabeth Hombach18 Erweiterte Aktionen im RAG SISI S2S1 S‘ r2r2 r1r1 r1r1 r2r2 S1‘S2‘ EA2EA1 EA2

Laura Elisabeth Hombach19 Konfluenz – Erweiterte Def. Alle ungeordneten Paare {r 1 }  EA1 und {r 2 }  EA2, welche kommutativ sind und im RAG terminieren, sind konfluent (für Deferred Regelen reicht diese Annahme nicht aus  siehe [Weik])

Laura Elisabeth Hombach20 Kommutativität – weitere Def. Zwei Regeln r 1, r 2  R sind kommutativ, wenn sie beeinflussungsfrei sind

Laura Elisabeth Hombach21 Beeinflussungsfreiheit r  EA1  {r 1 } triggert bzw. deaktiviert r 2 nicht r  EA1  {r 1 } ändert nicht den Wahrheitswert von r‘  EA2  {r 2 } r  EA1  {r 1 } ändert nichts, was durch r‘  EA2  {r 2 } gelesen bzw. geändert wird Und analog für r‘  EA2  {r 2 }

Laura Elisabeth Hombach22 Beispiel – Beeinflussungsfreiheit (1) r 1 = Es verringert sich der Preis eines Buches um 5 €, wenn das Erscheinungsdatum 1 Jahr zurückliegt EA1  r = Buchpreis  0,5 €  Warnung  r* = Erscheinungsdatum liegt länger als 10 Jahre zurück  Buchpreis weniger 0,5€ r 2 = Wenn nur noch 1 Exemplar eines Buches vorhanden ist, generiere eine Bestellung über 5 neue Exemplare EA2  Leer

Laura Elisabeth Hombach23 Beispiel – Beeinflussungsfreiheit (2) Buchpreis = 10€ Anzahl = 2 Erscheinungsdatum =

Laura Elisabeth Hombach24 Beispiel – Beeinflussungsfreiheit (3) Bei der Ausführungsreihenfolge r 1  r 2 Buchpreis = 5€ und r, r* und r 2 werden nicht aktiv Bei der Ausführungsreihenfolge r 2  r 1 Buchpreis = 5€ und r, r* und r 2 werden nicht aktiv

Laura Elisabeth Hombach25 Beispiel – Beeinflussungsfreiheit (4) EA1  {r 1 } kann r 2 nicht triggern oder deaktivieren Die Wahrheitswerte von EA2  {r 2 } bleiben unverändert EA1  {r 1 } und EA2  {r 2 } arbeiten auf disjunkten Teilen der DB  Es liegt Beeinflussungsfreiheit vor (für weitere Informationen siehe [Weik])

Laura Elisabeth Hombach26 Bemerkung Kommutativität  hinreichende Bedingung Ausgabe von Werten welche konfluent sind

Laura Elisabeth Hombach27 Laufzeitüberwachung Keine Überwachung der Konfluenz Abbruch der Transaktion, wenn nicht Konfluenz vermutet wird (bzw. Informierung des DBA) Warnung der Applikationen Ausführung von einer begrenzten Anzahl von Alternativen auf Kopien

Laura Elisabeth Hombach28 Behandlungs-Möglichkeiten bei nicht konfluenten DB Bestätigen, daß r 1 und r 2 doch konfluent sind Definition einer Priorität zwischen r 1 und r 2 Entfernen einer Priorität

Laura Elisabeth Hombach29 Partielle Konfluenz (1) Die Bedingung der Konfluenz ist für manche R zu stark Aufteilung der Tabellenmenge T in wichtige- (T‘) und unwichtige Tabellen

Laura Elisabeth Hombach30 Partielle Konfluenz (2) Nur T‘ muss konfluent sein  der RAG muss nicht eindeutig sein Die Endzustände müssen nur für T‘ eindeutig sein Alle relevanten Regeln für T‘ (Sig (T‘)) müssen für sich terminieren

Laura Elisabeth Hombach31 Partielle Konfluenz im RAG SISI S2S1 r2r2 r1r1 r1r1 r2r2 S1‘S2‘ EA2EA1 EA2 1S‘2S‘ S‘ r 1,EA1, r 2,EA2  Sig(T‘) r 1,EA1, r 2,EA2  Sig(T‘)

Laura Elisabeth Hombach32 Umgang von DBMS mit Konfluenz Oracle und DB2: Wenn die Regeln eine totale Ordnung besitzen und die Regelmenge terminiert liegt, Konfluenz vor

Laura Elisabeth Hombach33 Zusammenfassung Konfluenz Problem  Unentscheidbar und negativer Einfluss auf aktive DBMS Kommutativität ist nur eine hinreichende Bedingung Bis heute noch keine allgemein-gültige Bedingung gefunden (die nur nicht konfluente Paare ausgibt)

Laura Elisabeth Hombach34 Ausblick Implementierung des Konzeptes wünschenswert Kommutativität = beste bekannte Methode

Laura Elisabeth Hombach35 Literatur [Weik] T. Weik, „Terminierung und Konfluenz in einer aktiven objekt-orientierten Datenbank“, Seiten , 246 f, infix [Aiken] A.Aiken, J. Widom, J. M. Hellerstein, „Behavior of Database Production Rules: Termination, Confluence, and Observable Determinism“, Seiten 4 – 8, IBM Research, 1992 [Schl] M. Schlesinger, „ALFRED – Konzepte und Prototyp einer aktiven sicht zur Automatisierung von Geschäftsregeln“, Seiten 114 – 116, digital publications [Mahm] Y. Mahmud, „Aktive Datenbanken“, Seiten 29 f, Seminararbeit an der Johann Wolfgang Goethe-Universität Frankfurt am Main, Juni 1998