Frage

Ich erwäge eine optimale Open-Source-Lösung von XML-Dokumenten mit weiterer Abfrage auf diesem effektiv zu speichern. Datenmenge klein sein wird. Soweit ich verstehe, native XML-Datenbanken könnten eine richtige Lösung für meinen Fall bilden. Sie speichern offensichtlich XML-Dokumente in hocheffiziente Art und Weise. Es wäre toll, Ihre Erfahrungen zu lernen. Irgendwelche Vorschläge auf die richtige Lösung? Haben Sie Erfahrung xml Speicher-Engines in Ihre Anwendungen beschäftigen?

War es hilfreich?

Lösung

Wir haben benn mit nativen XML-Servern bei unserer Arbeit zu arbeiten. Es geht ihnen gut, wenn Ihre Daten unten wie ein 100-200MB-s ist, aber danach konnte ich nicht einen richtigen Server finden, die die Daten verarbeiten kann. Ich habe folgendes versucht:

  • vorhanden sein: Java-basierte native XML-Server (Open-Source): mit großen Dateien, die es in der Regel den Speicher des JVM isst und wirft dann eine aus der Erinnerung Ausnahme
  • sedna: C basierter nativen XML-Server (Open-Source): Kann Datenbanken echten großen Griff, aber segfaults wenn Sie versuchen, ein nicht indizierte Daten aus der Datenbank
  • abfragen
  • Tamino XML-Datenbank (proprietär): Eines der ersten XML-Datenbanken, reifen aber hat crappy XQuery-Unterstützung (zumindest die fast neueste Version verwenden wir eine sehr schlechte suport für XQuery), und wie wir auch eine gesehen haben ausgebildete Fachkraft kann es nicht richtig eingerichtet schnell genug sein.

Hier sind meine Vorschläge:

  • Für kleine Daten und für Java-basierte Systeme versuchen, vorhanden sein. Es hat sogar eine SQlite artige Datei-basierte Datenbank-Unterstützung, die nützlich sein könnte.
  • Für kleine bis mittlere Daten, wo Leistung zählt sedna verwenden. Nach meinem Test ist es das schnellste von den Dreien.
  • Wenn Sie Unterstützung benötigen, dann Tamino verwenden. Es hat zumindest zu unterstützen.

Für große Datenbanken (1 GB und mehr) Ich würde nicht von ihnen empfehlen (noch) nicht. Exist in der Regel mit einer 200MB Größe Datenbank abgestürzt. sedna abgestürzt mit einer 1 GB Größe Datenbank, wenn etwas Abfragen, die nicht indiziert sind, und tamino konnte nicht einmal laden 500MB die Daten in einem Durchgang, bevor das ganze System abstürzt. Natürlich sind alle diese Systeme entwickeln sich weiter, vielleicht ein bisschen später werden sie sicher zu bedienen, sondern native XML-Datenbanken sind leider noch unreif.

Andere Tipps

Haben Sie sich in der großen Anbieter gelieferten Lösungen wie Oracle XML DB . Ich habe es nicht ausprobiert, aber es wäre sicherlich wert seine Auswertung bieten Sie ein Budget für solche Dinge haben!

Auch Wikipedia hat eine schöne Liste von XML Dbs , die Sie auswerten können möchten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top