Forderungen des Marktes werden die Entwicklung vorantreiben:

Datenbanksysteme für Minicomputer

06.03.1981

Von Dr. Heinz Otto

Der Zwang zur Rationalisierung und ständiger Preisverfall der Hardware haben in kleinen und mittleren Betrieben die Diskussion über die Wirtschaftlichkeit einer eigenen hausinternen Datenverarbeitung belebt.

Preiswerte Systeme mit Minicomputern sind heute so leistungsfähig, daß auch Großbetriebe mit zentralisierter EDV sie aus wirtschaftlichen Erwägungen zunehmend für Einzelaufgaben einsetzen.

Die bisweilen bestechend kurze Amortisationszeit für die Hardware und die Betriebssoftware solcher Systeme läßt oft den Blick auf die Folgekosten vergessen, die für die Erstellung spezieller Anwendungsprogramme aufgewendet werden muß.

Gesucht wird daher weniger irgendeine preisgünstige Hardware als vielmehr eine fertige Problemlösung. Diese soll leicht auf sich verändernde Randbedingungen anzupassen sein, in ihrer Preiswürdigkeit vergleichbar sein mit der der Hardware, auf der sie realisiert werden soll, und vor allem soll sie für den Anwender einfach zu handhaben sein.

Bei den hohen Personalkosten im Bereich der Programmerstellung läßt sich ein wettbewerbsgerechtes Preis-/Leistungsverhältnis für Anwendungssoftware nur durch den Einsatz von "Software-Werkzeugen" erreichen. Dabei stellen diese keine fertige Lösung des Anwenderproblems dar, sondern die standardisierte Lösung einer Klasse von immer wiederkehrenden Teilproblemen.

Beispiele solcher Problemklassen sind im technisch-wissenschaftlichen Bereich die Prozeßsteuerung oder Datenerfassung, im kommerziellen Bereich das Sortieren oder Absuchen von Datenbeständen.

Der Minicomputer ist ein Rechnertyp, der in seiner Leistung bisher zwischen Mikrocomputer und Mainframe angesiedelt war. Typisch für ihn waren im allgemeinen eine 12-16 Bit-Single-Processor-Architektur, die den logischen Adreßraum auf 64 KB festlegt, ein ausgearbeitetes Interrupt-System, das auf seine Herkunft von Prozeßrechnern verweist und den Betrieb von Echtzeit-Betriebssystemen ermöglicht, die im allgemeinen plattenresident sind und ein breites Spektrum unterschiedlicher Peripherie unterstützen.

Auf Minicomputern werden vergleichsweise kleine Anwendungsprogramme kosteneffektiver als auf Großanlagen gefahren, und interaktiver Betrieb war von Anfang an eine Selbstverständlichkeit. Es handelt sich bei dem "Mini" um einen kompakten und robusten Rechnertyp, besonders in seinen militärischen Versionen, der im Gegensatz zu Mainframes zum Problem gebracht und "vor Ort" installiert wird.

Seine Vielseitigkeit war Anlaß zu weiteren Verbesserungsforderungen: größerer Adreßraum (Memory Management), schnellerer Arbeitsspeicherzugriff (Interleaved Memory, Cache Memory) und Zugriff auf große Massenspeicher (300 MB).

Damit wurde die Installation von umfangreicheren Betriebssystemen mit Multi-User- und Multi-Task-Eigenschaften auf Minicomputern sinnvoll anstelle der früheren Single-User-Systeme. Auf Minicomputern wurden Software-Strukturen realisiert, die bis dahin nur auf Großrechnern zu finden waren.

Mit dem technologischen Fortschritt erfolgte Ende der 70er Jahre der Übergang auf eine 32-Bit-Architektur mit virtuellen Betriebssystemen und damit der Einbruch in den Bereich des Mainframes.

Intelligente Zugriffsmethode

Im gleichen Zeitraum drang der Mikrocomputer in ähnlicher Weise in den Bereich des Minicomputers ein. Jede Definition des Minicomputers über Preis - oder Leistungsfähigkeit sind durch den technologischen Fortschritt hinfällig geworden, und seine Bezeichnung stellt eher ein Understatement als eine Klassifikation dar.

Mit der Übernahme von Betriebssoftware-Strukturen aus dem Mainframebereich wurde auch die Übertragung ähnlich komplexer Standardsoftware sinnvoll, wie sie von unabhängigen Softwarehäusern erstellt und angeboten wird. Ein gutes Beispiel hierfür stellen Datenbankverwaltungssysteme (DBMS) dar. Das relationale Datenbankverwaltungssystem Adabas der Software AG kam zu Beginn der 70er Jahre auf den Markt der Standardsoftware für Großrechner - damals war der Begriff "relational" noch nicht geprägt - und wurde Ende der 70er Jahre als Adabas/M auf Minicomputer von Digital Equipment übertragen. Diese Maschinen boten sich aufgrund ihrer Stack-Architektur und ihrer Verbreitung an.

Ein Datenbankverwaltungssystem- kurz Datenbanksystem genannt- stellt eine intelligente Zugriffsmetho de auf die Datenbestände dar, die in der Datenbank gespeichert sind. Dabei sind mit "intelligent" folgende Eigenschaften gemeint:

- Der Zugriff auf die Daten erfolgt nicht über Adressen, sondern nach Bedingungen, die an die Daten gestellt werden (assoziativer Zugriff).

- Der Zugriff auf den Datenbestand erfolgt nicht auf Satzebene, sondern auf der Ebene der einzelnen Felder im Satz.

- Der Zugriff auf eine oder mehrere Dateien der Datenbank kann gleichzeitig wahlfrei, logisch-sequentiell oder physisch-sequentiell erfolgen.

- Viele Benutzer können gleichzeitig auf dieselben Daten zugreifen.

- Verschiedene Benutzer dürfen innerhalb eines Datensatzes nur auf bestimmte Felder zugreifen können. Der Datenschutz ist nicht nur auf den Ebenen der Datenbank und der Datei, sondern auch auf Feldebene gewährleistet.

- Die Sicherung der Daten erfolgt kontinuierlich über mitgeschriebene Log-Information. Nach einem nicht beabsichtigten Systemabbruch versetzt das Datenbanksystem den Datenbestand mit Hilfe dieser Information beim Wiederanlauf von selbst in einen konsistenten Zustand (Autorestart). Mit integrierten Dienstprogrammen kann ein konsistenter Zustand der Datenbank zu einem bestimmten Zeitpunkt auf einem anderen Medium gesichert werden, ebenso kann die Log-Information archiviert werden, die auch dazu dient, nach einer möglichen physischen Zerstörung der Daten einen früher gesicherten Zustand auf den aktuellen Stand nachzufahren.

- Der Zugriff auf den Datenbestand erfolgt durch den Benutzer je nach Erfordernis entweder über eine Datenbanksprache, mit der Ad-hoc-Anfragen und in kleinerem Rahmen Modifikationen an den Daten durchgeführt werden können oder in Anwendungsprogrammen über eine Benutzerschnittstelle, die in allen Standardprogrammiersprachen aufgerufen werden kann. Für den Anwendungsprogrammierer stellt das Datenbankverwaltungssystem damit eine funktionale Erweiterung seiner gewohnten Programmiersprache dar.

Nicht alle Systeme, die als "Datenbanksysteme" für Minicomputer angeboten werden, erfüllen die oben angegebenen Kriterien. Sie stellen vielmehr Dateiverwaltungsysteme oder Record-Management-Systeme dar, die für eine bestimmte Anwendung oder eine vorgegebene Datenmenge durchaus angemessen und preisgünstig sein mögen. Ob sie allerdings auch für einem Blick auf die Zukunft wirtschaftlich sinnvoll sind, soll im folgenden untersucht werden.

"Datenbanksysteme sind Werkzeuge"

Daten stellen heute mehr als zuvor wertvolles Betriebskapital dar, das um so besser genutzt werden kann, je schneller es in geeigneter Form verfügbar ist. Je nach Personalkapazität kann ab einer gewissen Datenmenge diese Aufbereitung nicht mehr in einer wirtschaftlich sinnvollen Zeit durchgeführt werden. Benötigte und bereits vorhandene Information bleibt damit ungenutzt.

Das Datenbanksystem stellt nun das Software-Werkzeug dar, mit dem die bearbeitete Datenmenge bei geringem Personalaufwand ganz beträchtlich erweitert werden kann. So verwaltet Adabas/M auf Minicomputern der Serien PDP-11 und VAX-11/780 einen Datenbestand, der in bis zu 250 Dateien abgelegt werden kann, wobei jede Datei bis zu 16 Millionen Datensätze von maximal 3000 Bytes Länge enthalten kann. Diese Menge mag vielleicht groß erscheinen, stellt aber die Gewähr dafür dar, daß auch bei wachsender Datenmenge in Zukunft deren einheitliche Verwaltung durch ein System gewährleistet ist.

Datenbanksysteme sind Werkzeuge, die wiederum in anderen Systemen innerhalb des Betriebes eingesetzt werden. Bei diesen unterscheidet man zwei Typen: Informationssysteme und Produktionssysteme.

Informationssysteme haben die Aufgabe, den Datenbestand nach unvorhersehbaren Kriterien abzusuchen. Die Antwortzeiten sollen dabei im Bereich von Minuten liegen. Typische Beispiele dafür sind Auskünftssysteme wie Management-Informationssysteme. Adabas/M bietet hierfür die Abfragesprache Adascript/M an, mit der in der Datenbank interaktiv gesucht werden kann. Das Suchkriterium kann dabei ein komplexer Ausdruck in maximal 32 verschiedenen Schlüsselbegriffen sein.

Produktionssysteme bearbeiten den Datenbestand meist periodisch und führen Routineaufgaben durch. Beispiele sind automatische Abbuchungen und Mahnwesen. Bei solchen Aufgaben liefert oft das physisch-sequentielle Zugriffsverfahren des Datenbanksystems die günstigsten Verarbeitungszeiten.

Viele 1/0-Operationen in der Zeiteinheit

Beide Typen umfassen einen großen Bereich innerbetrieblicher Aufgaben, die bereits für dem Einsatz von Datenbanksystemen auf Minicomputern gelöst werden können. Der Einsatz von zentraler Groß-EDV ist dabei noch nicht erforderlich.

Es sollte aber nicht verschwiegen werden, daß ein Datenbanksystemen einen Minicomputer je nach Anwendung in bezug auf Arbeitsspeicherbedarf und Zugriffe auf periphere Geräte stark belasten kann. So benötigt der Nukleus von Adabas/M einen vollen 16-Bit-Adreßraum von 32 KW. Dies hat aber den Vorteil, daß der Adreßraum des Benutzerprogramms nicht belastet wird, bis auf etwa 0,5 KW, die ein Link-Modul benötigt, über das die Kommunikation mit dem Nukleus hergestellt wird.

Typisch für ein Datenbanksystem sind viele I/0-Operationen in der Zeiteinheit. Das bedeutet, daß anderen Anwendungsprogrammen stets noch Zeit bleibt, Rechnungen durchzuführen oder Datenerfassung zu betreiben.

Ein Datenbanksystem wie Adabas/ M ist ein gewöhnlicher Task, der sich wie alle anderen um die Betriebsmittel bemüht und dem Tuning des System-Managers unterliegt. Innerhalb des Datenbanksystems wiederum nimmt der Datenbank-Administrator eine Optimierung und Feinabstimmung vor, die sich vom Datei-Design bis zur Zuteilung von Prioritäten an die einzelnen Datenbankbenutzer erstreckt.

Es könnte der Eindruck entstanden sein, daß Datenbanksysteme auf Minicomputern nur in den Unternehmen wirtschaftlich einzusetzen sind, die keine zentralisierte EDV haben, Dem ist nicht so.

Anwendungsprogrammierer als Kostenfaktor

Untersuchungen haben gezeigt, daß von den in einer Abteilung verwendeten Informationen nur 20 Prozent von außen kommen und 80 Prozent in ihr selbst erzeugt werden, während wiederum 80 Prozent der

Informationen in ihr selbst benutzt und nur 20 Prozent nach außen abgegeben werden. Diese Lokalität der Information mag damit zusammenhängen, daß der Wert von Information nach außen hin schnell abnimmt. Bei hinreichend großen Datenmengen in einer Abteilung kann also der Einsatz eines Datenbanksystems auf einem Minicomputer durchaus sinnvoll sein: Die Daten werden dort verarbeitet, wo sie erzeugt und benötigt werden, und die zentrale EDV wird damit zugleich entlastet.

Bisher wurde der Einsatz eines Datenbanksystems weitgehend aus der Sicht des Anwenders und des System-Managers betrachtet. Einen wesentlichen Kostenfaktor stellen aber auch die Anwendungsprogrammierer dar. Bei einem Datenbanksystem wie Adabas/M müssen dies keine Spezialisten sein, die sich in den internen Strukturen genau auskennen, um sie optimal zu nutzen. Es ist vielmehr eine Funktion des Systems, den Anwendungsprogrammierer davon zu trennen. Er spricht die Daten nur über Dateinamen und Feldnamen an. Damit ist er nach wenigen Stunden Schulung bereits in der, Lage, produktiv zu werden. Da ihm bei der Erstellung von Anwendungsprogrammen das Datenbanksystem die Verwaltung der Daten abnimmt, kann er sich voll dem eigentlichen Problem widmen und spart zugleich bis zu 50 Prozent an Programmanweisungen.

Ebenso ist das Anwendungsprogramm von den internen Strukturen des Datenbanksystems abgekoppelt. Sollte der Datenbank-Administrator die Datei umstrukturieren und neu laden, so stört dies das Anwendungsprogramm nicht, sofern nur die Feldnamen beibehalten werden. Auch der Hersteller des Datenbanksystems behält die Freiheit, die internen Strukturen zu optimieren, ohne negative Rückwirkungen auf alle Anwender.

Damit tritt keine Abhängigkeit des Unternehmens ein, weder von Spezialisten in der Anwendungsprogrammierung noch von Anwendungsprogrammen, die einmal definierte Datenstructuren für die Zukunft festzemontieren. So können unnötige Folgekosten vermieden werden, die gerade bei Minicomputersystemen prozentual besonders zu Buche schlagen würden.

Die fortschreitende Technologie, die wachsende Erfahrung mit Datenbanksoftware und nicht zuletzt die Forderunqen des Marktes werden die Entwicklung von Datenbanksystemen gerade auf Minicomputern weiter vorantreiben. Auf der Seite der Hardware wird der Einsatz von Disks in Winchester-Technologie mit Kapazitäten von 600 MB pro Stapel interessante Aspekte bieten, ebenso ein standardmäßiger Einsatz von Bubble Memories, die in der Zugriffszeit die Lücke zwischen Arbeitsspeicher und konventionellen Disks füllen werden. Auf seiten der Software werden sicher weitere Software-Werkzeuge entwickelt werden, die in der Hierarchie Über den Datenbanksystemen angesiedelt sind, wie quasi-natürliche Programmiersprachen, in denen Probleme formuliert werden können, die mit Datenbanksystemen zu lösen sind.

Ebenso wird die Realisierung des Konzepts der verteilten Datenbanken (DBMS) und ihr wirtschaftlicher Ein. satz eine interessante Herausforderung darstellen.

Mit Sicherheit werden Datenbanksysteme in Zukunft noch leistungsfähiger, flexibler und leichter zu handhaben sein. Ihr Einsatz wird in einer Zeit der zunehmenden Verknappung der Ressourcen nicht nur wirtschaftlich sinnvon, sondern sogar wirtschaftlich notwendig sein.

Dr. Heinz Otto ist Mitarbeiter der Software AG, Darmstadt