35
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

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

Embed Size (px)

Citation preview

Page 1: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

1

Seminar Aktive Datenbanken

REACH

A Real-Time Active and Heterogeneous Mediator System

Yvonne UtterodtLehrstuhl für Datenbanken und Informationssysteme

Prof. Dr. Küspert

Page 2: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

2

REACHGliederung

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

Page 3: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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

Page 4: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

4

Übersicht

• Einführung• Architektur • Regeldefinition• REACH Komponenten• Administrationswerkzeuge• Fazit• Quellen

Page 5: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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

Page 6: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

6

Architektur Lösung bei REACH

REACH mit OpenOODB und Exodus

Solaris

EXODUSStorage Manager

SunProC++

daVinci Tcl/TkOpenOODB

REACH

Page 7: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

7

Architektur 2-Schichten Architektur von OpenOODB

Basismodule

Meta-Architektur

Persistenz-PM Transaktions-PM Anfragen-PM ...

Adress-management

Übersetzung Kommunikation DataDictionary

REACH

Page 8: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

8

Architektur Bibliotheken und Datenbanken für REACH

REACHAnwendung

RegelnEreignisse

Anwendungsdaten

DBx

libO3DB

libsm_client

libREACHlibRules

REACH

OpenOODB

Exodus

Page 9: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

9

Architektur Probleme für REACH

• Method-Wrapping

• Debugger

• Gekaufte Fremdbibliotheken

• Clusterfähigkeit

Page 10: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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

Page 11: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

11

Übersicht

• Einführung• Architektur • Regeldefinition• REACH Komponenten• Administrationswerkzeuge• Fazit• Quellen

Page 12: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

12

RegeldefinitionEntwurfsmethode OMT+

R3

R1R4

R5R2

PumpTurbine

TurbineX

Power Plant

updateWaterflowcheck

chec

kupdateOilTemp

Reduce RPM updatePressure

upda

tePres

sure

updateWaterflow

Every 4 weeks

Page 13: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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

Page 14: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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

Page 15: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

15

Übersicht

• Einführung• Architektur• Regeldefinition• REACH Komponenten• Administrationswerkzeuge• Fazit• Quellen

Page 16: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

16

REACH Komponenten

Trace Fehlerbehandlung

Transaktion

Regel

Triggern

Verwaltung

VisualisierungSchnittstellen

API Regelsprache Werkzeuge

Ereignis

Ereignis-parameter

Ereignis-historie

Ereignis-komposition

PrimitiveEreignisse

Zeit-ereignisse

Ereignis-basis

OpenOODB

Page 17: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

17

REACH KomponentenRegelkomponente

• Speicherorganisation von Regeln• Speicherung mit der Semantik der Regeln verbinden• Lösung: hierarchische Namensräume

Regel i Regel j... ... ... ...

/

Turbinentriebwerk

ÖlkreislaufUmgebung

Page 18: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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

Page 19: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

19

REACH Komponenten – Ereigniskomponente- spezialisierte Detektoren und direktes Triggern

Klassenhierarchie der Ereignisse

EreignisPrimitives Ereignis komposites Ereignis

• Methodenereignis

• Transaktionsereignis

• Regelereignis

• Absolutes Zeitereignis

BOT EreignisEOT EreignisCommit EreignisAbort Ereignis

• Relatives Zeitereignis

• Periodisches Zeitereignis

RegelerzeugungRegelentfernungRegeländerungRegeladministration

Page 20: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

20

Periodischer Zeit-Relativer Zeit-

REACH Komponenten – Ereigniskomponente- spezialisierte Detektoren und direktes Triggern

Prinzip des direkten Triggerns

BOT EOTPrimitives EreignisSignal

Primitiver Ereignis- detektor

Regel

triggern

triggernkompositer Ereignis- detektor

komponieren

Page 21: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

21

• Primitive Ereignisse:

– gemeinsame Funktionalität aller primitiven Ereignisse– Methodenereignisse

after river->updateWaterLevel(x)– Transaktionsereignisse

BOT(TA-Name), EOT(TA-Name)COMMIT(TA-Name), ABORT(TA-Name)

– Persistenzereignisse– Abstrakte Ereignisse– Regeladministrationsereignisse

REACH Komponenten – Ereigniskomponente- Teilkomponenten

Page 22: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

22

REACH Komponenten – Ereigniskomponente- Teilkomponenten

• Zeitereignisse

– Absolute Zeitereignisseat 2000/03/13/12/00/00

– Relative Zeitereignisse30 minutes after <<event>>

– Periodische Zeitereignissestart{stop} 2000/03/13/12/00/00, every 30 minutes

Page 23: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

23

REACH Komponenten – Ereigniskomponente- Teilkomponente Ereigniskomposition

PE PE

PEPE

Ereigniskomposition

Programm 1 Transaktion

Programm 2 Transaktion

Page 24: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

24

REACH Komponenten – Ereigniskomponente- Teilkomponente Ereigniskomposition

Operationen der Ereignisalgebra

Sequenz E1 then E2Konjunktion E1 and E2Disjunktion E1 or E2 Negation not E2 in E1, E3Hülle all E2 in E1, E3Vielfachereignis n times E2 in E1,E3

Beispielafter river->updateWaterLevel(x) then reactor->updateTemp(t)

Page 25: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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)

Page 26: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

26

Übersicht

• Einführung• Architektur• Regeldefinition• REACH Komponenten• Administrationswerkzeuge• Fazit• Quellen

Page 27: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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

Page 28: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

28

AdministrationswerkzeugeRegelbrowser

Page 29: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

29

AdministrationswerkzeugeRegelbrowser

Page 30: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

30

AdministrationswerkzeugeEreignisbrowser

History

Page 31: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

31

AdministrationswerkzeugeBrowser für Triggergraphen

Page 32: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

32

AdministrationswerkzeugeTracemodus

Page 33: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

33

Übersicht

• Einführung• Architektur• Regeldefinition• REACH Komponenten• Administrationswerkzeuge• Fazit• Quellen

Page 34: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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

Page 35: 1 Seminar Aktive Datenbanken REACH A Real-Time Active and Heterogeneous Mediator System Yvonne Utterodt Lehrstuhl für Datenbanken und Informationssysteme

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 DatabaseSystems, REACH, 1999

Alejandro P. Buchmann, Architecture of Active Database Systems, 1998