Wer hat Informationen über XML Datenbanken

Wer hat Informationen über XML Datenbanken

am 09.05.2005 03:20:24 von Sebastian Deutsch

Hallo,

wer kann mir Informationen über gute XML Datenbanken zur Verfügung
stellen, oder macht es Sinn die beta Extensions der relationalen zu
benutzen (,da kocht doch jeder sein eigenes Süppchen oder?)

Hat jemand da Erfahrungswerte?

*.sebastian

Re: Wer hat Informationen über XML Datenbanken

am 09.05.2005 17:03:43 von Sebastian Deutsch

Sebastian Deutsch schrieb:
> Hallo,
>
> wer kann mir Informationen über gute XML Datenbanken zur Verfügung
> stellen, oder macht es Sinn die beta Extensions der relationalen zu
> benutzen (,da kocht doch jeder sein eigenes Süppchen oder?)
>
> Hat jemand da Erfahrungswerte?
>
> *.sebastian

Ich habe jetzt selbst folgende ressourcen gefunden:

MYSQL:

http://www.phpcenter.de/beitraege/detail.php?a_id=730
http://mysql.r18.ru/~bar/myxml/XMLXpathSupportInMySQL.pdf
http://www.kitebird.com/articles/mysql-xml.html

POSTGRE:

http://www.throwingbeans.org/tech/postgresql_and_xml.html

DB XML:

http://www.sleepycat.com/products/xml.shtml

*S

Re: Wer hat Informationen über XML Datenbanken

am 21.05.2005 20:32:01 von Dominic Luechinger

Sebastian Deutsch schrieb:
> Hallo,
>
> wer kann mir Informationen über gute XML Datenbanken zur Verfügung
> stellen, oder macht es Sinn die beta Extensions der relationalen zu
> benutzen (,da kocht doch jeder sein eigenes Süppchen oder?)
>
Aus welchem Grund muss es eine XML Datenbank sein?
Reicht eine Einbindung mittels XML-Datei nicht?
Was brauchst du für eine Abfragesprache? XPath oder XQuery?
Welchen Zweck soll die DB erfüllen?

> Hat jemand da Erfahrungswerte?
Danach kann ich dir einige Tips und Hinweise geben.
>
> *.sebastian
Gruss Dominic

Re: Wer hat Informationen über XML Datenbanken

am 23.05.2005 23:33:23 von Sebastian Deutsch

Dominic Luechinger schrieb:
> Aus welchem Grund muss es eine XML Datenbank sein?
> Reicht eine Einbindung mittels XML-Datei nicht?
> Was brauchst du für eine Abfragesprache? XPath oder XQuery?
> Welchen Zweck soll die DB erfüllen?

Sie ist für ein Content Management gedacht. Eine Datei reicht leider
nicht da die Datenmenge sehr schnell sehr groß werden kann.

class.xpath.php war einfach zu slow für die datenmenge...

XPath sollte irgendwie reichen, oder?

*.sebastian

Re: Wer hat Informationen über XML Datenbanken

am 24.05.2005 01:58:57 von Dominic Luechinger

Sebastian Deutsch schrieb:
> Dominic Luechinger schrieb:
>
>> Aus welchem Grund muss es eine XML Datenbank sein?
>> Reicht eine Einbindung mittels XML-Datei nicht?
>> Was brauchst du für eine Abfragesprache? XPath oder XQuery?
>> Welchen Zweck soll die DB erfüllen?
>
>
> Sie ist für ein Content Management gedacht. Eine Datei reicht leider
> nicht da die Datenmenge sehr schnell sehr groß werden kann.
Wenn du das CMS komerziell vertreiben willst, dann würde ich auf
XML-fähige oder Native XML Datenbanken verzichten. Denn die müssen immer
installiert werden und dies bereitet immer viele Probleme.

Wir (siehe unten wegen XQuery Comiler) auch schon Gedanken darüber
gemacht, ein CMS auf Basis von XML zu machen. Der Aufwand und die
Performence sind enorm. Bedenke, dass jede Ein- und Ausgabe über ein
Extended Style Sheet geprüft werden sollte. Weiter ist es schwierig,
Berechtigungen auf XML Files zu setzen. Der Output muss bei jedem Aufruf
gerendert (XSLT oder sonst eine Konvertierungsmöglichkeit) werden ->
kann auch gecached werden.
Mit dem grösser werden des Content sinkt die Geschwindigkeit der
Datenauswahl.
Die Wahl für XML ist sicherlich eine gute Wahl. Für eine Einbindung von
WebServices oder anderen XML basierten Kommunikationstechniken (RSS) ist
dies sicher von Vorteil. Diese können aber auch leicht aus SQL Daten
erstellt werden.
>
> class.xpath.php war einfach zu slow für die datenmenge...
Wenn du nur XPath brauchst, dann schau dir mal die Slides von Christian
Stocker an -> http://slides.bitflux.ch/phpconf2003/
Mit PHP5 und den XML Erweiterungen (SimpleXML oder XML) einfach und
effizient auf XML Dateien zugreifen. Da aber das DOM-Verfahren dahinter
steckt, steigt die CPU-Last mit der Grösse der XML-Datei.
>
> XPath sollte irgendwie reichen, oder?
Wenn du auf eine schnelle DB zurückgreifen möchtest, dann kann ich dir
auch die Berkeley DB XML (http://www.sleepycat.com/products/xml.shtml)
empfehlen. Es ist aber anzumerken, dass die PHP Extension noch nicht
lange dabei (ab 2.0.9; akutell 2.1.7) ist und voher mit SWING eine API
angeboten hat. Unterdessen ist die Extension herangereift und sicherlich
zu gebrauchen. Die Berkeley DB XML beinhaltet auch XQuery als
Abfragesprache.
Alle anderen frei erhältlichen nativen XML Datenbanken haben keine oder
nur eine schlechte Intergration (WebServices) von PHP.

Als Alternative sind mein Kollege und ich daran, einen XQuery Compiler
auf PHP basis zu programmieren, mit dem Applikationen in XQuery schreibt
und PHP Funktionen einbindet. Dieses XQuery File wird dann Compiliert
und in PHP umgewandelt. Die XML Daten werden in eine relationale DB
gemapt. In der neuen Version gesplittet aufs Filesystem ->
Performancegewinn.
So kann man direkt auf XML Daten zugreifen, ohne sich mit Datenbanken,
PHP Code und XML-Files herumzuschlagen.
Zu finden unter http://developer.berlios.de/projects/urulu/

Wenn du Zeit hast, kannst du ja diesen Vortrag
(http://conferences.oreillynet.com/cs/os2005/view/e_sess/692 4) besuchen,
in dem genau dieses Thema (Berkeley DB XML und PHP behandelt wird)
>
> *.sebastian
Gruss Dominic