1.5 Themenüberblick

In den nachfolgenden Kapiteln werden die wichtigsten Implementierungskonzepte und -techniken zentralisierter DBS im Rahmen unseres Schichtenmodells von "unten nach oben" eingeführt, analysiert und bewertet. Dazu orientieren wir uns an der Grobarchitektur von Abb. 1.6 und gliedern unsere Aufgabe in vier große Teilbereiche - Speichersystem, Zugriffssystem, Datensystem undTransaktionsverwaltung. Die besonderen Aspekte der Metadatenverwaltung werden dabei zusammen mit den Aufgaben, Funktionen und Strukturen der Abbildungsschichten diskutiert, wie es auch das verfeinerte Schichtenmodell nach Abb. 1.7 verdeutlicht.

Teil II beschreibt die Aufgaben des Speichersystems, das eine Menge von Externspeichern zu verwalten und eine abstrakte Zugriffsschnittstelle für sie im Hauptspeicher zur Verfügung zu stellen hat. Dazu werden zunächst in Kapitel 2 die wesentlichen Konzepte zur Realisierung einer Ein-/Ausgabe-Architektur sowie die Eigenschaften der wichtigsten Speichermedien, die in DBS ihren Einsatz finden, skizziert. Zu den wichtigsten Aufgaben der Externspeicherverwaltung zählt die Bereitstellung geeigneter Abstraktionskonzepte, mit denen die Charakteristika externer Geräte für die übrigen DBS-Komponenten verborgen werden. Dazu sind flexible Datei- und Segmentkonzepte sowie adäquate Adressierungsverfahren zu entwickeln. Spezielle Einbringverfahren für Änderungen und Fehlertoleranzmaßnahmen erlauben eine vereinfachte Fehlerbehandlung in den Abbildungschichten des Speichersystems (Kapitel 3 und 4). Schließlich muß eine leistungsfähige DB-Pufferverwaltung mit zugeschnittenen Such-, Zuordnungs- und Ersetzungsverfahren von Seiten für eine Minimierung des physischen E/A-Operationen sorgen, um damit den Grundstein für ein gutes Leistungsverhalten des Gesamtsystems zu legen (Kapitel 5).

In Teil III werden alle Funktionen des Zugriffssystems mit einer Vielfalt von Implementierungsmethoden für Speicherungsstrukturen und Zugriffspfade dargestellt. Techniken zur Speicherung von einfachen, komplex-strukturierten und langen Objekten sowie verschiedene Verfahren zu ihrer Adressierung werden in Kapitel 6 behandelt. Eindimensionale Zugriffspfade erlauben mit Hilfe von Primär- oder Sekundärschlüssel ein effizientes Aufsuchen von einzelnen Sätzen oder Satzmengen. Eine großes Spektrum solcher Strukturen wird in Kapitel 7 eingeführt; dabei werden die einzelnen Zugriffspfadtypen mit Hilfe eines einheitliches Schemas klassifiziert und auf ihre Tauglichkeit beim DBS-Einsatz hin bewertet. Methoden zum Verknüpfen und Aufsuchen von Sätzen unterschiedlichen Satztyps gestatten die Unterstützung typübergreifender Operationen und komplexerer Auswertungsvorgänge (Kapitel 8). Mehrdimensionale Zugriffspfade, die durch neue Anwendungsklassen wie Data Warehouse, Geographische Informationssysteme usw. heute eine besondere Aktualität gewonnen haben, lassen in effizienter und symmetrischer Weise das Aufsuchen von Sätzen über k Schlüssel (und Teilmengen davon) zu. Die wichtigsten Verfahren für solche Zugriffspfade, die exakte Anfragen, den "räumlichen" Zugriff und Ähnlichkeitssuche bei punktförmigen und räumlich ausgedehnten Objekten bewerkstelligen sollen, werden in Kapitel 9 dargestellt und systematisiert.

Das Datensystem mit seinen Aufgaben und Konzepten wird in Teil IV behandelt. Zur Abstraktion von physischen Sätzen und Zugriffspfaden wird eine satzorientierte DB-Schnittstelle, die Navigation längs logischer Zugriffspfade und Referenzierung logischer Sätze erlaubt, implementiert. Ihre Aufgaben und Konzepte sind in Kapitel 10 beschrieben. Aufbauend auf der satzorientierten DB-Schnittstelle, die bei DBS nach dem Netzwerk- oder Hierarchiemodell oder auch bei objektorientierten DBS als "externe" Benutzerschnittstelle dient, wird in Kapitel 11 zunächst die Implementierung relationaler Operatoren betrachtet. Diese höheren Operatoren erleichtern in Kapitel 12 die Realisierungsüberlegungen für eine mengenorientierte DB-Schnittstelle, die der Funktionalität des Relationenmodells und der Sprache SQL entsprechen soll. Bei unserer detaillierten Betrachtung spielen vor allem Fragen der Übersetzung oder Interpretation von mengenorientierten Anfragen und insbesondere ihre Optimierung eine zentrale Rolle.

Teil V ist den Techniken zur Realisierung des Transaktionskonzeptes gewidmet, das zunächst in Kapitel 13 kurz mit seinen ACID-Eigenschaften eingeführt wird. Aspekte der Synchronisation und die vielfältigen Techniken zu ihrer Implementierung werden im Detail in Kapitel 14 diskutiert und bewertet, während Kapitel 15 die Aufgaben der Fehlerbehandlung in DBS aufgreift und wichtige Lösungsverfahren, die mit dem Begriff "Logging- und Recovery-Verfahren" zusammengefaßt werden, erörtert. Erweiterte Transaktionskonzepte werden in Kapitel 16 behandelt. Diese dienen der Flexibilisierung der Ablaufkontrolle vor allem bei länger andauernden Transaktionen. Die Erweiterungsvorschläge zielen auf eine Abschwächung einer oder mehrerer ACID-Eigenschaften ab, die ursprünglich nur für kurze Transaktionen definiert worden waren. Zur Verbesserung ihres Ablaufverhaltens bei der Synchronisation und der Fehlerbehandlung wird eine Binnenstruktur eingeführt, die vor allem die "Alles-oder-Nichts"-Eigenschaft von ACID-Transaktionen relativiert.

Abschließend wird in Kapitel 17 ein Ausblick auf die neue Anforderungen und Funktionen, insbesondere für objekt-relationale Konzepte [CHAM96, STON96a] gegeben, die zu Weiterentwicklungen sowohl bei relationalen als auch bei objektorientierten DBS führen. Dabei wird deutlich, daß in solchen künftigen DBS eine Erweiterungsinfrastruktur zur Integration von benutzerdefinierten Datentypen und Funktionen verlangt wird. Die Verarbeitungskonzepte müssen außerdem so flexibilisiert werden, daß DBS-Funktionalität nicht nur auf den DB-Server begrenzt bleibt, sondern auch, dynamisch allokiert, am "günstigsten" Ort in einer mehrschichtigen Client/Server-Architektur bereitgestellt werden kann.

Wie wir bereits in der bisherigen Diskussion gesehen haben, finden sich diese grundlegenden Konzepte und Techniken auch in DBS-Kern-Systemen, Client-Server-DBS, Mehrrechner-DBS oder Transaktionssystemen wieder, seien sie lokal oder ortsverteilt. Dabei verfügt jeder Knoten über alle Funktionen eines zentralisierten DBS oder über eine Teilmenge (bei funktional spezialisierten Knoten muß die gesamte Funktionalität kooperativ von mehreren Knoten erbracht werden). Selbst in DB-Maschinen lassen sich diese grundlegenden Implementierungskonzepte anwenden, unabhängig davon, was durch spezialisierte Hardware nachgebildet wird und was nicht. Somit besitzen die hier beschriebenen Konzepte und Techniken einen großen Grad an Allgemeingültigkeit.