Dimensionen und Objekte

Diebold erfragt Datenbank-Anforderungen

10.04.1998

Relationale Systeme stoßen an ihre Grenzen, wenn sie neben normalisierten, alphanumerischen Daten auch komplexe Informationen wie Web-Seiten, Office-und CAD-Dokumente, Zeitreihen sowie Bilder speichern sollen. Das Beratungshaus Diebold befragte seine Kunden und fand heraus, daß zu ihren Anforderungen neben Performance, Skalierbarkeit, Verfügbarkeit, Sicherheit, Administrierbarkeit und verteilter Datenhaltung zunehmend die komplexen Datentypen gehören.

Um letztere relational speichern zu können, muß jeweils eine geeignete Struktur in der Datenbank definiert und ein ganzes Set von Methoden spezifiziert werden. Auch die Möglichkeit, beliebige Zeichenketten extern als Files oder intern als Binary Large Objects (Blobs) abzulegen, hilft wenig. Die Datenbank "weiß" lediglich von einer Relation zu einem solchen Objekt, nichts jedoch über dessen inhaltliche Charakteristika.

Anders bei objektfähigen Datenbanken. Sie erleichtern die Verwendung objektorientierter Techniken wie frei definierbare Klassen und Methoden, Kapselung und Tabellenvererbung und greifen direkt auf Objekte und deren Inhalte zu.

Die großen Anbieter relationaler Datenbanken IBM, Oracle, Informix und Sybase unterstützen mittlerweile komplexe Datentypen. Umgekehrt bieten die Hersteller objektorientierter Datenbanken wie Computer Associates, Poet, Object Design und Objectivity Optionen für den Durchgriff auf relationale Datenbanken etwa für die Transaktionsverarbeitung an.

Multidimensionale Datenbanken wie "Essbase" von Arbor oder "Express" von Oracle werden wegen kurzer Antwortzeiten bei komplexen Abfragen häufig im Zusammenhang mit Data-Warehouse-Lösungen genannt. Objektorientierung sowie die Speicherung und Darstellung von Daten in mehreren Dimensionen erlaubt nun die Intersystems-Datenbank Caché. Sie unterstützt Java und Javabeans, Active-X-Komponenten und C++-Klassen. Entwickler können ihre Daten als Objektklassen und als SQL-Tabelle verwenden. Die entsprechenden Daten werden nur einmal definiert.