Objektrelationale, erweiterbare Datenbanken

Werbung
Kapitel 1
Einführung und Motivation
Erinnerung - Aufgaben eines DBMS
Grobcharakterisierung objektrelationaler Datenbanken
Evolution von Datenmodellen und Datenbanksystemen
Prinzip der Erweiterbarkeit
Aufgaben eines Datenbankmanagementsystems
Integration
Bereitstellen eines Datenmodells, mit dessen Konzepten
alle Daten einheitlich beschrieben werden
Persistenz
effiziente Verwaltung großer Mengen gespeicherter Daten
Datenunabhängigkeit
zweckmäßige Organisation der Daten (Trennung logischen
und physischen Aspekten)
Anfragesprache
deskriptiver Zugriff auf die Daten
Transaktionen
atomare, konkurrierende Ausführung logisch
zusammengehörender Operationen
Datenintegrität
Sicherung der Datenkonsistenz (semantische Korrektheit)
Datensicherung
Sicherheit gegen Datenverlust
Zugriffskontrolle
Schutz gegen unbefugten Zugriff
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-2
Datenmodelle
z
Trennung zwischen
–
–
z
Datenmodell
–
–
z
Schema (Datenbeschreibung; Meta-Daten) und
Instanz (Datenausprägung/-zustand; Anwenderdaten)
bietet Konzepte zur Beschreibung der Daten und der Beziehung zwischen den
Daten
legt Syntax und Semantik von Datenbeschreibungen fest
Typischerweise besitzt ein DBS mind. zwei Datenmodelle
–
–
logisches: zur benutzerorientierten Repräsentation der Daten
physisches: zur speicherorientierten Repräsentation der Daten
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-3
Abstraktionsstufen
DB-Schema
Datenmodell
„
„
„
primitive Typen
Typkonstruktoren
Operationen
Grundsätzliche
Organisation des
DBMS
DB-Entwurf
„
„
konkrete Typen
Integritätsbedingungen
DB-Instanz
DB-Betrieb
Organisation der DB
für eine bestimmte
Miniwelt
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
„
konkrete Daten
(Elemente der
Typen aus
dem DB-Schema)
Beschreibung eines
bestimmten Zustands
der Miniwelt
1-4
Objektrelational = Relational + Objektorientiert?
Objektorientierte
Datenbank
Relationale
Datenbank
Objektrelationale
Datenbank
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-5
Historie von Datenbanksystemen
1960-70
1970-90
Dateisysteme
Standardisierte
DB-Schnittstelle,
z.B. SQL
1990-1997
Seit 1997
DB-Server mit
Stored Procedures
und Trigger
DB-Server mit
objektrelationalen
Erweiterungen
AP
AP
...
...
AP
AP
...
AP
AP
Datenverarbeitung
DB-Server
Dateizugriff
DB-Server
DB-Server
Dateien
Datenbank
mit Stored
Procedures
und Trigger
Datenbank
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
mit Stored
Procedures
und Trigger +
Objektrelationale
Erweiterungen
Datenbank
1-6
Grobe Einordnung von Datenmanagementsystemen
… nach Stonebraker (Object-Relational DBMSs - the next great wave - Morgan Kaufman 1996)
Einfache Daten 100
Anfragen
Komplexe Daten 150
Anfragen
Relationale
Datenbanken
Objektrelationale
Datenbanken
Einfache Daten
Keine Anfragen
Komplexe Daten
Keine Anfragen
Dateien
Objektorientierte
Datenbanken
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1
1-7
Datenbankunterstützung
Klassische Anwendungsgebiete für Relationale
Datenbanken
A-F
9
?
9
?
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
This is a text
document describ
This is a text
the usefulnes of
document describ
database technol
This is a text
the usefulnes of
...
document describ
database technol
the usefulnes of
...
database technol
...
?
?
1-8
Was ist speziell an Non-Standard-Anwendungen?
z
Komplexe Struktur der Objekte
–
–
z
Grosse Objekte
–
z
Luftbild-Auswertung
Spezielle Eigenschaften
–
z
Geografische Objekte, topografische und thematische Karten
Formulare, Text/Bildobjekte
Geometrische Sonderfälle, Echtzeitaspekte bei Audio- und Videoanwendungen
Spezielle Prädikate und Operationen
–
–
Überdeckt, Liegt-innerhalb, Schneidet, ...
Distanz, Fläche, Volumen, ...
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-9
Evolution von Datenmodellen
Mächtigkeit
der Operationen
RelationenModell
Dateien
Komplexe
Objekte/
Geschachtelte
Relationen
Hierarchisches
Modell
Rekursiv
Geschachtelte
Relationen
NetzwerkModell
Objektrelationale
Datenmodelle
Semantische
Datenmodelle/
Objektorientierte
Datenmodelle
Strukturelle Komplexität
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-10
Objektrelationale Datenmodelle
z
Was sind objektrelationale Datenmodelle?
–
–
–
Relationales Datenmodell angereichert um "objektorientierte" Konzepte?
Objektmodell angereichert um "relationale" Konzepte?
Neues Datenmodell?
z
Welche Erweiterungen der Anfragesprache sind notwendig?
z
Aspekte der Objektorientierung
–
–
–
–
–
–
–
Strukturierung (komplexe Datenstrukturen)
Einkapselung und Methoden
Spezialisierung (Wiederverwendbarkeit)
Substituierbarkeit
Polymorphie
Erweiterbarkeit
…
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-11
Motivation für ORDM - Kollektionstypen
z
Relationale Umsetzung: Kollektion als eigene Tabelle
z
Nachteile
–
–
–
–
Aufwand bei der Datendefinition: Information über ein Realwelt-Objekt
verstreut gespeichert in mehreren Tabellen
„ Zusammenhang durch Primär-/Fremdschlüsselbedingungen modelliert
Komplexere Anfrageformulierung, z. B.
„ Zugriff auf gesamte Information erfordert Verbund mehrerer Tabellen
Potentielle Performance-Probleme aufgrund von Declustering
Wiederkehrende Nachbildung spezieller Kollektionsoperatoren bzw.
-eigenschaften, z. B. Listenkonkatenation bzw. Ordnung von Listenelementen
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-12
Motivation für ORDM - Tabellenhierarchien (1)
z
Relationale Umsetzung mittels vertikaler Partitionierung
–
–
z
Jede Klasse (ohne die geerbten Attribute) bildet eine Relation
Subklassenhierarchie durch Fremdschlüsselbeziehungen modelliert
Nachteile
–
–
Aufwand bei der Datendefinition: Untermengenbeziehung zw. Super- und
Subklasse erfordert Programmierung von Triggern und Stored Procedures
„ Automatisches Löschen eines Tupels aus allen Super- und Subtabellen
„ Automatisches Einfügen in alle Supertabellen
„ Updates auf Primär- und Fremdschlüsselwerten entweder ganz verbieten
oder konsistent auf allen Super- bzw. Subtabellen ändern
Komplexe Anfrageformulierung, z. B.
„ Verbund notwendig, um alle Daten eines Subklassenobjekts zu ermitteln
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-13
Motivation für ORDM - Tabellenhierarchien (2)
z
Relationale Umsetzung mittels horizontaler Partitionierung
–
–
z
Jede Klasse bildet mit den geerbten Attributen eine Relation
Relationen sind "extensional disjunkt"
Nachteile
–
–
Aufwand bei der Datendefinition: Untermengenbeziehung zw. Super- und
Subklasse erfordert Trigger-Programmierung
„ Einfügen verhindern, wenn eine andere Tabelle der Hierarchie ein Tupel mit
dem gleichen Schlüsselwert besitzt
„ Update eines Schlüsselwertes verhindern, falls bereits ein Tupel mit dem
gleichen Schlüsselwert in einer anderen Tabelle der Hierarchie existiert
Komplexere Anfrageformulierung, z. B.
„ Vereinigung notwendig, um alle Objekte einer Superklasse anzuzeigen
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-14
Motivation für ORDM - Tabellenhierarchien (3)
Person Name Anschrift
UNDER
Objektrelationale Umsetzung
mit nur einem Schlüsselwort
Kunde KNr Limit
Vertikale Partitionierung
Person Name Anschrift ID
PRIMARY KEY(ID), BEFORE UPDATE + BEFORE DELETE TRIGGER
Kunde KNr Limit ID
PRIMARY KEY(ID), FOREIGN KEY(ID),
STORED PROCEDURE: InsertKunde(ID, Name, Anschrift, KNr, Limit)
AFTER UPDATE + AFTER DELETE TRIGGER
Horizontale Partitionierung
Person Name Anschrift ID
PRIMARY KEY(ID), BEFORE INSERT + BEFORE UPDATE TRIGGER
Kunde Name Anschrift KNr Limit ID
PRIMARY KEY(ID),
BEFORE INSERT +AFTER UPDATE TRIGGER
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-15
Motivation für ORDM - Methoden
z
Relationale Umsetzung: Typspezifische, immer wieder benötigte
Funktionen redundant in Anwendungsprogrammen implementiert
z
Nachteile
–
–
–
Höhere Fehlerquote
Schlechtere Wartbarkeit (Basiswissen zerstreut über DB und Anwendungen)
Höhere Netzwerkbelastung & schlechtere Performance
„ z.B. Finden von angrenzenden Grundstücken: 1.000.000 GrundstückObjekten werden in die Anwendung übertragen, obwohl nur vier
Grundstücke relevant sind
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-16
Datenbankunterstützung und Erweiterbarkeit
A-F
9
9
This is a text
document describ
This is a text
the usefulnes of
document describ
database technol
This is a text
the usefulnes of
...
document describ
database technol
the usefulnes of
...
database technol
...
9
Klassische und
Non-Standard-Anwendungsgebiete für
objektrelationale, erweiterbare Datenbanken
9
9
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
9
1-17
Prinzip der Erweiterbarkeit
z
Erweiterung des Datenmodells um anwendungsspezifische Datentypen
–
z
Erweiterung der Anfragesprache um neue Operationen passend zu den
neuen Datentypen
–
z
Schnitt zweier Geometrieobjekte, Finden ähnlicher Bilder, ...
Erweiterung um passende Methoden des physischen Datenbankentwurfs
–
z
Geometrieobjekte, digitalisierte Bildobjekte oder Audiodaten, ...
R-Baum, Grid-File für Geometrieobjekte, Multidimensionale Indexstrukturen, ...
Erweiterung der Anfrageoptimierung
–
Benutzerdefinierte Kostenfunktionen für Index und Funktionen
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-18
Zentrale Komponenten eines DBMS & Erweiterbarkeit
z
Anfrageverarbeitung und -optimierung
–
–
z
Indexverwaltung
–
z
Bearbeitung von Anfragen basierend auf neuen Basisdatentypen und
benutzerdefinierten Datentypen
Berücksichtigung neuer Funktionen und Prädikate bei der Anfrageoptimierung
Bereitstellung und Verwaltung effizienter Zugriffstrukturen
Speicherverwaltung
–
–
Speicherung von Instanzen neuer Basisdatentypen bzw. benutzerdefinierter
Datentypen
Umsetzung effizienter Speicherorganisationstechniken
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-19
Architekturvarianten
z
Schichtenarchitektur
–
–
z
Monolithische Architektur
–
–
z
Erweiterungen als Anwendungsprogramme
Datenbanken mit Spezialaufsatz
„ GIS/ArcInfo,
Integrierte Erweiterungen
Spezialsysteme
„ GIS/Smallworld, Altavista, MS Office
Erweiterbare Architektur
–
–
Erweiterungen als Module
„ Funktionen für den Anfrageoptimierer
„ Speicherung spezieller Datenformate
„ Spezielle Zugriffsmethoden
Objektrelationale DBMS
„ Oracle, DB2, Informix, Postgres
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
Erweiterung
DBMS
DBMS +
Erweiterung
Erweiterung
DBMS
Erweiterung
Erweiterung
1-20
Zusammengefasst: Objektrelationale DBMS
z
Ziele
–
–
–
z
Anwendung von Datenbankfunktionalität auf Non-Standard-Daten
Evolutionäre Erweiterung relationaler DBMS
„ Integration objektorientierter Konzepte
„ Aufwärtskompatibilität basierend auf SQL
Vereinigung der Vorteile relationaler und objektorientierter DBMS
Metamorphose von monolithischen Systemen zu Rahmendiensten
–
–
Datenbanksystem stellt Basisdienste zur Verfügung, z.B. relationale
Funktionen, Datenverwaltung, Transaktionssynchronisation, Recovery,
Zugriffskontrolle, ...
Bausteinartige, anwendungsbezogene Ergänzung der Basisdienste durch
gekaufte oder selbst entwickelte Erweiterungsmodule
Vorlesung "Objektrelationale, erweiterbare Datenbanken" - WS 2003/2004 (Dr. Can Türker)
1-21
Herunterladen