Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

30.10.1981 - 

Anforderungen an Rechnernetze und ein zeitgemäßes Datenbanksystem

Networker-Rechnung: Vorteil durch Verteilen

Installation und Unterhalt eines Rechnernetzes waren in der Vergangenheit mit relativ hohen Hardware- und Software-lnvestitionen verbunden. Die ständig abnehmenden Hardwarekosten wurden durch die immensen Fortschritte in der Halbleitertechnologie (LSI-, VLSI-Technik) ermöglicht. Hierdurch wurden gänzlich neue Perspektiven in der Rechnerarchitektur eröffnet. Die zunehmende Bedeutung von Rechnernetzen schlägt sich auch in den Bemühungen internationaler Organisationen wie ISO und CCITT nieder, Standards zu entwickeln, die die Kommunikation auch völlig unterschiedlicher Rechensysteme vereinfachen und vereinheitlichen sollen.

Im Anfang der Entwicklung der Computertechnologie standen Einzelsysteme, die bei fortschreitender Entwicklung immer größer, immer schneller (zumindest was einzelne Komponenten wie etwa Zentraleinheiten oder Kanäle anbelangt), aber auch immer komplexer wurden. Die Zugriffskoordination der größeren Mehrbenutzeranlagen sowie die fortwährende Erweiterung der funktionalen Einheiten dieser Systeme führten zu einer Systemkomplexität, die das Verständnis des Zusammenwirkens der Systemkomponenten sowie die Pflege des Systems sehr erschwerten. Dazu kam die Erkenntnis, daß der Gesamtdurchsatz eines solchen Systems nicht in gleichem Maße zunehmen konnte, da immer mehr Betriebsmittel vom System selbst verbraucht wurden. Ein weiterer Nachteil komplexer Systeme ist ihre Fehleranfälligkeit.

Mehrere Anlagen anstatt eines Alleskönners

Man hat unterschiedliche Wege beschritten, um den wachsenden Problemen zu begegnen. Aus EinprozessoranIagen wurden Mehrprozessoranlagen, wobei mehrere Prozessoren den Zugriff auf gemeinsamen Hauptspeicher koordinieren mußten, wiederum eine Erhöhung der Komplexität, wieder konnte der Durchsatz nicht einfach mit der Anzahl der Prozessoren vervielfacht werden.

Erst der rapide Rückgang der Kosten für die Hardware hat den Gedanken nahegelegt, anstatt eines "Alleskönners" mehrere zuerst getrennte, später gekoppelte Anlagen anzuschaffen. Anfängliche Kopplungen waren lokal. Bald ging man dazu über, georgrafisch verteilte Rechnernetze einzurichten. Dabei tat sich eine Unzahl neuer Probleme auf. Die Verbindungen zwischen den Einzelsystemen waren Ursache neuer Fehlerquellen, sie konnten ausfallen, Daten konnten auf dem Weg von einem Netzknoten zum anderen verfälscht werden oder ganz verloren gehen. Die Einzelsysteme waren ursprünglich nicht dafür konzipiert, an einem Rechnernetz teilzunehmen; großer Aufwand mußte getrieben werden, um zusätzliche Software zu erstellen, die mit den neuen Problemen fertig wird.

Mit der zunehmenden Forderung der Benutzer von Rechensystemen und Netzen, im Online-Betrieb arbeiten zu können, das heißt im Dialog mit dem System vernünftige Antwortzeiten zu erhalten, Zugriff zu allen (nicht besonders geschützten) Ressourcen so zu bekommen, daß sie sich nicht von anderen Benutzern behindert fühlen, kommen weitere Anforderungen auf die Systeme zu. Als Performance-Kriterium gilt jetzt nicht mehr der Gesamtdurchsatz eines ganzen Stapels von Programmen (Batch-Betrieb), sondern die vom Benutzer am Terminal wahrgenommene Antwortzeit im Dialog. Implizit ist dies auch eine Anforderung an erhöhte Ausfallsicherheit des Systems sowie die Gewährleistung konsistenter Datenbestände.

Trotz der Vielfalt der auftretenden Probleme gab es genügend Gründe, den Auf- und Ausbau von Rechnernetzen weiter zu betreiben. Von Rechnernetzen erwartet man:

- Einfache Erweiterung der Funktionsbreite der autonomen Einzelsysteme (Resource Sharing) durch Hinzufügen lokaler Knoten (weitere Zentraleinheiten, Speicher und Peripherie) oder eines neuen verteilten Knotens;

- Gemeinsame Dateibenutzung (Data Sharing); verteilte Datenbestände können einem größeren Benutzerkreis zur Verfügung gestellt werden;

- Gemeinsame Programmbenutzung (Program Sharing); die Abarbeitung einer Anwendung kann auf verschiedene Knoten verteilt werden. So können Daten am Eingabeknoten vorverarbeitet und an einen anderen Knoten verschickt werden, der die weitere Verarbeitung übernimmt. Dadurch kann die Komplexität der Programme für die einzelnen Knoten verringert werden;

- Lastausgleich zwischen den beteiligten autonomen Systemen (Load Sharing), was verbesserte Antwortzeiten zur Folge hat;

- Erhöhung der Zuverlässigkeit des Gesamtsystems; fällt ein zentrales System aus, so steht der gesamte Betrieb; fällt ein Knoten aus, so arbeiten die anderen Knoten weiter, in bestimmten Fällen können sogar Programme des ausgefallenen Systems auf einem anderen Knoten weiterbearbeitet werden;

- Echte Parallelisierung von Bearbeitungsschritten;

- Elektronischen Informationsaustausch zwischen den Netzwerkbenutzern;

- Dynamische Wachstumsmöglichkeit durch modulare Erweiterbarkeit; ein Lastmonitor kann Engpässe auf den unterschiedlichsten Ebenen aufdecken durch Messung der Belastung der Hard- und Softwarekomponenten eines Einzelsystems, eines lokalen Netzes sowie des Gesamtnetzes, ein Engpaß kann dynamisch durch Duplizierung einer oder mehrerer der überlasteten Komponenten behoben werden ohne Änderung oder Erweiterung der bestehenden Software;

- Fehlertoleranz und Transparenz des Netzes durch die geographische Unabhängigkeit und automatische Wegermittlung (und Umleitung bei Fehlern) ermöglichen erst den Betrieb einer verteilten Datenbank und vereinfachen die Programmierung;

- Verteilte Netzwerksteuerung (im Gegensatz zur zentralen), sie ermöglicht eine beliebige Topologie und vermeidet Single-Points-of-Failure.

An dieser Stelle sollen ein paar Bemerkungen zu dem ebenfalls in den letzten zehn Jahren verstärkt ins Bewußtsein gerückten Begriff der Datenbank eingefügt werden. Hat früher jeder Benutzer sich private Datenbestände gehalten, die er nach Gutdünken strukturiert, verwaltet und manipuliert hat (unter dem Begriff Benutzer kann hier auch etwa eine ganze Abteilung eines Unternehmens verstanden werden), so wurde doch bald erkannt, daß eine integrierte Datenhaltung etwa für ein ganzes Unternehmen vielerlei Vorteile aufzuweisen hat. Hatten früher verschiedene Abteilungen teilweise gleiche Datenbestände jeweils für sich allein angelegt, wurde viel Speicherplatz für redundante Information verschleudert. Hinzu kommt, daß der Stand der Daten nicht exakt dieselbe Information beinhaltete. Die Daten wurden unabhängig voneinander erfaßt und fortgeschrieben. Dadurch entstand im Unternehmen inkonsistente Information. Unterschiedliche Abteilungen trafen Entscheidungen, basierend auf unterschiedlichen Informationen. Datenbanken sind, grob gesagt, solche integrierten Datenbestände.

Integration bedeutet auch Absprache. Es muß unternehmensweit Einigung darüber erzielt werden, welche Daten insgesamt für das Unternehmen von Interesse sind. Die Daten sollen Fakten über den Ausschnitt der realen Welt widerspiegeln, der für das Unternehmen relevant ist, etwa die Personalsituation, Ein- und Verkaufsprofile, Kundeninformation die Marktsituation. Ein Datenmodell wird benötigt, das die Struktur der Daten und die erwünschten Zugriffsmöglichkeiten als Schnittstelle zwischen dem Benutzer und dem System festlegt. Von den Anbietern von Datenbanksoftware werden im wesentlichen drei Modelle angeboten, das hierarchische, das Netzwerk- und das relationale Datenbankmodell.

Es gibt eine Reihe von Gründen, weshalb man sich bei Tandem für das relationale Modell entschieden hat:

- hohe Benutzerfreundlichkeit (der Anwender sieht seine Daten in Form von Tabellen, eine ihm vertraute Darstellung);

- der Anwender benötigt keine Kenntnis über die physikalische Realisierung der Datenbank;

- eine der Umgangssprache sehr nahe Abfragesprache, mit der der Anwender spezifiziert, welche Daten er sehen möchte, nicht wie er sie erhält;

- eine Datendefinitionssprache, die schnelle Schemaänderungen in der Datenbankstruktur zuläßt;

- gute Eignung für eine verteilte Datenbank (es müssen keine Zeiger über das Netzwerk gehalten werden die Datensätze werden logisch mit einander verknüpft);

- eine Anfrage muß sich nicht auf fest implementierte Zugriffspfade beschränken;

- Implementierungsaspekte sind getrennt vom logischen Datenbankmodell, das heißt, Anwendungsprogramme, die auf eine relationale Datenbank zugreifen, müssen nicht geändert werden, wenn interne Reorganisationen von Zugriffsstrukturen durchgeführt werden.

Die angeführten Gründe kann man auch als den Teil der Anforderungen sehen, die immer häufiger vom Anwender hinsichtlich des Datenmodells an ein zeitgemäßes Datenbanksystem gestellt werden.