Performance beim Binding

Status
Nicht offen für weitere Antworten.
M

mische

Gast
Hallo,
ich habe ein Problem. Ich habe eine riesige XML-Datei. An der kann ich auch nix ändern. Nun möchte ich diese einlesen und in entsprechende Java-Objekte überführen. Bisher hatte ich es vor die Daten mit StAX zu lesen und in die POJOs zu packen. Nun habe ich aber gehört, dass es auch mit JAXB, dom4j oder JiBX gut bzw. teilweise auch automatisch gehen soll. Nun ist meine Frage, wie sieht es mit der Performance aus? Bisher konnte ich nur Vergleiche finden, die ein paar Jahre alt sind. Wobei mich nur die Geschwindigkeit des Ladens interessiert, also wie lange es dauert, die Daten in die Objekte zu bringen. Wie viel Speicher verbraucht wird, ist für mich eigentlich uninteressant.
Hat jemand Erfahrungswerte oder weiß wo ich mehr Informationen bekommen kann?


Gruß
Wolle
 

jze

Mitglied
Ich habe eine riesige XML-Datei. An der kann ich auch nix ändern. Nun möchte ich diese einlesen und in entsprechende Java-Objekte überführen. Bisher hatte ich es vor die Daten mit StAX zu lesen und in die POJOs zu packen.
Der Weg über einen eventbasierten Parser (SAX oder StAX) ist bei großen XML-Dokumenten der beste Weg.

Nun habe ich aber gehört, dass es auch mit JAXB, dom4j oder JiBX gut bzw. teilweise auch automatisch gehen soll. Nun ist meine Frage, wie sieht es mit der Performance aus?
Bei einem baumbasierten Ansatz ist der Speicherverbrauch ist zwischen Faktor 10 und 100 größer (aber der ist für Dich ja nicht so relevant). Nun aber zur Zeit: nachdem der Baum im Speicher aufgebaut wurde, mußt Du Dir ja noch die interessanten Knoten heraussuchen - das dauert natürlich, insbesondere wenn Du es bequem mit XPATH machst. Ein ganz großer Nachteil der baumbasierten Verarbeitung ist es, daß die Objekte erst zur Verfügung stehen, wenn das gesamte Dokumente eingelesen wurde. Sonst kommst Du sofort an jeden Teil des Dokuments ran. Allerdings weiß ich nicht, ob das bei Dir interessant ist.

Gruß
Jesper[/quote]
 
M

mische

Gast
Hallo,

danke für deine Hilfe.

Ich habe jetzt etwas experimentiert und bin zu folgenden Schluß gekommen:
Die Baum basierten Ansätze waren zu langsam.
StaX und SAX waren okay.
JAXB konnte ich nicht verwenden, da ich ein flaches Binding machen muss und ich nix dazu gefunden habe.
JiBX war bisher am schnellsten.

Der größte Vorteil von JiBX war, dass ich kaum Quelltext schreiben musste und ich viel schneller zum Erfolg kam.


gruß
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Sax Parser Performance XML & JSON 2
foobar Performance von Sax vs. DOM XML & JSON 5
W Ungleiches Escaping beim Marshalling XML & JSON 8
S Hilfe beim RDF-Graphen XML & JSON 0
R Beim Serialisieren fehlt die letzte Zeile XML & JSON 5
N Probleme bei der Formatierung beim Einfügen und löschen über DOM XML & JSON 7
A Leeres Array beim Auslesen von XML-Datei XML & JSON 4
L Jackson JSON: Probleme beim einlesen XML & JSON 1
A XML-Fehler beim Prefix von xmlns XML & JSON 2
K Beim Parsen einer XML-Datei Connection timed out XML & JSON 4
G Langsam beim SAX-Parsen - woran liegts? XML & JSON 2
A Fehler beim Erzeugen eines XML-Schema XML & JSON 4
B Validierung nur beim einlesen oder auch beim schreiben? XML & JSON 4
D JAXBException beim Marshaller XML & JSON 4
M Read / write Problem beim ByteStrom XML & JSON 2
whitenexx Problem beim parsen von Facebook XML XML & JSON 3
J Dateinamen beim Start auslesen XML & JSON 8
F Hilfe beim bearbeiten von XML elemente XML & JSON 3
N XStream ConversionException beim Deserialisieren in (Hibernate)Objekt XML & JSON 6
hdi Probleme beim Erstellen einer XML XML & JSON 7
F Probleme beim html parsen mit tagsoup XML & JSON 4
M Probleme beim Parsen eines gefilterten XML-Dokuments XML & JSON 6
G Problem beim schreiben von XML in eine File XML & JSON 2
L Reihenfolge beim xml Datei parsen einhalten? XML & JSON 8
H JAXB Probleme beim Unmarshalling XML & JSON 3
sylo Beim Erzeugen einer XML Datei auch die XML Struktur erzeugen? XML & JSON 11
B Problem beim löschen von ChildNodes aus einem XML-DOM XML & JSON 3
E JDOM - Problem beim Zusammenfügen zweier Dateien XML & JSON 2
N Hilfe beim Einstieg in EMF XML & JSON 6
D Das Programm hängt etwa 5 Sekunden beim Aufruf der parse-Methode XML & JSON 6
D Tabs/Einrückungen der XML-Elemente gehen beim Schreiben verloren XML & JSON 5
T Problem beim Parsen von Attribut xmlns="urn:com:test&qu XML & JSON 6
G XML Tag beim Einlesen manipulieren XML & JSON 2
J Problem beim XML-Lesen XML & JSON 2
S Probleme beim erstellen einer Jar XML & JSON 12
N jdom problem beim lesen von child elementen XML & JSON 5
P NullPointerException beim Auslesen XML & JSON 8
C SAX Probleme beim lesen XML & JSON 4
D Probleme beim SAX parsing XML & JSON 4
E XOM setzen von XML-Schema declaration beim erzeugen XML-File XML & JSON 2
byte Probleme beim Parsen von XHTML-Datei XML & JSON 4
J Fehler beim laden einer .xml XML & JSON 3
G DOCTYPE Problem beim Transformer/TransformerFactory etc. XML & JSON 13
P OutOfMemoryError beim Einlesen einer XML-Datei XML & JSON 7
P Problem beim erstellen eines neuen Elements (JDOM) XML & JSON 5
S JDOM-Kein indent beim XMLOutputter XML & JSON 4
C Zeile herausfinden in der ein Fehler beim Einlesen entsteht XML & JSON 3
V Datenverlust nach sortieren (nur beim serialisieren) XML & JSON 4
S Problem beim Erstellen eines pdfs XML & JSON 3
R Problem beim Auslesen von Attributen XML & JSON 4
R JAVA und DOM, probleme beim einfügen von elementen ?????? XML & JSON 6
W jaxws jaxb wsdl Java-Klassen generieren und binding.xml verwenden XML & JSON 1
W JAXB Binding customization XML & JSON 4
G CXF XML Binding XML & JSON 11
M Best Practices für Data Binding ohne Hilfstools XML & JSON 14
M jaxb binding nach set XML & JSON 9

Ähnliche Java Themen


Oben