Hi Jens,
Gibt es eine DTD?
... Hast Du eine debugfähige Version erstellt? ... Gab es gegenseitiges Codereading, bevor es in die Produktion ging? ... Sollte man mal eine Beratung über eine Consulting-Firma ansetzen, bevor alles in 3-4J in die Luft geht?
Ansonsten hoffe ich nicht, dass Du bei der Firma arbeitest, wo ich nicht ins Team gepasst habe. - deren Hauptanwendung hatte den günstigen Namen "Schnittstelle", - verwendet Datenbanken im Textformat mit immer länger werdenden Schwänzen, - nutzt ältere Office-Dokumente als Archivierungsformat, - schreibt einfach gestrickte Excelabfragen über den Driver als komplizierte PHP-Programmkonstrukte, die auch noch immer wieder neu erfunden werden müssen ... und so weiter ...
Das wär jetzt aber zu verrückt, um wahr zu sein.
Ciao, Jana.
-------- Original-Nachricht --------
Datum: Fri, 09 May 2008 13:56:51 +0200 Von: "Jens Puruckherr" jpuruckherr@cyberport.de An: "DD Lug" lug-dd@mailman.schlittermann.de Betreff: Verarbeitung grosser XMLs
Hallo,
einer kleinen armen Schnittstelle wird über die Jahre immer mehr Last aufgebürded. Mittlerweile bekommt Sie XMLs zum verdauen vorgesetzt, die schon mal an die 60MB gross sind. Mittels libxml und libxslt wird das Ganze unter Perl verarbeitet und in kleinen überschaubaren Häppchen an die Datenbank einer Web-Applikation verfüttert. Prinzipiell funktioniert das auch prima, allerdings der Speicherhunger der XSLT-Transformation wächst proportional zur Dateigrösse des XML und macht mir langsam Sorgen. Inkl. Footprint konsumiert der Prozess ein schlappes GB RAM.
Ich will das gerne optimieren - zumal abzusehen ist, dass der Datenumfang noch zunimmt. Dabei gehe ich von 2 Ansätzen aus:
- libxml/xslt sind evtl. nicht optimal für derartige Datenmengen
ausgelegt. Welche Perl-tauglichen Alternativen gibt es? 2. Das Stylesheet selber mag auch nicht von des Virtuosen Hand stammen. (Wie) kann kann man sowas profilen?
Danke für eure Hinweise!
Mit freundlichen Grüßen
Jens Puruckherr
Lug-dd maillist - Lug-dd@mailman.schlittermann.de https://ssl.schlittermann.de/mailman/listinfo/lug-dd