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.

29.10.1999 - 

Datenbanken/Wenn sich Datenbanken selbst warten

Miniaturisierung im Trend: Datenbanken ohne Administrator

MÜNCHEN - Ob Laptop, Fotokopierer oder Getränkeautomat: Datenbanken, die ohne Administration laufen, kommen in Mode. Dabei müssen die umfangreichen Aufgaben, die ein Administrator auf High-end-Datenbanken auszuführen hat, vollständig von der Mini-Datenbank automatisiert werden. Martin Teetz* beschreibt Einsatzgebiete und Funktionsweise von administratorlosen Datenbanken.

In den vergangenen Jahren ist ein großer Bedarf an Datenbanken in Umgebungen entstanden, in denen der Betrieb mit einem Datenbank-Administrator nur erschwert oder kaum möglich ist. Ständig sinkende Hardwarekosten bei zugleich immer höherer Leistung haben das Anwendungsspektrum auch bei Datenbanken erheblich erweitert. Der Einsatz von hochtechnisierten Datenbanken auf Laptops und Notebooks ist keine Seltenheit mehr. Daß der Anwender dabei nicht von einem Datenbank-Administrator begleitet werden kann, ist nur logisch.

Mobile Computing im Trend

Mobile Computing ist aber nicht der einzige Anwendungsfall von administratorlosen Datenbanken. Generell kann man davon ausgehen, daß, je größer die Zahl der Installationen eines Datenbank-Management-Systems (DBMS) in einem Unternehmen ist, eine dezidierte Administration dieser Systeme um so schwieriger wird. Außer für mobile Rechner gilt diese Theorie vor allem für Datenbanken in verteilten Betriebsstätten und Filialen. Verfügen diese über eine eigene DBMS, so fehlt es oft an einem speziellen Datenbank-Administrator für jede Filiale. Nicht selten entscheidet die vermeintliche Notwendigkeit eines Administrators über das IT-Konzept und die Systemarchitektur. Ganz nach dem Motto: "Weil man den Filialen keinen Administrator zur Verfügung stellen kann, müssen diese mit der zentralen Datenbank arbeiten". Eine zusätzliche Restriktion also bei der Systemplanung.

Weitere potentielle Kunden von administratorlosen Datenbanken sind kleine und mittlere Unternehmen, bei denen sich der Einsatz eines Administrators schon von der Betriebsgröße her nicht lohnen würde. Auch in diesem Sektor haben sich die IT-Konzepte in den letzten Jahren gewandelt. Bis Anfang der 90er waren hier zumeist Low-Level-Applikationen im Einsatz, beispielsweise auf Clipper- oder Access-Basis. Administration war dabei so gut wie nicht erforderlich - entsprechend gering waren die Anforderungen an Sicherheit und Performance. Heute ist auch in solchen Unternehmen die IT nicht mehr nur ein zeitsparendes Add-on, sondern "geschäftskritisch". Oft wird dort mit kleinen ERP-Systemen gearbeitet, man betreibt dabei meist SQL-Datenbanken und bereitet sich auf E-Commerce vor. Das Problem der Administration der Datenbanken ist im Kern aber nach wie vor ungelöst.

Da die Verkleinerung der IT-Systeme weitergeht, wird künftig ein zusätzlicher Anwendungsbereich für die administratorlosen Datenbanken entstehen: Datenbanken auf "Applied Systems", also auf Systemen, die keine Computer sind. Bei diesen integrierten Datenbanken wird nicht nur der Administrator überflüssig - es gibt quasi auch gar keinen Anwender im klassischen Sinne mehr. So werden beispielsweise Datenbanken die CD-ROM in mobilen Routenplanern ablösen, Automaten etwa für Getränke oder Nahrungsmittel ebenso über Datenbanken verfügen wie Fotokopierer, die Informationen über die Servicefälle dieser Geräte sammeln. Der Datenbankeinsatz kann in diesen und ähnlichen Fällen nur funktionieren, wenn die Administrationsfunktionen vollständig automatisiert werden.

Worin bestehen nun diese Funktionen eines DatenbankAdministrators? Was muß ein Datenbank-Management-System (DBMS) können, wenn es diese Aufgaben automatisch übernimmt? Im Kern geht es um drei verschiedene Bereiche: um die Verwaltung der physikalischen Datenbanken, das Fehler-Handling und die Verwaltung der Anwender.

Zur Verwaltung gehört zunächst das Anlegen der Datenbanken selbst. Bei vielen Unix-Datenbanken muß eine feste Platzvorgabe auf den Platten vorgenommen werden. Zur Allokation von Datenbankplatz gehört auch die Berechnung der erwarteten Datenbankgröße. Ein weiterer wichtiger Bereich ist das Datenbank-Tuning. Dazu gehören die richtige Skalierung des Rechners, die Abstimmung der Festplattengeschwindigkeit, die Prozessorleistung für die erwartete Datenmenge und gleichzeitige Benutzerzugriffe. Außerdem muß bei einigen DBMS das gesamte Betriebssystem für den Datenbankbetrieb eingestellt werden. Dazu zählt unter anderem die Zuweisung von RAM-Bereichen und Einstellungen wie die Prozessorpriorität der Datenbank-Tasks. Insbesondere bei Unix und MVS gibt es also reichlich Arbeit für den Datenbank-Administrator. Im laufenden Betrieb müssen darüber hinaus Datenbank-Files eventuell manuell erweitert werden.

Besonders wichtig wird der Administrator bei Störfällen. Als Vorsorge muß er einen Backup-Plan sowie Backups erstellen. Im Fehlerfall nimmt er die entsprechenden Restore-Prozeduren vor. Der Administrator ist für die Wiederherstellung eines konsistenten Datenzustands verantwortlich. Wenn hier Fehler gemacht werden, fallen sie den Anwendern unter Umständen erst Wochen später auf. Als Vorsorge müssen nach Störfällen daher Konsistenzchecks vorgenommen werden. Ferner ist zu prüfen, ob eventuell Indizes fehlerhaft sind. Diese müssen gegebenenfalls gelöscht und neu aufgebaut werden.

Die meisten Desktop-Datenbanken kennen solche Funktionen gar nicht. Anwender unterschätzen daher oft die Probleme, die beim Übergang auf echte relationale DBMS entstehen. Die Reorganisation einer Access-Datenbank ist in der Regel mit einem Mausklick zu bewerkstelligen, große SQL-Systeme verschlingen mitunter etliche Manntage.

Auch die Verwaltung der Anwender selbst ist entscheidend für die Datenbanksicherheit. Benutzerrechte und -rollen müssen definiert und mit Betriebssystem und Anwendungen abgestimmt werden. Im Rahmen von Intranet-Datenbanken ist das zwar unter Umständen aufwendig, aber technisch relativ einfach. Mehr Gedanken muß man sich im Internet machen, wo die Datenbank im Grunde frei zugänglich ist.

Für die Erledigung dieser Aufgaben stehen dem Administrator datenbankspezifische Werkzeuge zur Verfügung. Meist handelt es sich um eher karg ausgestattete, textorientierte Administrations-Tools. Andere Systeme, beispielsweise Oracle, Microsoft SQL Server oder Centura SQL Base, verfügen über grafische Werkzeuge für alle Aufgaben des Administrators.

Nicht in allen Anwendungen des administratorlosen Betriebs einer Datenbank werden alle Funktionen benötigt. So verfügen die in Geräte eingebauten Datenbanken beispielsweise weder über Backup-Einrichtungen noch über eine Benutzerverwaltung. Generell müssen aber die Administratorfunktionen durch entsprechende Algorithmen abgedeckt werden, sei es direkt in den Kernel integriert oder aber durch automatische Administratorfunktionalität in der jeweiligen Anwendung.

Führende DBMS für den administratorlosen Betrieb führen eine automatische Allokation von Speicherplatz auf der Festplatte durch. Da dies permanent geschieht, entfallen Administrationseingriffe zur Vergrößerung von Datenbanken. Wichtig ist auch ein sogenanntes automatisches Rollback-Recovery, das nach einem Crash automatisch die offenen Transaktionen zurückfährt und so einen konsistenten Zustand herstellt, ohne daß dafür ein Administrator eingreifen muß. Eine administratorlose Datenbank braucht zudem eine automatische Deadlock-Erkennung, wenn sich zwei Prozesse um einen Zugriff streiten und sich gegenseitig sperren. Hier fahren administratorlose Datenbanken automatisch einen dieser Prozesse zurück, damit die Transaktion des anderen durchgeführt werden kann.

Darüber hinaus lassen sich zahlreiche Verwaltungsfunktionen beim Einrichten einer Datenbank einstellen. Dies ist zum Beispiel dann wichtig, wenn eine Datenbank zusammen mit einer speziellen Anwendung als Komplettsystem von einem Softwarehaus ausgeliefert wird. Ein solcher Anbieter will sich meist nicht zusätzlich mit Administratoraufgaben belasten und erwartet daher, daß alle notwendigen Einstellungen im Rahmen eines Installationsprozesses vorgenommen werden. Dabei müssen Datenbankparameter wie Datenbankcache oder Installationsverzeichnis weitgehend automatisch auf das Zielsystem gebracht werden. Das bedeutet auch, daß die Datenbank als gesamtes Anwendungspaket installierbar sein muß, ohne daß ein Administrator die Einrichtung für den Erstbetrieb vornimmt.

Automatisierung erübrigt Administrator

Dies ist besonders bei vielen hundert oder tausend Anwendern wichtig, wenn etwa Datenbanken im Rahmen eines Anwendungsprogramms für E-Banking verkauft werden oder wenn eine Außendienstorganisation auf eine neue, datenbankgestützte Notebook-Applikation umgestellt wird. Die Installation muß dabei für den Anwender vollständig transparent sein. Er installiert nur sein Softwarepaket und weiß unter Umständen gar nicht, daß darin eine relationale Datenbank enthalten ist. Es muß möglich sein, eine voreingestellte Datenbank mit enthaltenem Datenmodell und relevanten Daten schon bei der ersten Benutzung vorliegen zu haben.

Im produktiven Betrieb müssen solche Datenbanken bei einer Anfrage durch das Anwendungsprogramm automatisch starten und in den Online-Modus übergehen. Moderne Datenbanken bieten zum Beispiel den Zugriff auf alle Verwaltungsfunktionen. Dadurch ist auch ein automatisches Backup durch die Anwendung realisierbar. Alle zusätzlich gewünschten Administrationstätigkeiten können so durch die Anwendung abgedeckt werden. Der Benutzer klickt einen Button an, und der integrierte Administrator führt im Hintergrund den gewünschten Job durch. Selbstverständlich lassen sich solche Funktionen auch zeit- oder ereignisgesteuert durchführen.

Angeklickt

Gibt es einen Begriff, um den sich die Datenbankwelt heute dreht, dann ist das XML. Die Datenbeschreibungssprache wird nach Ansicht von Herstellern und Marktforschern gleichermaßen künftig als zentraler Bestandteil bei der Entwicklung neuer Datenbanken gelten. Denn: XML ist ein Standard, der im Gegensatz zu anderen Technologien konsequent mit Blick auf einen plattformübergreifenden Einsatz im Internet konzipiert wurde. Auch das gute Zusammenspiel mit der erfolgreichen Programmiersprache Java sichert XML einen hohen Stellenwert, wenn es um den Einsatz von E-Business-Lösungen geht. Kommende Datenbankgenerationen werden also in der Lage sein müssen, XML-konforme Beschreibungen zu verarbeiten.

*Martin Teetz ist Business Development Manager bei Centura Software in München.