XML není skromné: Chce vlastní databáze

Jakmile začnou IT manažeři experimentovat s webovými službami, pravděpodobně zjistí, že potřebují nový druh datov


Jakmile začnou IT manažeři experimentovat s webovými službami, pravděpodobně
zjistí, že potřebují nový druh datového úložiště XML databázi. Tyto softwarové
produkty jsou navrženy tak, aby efektivně ukládaly a spravovaly rostoucí počet
XML dokumentů, které jsou vytvářeny zejména při webových interakcích s
obchodními partnery a zákazníky. K hlavním výhodám XML databází patří podle
jejich obhájců jednoduchost, snadný vývoj aplikací, schopnost vyhledávání a
vytváření dotazů nad XML dokumenty a rychlé získávání dokumentů.
Neexistuje žádná formální, standardní definice XML databáze, ačkoliv iniciativa
XML:DB (www.xmldb.org) popisuje takovou databázi jako tu, která definuje
logický model pro XML dokument (ne pro data v dokumentu) a spravuje dokumenty
založené na tomto modelu. Klíčovým bodem celého přístupu je, že databáze "myslí
a pracuje" na základě XML - XML vstupuje dovnitř i vychází ven třebaže tyto
produkty mohou fyzicky ukládat dokumenty do objektové nebo relační databáze,
případně do nějakého proprietárního ukládacího modelu, jako jsou indexované
soubory.
Nedostatek formální definice je pouze jednou z otázek, nad kterou se zvedají
hlasy kritiků. Také ukazují na nezralost produktů a XML standardů nepřítomnost
standardního, spolehlivého dotazovacího jazyka ve srovnání s SQL používaným v
relačních databázích a na možné problémy integrity dat.

Rozšíření
Dodavatelé relačních databází přitom stále zlepšují podporu pro XML. Například
Microsoft vyvíjí verzi SQL serveru zvanou Yukon a Oracle předvedl na konci
minulého roku zákazníkům technologii nazvanou Projekt XDB. Cílem obou projektů
je dovolit databázím, které dnes pracují s relačními daty a objekty, zacházet s
XML dokumenty jako s novým datovým typem a snadno je spravovat.
"Kdybych měl (relační) databázi Oraclu, chtěl bych skutečně vědět, jak to
funguje na pozadí při zacházení s XML," říká Larry Hanson, datový architekt BOE
(Board of Equalization), specializující se na využití prostředků e-businessu v
oblasti správy daní. "Jestliže uložíte tyto dokumenty například jako objekty,
můžete se na ně dotazovat a označovat je?" Oracle tvrdí, že tyto akce budou
možné s XDB, ale jak velký bude mít tato technologie výkon, když půjde o
zpracování mnoha dat nebo velmi rozsáhlých skupin dat, se teprve uvidí.
Hansonův názor, se kterým souhlasí i řada dalších, je takový, že XML data jsou
podstatně odlišná od relačních dat. "XML data jsou extrémně vhodná pro
hierarchické ukládání," říká Hanson. "V XML databázích může být daňové přiznání
uloženo on-line ve své celistvosti. V relační databázi by každý řádek přiznání
musel mít jinou tabulku dat s řádky a sloupci." Pokoušet se napasovat XML
dokument do rigidní relační struktury může znamenat plýtvání s paměťovým
prostorem a vede k chybám v dotazech a při získávání dokumentů.

Vývoj trhu
Analytici očekávají, že tyto výhody nastartují rychle rostoucí trh. IDC
odhaduje, že podnikové výdaje na XML databáze porostou o 130 % ročně, čímž
dosáhnou 700 milionů dolarů v roce 2004. Podle Anthony Picardiho, analytika
IDC, budou XML databáze doplňovat relační databáze ty první budou vhodnější pro
ukládání a zpracování XML dokumentů, ty druhé pro čísla a text.
Pro správce firemních IT je k dispozici mnoho možností volby mezi nejméně dvěma
tucty nativních XML databázových produktů. Mezi klíčové dodavatele patří
Software AG a eXcelon (ten ukládá dokumenty ve své objektově orientované
databázi ObjectStore). A existuje i množství menších dodavatelů jako NeoCore,
IXIA a ZYZFind, pracujících na XML databázových produktech. K dispozici je také
množství open source projektů. Jedním z nich je Xindice, dříve dbXML Core,
který nyní spravuje The Apache Software Foundation.

Kdy je použít
Rozhodnutí, zda a kdy použít nativní XML databázi, závisí na druhu dat, se
kterými pracujete a co s nimi chcete dělat. "Společnosti přicházejí na to, že
nové aplikace jako webové služby, které jsou postaveny na XML, inklinují k
datovým modelům, které se jen obtížně mapují na tradiční relační struktury,"
říká Philippe Gelinas, CEO softwarové vývojové firmy Xiasoft, která vyvinula
TextML server pro XML dokumenty.
Server je navržen tak, aby byl cenově dostupný stojí kolem 10 000 dolarů,
zatímco někteří konkurenti přijdou na ceny kolem 50 000 dolarů. "Zákazníci se
často pokoušejí zprovoznit své aplikace nejprve s existující (relační) databází
a brzy zjišťují, že to nefunguje," říká. "Poté přecházejí na XML databázi."
Někteří uživatelé (jako např. BOE), kteří s touto technologií začali brzy, jsou
již přesvědčeni o významu XML pro firmy. Přede dvěma lety začal Hanson
navrhovat alternativu pro papírová daňová přiznání: elektronickou formu
podatelnou prostřednictvím webu. Daňová data musela skončit v mainframe
databázi Adabase od

Software AG.
Přitom se nabízely dvě možnosti uchování. Při použití první z nich byly XML
dokumenty uloženy do Adabase jako velké binární objekty, podobně, jako jsou do
relačních databází ukládány obrazy a někdy i velké texty. Dokumenty se ale pak
staly pro databázový stroj nesrozumitelnými. Nemohly být prohledávány, ani se
nad nimi nedaly vytvářet dotazy.
Zaměstnanci BOE tak začali pracovat na druhé možnosti: Dokumenty jsou rozebrány
syntaktickým analyzátorem a data poslána na sálový počítač ve formě, kterou
Adabase může používat. Tím dochází k většímu procesnímu zatížení a navíc změny
v dokumentech, jako je např. přidání nového řádku do formuláře přiznání, nutí
administrátory provádět změny v související databázové struktuře.
Hanson tedy rozhodl o nasazení XML databáze Tamino od Software AG. XML
dokumenty vytvořené daňovými pracovníky na webových stránkách jsou nyní
ukládány přímo do ní. Uživatelé z BOE s ní pracují prostřednictvím
internetového prohlížeče, přičemž mohou snadno vytvářet nad daty dotazy a
sestavovat výkazy pro management.
"Jakmile lidé přejdou na XML, dostanou se na stejné věci, které jsme dělali
my," předpovídá Hanson. "Jestliže dostanete XML dokument namísto papírového,
kam ho dáte? Jak ho uložíte a co s ním budete dělat?" dodává. Dlouhodobě je
jeho cílem dovolit uživatelům kombinovaný pohled na všechna data v XML a
tradičních databázích pomocí internetového prohlížeče.

Budoucnost
Dosáhnout uvedeného cíle není snadné kvůli množství slabin, které zatím XML
databáze mají. Uživatelské rozhraní pro nové produkty může být nepříjemné. V
případě kalifornské BOE museli správci dat napsat zvláštní kód pro aktualizaci
Tamina a mainframové databáze. Tvorba dotazů je tvrdým oříškem, protože
existuje několik odlišných XML dotazovacích jazyků, a ty jsou ještě navíc ve
stálém vývoji. A konečně, integrace mezi XML a firemními datovými sklady
vyžaduje v této počáteční fázi ještě tvorbu množství dalšího vlastního kódu.
Lze ovšem očekávat, že až tyto dětské nemoci zmizí, stane se použití XML
databází stejně snadným jako v případě současných relačních databází. A pro
mnohé aplikace může být jejich nasazení efektivnější.

Přínosy XML databází
XML je typicky používáno pro výměnu dat, ale rostoucí počet XML dokumentů může
vyžadovat využití speciálního úložiště dat. Specializované XML databáze mají
svá pro i proti.

Pro:
- efektivně ukládá a zpracovává veškeré XML dokumenty
- dokumenty lze prohledávat, dotazovat se na ně a získávat je rychle
- umožňuje změny v dokumentech bez nutných změn v souvisejících datových
strukturách
- je možná snadná manipulace se soubory dokumentů

Proti:
- neefektivní ve správě strukturovaných dat
- standardy pro XML dotazovací jazyky se ještě vyvíjejí
- integrování XML s existujícími relačními daty vyžaduje nové dovednosti a
nástroje
- potenciální problémy s datovou integritou









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.