Datenbank-Guru Stonebraker zur Informix-Strategie

"Wir waren nicht realistisch"

02.10.1998

CW: Kritiker behaupten, das Geschäft mit objektrelationaler Technologie gehe schlecht. Stimmt das?

Stonebraker: Nun, wir wollten vor zwei Jahren jedermann davon überzeugen, daß objektrelationale Datenbanken den Markt im Handstreich einnehmen würden. Das war damals zugegebenermaßen alles andere als realistisch.

CW: Oracle offeriert mit der Version 8i neuerdings ein eigenes Dateisystem innerhalb der Datenbank. Weshalb ist Informix nicht auf eine derartige Idee gekommen?

Stonebraker: Die wichtigste Neuerung in Oracle 8i ist nicht das Dateisystem, sondern die integrierte Java Virtual Machine. Der Knackpunkt aber sitzt woanders: Oracle 8i besitzt keine objektrelationale Engine. Die Tatsache, daß mit Oracle 8i nun Stored Procedures statt mit SQL in Java erfolgen können, macht eine Datenbank noch lange nicht objektrelational. Oracle ist noch weit davon entfernt, eine objektrelationale Engine anbieten zu können.

CW: Aber die Möglichkeit, mit Oracle nun unterschiedlichste Datentypen einfach per Drag and drop in das Datenbank-eigene Dateisystem einzubinden, kommt Anwendern doch entgegen, oder?

Stonebraker: Es geht doch eigentlich nur darum, das Lesen und Schreiben von Daten innerhalb der Datenbank zu ermöglichen. Um konkret zu werden: Diese Funktionen benötigen nicht mehr als zwei Seiten Programmiercode. Mit Futurismus hat das wirklich nichts zu tun. Die Frage ist, macht ein solches Konzept im Rahmen der Performance Sinn. Eine Datei mit einem Terabyte Größe läßt sich sicher besser innerhalb der Datenbank verarbeiten. Will man jedoch eine Million 4 KB große Dateien verarbeiten, so wird das Datenbank-Dateisystem weniger effizient arbeiten als ein ganz gewöhnliches Dateisystem.

CW: Demnach hängen die Vor- und Nachteile integrierter Dateisysteme mit den unterschiedlichen Cluster-Größen zusammen?

Stonebraker: Nicht nur. Dateien, die innerhalb eines Datenbank-Dateisystems liegen, unterstützen beispielsweise ein effektiveres Crash-Recovery und bessere Transaktionsverarbeitung.

CW: Informix bietet mit Datablades, Oracle mit sogenannten Cartridges eine Integrationsmöglichkeit von nichtrelationalen Datentypen an. Wo liegen die Unterschiede?

Stonebraker: Unsere objektrelationale Engine verarbeitet komplexe Objekte sozusagen direkt. Oracles Komponentenmodell stützt sich auf Cartridges. Diese Cartridges laufen allerdings - anders als bei uns - nicht innerhalb des Datenbank-Servers selbst. Eine echte Verarbeitung von Cartridges innerhalb der Datenbank-Engine soll erst mit Oracle 9 kommen. Der Support für komplexe Objekte, den Oracle momentan bieten kann, ist geradezu lächerlich.