dagblog.
← Archiv

Java:Zpracování XML souborů — rychlost čtení SAX versus DOM


Tomáš Kouba porovnal rychlost čtení XML dokumentu SAX vs. DOM
 v prostředí platformy DOT.NET. Protože mě to zajímalo požádal jsem Tomáše Koubu o zdrojáky a testovací
 XML soubory a přepsal jsem jeho test do Javy.

Výsledky nebyly nijak překvapivé, s rostoucí velikostí XML souboru narůstala rychlost
 zpracování ve prospěch SAX zpracování. S lokálním souborem byl rozdíl při 10000 uzlech
 přibližně trojnásobný.

Počet uzlůDOM local(ms)DOM remote(ms)SAX local(ms)SAX remote(ms)
100233273153203
1000517828270571
10000222352177373688

Výše uvedené hodnoty jsem naměřil pod OS Windows 2000 na JRE 1.4.2-b28 
 (standardní JAXP).

Z praktického hlediska je práce s objektovou strukturou, kterou poskytuje rozhraní DOM
 mnohem snazší. Pokud není rychlost zpracování XML stěžejní, pak doporučuji použít DOM. 
 Cílem tohoto měření nebylo porovnat SAX DOM .NET vs. SAX DOM Javy. Zmínil bych dva 
 rozdíly, zatímco .NET XML parser ignoruje whitespaces, javovský XML parser to standardně 
 neděla.

Náměty pro další zkoumání bych hledal ve složitější struktuře zpracovávaného 
 XML dokumentu a z hlediska Javy v použití novějších verzi Xalanu (Xercesu) případně
 jiných XML parseru.

Verze na Medium · Archiv původní stránky

Související články

Související epizody CZ Podcastu