Hlavní navigace

Akta X: Porovnání současných binárních formátů XML

Petr Cimprich

W3C porovnává existující binární serializace XML. Jedna z nich by se měla stát východiskem pro budoucí standardní formát EXI. V polovině června proběhl v Madridu zajímavý workshop o centrální databázi vlastností mobilních zařízení. Mluví se o distribuované architektuře na způsob DNS a jednotné sadě API.

Souboj kandidátů na formát EXI

Pracovní skupina Efficient XML Interchange (EXI), která je pokračovatelkou pracovní skupiny XML Binary Characterization (XBC), v polovině července zveřejnila první pracovní verzi dokumentu Efficient XML Interchange Measurements Note. Jedná se o popis velmi zajímavého procesu.

Cílem pracovní skupiny EXI je definovat formát EXI – standardní binární kódování pro dokumenty XML. V současnosti už existuje několik proprietárních binárních formátů pro XML vytvořených organizacemi, pro než je efektivnější přenos XML nutností už dnes. EXI chce tyto formáty porovnat a vybrat nejvhodnějšího kandidáta, který by mohl sloužit jako základ pro vývoj formátu EXI. Na pomyslné startovní čáře stojí tyto formáty:

  • X.694 ASN.1 BER – tento formát používá tři doplňující se standardy: ASN.1 (Abstract Syntax Notation 1) je více než dvacet let starý abstraktní způsob popisu typů zpráv. BER (Basic Encoding Rules) je binární kódování pro ASN.1. Standard X.694 umožňuje mapování schémat W3C XML Schema na ASN.1.
  • X.694 ASN.1 PER – velmi podobný předchozímu formátu, pouze využívá jiné binární kódování zvané PER (Packed Encoding Rules).
  • Xebu – byl vyvinut v rámci finského projektu Fuego Middleware se záměrem zefektivnit posílání zpráv XML na mobilní zařízení.
  • Extensible Schema-Based Compression (XSBC) – binární formát vycházející ze schématu dokumentu XML.
  • Fujitsu XML Data Interchange Format (FXDI) – podobný formát od Fujitsu.
  • Fast Infoset – otevřená binární serializace Infosetu XML standardizovaná ISO/IEC.
  • Efficient XML – univerzální a široce používaný formát, mimořádně redukující velikost dokumentu.

Hlavní kritéria posuzování těchto formátů jsou dvě: kompaktnost a efektivita zpracování. Přičemž druhé měřítko neznamená jen rychlost kódování a dekódování, ale musí sledovat také jejich linearitu a nároky na paměť.

Každý, kdo se už pokoušel o nějaký benchmark, ví, že to není ani trochu jednoduché. A provést objektivní a obhajitelné měření u takto sledovaného případu, kdy je ve hře celá řada skupinových zájmů, je prakticky nemožné. Právě proto je velmi zajímavé a poučné sledovat, jak k této úloze přistoupí skupina zkušených profesionálů s relativním dostatkem času a prostředků.

Pracovní skupina EXI připravila měřicí systém založený na frameworku Japex. Ten umožňuje přímé měření všech javových implementací a pomocí rozhraní JNI také těch v C/C++. Popisu metodiky měření věnuje EXI značnou pozornost; zabývá se jím v převážné části dokumentu Efficient XML Interchange Measurements Note.

Kritickým momentem měření je výběr dostatečně reprezentativní sady dokumentů XML. Testovací sada zatím obsahuje sedm desítek dokumentů s různou velikostí (od stovek bajtů po stovky MB), různou informační hustotou (metrika charakterizující poměr značek a textu v dokumentu), z různých oborů (vědecká a finanční data, elektronické dokumenty, komunikační zprávy).

Průběžné výsledky měření jsou zachyceny v dokumentu Analysis of the EXI Measurements. Zatím je zde k vidění jen porovnání kompaktnosti všech kandidátů a srovnání s textovým XML a komprimací pomocí gzipu. Redukce velikosti pro různé dokumenty kolísá od zmenšení o několik procent až po více než 95%. Mezi kandidáty je jednoznačně nejkompaktnější Efficient XML, komprimace gzipem je srovnatelná s testovanými formáty. Hodnocení by ale bylo předčasné. Efektivní zpracování je požadavek do značné míry protichůdný k minimalizaci velikosti. Úspěšný může být jen formát, jehož autoři dobře vyvážili obě hlediska, aniž by se zaměřili jen na určité typy dokumentů. Při měření rychlosti zpracování určitě ztratí dech gzip a začne se ukazovat, která ze současných metod binarizace XML by mohla být nejvýhodnější.

Workshop o DDR

Workshop W3C, který proběhl v Madridu 12. a 13. června, nebyl setkáním historiků 20. století, ale týkal se Device Description Repository, připravované sdílené databáze charakteristik mobilních zařízení. Cílem bylo seznámit se s názory zainteresovaných stran a prodiskutovat je dříve, než pracovní skupina Device Description začne s dalšími kroky. Východiskem pro diskuze byl dokument Device Description Repository Requirements 1.0.

Nejčastěji se mluví o distribuované architektuře na způsob DNS a jednotné sadě API zpřístupňující řadu datových zdrojů, včetně těch již existujících. Převládá názor, že by aspoň základní sada informací měla být k dispozici bezplatně. Předpokládá se totiž využití současných volně dostupných zdrojů (UAProf, WURFL) a možnost open-source implementace rozhraní k DDR. Velkou otázkou je, jak motivovat výrobce zařízení ke včasnému dodávání informací o nových modelech a jak tyto informace verifikovat. Podrobnosti najdete ve zprávě z workshopu.

Všichni se v tuto chvíli shodnou na obecných zásadách. V dohledné době by se mohlo podařit definovat základní sadu vlastností a navrhnout API. Architektura celého řešení a obchodní model fungování zatím zůstávají velmi mlhavé a je jisté, že uvedení DDR do života zabere ještě hodně času a úsilí.

Našli jste v článku chybu?

23. 8. 2006 23:09

CyberBob66 (neregistrovaný)
1) Ano, jsou případy, kdy by se binární xml hodilo, ale: náklady (čas, peníze) na jeho vývoj považuji za vyšší než jeho přínosy, proto se na jeho vývoji podílet nebudu :-)

2) Pokud budu mít větší množství dat, budu je ukládat do DB. Dnes pravděpodobně do relační, v budoucnu třeba do nativní XML databáze (ale to až budou na takové výkonnostní úrovni jako dnešní relační a stejně vyspělé)

P.S. nechci tady flamovat :-) jen si myslím, že jsou jiné věci, kterými má cenu se zaobírat, než zrovna binár…



DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Vitalia.cz: Nestlé vyvinulo nový typ „netloustnoucího“ cukru

Nestlé vyvinulo nový typ „netloustnoucího“ cukru

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Vitalia.cz: „Připluly“ z Německa a možná obsahují jed

„Připluly“ z Německa a možná obsahují jed

Podnikatel.cz: Zavře krám u #EET Malá pokladna a Teeta?

Zavře krám u #EET Malá pokladna a Teeta?

120na80.cz: Na ucho teplý, nebo studený obklad?

Na ucho teplý, nebo studený obklad?

Podnikatel.cz: 1. den EET? Problémy s pokladnami

1. den EET? Problémy s pokladnami

Root.cz: Certifikáty zadarmo jsou horší než za peníze?

Certifikáty zadarmo jsou horší než za peníze?

Podnikatel.cz: Udávání a účtenková loterie, hloupá komedie

Udávání a účtenková loterie, hloupá komedie

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Vitalia.cz: Taky věříte na pravidlo 5 sekund?

Taky věříte na pravidlo 5 sekund?

Vitalia.cz: Znáte „černý detox“? Ani to nezkoušejte

Znáte „černý detox“? Ani to nezkoušejte

Lupa.cz: Teletext je „internetem hipsterů“

Teletext je „internetem hipsterů“

Podnikatel.cz: Chaos u EET pokračuje. Jsou tu další návrhy

Chaos u EET pokračuje. Jsou tu další návrhy

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí

120na80.cz: Co všechno ovlivňuje ženskou plodnost?

Co všechno ovlivňuje ženskou plodnost?

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?