Universität Karlsruhe (TH) © 2008 Univ,Karlsruhe, IPD, Prof. LockemannDBI 1 Kapitel 1 Architektur...
-
Upload
ivonette-reddin -
Category
Documents
-
view
107 -
download
0
Transcript of Universität Karlsruhe (TH) © 2008 Univ,Karlsruhe, IPD, Prof. LockemannDBI 1 Kapitel 1 Architektur...
UniversitätKarlsruhe (TH)
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Kapitel 1
Architektur als Leitfaden
2
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Kapitel 1.1Kapitel 1.1
Umfeld: Verteilte InformationssystemeUmfeld: Verteilte Informationssysteme
3
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
4-Stufen-Architektur
Application Server
Application Server
. . .
. . .
MiddlewareMiddleware
Client Client Client
Database Server
other Servers. . .Ressourcen
WWW Server
WWW Server. . .
Geschäftslogik
Präsentation
Anwendung
DatenübertragungDatenübertragung
4
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Umsetzung: Java 2 Enterprise Edition
Application Server
Application Server
. . .
. . .
Client Client Client
Database Server
other Servers
. . .
WWW Server
WWW Server
. . .
Anwendung
Präsentation
Geschäftslogik
Ressourcen
Datenübertrng.Datenübertrng.
MiddlewareMiddleware
Behälter
WWW-Dienst-geber
Java 2 SDK
Transaktionsverwaltung
Nachrichten-warteschlangen-
Verwaltung
Kon
nekt
ore
n
Java
S
ervl
ets
Java
S
erve
r P
ages
Dienst-nehmer
Dienst-nehmer
Fremd-Produkt
Fremd-Produkt
.....Behälter Behälter
Kommunikation(HTTP, IIOP, RMI)
HT
ML,
XM
L, S
SL
CORBA-An-
passung
Daten-bank
(JDBC)
Transak-tionen(JTA)
Nach-richten (JMS)
Registra-tur
(JNDI)
XML(JAXP)
Sicher-heit
DBMS
5
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Umsetzung: Java 2 Enterprise Edition
Behälter
WWW-Dienst-geber
Java 2 SDK
Transaktionsverwaltung
Nachrichten-warteschlangen-
Verwaltung
Kon
nekt
ore
n
Java
S
ervl
ets
Java
S
erve
r P
ages
Dienst-nehmer
Dienst-nehmer
Fremd-Produkt
Fremd-Produkt
.....Behälter Behälter
Kommunikation(HTTP, IIOP, RMI)
HT
ML,
XM
L, S
SL
CORBA-An-
passung
Daten-bank
(JDBC)
Transak-tionen(JTA)
Nach-richten (JMS)
Registra-tur
(JNDI)
XML(JAXP)
Sicher-heit
DBMS
Langfristspeicherung Verteilte Zuverlässigkeit
Voraussetzung: zentrale Zuverlässigkeit
Lose Kopplung
6
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Umsetzung: Java 2 Enterprise Edition
Behälter
WWW-Dienst-geber
Java 2 SDK
Transaktionsverwaltung
Nachrichten-warteschlangen-
Verwaltung
Kon
nekt
ore
n
Java
S
ervl
ets
Java
S
erve
r P
ages
Dienst-nehmer
Dienst-nehmer
Fremd-Produkt
Fremd-Produkt
.....Behälter Behälter
Kommunikation(HTTP, IIOP, RMI)
HT
ML,
XM
L, S
SL
CORBA-An-
passung
Daten-bank
(JDBC)
Transak-tionen(JTA)
Nach-richten (JMS)
Registra-tur
(JNDI)
XML(JAXP)
Sicher-heit
DBMS
relational
objektorientiert
7
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Umsetzung: Java 2 Enterprise Edition
Behälter
WWW-Dienst-geber
Java 2 SDK
Transaktionsverwaltung
Nachrichten-warteschlangen-
Verwaltung
Kon
nekt
ore
n
Java
S
ervl
ets
Java
S
erve
r P
ages
Dienst-nehmer
Dienst-nehmer
Fremd-Produkt
Fremd-Produkt
.....Behälter Behälter
Kommunikation(HTTP, IIOP, RMI)
HT
ML,
XM
L, S
SL
CORBA-An-
passung
Daten-bank
(JDBC)
Transak-tionen(JTA)
Nach-richten (JMS)
Registra-tur
(JNDI)
XML(JAXP)
Sicher-heit
DBMS
Informationsintegration und Web-Portale
Datenbankeinsatz
Transaktionsverwaltung
Datenbankim-plementierung
8
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Kapitel 1.2Kapitel 1.2
Grundsätze zentraler ArchitekturenGrundsätze zentraler Architekturen
9
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Vom Dienst zur Architektur (1)
Algorithmen und Datenstrukturen
Dienst
Leistungsangebot nach außen
Leistungserbringung intern
Kapselung:außen: keine Kenntnis der internen Erbringung erforderlichinnen: keine Kenntnis der äußeren Nutzung erforderlich
Liefert viel Freiheit bei der Umsetzung!
10
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Vom Dienst zur Architektur (2)
Algorithmen und Datenstrukturen
Dienst
Viel Freiheit bei der Umsetzung!Architektur: Disziplinierte Umsetzung
Strukturelle Definition:Die Software-Architektur eines
Programms oder Rechensystems ist die Struktur eines Systems und umfasst
Softwarekomponenten, deren nach außen sichtbare
Eigenschaften und die Beziehungen zwischen den
Komponenten.
11
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Der Weg zur Architektur Einbezug von Erfahrungswissen: pattern-oriented
software architecture:
A pattern for software architecture (or architectural pattern) describes a particular, recurring design problem that arises in specific design contexts, and presents a well-proven generic scheme for its solution. A pattern expresses a fundamental structural organization schema for software systems, describes their constituent components, specifies their responsibilities, and includes rules and guidelines for organizing the relationships between them and the ways in which they collaborate.
12
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Muster Schichtenarchitektur (1)
Algorithmen und
Datenstrukturen
Dienst
Wiederholte Anwendung der Dienstsicht:Vorherrschendes Muster für große zentralisierte Systeme
Hw- und BS-Ressourcen
Lücke zu groß
Hw, BS
Dienst 1
Dienst 0
Dienst 2
Dienst 3
Dienst 4
Dienst 5
13
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Muster Schichtenarchitektur (2)
Hw, BS
Dienst 1
Dienst 0
Dienst 2
Dienst 3
Dienst 4
Dienst 5Dienst n
Schicht n
Dienst n-1
Schicht n-1
Dienst n-2
Schicht n-2
Dienst 0Hw, BS
Dienst 1
Schicht 1
14
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
si
Korrektheit von Schichtenarchitekturen (1)s‘ioi
ti ti
si-1 s‘i-1pi-1
Ebene i realisiere einen Ressourcen-Verwalter Mi mit einer Funktionalität, die sich in einer Dienstschnittstelle D i ausprägt. Die Realisierung bedient sich der Ressourcen auf der Ebene i-1, die von einem Ressourcen-Verwalter Mi-1 mit einer Dienstschnittstelle Di-1 verwaltet werden.
Dienst-Schnittstelle Di
Dienst-Schnittstelle Di-1
Schicht i
(Ressourcen-Verwalter Mi)
15
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Korrektheit von Schichtenarchitekturen (2)
Grundsätze:
Die Dienste Di-1 (die Regeln für die Strukturierung der Daten und die auf die Daten anwendbaren Operatoren), welche Ressourcen-Verwalter Mi-1 zur Verfügung stellt, bilden die alleinige und vollständige Grundlage für die Realisierung von Verwalter Mi, d.h. zur Realisierung von Mi darf nicht auf Dienste Dj von Mj, j < i-1, zurückgegriffen werden.
Strukturierungsregeln und Operatoren dürfen unverändert von Di-1 in die Dienste Di von Verwalter Mi übernommen werden, vorausgesetzt dass sie nicht auch zur Realisierung neuer Strukturierungsregeln oder Operatoren in Di beitragen.
Begründung: Keine unkontrollierte Fortpflanzung der Änderungen in einer Schicht
nach oben. Beweis der Korrektheit der Realisierung der Dienste Di eines Verwalters
Mi lokal zu führen, weil man die Korrektheit von Di-1 unterstellen kann.
16
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
si
Schnittstelle Di-1
Schnittstelle Di
Schicht i
(Ressourcen-Verwalter Mi)
oi(ti(si-1)) = ti(pi-1(si-1))
Korrektheit von Schichtenarchitekturen (3)
s‘ioi
ti ti
si-1 s‘i-1pi-1
17
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Einflussfaktoren auf die Schichtung (1)
Algorithmen undDatenstrukturen
Dienst
Dienstfunktionalität
Sammlung von Funktionen, die in einem erkennbarenZusammenhang stehen, abereinzeln abgerufen werden können (Datenbanksystem: Datenmodell)
Dienst n
Schicht n
Dienst n-1
Schicht n-1
Dienst n-2
Schicht n-2
Dienst 0Hw, BS
Dienst 1
Schicht 1
Wiederverwendbarkeit der Funktionalität
Zunehmende Anwendungsbreite
(abnehmende Anwendungsnähe)
18
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Einflussfaktoren auf die Schichtung (2)
Algorithmen undDatenstrukturen
Dienst
Nichtfunktionale Eigenschaften
Dienst n
Schicht n
Dienst n-1
Schicht n-1
Dienst n-2
Schicht n-2
Dienst 0Hw, BS
Dienst 1
Schicht 1
DauerhaftigkeitPerformanzSkalierbarkeitZuverlässigkeit
19
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Kapitel 1.3Kapitel 1.3
Referenz-Schichtenarchitektur Referenz-Schichtenarchitektur für Datenbanksystemefür Datenbanksysteme
20
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Dienstfunktionalität (1)
Mengenorientiertes Datenmodell
Datenmodell
Dateien
Dateiverwaltung
Geräteschnittstelle
Geräte-E/A
Datentypen:Satzmengen
Operatoren:Operatoren auf Mengen
Datentypen:Block = feste Anzahl von BytesDatei = variable Anzahl v. Blöcken
Operatoren: Dateien anlegen/öffnen/schließen Lesen/Schreiben von Blöcken
Aufgaben: Bereitstellung eines Namensraums für Dateien Platzierung von logischen Blöcken auf dem
Speichermedium gemäß Speicherstruktur Freispeicherverwaltung auf dem Speichermedium Prüfung von Lese- u. Schreiboperationen Bedienung der Geräteschnittstelle
21
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Dienstfunktionalität (2)
Mengenorientiertes Datenmodell
Datenmodell
Dateien
Dateiverwaltung
Geräteschnittstelle
Geräte-E/A
Anfragebearbeitung
Satzorientiertes DatenmodellDatentypen:
Sätze und SatzmengenOperatoren:
Operatoren auf Sätzen
Datentypen:Satzmengen
Operatoren:Operatoren auf Mengen
Datentypen:Block = feste Anzahl von BytesDatei = variable Anzahl v. Blöcken
Operatoren: Dateien anlegen/öffnen/schließen Lesen/Schreiben von Blöcken
Aufgaben: Abbildung von externen auf interne
Satzmengen Übersetzung von Anfragen auf Mengen in
Folgen von Satz-Operationen Optimierung dieser Operationsfolgen Durchsetzung von Konsistenzbedingungen
22
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Dienstfunktionalität (3)
Mengenorientiertes Datenmodell
Datenmodell
Dateien
Dateiverwaltung
Geräteschnittstelle
Geräte-E/A
Anfragebearbeitung
Satzorientiertes DatenmodellDatentypen:
Sätze und SatzmengenOperatoren:
Operatoren auf Sätzen
Datentypen:Satzmengen
Operatoren:Operatoren auf Mengen
Datentypen:Block = feste Anzahl von BytesDatei = variable Anzahl v. Blöcken
Operatoren: Dateien anlegen/öffnen/schließen Lesen/Schreiben von Blöcken
?
23
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Dauerhaftigkeit
Register
Prozessor Cache
Hauptspeicher
Festplattenspeicher
Archivspeicher (Bänder, DVD etc.)
Register
Prozessor Cache
Hauptspeicher
Festplattenspeicher
Archivspeicher (Bänder, DVD etc.)
Speicherhierarchie:
nichtflüchtig
flüchtig
Dauerhaftigkeit
Verarbeitung
24
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Performanz (1)
Register
Prozessor Cache
Hauptspeicher
Festplattenspeicher
Archivspeicher (Bänder, DVD etc.)
Register
Prozessor Cache
Hauptspeicher
Festplattenspeicher
Archivspeicher (Bänder, DVD etc.)
Speicherhierarchie:
nichtflüchtig
flüchtig
sec
1-10ns
10-100ns
100-1000ns
10 ms
1 ms = 1.000.000 ns
Zugriffslücke 105
25
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Performanz (2)
Performanz: (Geeignete) Leistung gemessen in Durchsatz oder Antwortzeiten
Skalierbarkeit: Erhaltung der Leistung unter wachsender Last
Hauptmaßnahme Überwinden der Zugriffslücke: Replizierung der benötigten Teile der Datenbasis im flüchtigen Hauptspeicher. Entspricht einer Vorratshaltung. „benötigt“ bedarf des Vorwissens über die Verwendung.
Nur realistisch, wenn Hauptspeicher- und Cache-Größen entsprechende Zuwächse aufweisen. Hauptspeicher (RAM) mit enormen Kapazitätszuwächsen, heute
bei Arbeitsplatzrechnern in den GB-Bereich.
26
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Performanz (3)
Mengenorientiertes Datenmodell
Datenmodell
Dateien
Dateiverwaltung
Geräteschnittstelle
Geräte-E/A
Anfragebearbeitung
Satzorientiertes DatenmodellDatentypen:
Sätze und SatzmengenOperatoren:
Operatoren auf Sätzen
?
Performanz
Hintergrundspeicher
Hauptspeicher
Zunehmende Breite des Vorwissens über die Nutzung
Datentypen:Satzmengen
Operatoren:Operatoren auf Mengen
Datentypen:Block = feste Anzahl von BytesDatei = variable Anzahl v. Blöcken
Operatoren: Dateien anlegen/öffnen/schließen Lesen/Schreiben von Blöcken
27
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Performanz (4)
Mengenorientiertes Datenmodell
Datenmodell
Dateien
Dateiverwaltung
Geräteschnittstelle
Anfragebearbeitung
Satzorientiertes Datenmodell
Speicherstruktur
Schneller Transport zwischen Haupt- und Hintergrundspeicher
Hauptspeicherseiten u. Segmente
Segment- u. Pufferverwaltung Bevorratung von Daten im Hauptspeicher (rechtzeitige Bereitstellung vor Benutzung)
Transparenter homogener Speicher Datentypen:
Seite = feste Anzahl von BytesSegment = var. Anzahl von Seiten
Operatoren:Anforderung/Freigabe von SeitenSegmente anlegen/öffnen/schließen
Datentypen:Block = feste Anzahl von BytesDatei = variable Anzahl v. Blöcken
Operatoren: Dateien anlegen/öffnen/schließen Lesen/Schreiben von Blöcken
Geräte-E/A
Aufgaben: Zuordnung von Segmenten zu Dateien Zuordnung von Seiten zu Dateiblöcken Anstoß und Überwachung von Seiten-Transfers
zwischen Haupt- u. Hintergrundspeicher Minimierung von Transfer-Wartezeiten durch
geeignete Pufferungs-Strategien gemäß Zugriffsmuster
Datentypen:Sätze und Satzmengen
Operatoren:Operatoren auf Sätzen
Datentypen:Satzmengen
Operatoren:Operatoren auf Mengen
Performanz
28
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Performanz (5)
Mengenorientiertes Datenmodell
Datenmodell
Dateien
Dateiverwaltung
Geräteschnittstelle
Anfragebearbeitung
Satzorientiertes Datenmodell
Speicherstruktur
Schneller Transport zwischen Haupt- und Hintergrundspeicher
Hauptspeicherseiten u. Segmente
Segment- u. Pufferverwaltung Bevorratung von Daten im Hauptspeicher (rechtzeitige Bereitstellung vor Benutzung)
Transparenter homogener Speicher Datentypen:
Seite = feste Anzahl von BytesSegment = var. Anzahl von Seiten
Operatoren:Anforderung/Freigabe von SeitenSegmente anlegen/öffnen/schließen
Datentypen:Block = feste Anzahl von BytesDatei = variable Anzahl v. Blöcken
Operatoren: Dateien anlegen/öffnen/schließen Lesen/Schreiben von Blöcken
Geräte-E/A
Satz- u. Satzmengenverwaltung
Satzzugriffsstrukturen
Zugriffsschicht
Vorschau auf zukünftig benötigte Daten
Vermeiden nicht aktuell benötigter Daten
Datentypen:Sätze und Satzmengen
Operatoren:Operatoren auf Sätzen
Datentypen:Satzmengen
Operatoren:Operatoren auf Mengen
Datentypen:phys. Zugriffsstrukturen auf Sätze
Operatoren:seq. Durchlauf, gezielte Suche
Performanz
29
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Performanz (6)
Mengenorientiertes Datenmodell
Datenmodell
Dateien
Dateiverwaltung
Geräteschnittstelle
Anfragebearbeitung
Satzorientiertes Datenmodell
Speicherstruktur
Schneller Transport zwischen Haupt- und Hintergrundspeicher
Hauptspeicherseiten u. Segmente
Segment- u. Pufferverwaltung Bevorratung von Daten im Hauptspeicher (rechtzeitige Bereitstellung vor Benutzung)
Transparenter homogener Speicher Datentypen:
Seite = feste Anzahl von BytesSegment = var. Anzahl von Seiten
Operatoren:Anforderung/Freigabe von SeitenSegmente anlegen/öffnen/schließen
Datentypen:Block = feste Anzahl von BytesDatei = variable Anzahl v. Blöcken
Operatoren: Dateien anlegen/öffnen/schließen Lesen/Schreiben von Blöcken
Geräte-E/A
Satz- u. Satzmengenverwaltung
Satzzugriffsstrukturen
Zugriffsschicht
Vorschau auf zukünftig benötigte Daten
Vermeiden nicht aktuell benötigter Daten
Datentypen:Sätze und Satzmengen
Operatoren:Operatoren auf Sätzen
Datentypen:Satzmengen
Operatoren:Operatoren auf Mengen
Datentypen:phys. Zugriffsstrukturen auf Sätze
Operatoren:seq. Durchlauf, gezielte Suche
PerformanzAufgaben: Abbildung von Satzmengen auf physische
Datenstrukturen gemäß Zugriffsmuster Abbildung von Satz- u. Satzmengenoperatoren
auf Operatoren der phys. Datenstruktur
Aufgaben: Implementierung der physischen
Datenstrukturen in einem virtuellen Adressraum
30
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Performanz (7)
Mengenorientiertes Datenmodell
Datenmodell
Dateien
Dateiverwaltung
Geräteschnittstelle
Anfragebearbeitung
Satzorientiertes Datenmodell
Speicherstruktur
Schneller Transport zwischen Haupt- und Hintergrundspeicher
Hauptspeicherseiten u. Segmente
Segment- u. Pufferverwaltung Bevorratung von Daten im Hauptspeicher (rechtzeitige Bereitstellung vor Benutzung)
Transparenter homogener Speicher Datentypen:
Seite = feste Anzahl von BytesSegment = var. Anzahl von Seiten
Operatoren:Anforderung/Freigabe von SeitenSegmente anlegen/öffnen/schließen
Datentypen:Block = feste Anzahl von BytesDatei = variable Anzahl v. Blöcken
Operatoren: Dateien anlegen/öffnen/schließen Lesen/Schreiben von Blöcken
Geräte-E/A
Satz- u. Satzmengenverwaltung
Satzzugriffsstrukturen
Zugriffsschicht
Vorschau auf zukünftig benötigte Daten
Vermeiden nicht aktuell benötigter Daten
Datentypen:Sätze und Satzmengen
Operatoren:Operatoren auf Sätzen
Datentypen:Satzmengen
Operatoren:Operatoren auf Mengen
Datentypen:phys. Zugriffsstrukturen auf Sätze
Operatoren:seq. Durchlauf, gezielte Suche
Optimaler Einsatz der logischen Ressourcen
Performanz
31
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Zuverlässigkeit: Konsistenz
Ideal: Volle und aktuelle Übereinstimmung von Datenbasis und Miniwelt:Semantische Konsistenz
min 100%
Zustände als Ergebnis von Operatoren, die das Datenbasisschema interpretieren:Schemakonsistenz
Konsistenzbedingungen zur weiteren Einschränkung des Zustandsraums: Formale Konsistenz
32
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Zuverlässigkeit: Schemakonsistenz
Mengenorientiertes Datenmodell
Anfragebearbeitung
Satzorientiertes Datenmodell
Satz- u. Satzmengenverwaltung
Satzzugriffsstrukturen
Zugriffsschicht
Hauptspeicherseiten u. Segmente
Segment- u. Pufferverwaltung
Dateien
Dateiverwaltung
Geräteschnittstelle
Primärdaten
Daten-wörterbuch
Metadaten
Steuerung der generischen Operatoren durch Schemadaten
33
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Zuverlässigkeit: Transaktionale Konsistenz
Ideal: Volle und aktuelle Übereinstimmung von Datenbasis und Miniwelt:Semantische Konsistenz
min 100%
Zustände als Ergebnis von Operatoren, die das Datenbasisschema interpretieren:Schemakonsistenz
Konsistenzbedingungen zur weiteren Einschränkung des Zustandsraums: Formale Konsistenz
Einzelne Operation:Garantiert SchemakonsistenzTransaktion:Garantiert beim Abschluss formale Konsistenz und vereinbarte semantische Konsistenz (sofern diese am Anfang gegeben war)
Transaktionen: Prozedurale Konsistenzkontrolle
34
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Zuverlässigkeit: Unverletzlichkeit
Unverletzlichkeit: Gewährleistung der Konsistenz der Datenbasis zu allen Zeiten Da Transaktion Einheit der Konsistenz ist, müssen alle
Maßnahmen der Konsistenzsicherung bei den Transaktionen ansetzen
Maßnahmen: Persistenz: Herstellen der Dauerhaftigkeit erst bei
erfolgreichem Transaktionsabschluss
Fehler-Resistenz: Üblich: Zurücksetzen auf den Transaktionsanfang.
Konflikt-Resistenz: Isolation der Transaktionen untereinander.
Recovery-Verwalter
Scheduler
35
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Zuverlässigkeit: Transaktionen (1)
Übliche Platzierung von Scheduler und Recovery-Verwalter: Recovery-Verwalter benötigt Wissen um Transporte zwischen
Haupt- und Hintergrundspeicher
Konsequenz: Integration mit Segmentverwaltung
Scheduler sollte mit denselben Einheiten wie der Recovery-Verwalter umgehen, daher Ansiedlung dort
Folge: Transaktion muss als solche in der Segmentverwaltung noch erkennbar sein.
36
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Zuverlässigkeit: Transaktionen (2)
Mengenorientiertes Datenmodell
Anfragebearbeitung
Satzorientiertes Datenmodell
Satz- u. Satzmengenverwaltung
Satzzugriffsstrukturen
Zugriffsschicht
Hauptspeicherseiten u. Segmente
Dateien
Dateiverwaltung
Geräteschnittstelle
Scheduler
Recovery-Verwalter
Segment- u. Pufferverwaltung
Transaktion:Eine vom Benutzer als abgeschlossene Arbeitseinheit definierte Folge von Anfragen (Operatoren auf Mengen)
37
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Archivver-waltung
Grobarchitektur aus KomponentenDatenbasis-Verwaltungssystem
Datenverwaltungs-Schnittstelle(Externes Datenmodell)
Datenbasis(Ressource)
Anfragemaschine(query engine)
Betriebssystem(operating system)
Datenwör-terbuch
(data dictionary)
Transak-tionsver-waltung
Datenmodell
Konflikt-Resistenz
Seiten
Speichermaschine(storage engine)
Dateien
Performanz
Konsistenz
Dauerhaftigkeit
Fehler-Resistenz, Persistenz
38
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Einfluss: Art der Datenquellen
Strukturierte Daten: relationale, objektorientierte und andere Datenbanken festes Schema präzise Semantik vielfältige Verarbeitungsmöglichkeiten
Semistrukturierte Daten: XML, HTML selbstbeschreibend durch integrierte Metadaten (Tags) optionales Schema, bei Abwesenheit keine präzise Semantik Verarbeitungsmöglichkeiten umso vielfältiger, je besser die
Struktur bekannt ist Unstrukturierte Daten: Texte, Bilder, Videoclips, ...
kein Schema unpräzise Semantik spezialisierte Verarbeitungsmöglichkeiten
39
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Kapitel 1.4Kapitel 1.4
HauptaufgabenHauptaufgaben
40
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Entwicklung und Pflege
Mengenorientiertes Datenmodell
Anfragebearbeitung
Satzorientiertes Datenmodell
Satz- u. Satzmengenverwaltung
Satzzugriffsstrukturen
Zugriffsschicht
Hauptspeicherseiten u. Segmente
Dateien
Dateiverwaltung
Geräteschnittstelle
Scheduler
Recovery-Verwalter
Segment- u. Pufferverwaltung
Vorrat an Implementie-
rungs-techniken
Strukturierung nach
Schichten
41
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Administration/Tuning
Mengenorientiertes Datenmodell
Anfragebearbeitung
Satzorientiertes Datenmodell
Satz- u. Satzmengenverwaltung
Satzzugriffsstrukturen
Zugriffsschicht
Hauptspeicherseiten u. Segmente
Dateien
Dateiverwaltung
Geräteschnittstelle
Scheduler
Recovery-Verwalter
Segment- u. Pufferverwaltung
Vorrat an Implementie-
rungs-techniken
Auswahl und Parametrierun
g
42
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Betrieb
Mengenorientiertes Datenmodell
Anfragebearbeitung
Satzorientiertes Datenmodell
Satz- u. Satzmengenverwaltung
Satzzugriffsstrukturen
Zugriffsschicht
Hauptspeicherseiten u. Segmente
Dateien
Dateiverwaltung
Geräteschnittstelle
Scheduler
Recovery-Verwalter
Segment- u. Pufferverwaltung
Vorrat an Implementie-
rungs-techniken
Optimale Auswahl vorhandener Techniken
43
© 2008 Univ,Karlsruhe, IPD, Prof. Lockemann DBI 1
Abhängigkeiten
Optimale Auswahl vorhandener Techniken
Auswahl und Parametrierun
g
Bevorratung nach
Schichten
Zugriffs-profile