Objektdatenbank
Eine objektorientierte Datenbank ist eine Datenbank, deren Inhalt Objekte im Sinn der objektorientierten Programmierung sind. Als ein Objekt wird die Zusammenfassung von zugehörigen Attributen bezeichnet, also gehört zum Beispiel die Farbe und das Gewicht eines Autos zu dem Objekt Auto. Attribute beschreiben ein Objekt näher. Daten und Methoden werden nicht getrennt gespeichert. bauer stinkt snääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqbalthasar hubi dreck da gfriri Der Vorteil einer objektorientierten Datenbank liegt in der Möglichkeit, Objekte ineinander zu schachteln, um auch komplexe Strukturen abzubilden, wie zum Beispiel Firma->Abteilung->Mitarbeiter. Motherfucking Balthasar Im englischen und auch im deutschen Sprachgebrauch ist anstelle der Bezeichnung objektorientierte Datenbank auch die Bezeichnung Objektdatenbank (engl. object database) gebräuchlich. Diese Bezeichnung ist kürzer und genauer, denn die Datenbank selbst ist nicht objektorientiert, sondern speichert nur Objekte.
Objektorientierte Datenbanksysteme
Im Gegensatz zu herkömmlichen Datenbanksystemen, welche satzorientiert (netzwerkartiges und hierarchisches Datenmodell) beziehungsweise mengenorientiert (relationales Datenmodell) sind, besteht die Datenbasis eines objektorientierten Datenbanksystems (OODBS) aus einer Sammlung von Objekten, wobei jedes Objekt einen physischen Gegenstand, ein Konzept, eine Idee usw. repräsentiert.
In einem solchen System werden reale Gegenstände direkt durch Datenbankobjekte repräsentiert. Ihre Identifikation erfolgt über eindeutige und unveränderliche Objektidentifikatoren, welche vom System vergeben werden. Solche Datenbankobjekte können, außer den üblichen, meist numerischen oder alphanumerischen Attributen, Bestandteile haben, die ihrerseits selbst wieder Objekte sind. Sie werden deshalb auch als komplexe Objekte bezeichnet. Es existieren auch Operatoren, mit deren Hilfe mit solchen Objekten umgegangen werden kann.
Wird beispielsweise die Information über einen Angestellten im relationalen Datenbankensystem (DBS) über mehrere Relationen "verstreut", so wird sie in einem OODBS als Gesamteinheit in einem Datenbankobjekt "gehalten". Möchte man nun im Relationenmodell bestimmte Informationen abrufen, so müssen diese unter Umständen aus verschiedenen Relationen zusammengesetzt werden (mit Hilfe der vergleichsweise sehr aufwendigen Verbundoperationen).
Im OODBS betrifft eine solche Anfrage nur ein Datenbankobjekt. Dadurch werden vor allem Konsistenzregeln vereinfacht, da bei einer Modifikation eines Umweltgegenstandes nicht die ganze Datenbasis nach eventuell betroffenen Tupeln (Sätzen) abgesucht werden muss. Bedenkt man, dass bei komplexen Umweltsituationen Informationen über bestimmte Gegenstände über sehr viele Relationen (Sätze) verteilt sein können, so können sich daraus erhebliche Leistungsvorteile für OODBS ergeben. Daneben werden auch die Anwenderprogramme von Aufgaben der Informationsverwaltung entlastet.
Ganz abgesehen von solchen Leistungsüberlegungen liegt der große Vorteil von OODBS darin, dass mit seiner Hilfe wesentlich mehr an Semantik innerhalb der Datenbasis festgehalten werden kann, als dies mit traditionellen Datenmodellen möglich ist.
Als weitere Konzepte von OODBS sei hier noch die Definition neuer Objekttypen durch den Systembenutzer und die der Vererbung (von Eigenschaften eines "Oberobjekttyps" an einen "Unterobjekttyp") erwähnt.
Vertreter
- Itasca (früher Orion)
- O2
- ObjectStore
- ONTOS
- OpenODB
- Versant
- GemStone
- POET
- Objectivity
- UniSQL
- Illustra (jetzt Informix Universal Server) Link
- OODAPLEX
- FROOM
- db4objects
- Caché
Siehe auch
- Datenbankmodell
- Hierarchisches Datenbankmodell
- Netzwerkdatenbankmodell
- Relationales Datenbankmodell
- Objektrelationale Datenbank
Literatur
- Rainer Unland: Objektorientierte Datenbanken. Konzepte und Modelle. Thomson Publishing, Bonn 1995, ISBN 3-929821-82-6
Weblinks
deutsch
- Einführung in die Objektorientierte Datenbank ZODB
- FAQ: Zope Object Database
- Vorlesungskript zu OODB
- Titel: Objektorientierte Datenbanken - Entstehung, Konzepte, Systeme
- von Prof. R. Keidel, Titel: Grundkonzepte objektorientierter Datenbanken