1 / 35

Seminar Aktive Datenbanken

Seminar Aktive Datenbanken. REACH A Re al-Time Ac tive and H eterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme Prof. Dr. Küspert. REACH Gliederung. Einführung Architektur Regeldefinition REACH-Komponenten Administrationswerkzeuge Fazit

john
Download Presentation

Seminar Aktive Datenbanken

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme Prof. Dr. Küspert

  2. REACHGliederung • Einführung • Architektur • Regeldefinition • REACH-Komponenten • Administrationswerkzeuge • Fazit • Quellen

  3. Einführung • Was ist REACH? • 1992, TU Darmstadt • Forschungsprototyp eines aktiven objektorientierten DBMS • Plattform für die Entwicklung von Anwendungen • Ziele • Robustes System mit vollständiger aktiver Funktionalität • kommerzielles OODBMS nutzen • alle Ereignisse, Kopplungsmodi und Werkzeugset

  4. Übersicht • Einführung • Architektur • Regeldefinition • REACH Komponenten • Administrationswerkzeuge • Fazit • Quellen

  5. ArchitekturGrad der Integration Welches Architekturprinzip? • Schichtenarchitektur • Basiert auf passivem DBMS • Darauf aufbauend gesamte Regelverwaltung als zusätzliche Schicht • Zügige Implementierung • Integrierte Architektur • Komponenten des DBMS sind auf aktive Funktionalität abgestimmt • Varianten: • Vollständige Neuentwicklung • Kooperation mit DBMS Hersteller • Verwendung DBMS Forschungsprototyp

  6. REACH OpenOODB daVinci Tcl/Tk EXODUSStorage Manager SunProC++ Architektur Lösung bei REACH REACH mit OpenOODB und Exodus Solaris

  7. REACH Persistenz-PM Transaktions-PM Anfragen-PM ... Adress-management Übersetzung Kommunikation DataDictionary Architektur 2-Schichten Architektur von OpenOODB Meta-Architektur Basismodule

  8. REACH libREACHlibRules DBx RegelnEreignisseAnwendungsdaten OpenOODB libO3DB Exodus libsm_client Architektur Bibliotheken und Datenbanken für REACH REACHAnwendung

  9. Architektur Probleme für REACH • Method-Wrapping • Debugger • Gekaufte Fremdbibliotheken • Clusterfähigkeit

  10. Architektur Was ist bei ObjectStore anders? OpenOODB ObjectStore Kommerziell nein ja Code veränderbar ja nein Datenbanken eine mehrere Clustering nein ja Präcompiler ja nein Persistenzkonzept einfacher fehleranfälliger

  11. Übersicht • Einführung • Architektur • Regeldefinition • REACH Komponenten • Administrationswerkzeuge • Fazit • Quellen

  12. RegeldefinitionEntwurfsmethode OMT+ Power Plant R3 updateOilTemp updateWaterflow Reduce RPM R1 updatePressure check Turbine Pump R4 check updatePressure R5 TurbineX R2 updateWaterflow Every 4 weeks

  13. RegeldefinitionRegelsprache REAL # include „Reactor.hh“ rule /powerplant/reactor/r1 { prio 5; decl River* river; int x; Reactor* rtor named „BlockA“; event after river->updateWaterLevel(x) cond imm x < 3 && river->getTemp() > 24.5 && rtor->getHeatOutput() > 1000000; action imm rtor->reducePlannedPower(0.05); };

  14. RegeldefinitionRegelsprache REAL Kopplungsmodi: REAL [BBKZ93] imm immediate immediatedef deferred deferred ind independent -dep dependent sequential causally dependentexc exclusive - pind parallel independent detachedpdep parallel dependent parallel causally dependentpexc parallel exclusive exclusive causally dependent

  15. Übersicht • Einführung • Architektur • Regeldefinition • REACH Komponenten • Administrationswerkzeuge • Fazit • Quellen

  16. Schnittstellen API Regelsprache Werkzeuge Visualisierung Regel Triggern Verwaltung Ereignis PrimitiveEreignisse Ereignis-basis Zeit-ereignisse Ereignis-parameter Ereignis-historie Ereignis-komposition Trace Fehlerbehandlung OpenOODB REACH Komponenten Transaktion

  17. / Turbinentriebwerk Umgebung Ölkreislauf ... Regel i ... ... ... Regel j REACH KomponentenRegelkomponente • Speicherorganisation von Regeln • Speicherung mit der Semantik der Regeln verbinden • Lösung: hierarchische Namensräume

  18. REACH KomponentenRegelkomponente • Teilkomponente Regelauslösung: • Abarbeitung von ausgelösten Regeln • Teilkomponente Regeladministration: • Regeln erzeugen, verändern und löschen • Organisation der Regelverzeichnisse • Ein- und Ausschalten von Regeln

  19. Ereignis Primitives Ereignis komposites Ereignis Methodenereignis Relatives Zeitereignis BOT EreignisEOT EreignisCommit EreignisAbort Ereignis Transaktionsereignis Periodisches Zeitereignis RegelerzeugungRegelentfernungRegeländerungRegeladministration Regelereignis Absolutes Zeitereignis REACH Komponenten – Ereigniskomponente- spezialisierte Detektoren und direktes Triggern Klassenhierarchie der Ereignisse

  20. triggern kompositer Ereignis- detektor Regel komponieren Primitiver Ereignis- detektor triggern Signal EOT BOT Primitives Ereignis REACH Komponenten – Ereigniskomponente- spezialisierte Detektoren und direktes Triggern Prinzip des direkten Triggerns Periodischer Zeit- Relativer Zeit-

  21. REACH Komponenten – Ereigniskomponente- Teilkomponenten • Primitive Ereignisse: • gemeinsame Funktionalität aller primitiven Ereignisse • Methodenereignisse after river->updateWaterLevel(x) • TransaktionsereignisseBOT(TA-Name), EOT(TA-Name) COMMIT(TA-Name), ABORT(TA-Name) • Persistenzereignisse • Abstrakte Ereignisse • Regeladministrationsereignisse

  22. REACH Komponenten – Ereigniskomponente- Teilkomponenten • Zeitereignisse • Absolute Zeitereignisseat 2000/03/13/12/00/00 • Relative Zeitereignisse30 minutes after <<event>> • Periodische Zeitereignisse start{stop} 2000/03/13/12/00/00, every 30 minutes

  23. Transaktion Programm 1 PE PE Ereigniskomposition PE PE Programm 2 Transaktion REACH Komponenten – Ereigniskomponente- Teilkomponente Ereigniskomposition

  24. REACH Komponenten – Ereigniskomponente- Teilkomponente Ereigniskomposition Operationen der Ereignisalgebra Sequenz E1 then E2 Konjunktion E1 and E2 Disjunktion E1 or E2 Negation not E2 in E1, E3 Hülle all E2 in E1, E3 Vielfachereignis n times E2 in E1,E3 Beispielafter river->updateWaterLevel(x) then reactor->updateTemp(t)

  25. REACH Komponenten – Ereigniskomponente- Teilkomponente Ereigniskomposition • Kopplungsmodus • immediate nicht möglich • deferred nur wenn die auslösenden Ereignisse aus der gleichen Transaktion kommen • Garbage Collection • Löschen von angefangenen Kompositionen • Sequenz, Konjunktion und Disjunktion spätestens beim Commit/Abort (bei same trans)

  26. Übersicht • Einführung • Architektur • Regeldefinition • REACH Komponenten • Administrationswerkzeuge • Fazit • Quellen

  27. AdministrationswerkzeugeKommandozeile • Zur Regelmanipulation • Anlegen, Löschen von Regelverzeichnissen • Löschen, umbenennen, verschieben von Regeln • Zugriffsrechte setzen ... • Regelinspektion • Auflisten von Regeln und Verzeichnissen • Inhalt einer Regel ausgeben • Organisation der Ereignisse • History anschauen • Löschen von Ereignissen

  28. AdministrationswerkzeugeRegelbrowser

  29. AdministrationswerkzeugeRegelbrowser

  30. AdministrationswerkzeugeEreignisbrowser History

  31. AdministrationswerkzeugeBrowser für Triggergraphen

  32. AdministrationswerkzeugeTracemodus

  33. Übersicht • Einführung • Architektur • Regeldefinition • REACH Komponenten • Administrationswerkzeuge • Fazit • Quellen

  34. Fazit • Prototyp mit Demonstrationsanwendung Kraftwerk • REACH als Prototyp nicht vollständig • Bei Schichtenarchitektur Probleme mit Recovery • Handhabung von Ereignissen bei verteilten Datenbankclients nicht vollständig untersucht • REAL stark an C++ angelehnt, daher prozedural, besser wäre deklarative Regelsprache • Noch keine kommerziellen Systeme mit kommerziellen Anwendungen

  35. Quellen Jürgen Zimmermann: Konzeption und Realisierung eines aktiven Datenbanksystems: Architektur, Schnittstellen und Werkzeuge, 2001 Jürgen Zimmermann, Alejandro P. Buchmann, Active Rules in Database Systems, REACH, 1999 Alejandro P. Buchmann, Architecture of Active Database Systems, 1998

More Related