Teil V und Schluß:

Tendenzen auf dem Gebiet der verteilten Datenbank Systeme

22.06.1979

Im fünften und letzten Teil befaßt sich Champine mit der Architektur und den Einsatzmöglichkeiten von Datenbankcomputern. Potentiellen Benutzern gibt der Univac-Forscher einen interessanten Tip: Wenn die Datenbankbelastung des Systems gering sei, habe es wenig Sinn, die DB-Anwendungen auf einen Datenbankcomputer auszulagern, erst ab einer Belastung von 50 Prozent werde dies attraktiv.

Von Mitte der 70er Jahre an begann man neue Architekturen zu entwerfen, welche den Zugriff zu einem Datei- oder Datenbanksystem erheblich effizienter zu gestalten vermochten, indem Inhaltadressierung benützt wurde. Dies bedeutet eine Adressierung nach Schlüsselwert anstatt Speicherplatz. Alle Lösungen hatten die Form von Backend-Zusätzen zu konventionellen Hauptrechnern via Input/Output-Kanäle oder Übertragungslinien, und alle sind als intelligente Steuerungen zu betrachten.

Mindestens implizit handelt es sich bei diesen Architekturen um Systeme relationaler Natur, da sie mit flachen Dateispeicherstrukturen arbeiten und Informationen über Inhalt adressieren. Ein frühes Beispiel dieses Architekturtyps ist das "Content-Adressed-File-System CAFS" (inhaltadressiertes Dateisystem).

Das CAFS-System gehörte zu den frühesten Ergebnissen und darf als Basissystem betrachtet werden. Ein anderer Datenbankprozessor war der Relational-Associative-Prozessor RAP". Mit RAP wurde die Parallelverarbeitung eingeführt und gleichzeitig die Untergliederung der Datenbank in lokale Speichereinheiten.

Eine ganz andere Lösung des Datenbankprozessor-Problems erfolgte mit dem Staran-Computer. Hier werden Daten in einer konventionellen Speichereinheit in eine Assoziativregister-Anordnung gesendet, wo sie auf spezifische Schlüsselwerte abgesucht werden.

Die Staran-Lösung ist konzeptmäßig dem CAFS ähnlich, wobei die Festkopfplatte durch einen Direktzugriff-Hauptspeicher ersetzt wurde. An die Stelle der einfachen Vergleichslogik tritt eine große parallele Assoziativ-Speicheranordnung. Ein wichtiger Unterschied ist darin zu sehen, daß mit dem Staran Mehrfachsuchen gegen eine einfache Datei in einem Durchgang erledigt werden kann.

Diese drei Lösungstypen sowie mehrere andere verbessern die Leistung der Datenbanken bedeutend, doch leiden sie an folgenden Nachteilen:

- Die Massenspeicherung ist teuer und daher größenmäßig beschränkt.

- Die gesamte Datenbank muß in den Massenspeicher geladen sein.

- Die volle relationale Verbindung ist nicht möglich.

- Ebenso ist Sortieren nicht möglich.

Der nächste Schritt in der Entwicklung der Datenbank-Architektur führte weg vom Datenbankprozessor zum Datenbankcomputer (HSIAO 77). Das Massenspeichermedium ist die Platte mit beweglichem Kopf, die eine Größenordnung billiger ist als die Festkopfplatte (pro gespeichertem Bit). Das Konzept der Untergliederung der Datenbank in Zylinder wurde eingeführt, wobei die Zugriffsfelder zur Auswahl der abzusuchenden Zylinder kontrollsummiert werden. Die Information einer Plattenspur wird vollständig gepuffert anstatt wie beim CAFS fliegend verarbeitet. Parallelverarbeitung wird ähnlich wie beim RAP zur Verarbeitung mehrerer Spuren aufs Mal verwendet.

In jüngster Zeit wurde das Datenbankcomputerkonzept weiter ausgebaut. Die Zielsetzung dieser Konstruktion bleibt dieselbe wie beim Vorgänger: Die Unterstützung von netzwerkartigen, relationalen oder hierarchischen Datenbanken in der Größenordnung von 100 Megabyte bis 100 Gigabyte. Auch das Konstruktionskonzept bleibt gleich, indem ein Backend-Computer mit einem Allzweckprozessor verwendet wird, der eine Anordnung von Verarbeitungselementen steuert, sowie einem intelligenten Parallelübertragungsplatten-Steuergerät und einer Parallelübertragungsplatte. Eine begrenzte Kommunikation zwischen den Prozessoren wurde eingeführt, damit Verbindungs- und Sortieroperationen durchgeführt werden können. Diese Kommunikation macht es erforderlich, daß benachbarte Prozessoren den gleichen Pufferspeichermodul angehen können. Ein preisgünstiger sequentieller Festkörper-Assoziativspeicher wurde beigelegt um eindeutige Schlüssel- oder Sortierfeldwerte zu identifizieren.

Der Datenbankcomputer zeichnet sich durch sechs Hauptelemente aus (Abbildung):

- Datenbankprozessor-Steuergerät (Data Base Processor Controller)

- Verarbeitungselemente (Processor, Elements)

- Spurenpuffer (Track Buffers)

- inhaltadressierbarer Speicher (Content Adressed Memory)

- Parallelübertragungsplatte

- Parallelübertragungsplatten-Steuergerät (Parallel Transfer Disk Controller)

Die Hauptrechner-Interfaces zum Datenbankcomputer verwenden Befehle auf hohem Niveau (Codasyl oder relationaler Art). Diese Befehle werden dem Datenbankprozessor-Steuergerät zur Analyse zugeführt. Auf der Basis dieser Analyse wird ein entsprechendes Set von Parametern erzeugt und an die Verarbeitungselemente weitergegeben. Das Datenbankprozessor-Steuergerät erzeugt auch die notwendigen Input/Output-Befehle für die Parallelübertragungsplatte.

Die Parallelübertragungsplatte ermöglicht das Lesen aller Spuren eines Zylinders gleichzeitig, wobei jede Spur Information an den entsprechenden Spurenpuffer weitergegeben wird. Jeder: Spurenpuffer bedient zwei benachbarte Prozessoren.

Die Spurenpuffer fassen je vier Spuren Information. Wenn die Spurenpuffer geladen sind, beginnen die Verarbeitungselemente asynchron an den Daten zu arbeiten, wobei Selektionen, Projektionen, Verbindungen und Sortieroperationen vorgenommen werden. Daten, die den Kriterien entsprechen, werden an das Datenbankprozessor-Steuergerät und dann an den Hauptrechner zurückgegeben. Relationale Datenbanksysteme können ebenso unterstützt werden wie Netzwerkdatenbanksysteme.

Im Betrieb arbeiten diese Einheiten synergistisch zusammen. Bei der Suche werden die Suchparameter in die Verarbeitungselemente geladen, so daß alle Spuren eines Zylinders simultan abgesucht werden können. Die Größe der Spurenpuffer erlaubt vier doppelte Pufferungen. Die Verarbeitungselemente steuern den Betrieb ihrer Spurenpuffer. Sie sind leistungsfähig genug, um nicht nur wie frühere Maschinen einen Gleichheits-Vergleich mit den Parametern bei der Anfrage zu ermöglichen, sondern auch um die Funktionen <, >, =, AND, OR und NOT durchzuführen. Einige oder alle Operanden können dem Satz selbst entnommen werden (Liste aller Angestellten mit Arbeitsplatz/Titel = Verkäufer und Bonus >Salär).

Es überrascht in gewissem Maße, daß die neuen Festkörper-Zugriffstechniken mit Blasen und Ladungstransportspeichern die Bedürfnisse der Spurenpuffer nicht decken, weil sie um eine bis zwei Größenordnungen zu langsam sind. Eine letzthin durchgeführte Umfrage ergab eine typische Satzgröße von 200 Byte. Die üblichste Operation bei der Suche läuft so, daß zuerst die ersten paar Bytes des Schlüsselfeldes betrachtet werden und entschieden wird, daß der Satz nicht von Interesse ist. Bei der nächsten Operation werden 200 Bytes übersprungen, um zum nächsten Satz zu gelangen. Das RAM kann dies in einer Zeit von der Größenordnung einer Millisekunde bewältigen, während ein Ladetransportspeicher sogar bei einer Shiftrate von fünf Megahertz 40 Mikrosekunden braucht. Blasenspeicher sind noch zehnmal langsamer als Ladetransportspeicher und kommen noch weniger in Frage.

Obwohl Datenbankcomputer die Effizienz im Zugriff und in der Verarbeitung von Datenbank-Informationen bedeutend verbessern, ist es doch wichtig festzustellen, daß sie nicht rundherum besser sind als die gegenwärtigen Techniken. Zwei Bedingungen müssen erfüllt sein, damit die Überlegenheit der Datenbankcomputer gegenüber heutigen Architekturen zum Tragen kommen kann:

- Die Datenbankanwendung muß einen beträchtlichen Teil der gesamten Systembelastung ausmachen.

- Der Datenzugriff muß die Benützung mehrerer Massenspeicherzugriffe mit konventionellen Techniken umfassen.

Wenn die Datenbankbelastung des Systems nur 10 Prozent der Gesamtbelastung ausmacht, hat es wenig Sinn, die DB-Anwendung auf einen Datenbankcomputer auszulagern. Nur wenn die Belastung bedeutend groß ist, das heißt mindestens 50 Prozent, besser aber 75 Prozent, wird diese Übertragung attraktiv.

Ebenso gilt, daß wenn die Anfrage durch einen einzigen Massenspeicherzugriff befriedigt werden kann, der Datenbankcomputer nichts zur Verbesserung der Leistungsfähigkeit beiträgt. Nur in Mehrfachzugriffsituationen kann der Datenbankcomputer den Hauptrechner wirksam entlasten.

Eine Reihe von Versuchen und Leistungsschätzungen haben gezeigt, daß der Datenbankcomputer die Leistungsfähigkeit um das 5- bis 50fache verbessern kann, wenn die obenerwähnten Kriterien erfüllt sind. Sind sie jedoch nicht erfüllt, so steht er bloß im Weg und setzt die Leistungsfähigkeit sogar herab.

Schlußbemerkung

Die Datenbanktechnik macht auf logischem, physischem und Systemniveau weiterhin signifikante Fortschritte, welche durch die Verbindung von Benutzeranforderungen und einer fortschreitenden Technik vorangetrieben werden. Die Basis-Gerätetechnik verdoppelt das Kosten-Leistungs-Verhältnis alle zwei bis drei Jahre. Auch auf logischer Ebene sind signifikante Fortschritte zu verzeichnen, indem ein gemeinsames Datenmodell erarbeitet wurde, das dazu dienen kann, Schemata zwischen Netzsystemen und relationalen Systemen zu übersetzen. Das gemeinsame Datenmodell zeigt auch, daß entweder eine zeigerorientierte oder eine wertorientierte Speicherstruktur verwendet werden kann, um ein netzwerkartiges oder ein rationelles Benützerinterface zu unterstützen.

Auf der Grundlage der logischen und physischen Neuerungen versprechen Verbesserungen in der Architektur der Datenbankcomputer signifikante Leistungserhöhungen bei relativ bescheidenen Kosten.