SS 2004B. König-Ries: Datenbanksysteme2-1 Kapitel 2: Referenzarchitektur für...
Click here to load reader
SS 2004B. König-Ries: Datenbanksysteme2-1 Kapitel 2: Referenzarchitektur für Datenbanksysteme Methodischer Architekturentwurf Architekturentwurf für Datenbanksysteme
SS 2004B. Knig-Ries: Datenbanksysteme2-3 Prozessschritt Ressourcen- Verwalter Prozessschritt Dienstnehmer Dienstgeber Kompetenz Anforderungen Dienstleistungs- vereinbarung Dienst = Verpflichtung Dienstentwurf: Ermittle die Kompetenzen fr einen breiten Abnehmerkreis Lege fest, welche Verpflichtungen (Verantwortlichkeiten) bernommen werden sollen Was ist ein Dienst?
SS 2004B. Knig-Ries: Datenbanksysteme2-5 niederwertige Verantwortlichkeiten Funktionalitt Dienst MerkmaleFunktionalitt Dienst MerkmaleFunktionalitt Dienst Merkmale Funktionalitt Dienst hherwertige Verantwortlichkeit Merkmale Entwurfsthese (2): Diensthierarchien Komposition: verbinde zu hherwertiger Verantwortlichkeit Zerlegung: teile hherwertige Verantwortlichkeit auf Funktionale Zerlegung ???
Folie 6
SS 2004B. Knig-Ries: Datenbanksysteme2-6 Entwurfsthese (3): Systemschichtung Schicht n Schnittstelle 0 (Gerteschnittstelle) Schnittstelle n-2 Schnittstelle n-1 Schnittstelle n (Nutzerschnittstelle) Schicht n-1 Schicht n-2 Schrittweise Verfeinerung Zerlegung einer Schicht in Bausteine, die gemeinsam unter Nutzung der Dienste der darunterliegenden Schicht den Dienst der oberen Schicht schaffen
Folie 7
SS 2004B. Knig-Ries: Datenbanksysteme2-7 Entwurfsthese (3): Systemschichtung Schicht n Schnittstelle 0 (Gerteschnittstelle) Schnittstelle n-2 Schnittstelle n-1 Schnittstelle n (Nutzerschnittstelle) Schicht n-1 Schicht n-2 Schrittweise Vergrberung Zusammenfassung von Dienstfunktionen einer unteren Schicht in Bausteine, die gemeinsam den Dienst der oberen Schicht schaffen
Folie 8
SS 2004B. Knig-Ries: Datenbanksysteme2-8 Korrektheit von Schichtenarchitekturen (1) Begrndung : nKeine unkontrollierte Fortpflanzung der nderungen in einer Schicht nach oben. nBeweis der Korrektheit der Realisierung der Dienste D i eines Verwalters M i lokal fhrbar, weil man die Korrektheit von D i-1 unterstellen kann. Grundsatz: Sei D i Dienst von Schicht i. D i-1 bildet die vollstndige und alleinige Grundlage fr die Realisierung von Dienst D i.
SS 2004B. Knig-Ries: Datenbanksysteme2-10 Behauptung 2: Erfordert Kooperation Behauptung 1: Wichtigstes Merkmal Erfordert nichtflchtiges Speichermedium: Langsamer Plattenspeicher als physischer Engpass Dienstfunktionalitt Datenmodell Ausgangspunkt der Schichtung Algorithmen und Datenstrukturen Dienst Dienstmerkmale Bedeutungstreue Konsistenz Dauerhaftigkeit Leistung |Performanz Skalierbarkeit| Robustheit Persistenz/Resistenz Nachrangige Merkmale: Lassen sie sich orthogonal hinzufgen?
Folie 11
SS 2004B. Knig-Ries: Datenbanksysteme2-11 Entwurf von DBMS (1) Schicht n Schicht n-1 Schicht n-2 Schrittweise Verfeinerung Zerlegung einer Schicht in Bausteine, die gemeinsam unter Nutzung der Dienste der darunterliegenden Schicht den Dienst der oberen Schicht schaffen Schrittweise Vergrberung Zusammenfassung von Dienstfunktionen einer unteren Schicht in Bausteine, die gemeinsam den Dienst der oberen Schicht schaffen Datenmodell Performanz
Folie 12
SS 2004B. Knig-Ries: Datenbanksysteme2-12 Entwurf von DBMS (2) Schicht n Schicht n-1 Schicht n-2 Datenmodell Performanz Konsistenz Persistenz Resistenz Dauerhaftigkeit
Folie 13
SS 2004B. Knig-Ries: Datenbanksysteme2-13 Entwurf einer Schicht Schicht i Schnittstelle D i (Datenmodell) Datenmodell mchtigeres Datenmodell ausdrucksschwcheres Datenmodell Schnittstelle D i-1 verbessertes Kontextwissen geringeres Kontextwissen Performanz Datenmodell abbildung Zugriffsprofil Daten- auftritt
SS 2004B. Knig-Ries: Datenbanksysteme2-15 Datenbasis-Verwalter (1) Datentypen: Satzmengen Operatoren: Operatoren auf Mengen Externes Datenmodell Anfragebearbeitung Internes Datenmodell Datenmodell Datenauftritt Logische Datenstruktur Datentypen: Stze und Satzmengen Operatoren: Operatoren auf Stzen Aufgaben: Abbildung von externen auf interne Satzmengen gem Zugriffsdichte bersetzung von Anfragen auf Mengen in Folgen von Satz-Operationen Optimierung dieser Operationsfolgen Durchsetzung von Konsistenzbedingungen gem statischer Datenstruktur Statische Struktur
Folie 16
SS 2004B. Knig-Ries: Datenbanksysteme2-16 Datenbasis-Verwalter (2) Datentypen: Satzmengen Operatoren: Operatoren auf Mengen Externes Datenmodell Anfragebearbeitung Internes Datenmodell Satz- u. Satzmengenverwaltung Physische Datenstrukturen Datenmodell Datenauftritt Logische Datenstruktur Statische Struktur Datentypen: Stze und Satzmengen Operatoren: Operatoren auf Stzen Dynamische Struktur Datentypen: Listen, Suchbume, Hashtabellen,... Operatoren: Listen: seq. Durchlauf Bume: seq. Durchlauf, gez. Suche Hashtabellen: gezielte Suche Aufgaben: Abbildung von Satzmengen auf physische Datenstrukturen (Bume, Hashtabellen,...) gem Zugriffsmuster Abbildung von Satz- u. Satzmengenoperatoren auf Operatoren der unterliegenden Datenstruktur
Folie 17
SS 2004B. Knig-Ries: Datenbanksysteme2-17 Datenbasis-Verwalter (2) Datentypen: Satzmengen Operatoren: Operatoren auf Mengen Externes Datenmodell Anfragebearbeitung Internes Datenmodell Satz- u. Satzmengenverwaltung Physische Datenstrukturen Datenmodell Datenauftritt Logische Datenstruktur Datentypen: Stze und Satzmengen Operatoren: Operatoren auf Stzen Datentypen: Listen, Suchbume, Hashtabellen,... Operatoren: Listen: seq. Durchlauf Bume: seq. Durchlauf, gez. Suche Hashtabellen: gezielte Suche Statische Struktur Dynamische Struktur
Folie 18
SS 2004B. Knig-Ries: Datenbanksysteme2-18 Datenbasis-Verwalter (3) Dateien Dateiverwaltung Gerteschnittstelle Datenmodell Datenauftritt Individuelle Speicherstruktur Gerte-E/A Datentypen: Block = feste Anzahl von Bytes Datei = variable Anzahl v. Blcken Operatoren: Dateien anlegen/ffnen/schlieen Lesen/Schreiben von Blcken Aufgaben: Bereitstellung eines Namensraums fr Dateien Platzierung von logischen Blcken auf dem Speichermedium gem Gerteprofil Freispeicherverwaltung auf dem Speichermedium Prfung von Lese- u. Schreiboperationen Bedienung der Gerteschnittstelle Vereinheitlichte Speicherstruktur
Folie 19
SS 2004B. Knig-Ries: Datenbanksysteme2-19 Datenbasis-Verwalter (4) Dateien Dateiverwaltung Gerteschnittstelle Datenmodell Datenauftritt Gerte-E/A Datentypen: Block = feste Anzahl von Bytes Datei = variable Anzahl v. Blcken Operatoren: Dateien anlegen/ffnen/schlieen Lesen/Schreiben von Blcken Hauptspeicherseiten u. Segmente Segment- u. Pufferverwaltung Datentypen: Seite = feste Anzahl von Bytes Segment = var. Anzahl von Seiten Operatoren: Anforderung/Freigabe von Seiten Segmente anlegen/ffnen/schlieen Bevorratung von Daten im Hauptspeicher Keine sichtbare Abweichung zwischen Haupt- und Hintergrundspeicherinhalt Aufgaben: Zuordnung von Segmenten zu Dateien Zuordnung von Seiten zu Dateiblcken Ansto und berwachung von Seiten-Transfers zwischen Haupt- u. Hintergrundspeicher Minimierung von Transfer-Wartezeiten durch geeignete Pufferungs-Strategien gem Zugriffsmuster Individuelle Speicherstruktur Vereinheitlichte Speicherstruktur
Folie 20
SS 2004B. Knig-Ries: Datenbanksysteme2-20 Datenbasis-Verwalter (4) Dateien Dateiverwaltung Gerteschnittstelle Datenmodell Datenauftritt Gerte-E/A Datentypen: Block = feste Anzahl von Bytes Datei = variable Anzahl v. Blcken Operatoren: Dateien anlegen/ffnen/schlieen Lesen/Schreiben von Blcken Hauptspeicherseiten u. Segmente Segment- u. Pufferverwaltung Datentypen: Seite = feste Anzahl von Bytes Segment = var. Anzahl von Seiten Operatoren: Anforderung/Freigabe von Seiten Segmente anlegen/ffnen/schlieen Bevorratung von Daten im Hauptspeicher Keine sichtbare Abweichung zwischen Haupt- und Hintergrundspeicherinhalt Individuelle Speicherstruktur Vereinheitlichte Speicherstruktur
Folie 21
SS 2004B. Knig-Ries: Datenbanksysteme2-21 Statische Struktur Datenbasis-Verwalter (5) Dateien Dateiverwaltung Gerteschnittstelle Datenmodell Datenauftritt Gerte-E/A Datentypen: Block = feste Anzahl von Bytes Datei = variable Anzahl v. Blcken Operatoren: Dateien anlegen/ffnen/schlieen Lesen/Schreiben von Blcken Hauptspeicherseiten u. Segmente Segment- u. Pufferverwaltung Datentypen: Seite = feste Anzahl von Bytes Segment = var. Anzahl von Seiten Operatoren: Anforderung/Freigabe von Seiten Segmente anlegen/ffnen/schlieen Bevorratung von Daten im Hauptspeicher Keine sichtbare Abweichung zwischen Haupt- u