Die API XML:DB für native XML-Datenbanken und ihre Implementierung in Apache Xindice

Ein Vorteil des Speicherns von Daten in nativen XML-Datenbanken besteht darin, dass man ineffiziente und unnötig speicherintensive halbstrukturierte Daten vermeiden kann. Diese weisen zwar eine reguläre Struktur auf, die jedoch so unterschiedlich ist, dass beim Mapping in eine relationale Datenbank entweder zahlreiche Spalten mit Nullwerten (unnötige Speicherbelegung) oder zahlreiche Tabellen (ineffiziente Anordnung) erstellt werden. Zwar können halbstrukturierte Daten in objektorientierten und hierarchischen Datenbanken gespeichert werden, doch ist es weitaus praktischer, sie in Form von XML-Dokumenten in einer nativen XML-Datenbank zu speichern.

Ein weiterer Grund, der für das Speichern in nativen XML-Datenbanken spricht, ist die Abrufgeschwindigkeit. Abhängig von den physikalischen Speichermethoden der nativen XML-Datenbank kann die Abrufgeschwindigkeit der Daten sehr viel schneller sein als bei einer relationalen Datenbank. Das liegt daran, dass einige der von XML-Datenbanken verwendeten Speicherstrategien ganze Dokumente physikalisch zusammen speichern oder physikalische (statt logische) Zeiger zwischen den Dokumententeilen einsetzen. So können Dokumente entweder ohne Verknüpfungen oder über physikalische Verknüpfungen abgerufen werden – beides ist schneller als die bei relationalen Datenbanken verwendeten logischen Verknüpfungen.

Ein weiteres Argument ist die mögliche Nutzung von XML-spezifischen Fähigkeiten wie dem Ausführen von XML-Anfragen. Angesichts der Tatsache, dass nur wenige datenzentrierte Anwendungen dies heute noch brauchen und dass relationale Datenbanken zunehmend XML-Abfragesprachen implementieren, tritt dieses Argument jedoch in den Hintergrund.

Apache Xindice

Apache Xindice ist eine native Datenbank, die speziell auf komplexe XML-Strukturen ausgelegt ist, die mit strukturierteren Datenbanken nur schwer bzw. gar nicht zu mappen wären.

Derzeit verwendet Xindice XPath als Anfragesprache und XML:DB XUpdate als Update-Sprache. Xindice bietet eine Implementierung der API XML:DB in Java und kann auch über andere Sprachen mit XML-RPC genutzt werden.

Die native XML-Datenbanktechnologie ist ein sehr neuer Bereich und Xindice stellt praktisch ein noch in der Entwicklung befindliches Projekt dar. Der Server unterstützt derzeit die Speicherung von gut aufgebauten XML-Dokumenten. Das heißt, dass kein Schema besteht, das die Zusammensetzung einer Dokumentensammlung einschränkt. Das macht Xindice zwar zu einer halbstrukturierten Datenbank mit enormer Flexibilität bei der Datenspeicherung, gleichzeitig muss man jedoch auf einige gängige Datenbankfunktionen wie Datentypen verzichten.

Xindice bietet derzeit drei API-Ebenen zum Programmieren von Anwendungen:

  • Mit der XML Database API XML:DB können Xindice-Anwendungen in Java entwickelt werden.
  • Über die CORBA API kann mit anderen Sprachen als Java auf Xindice zugegriffen werden.
  • Die Core Server API ist die interne Java-API der Core Database Engine. Das ist die API der untersten Ebene, die nur für Software verfügbar ist, die in der gleichen Java-VM-Umgebung wie die Datenbank-Engine selbst läuft.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

KI-Reife der Unternehmen in Deutschland sinkt leicht

Cisco „KI-Readiness“-Studie zeigt: Nur noch 6 Prozent der Unternehmen sind optimal auf KI vorbereitet, gegenüber…

3 Tagen ago

Big Blue kündigt Zusammenarbeit mit AMD an

IBM Cloud setzt AMD Instinct MI300X Accelerators ein, um generative KI-Workloads und HPC-Anwendungen zu unterstützen.

5 Tagen ago

Jeder zweite vereinbart Arzttermine online

Ein Viertel der Deutschen wählt Arztpraxen sogar ganz gezielt danach aus, ob sie Internettermine anbieten.

6 Tagen ago

Siemens spendiert neuen Rechnern NVIDIA-Chips

Der Technologiekonzern hat Industrie-PCs angekündigt, die mit Grafikprozessoren von NVIDIA ausgestattet sein werden.

6 Tagen ago

Bundesbürger misstrauen KI-generierten Ergebnissen

ChatGPT, Google Gemini, MidJourney oder Anthropic Claude: Gut jeder zweite Bundesbürger hat generative KI bereits…

1 Woche ago

Typische Fehler beim KI-Einsatz im Marketing

KI gehört schon zu den festen Instrumenten des Marketings. Doch viele Unternehmer setzen die KI…

1 Woche ago