hallo.
ich muss ein-paar sehr grosse xml files (>4GB) in eine mysql datenbank schmeissen, soweit so gut. habe das ganze mit java, xpath und dom (verwende immer nur kleine haeppchen der grossen files) geloest und es funktioniert, mal abgesehen von der im betreff erwaehnt performance, wunderbar. aber aufgrund der komplexitaet eines einzelnen kind-vom-root knoten (hat zwischen 10.000 und 40.000 zeilen) braucht mein programm zwischen 1 und 1 1/2 stunden fuer ein 10mb haeppchen und das obwohl wir eine ziemlich wuchtige sun dahinter stehen haben. von der auslastung her brauchen wir nur ca zwischen 25 und 50 % des zugesichterten rams (ingesamt 5GB), die prozessorleistung laeuft aber staendig auf 100%. die inserts bzw die datenbank sind nicht das problem - ohne sie (nur mit stout) braucht das proggi genausolang.
ich verwende keinerlei xpath ausdruecke der art "//knoten/kindknoten" sondern immer nur direkt "kindknoten"um von einem eltern knoten auf einen (oder die) kindknoten zuzugreifen.
meine frage nun an alle java, xml (xpath) experten: welche moeglichkeiten der optimierung habe ich? ich verwende zur zeit das standard xpath paket von sun, kennt jemand kommerzielle (oder gratis, noch besser)
, die vielleicht performanter sind? oder kann ich den code mit ein paar schaltern oder einen anderen compiler auf speed optimieren (so wie in c) - hab hier noch keine erfahrung. parallelisieren hat ja auch nicht viel sinn, nehm ich an, wenn die prozessoren sowieso auf 100 % laufen? sax ist keine opition, dafuer ist das modell zu komplex...
hat jemand vorschlaege?
danke
kermitblue
ich muss ein-paar sehr grosse xml files (>4GB) in eine mysql datenbank schmeissen, soweit so gut. habe das ganze mit java, xpath und dom (verwende immer nur kleine haeppchen der grossen files) geloest und es funktioniert, mal abgesehen von der im betreff erwaehnt performance, wunderbar. aber aufgrund der komplexitaet eines einzelnen kind-vom-root knoten (hat zwischen 10.000 und 40.000 zeilen) braucht mein programm zwischen 1 und 1 1/2 stunden fuer ein 10mb haeppchen und das obwohl wir eine ziemlich wuchtige sun dahinter stehen haben. von der auslastung her brauchen wir nur ca zwischen 25 und 50 % des zugesichterten rams (ingesamt 5GB), die prozessorleistung laeuft aber staendig auf 100%. die inserts bzw die datenbank sind nicht das problem - ohne sie (nur mit stout) braucht das proggi genausolang.
ich verwende keinerlei xpath ausdruecke der art "//knoten/kindknoten" sondern immer nur direkt "kindknoten"um von einem eltern knoten auf einen (oder die) kindknoten zuzugreifen.
meine frage nun an alle java, xml (xpath) experten: welche moeglichkeiten der optimierung habe ich? ich verwende zur zeit das standard xpath paket von sun, kennt jemand kommerzielle (oder gratis, noch besser)
hat jemand vorschlaege?
danke
kermitblue