XML-Datenbank
aus Wikipedia, der freien Enzyklopädie
Als XML-Datenbank werden Datenbanken oder Datenbankverwaltungssysteme bezeichnet, die Daten im XML-Format speichern oder anderweitig mit XML-Daten umgehen können. Man kann daher XML-Datenbanksysteme in zwei Kategorien unterteilen:
- XML-enabled. Herkömmliche Datenbanksysteme (z.B. Relationale Datenbanksysteme, ...) die ein Mapping auf oder ins XML-Format erlauben. Man bezeichnet diese Vorgehensweise als datenorientiert.
- Native XML-Datenbanksysteme. Diese Systeme speichern die Information, ähnlich wie bei der Speicherung von XML-Dokumenten im Dateisystem, direkt als XML-Dokumente ab. Sie werden daher auch als dokumentenorientiert bezeichnet.
Inhaltsverzeichnis |
[Bearbeiten] Vorteile
Durch die weitverbreitete Verwendung von XML in Anwendungen (vor allem in Web-Anwendungen) ist die Nutzung von XML-Datenbanksystemen naheliegend, da somit der Umwandlungsprozess (z.B. von Relational auf XML) hinfällig wird.
Neben diesem Vorteil ergeben sich zusätzliche Vorteile durch das XML-Format:
- Da XML-Dokumente einen baumartigen Aufbau haben, können praktisch alle Datenstrukturen mehr oder weniger einfach serialisiert werden. XML-Datenbanksysteme können beispielsweise verwendet werden, um objektorientierte Daten zu speichern.
- Da XML und verwandte Auszeichnungssprachen weitverbreitete, "offene Standards" des W3Cs sind und viele Implementierungen (meist Open Source) dieser Standards vorhanden sind, ist ein reiches Instrumentarium zur Verarbeitung von XML verfügbar.
[Bearbeiten] Nachteile
- XML Datenbanksysteme sind bei großer Datenbasis oftmals nicht so performant wie relationale Datenbanksysteme.
- XML-Datenbanksysteme sind meist nicht so ausgereift, da sie meist jünger sind.
- Es mangelt oft an Erfahrung im Vergleich zu relationalen Datenbanksystemen.
[Bearbeiten] Vergleich der Technologien und Sprachen
Was in relationalen Datenbanksystemen SQL (zur Abfrage und Manipulation) ist, ist bei XML-Datenbanken vor allem XPath, XQuery und XUpdate. Dem Entity-Relationship-Modell in relationalen Datenbanksystemen ist entweder XML Schema bzw. DTD (ungenauer) gleichzusetzen. Die aus den relationale Datenbanksystemen bekannten Fremdschlüssel können durch XPointer realisiert werden. Zur Transformation und Darstellung der XML-Daten kann XSL (XSLT, XSL-FO) verwendet werden.
[Bearbeiten] Persistenz
Eine übliche Methode zur Speicherung von XML-Daten, bei der XPath-Anfragen effizient ausgeführt werden können, ist die Verwendung einer Pre-Post-Tabelle. Dabei werden die Knoten des XML-Baumes einmal in Pre-order-Reihenfolge (Tiefensuche, Dokumentordnung) und einmal in Post-Order (Breitensuche) nummeriert. Die Nummerierung lassen sich als Koordinaten in der Ebene auffassen, in die ein XML-Baum gelegt wird.
[Bearbeiten] Literatur
- Bastian Gorke: XML-Datenbanken in der Praxis. bomots Verlag, 2006 ISBN 3-939316-19-9
- Meike Klettke, Holger Meyer: XML & Datenbanken. dpunkt Verlag, 2003 ISBN 3-89864-148-1
- Michael Seeman: Native XML-Datenbanken im Praxiseinsatz. Software- und Support-Verlag, 2003 ISBN 3-935042-35-3
- Wassilios Kazakos, Andreas Schmidt und Peter Tomczyk: Datenbanken und XML. Springer, 2002 ISBN 3-540-41956-X
- Uwe Hess: XML und Datenbanken: Markt-und-Technik, 2002 ISBN 3-8272-6304-2
- Harald Schöning: XML und Datenbanken. Hanser, 2002 ISBN 3-446-22008-9
[Bearbeiten] Weblinks
- Sehr umfangreiche Liste aller nativen XML Datenbanksysteme(englisch) von Ronald Bourret
- Viele Diplom- und Studienarbeiten zum Thema
[Bearbeiten] native XML-Datenbanken
- Infonyte, Fraunhofer Institut für Integrierte Publikations- und Informationssysteme (IPSI)
- Tamino, Software AG
- Xindice, Apache Software Foundation
- MonetDB/XQuery
- Berkeley DB XML, Oracle
- DB2 9 with pureXML technology, IBM