DB-Benutzer müssen noch immer einige Hürden überspringen:

Verteilte Datenbanken werfen Probleme auf

14.10.1983

Verteilte Datenbanken haben gegenüber traditionellen DBMS-Systemen Inzwischen einige maßgebliche Vorteile herausgeschunden. Dennoch muß der Benutzer noch immer einige Schwierigkeiten überwinden, um einen DB-Einsatz wirtschaftlich und transparent zu gestalten. Mit dem verstärkten Zugang von Personal Computern in gemeinsame Datenbanken ergeben sich zudem Probleme der Datensicherheit. Über den Umgang mit verteilten DB-Systemen berichtet David Sokolower, Datenbankexperte der Intel Corporation im kalifornischen Walker Drive.

Wie bei vielen Begriffen in der Datenverarbeitung ist die Definition von verteilten Datenbanken von den spezifischen Anforderungen der Benutzer und den Möglichkeiten der angebotenen Produkte abhängig. Die Funktion ist jedoch bei allen dieselbe, nämlich Dateien unter vielen Computern in einem Netz aufzuteilen und dem Benutzer den Zugriff auf die betreffenden Daten und ihre Aktualisierung transparent zu ermöglichen, ohne daß er sich darum kümmern muß, wo sie sich befinden. Hardware und Software müssen zusammen nicht nur völlige Datensicherheit garantieren, sondern den Datenbankverwalter auch in die Lage versetzen, die Daten schnell dorthin zu senden, wo sie benötigt werden.

Verteilte Datenbanken haben gegenüber den herkömmlichen Datenbank-Managementsystemen (DBMS) mehrere Vorteile:

- Bei veränderten Anforderungen an das System- können zusätzliche Kapazitäten am Benutzerort hinzugefügt werden, ohne daß im Hinblick auf künftiges Wachstum in Überkapazitäten investiert werden muß,

- Der Benutzer braucht sich nicht darum zu kümmern, wo sich die benötigten Daten befinden; das Verzeichnis des Systems führt ihn automatisch zu dem entsprechenden Speicherplatz.

- Da das System vom Datenbankverwalter so angepaßt werden kann, daß sich die am häufigsten benötigten Daten beim lokalen Computer befinden, erhält der Benutzer auf die meisten seiner Anfragen schneller eine Antwort, wodurch die Kosten für die Datenübertragung gesenkt werden können.

- Verteilte DBMS können auch dann weiter betrieben werden, wenn einer der Computer im Netz außer Betrieb ist. Verminderte Leistung ist im allgemeinen noch annehmbar,

Technische Hürden sind zu überwinden

Verteilte Datenbanken haben jedoch immer noch einige technische Hürden zu überwinden. Selbst in einem zentralisierten DBMS ist eine effektive Wiederaufnahme schwierig, wenn mehrere Benutzer gleichzeitig Daten aktualisieren. Die Wiederaufnahme in einem verteilten Datenübertragungsnetz mit duplizierten Datenmengen schafft Probleme, die noch nicht zur Zufriedenheit aller Beteiligten gelöst wurden. Verteilte Systeme werden häufig von Anwendern mit wenig technischer Erfahrung benutzt. Das System benötigt daher ein Datenverzeichnis, das den Speicherplatz, an dem sich die Daten befinden, automatisch ermitteln kann und das es dem Datenbankverwalter ermöglicht, Daten ohne Schwierigkeiten von einem Knoten zu einem anderen zu übermitteln. Darüber hinaus muß es in der Lage sein, Datenfelder oder ganze Dateien hinzuzufügen oder herauszunehmen.

Datensicherheit gefährdet

Um volle Effektivität zu garantieren, muß ein verteiltes DBMS unabhängig von der Hardware sein und Netze unterstützen können, die Großrechner, Mini- und Mikrocomputer umfassen. Leider benötigen die meisten Netze zur Datenübertragung an jedem Knoten die gleich Hardware und Software. Selbst bei Ethernet-Systemen, deren Hardware kompatibel ist, ist die Software bei der Übermittlung häufig nicht kompatibel.

Befürchtungen seitens der Unternehmensführung sind ebenfalls oft ein Hindernis für verteilte Datenbanken. Sobald die Daten über viele verschiedene Systeme (Mikrocomputer mit eingeschlossen) verteilt sind, ist die Datensicherheit nicht mehr gewährleistet. Verschlüsselung kann sogar für die Übertragung von Knoten zu Knoten notwendig werden, und Daten, die an einem lokalen Knoten gespeichert sind, können leicht manipuliert werden.

Darüber hinaus kann es bei der Verlagerung einer Anwendung von einem Großrechner zu einem kleineren erforderlich werden, das zugrundeliegende DBMS unter beträchtlichem Kostenaufwand zu verändern. Auch empfinden die Leiter von EDV-Abteilungen die verteilte Datenverarbeitung oft als Bedrohung für ihre Kontrolle innerhalb der Organisation.

Sternstruktur zielt auf Jumbo

Zwei grundlegende Netzstrukturen finden heute Anwendung: das Stern- und das Ringnetz. Bei der Sternstruktur (Abbildung 1) steht ein Großrechner im Mittelpunkt, der eine Masterkopie der Daten enthält und für die Prüfung und Modifikation der Datenbank verantwortlich ist, während angeschlossene Mikrocomputer Datenduplikate oder zumindest eine örtlich bedeutsam Datenuntermenge enthalten.

Sternnetze können zu Baumstrukturen mit einem zentralen Großrechner an der Wurzel erweitert werden (Abb. 2)

Neue Sterne entstehen

Mit der wachsenden Verbreitung von Mikrocomputern, die mit DBMS-Software laufen, haben sich die Sternnetze rasch ausgedehnt. Neben den herkömmlichen DBMS-Aufgaben können Mikrocomputer-Terminals mit Textverarbeitung, Grafiken und Analysepaketen arbeiten. Mit

solchen Entscheidungshilfestationen können Führungskräfte die relevanten Daten vom gemeinsamen DBMS abrufen, ihre eigenen Daten hinzufügen und eingebaute Analysehilfsmittel damit füttern. Im Ringnetz hat dagegen jede Zentraleinheit Zugriff auf alle anderen Computer im Netz. Da es keine zentrale Steuerung gibt, können weitere Computer dort, wo sie benötigt werden, ohne weiteres angeschlossen werden. Obwohl ein Ringnetz zur Steuerung seiner Systemelemente ausgeklügelte Programme benötigt, kann es höchst zuverlässig und leistungsfähig sein. In einer Ringstruktur kann das verteilte DBMS sowohl verteilte als auch kopierte Daten problemlos unterstützen. Die wohl am schnellsten wachsenden Netze sind die lokalen Netze (LAN = local area network), in denen es allgemein zwei unterschiedliche Arten von Rechnern oder Knoten gibt: Datenstationen und Dienste (Abb. 3).

Datenstationen laufen je nach Aufgabe mit unterschiedlicher Software; von CAD/CAM-Stationen für Techniker über Datenerfassungsstationen, die von Datentypisten bedient werden, bis hin zu Entscheidungshilfestationen für Führungskräfte. Dienste dagegen umfassen gemeinsame Systemelemente wie Zeilendrucker, Plotter, Dateidienste und Bandsysteme. Zudem findet ein neuer Diensttyp, der sogenannte Datenbankdienst, der alle Möglichkeiten einer Mehrbenutzer-DBMS bietet, rasche Verbreitung. Der ans Netz angeschlossene Datenbankdienst ermöglicht es den Datenstationen unterschiedlicher Herstellung mit verschiedenen Anwendungen in einem lokalen Netz gegenseitig auf die Daten zuzugreifen und sie zu aktualisieren. In einem verteilten System können Datenbanken verteilt oder teilweise kopiert vorliegen. Beim Verteilen existieren die Daten nur einmal; sie werden dann physisch so auf die einzelnen Knoten aufgeteilt, daß sie sich dort befinden, wo sie am häufigsten benötigt werden. Dieses Verfahren ist jedoch nicht bei allen Anwendungen praktikabel.

Verteilung kombinieren

In Netzen, in denen die Daten oftmals an mehreren Knoten benötigt werden, kann es von Vorteil sein, sie zu kopieren, weil dann weniger Daten über die Verbindungsleitungen übermittelt werden müssen und so viel Zeit gespart werden kann. Die Nachteile hierbei sind höhere Speicherkosten und zusätzliche Synchronisationsprobleme bei der Aktualisierung.

Um bei jeder DBMS-Anwendung volle Effektivität zu erreichen, muß der Datenbankverwalter die DBMS-Software an jede einzelne Datenbank anpassen. Dies ist bei verteilten Datenbank-Managementsystemen besonders wichtig. Bei den meisten Netzen ist oft eine Kombination von Verteilung und Duplizierung der Daten am vorteilhaftesten. Um die Datensicherheit während des Aktualisierungsvorgangs zu gewährleisten, ist es erforderlich, den Datensatz vor fremdem Zugriff abzuriegeln. Je nach Übertragungsgeschwindigkeit und Aktivität der Datenbank kann dieser Vorgang einen unannehmbar langen Zeitraum in Anspruch nehmen. Wenn aber für eine Anwendung, bei der das Abfragen von Information viel zeit beansprucht, eine Stapelaktualisierung über Nacht akzeptabel ist, ist die Verteilung von Daten die günstigste Lösung.

Transparenz für den User

Ein weiterer wichtiger Punkt ist das Verhältnis zwischen Kostenaufwand und Aktualität der Daten. Im Bankenwesen muß zum Beispiel im ganzen System eine ständige Aktualisierung erfolgen; bei vielen Sternnetzverbindungen genügen der Firmenzentrale einen. Tag alte Arbeitsdaten aus den Regionalbüros, da die zusätzlichen Kosten für Echtzeitgenauigkeit nicht gerechtfertigt wären.

Der kritischste Punkt bei einem verteilten DBMS ist die Qualität des Datenverzeichnisses. Um für den Benutzer transparent zu sein, muß es den Speicherplatz, an dem sich die benötigten Daten befinden, ermitteln können. Während des Aktualisierungsvorgangs erfüllt das Datenverzeichnis die Funktion eines Polizisten, indem es andere Anfragen zu voll verteilte Systeme für kommerzielle Nutzung zur Verfügung stehen. Im folgenden werden zwei von der Firma Intel Corp. angebotene Datenbank-Managementsysteme im Detail vorgestellt.

Der Intel Datenbankrechner (IDBP Intel Data Base Processor) ist eine mikrocomputergestützte relationale Datenbankmaschine mit den Möglichkeiten einer jede Großrechenanlage. Im lokalen Netz erfüllt der Datenbankrechner die Aufgaben eines Datenbankdienstes.

Zusätzliche Navigationssteuerung

Eine verteilte Datenbank kann entweder über ein zentrales Verzeichnis oder ein Verzeichnis an jedem Knoten verfügen. Bei der voll verteilen Datenbank in einem Ringnetz sollte es über alle Knoten verteilt sein, was allerdings beträchtliche Probleme bei der Datensicherheit und bei Wiederaufnahmeverfahren schafft.

Es gibt mittlerweile mehrere mikrocomputergestützte Systeme auf dem Markt, die viele der beschriebenen Anforderungen erfüllen. Es wird aber noch einige Jahre dauern, bis.

Der DBP hat ein voll integriertes Datenverzeichnis und besteht aus einem 8086-gestützten System, an das bis zu sechzehn SMD-Plattenlaufwerke angeschlossen werden können. Der DBMS-Kern unterstützt alle relationalen Aufgaben, "join", "select", "order" und "project" mit inbegriffen. Ebenso werden Gleichzeitigkeitssteuerung mit Transaktionsprotokollierung zum Wiederanlauf sowie "Deadlock"- Erkennung und Behebung wie bei einem Großrechner unterstützt. Um die Übertragung von Daten zwischen dem Datenbankrechner und den Datenstationen zu reduzieren, verfügt der DBP über Makrobefehle in Parameterform, die Programmschleifen und if/then/else-Abläufe unterstützen. Für Anwendungen, die sehr hohe Leistung erfordern, kann der DBP zusätzlich zu dem relationalen Konzept für schnellen Zugriff und schnelle Aktualisierung noch eine Navigationssteuerung ausüben.

Auf Sprache vorbereiten

Um den Erfordernissen von Textverarbeitung und CAD/CAM-Stationen, sowie künftigen Sprach- und Videoanwendungen zu genügen, kann der DBP unstrukturierte Dateien speichern. Dies wurde durch die Einführung des neuen relationalen Begriffes "connect" ermöglicht, wodurch strukturierte Dateien direkt mit unstrukturierten, die digitalisierte Daten wie Text, Stimme und Grafiken enthalten verbunden werden können.

Der DBP benutzt zur Kommunikation mit Hauptrechnern oder anderen Terminals im Netz eine Standardschnittstelle für Hauptrechner. Terminals stehen mit einem DBP Über eine Personality-Schnittstelle in Verbindung, die Anfrage des Benutzers aufnimmt und in einen DBP-Befehl umwandelt, der dann durch das Netz geschickt wird. Die Antwort des DBP wird dann in ein benutzergerechtes Anzeigeformat übersetzt.

Der DBP wurde als Bauelement konzipiert, das es OEM-Programmierern ermöglicht, allgemeine oder individuelle Anwendungen schnell auszufahren. Der Rechner kann entweder in einem Sternnetz an mehrere Hauptrechner angeschlossen werden oder in einem lokalen Ringnetz die Aufgabe eines Datenbankdienstes übernehmen.

Mit Großrechnern reden

Für Sternnetze bietet Intel das Datenbank-Informationssystem (iDIS) an, das aus einer 8086-gestützten Mehrfachbenutzerstation besteht, die in der Lage ist entweder unabhängig oder in Verbindung mit der Datenbank eines Großrechners zu arbeiten. Dieses System verfügt Über eine relationale Datenbank und 2780/3780 RJE-Software und 3270 Emulations-Software. Das IDIS kann daher alleine oder in Verbindung mit einem größeren Computersystem betrieben werden. Das Xenix-gestützte System ist mit einem Datenbank-Extraktor versehen, der es möglich macht, eine Datensatzuntermenge vom Intel System 2000 DBMS, das in Rechnern von IBM, Univac oder CDC enthalten ist, auszuwählen oder zu kopieren. Hierdurch wird der Benutzer in die Lage versetzt, Daten aus Datenbanken, die in verschiedenen regional verteilten Computersystemen gespeichert sind, zu vereinen. Pläne für die Zukunft zielen auf die Möglichkeit ab, Daten automatisch von den Datenbank-Managementsystemen anderer Großrechner wie IMS und IDMS abzurufen. Als Entscheidungshilfestation verfügt das IDIS Über Spreadsheet-Software, Textverarbeitung und Grafik. Daten, die vom Großrechner oder der Datenstation abgerufen wurden, können von der Spreadsheet-, Textverarbeitungs- und Grafiksoftware direkt verwendet werden. Um individuelle Anwendungen zu unterstützen, ist das IDIS mit C-, Basic-, Fortran- und Cobol-Compilern versehen. Das System soll den Zentralrechner entlasten und dem

Benutzer mehr Flexibilität verschaffen.

Wird das IDIS mit einem anwählbaren Moderm versehen, kann sich der Benutzer an Mehrbenutzersysteme anschließen und sich aus IBM-, CDC und Univac-Großrechnern eine Datenbank zusammenstellen. IDIS-Systeme können aber auch untereinander zu einem eigenen Ringnetz zusammengeschlossen werden; ab 1984 wird auch Ethernet unterstützt.

Da sich Benutzer Über Personal Computer an das IDIS anschließen können, kann das iDIS-System als intelligente Schnitt- oder Durchgangsstelle zwischen der alten Welt der Großrechner und der neuen Welt der Mikrocomputer dienen.