NXDB: Středobod e-businessu

Není pochyb o tom, že se XML rychle stává klíčovým pojmem pro oblast B2B výměny dat. Stále častější použití ...


Není pochyb o tom, že se XML rychle stává klíčovým pojmem pro oblast B2B
výměny dat. Stále častější použití tohoto standardu však vystavuje IT manažery
nutnosti poradit si s vysokým počtem odlišných typů řešení postavených na
XML, která dnes postupně přicházejí na trh. Rozhodnout se často musejí dříve,
než jsou schopni určit, která z možných XML strategií bude pro implementaci v
jejich podniku nákladově nejefektivnější. Řešení vzniklé situace může mít
několik podob jednou ze zajímavých možností by se mohly stát nativní XML
databáze.
V nedávné době představili přední prodejci relačních databází jako Oracle
nebo Microsoft technologie, které jejich produktům umožňují pracovat s XML:
Oracle XDB a Microsoft SQLXML. Jejich rival, společnost IBM, pak nabídnul XML
Extender pro svoji databázi DB2.
Dalším slibným a z hlediska spravovatelnosti výhodnějším přístupem k XML v
podnikovém prostředí jsou vznikající databáze typu NXDB native XML database
(nativní XML databáze). NXDB však nemají za úkol nahradit existující podnikové
datové zdroje. Pracují jako zprostředkující vrstva cache, která je umístěna
mezi back-endovými zdroji dat a aplikačními komponentami ve střední vrstvě.
Použití NXDB přináší 2 zásadní výhody: Předně je možné, že váš podnik má více
back-endových zdrojů dat a provozuje různé typy aplikací ve střední vrstvě.
Lepší než rozšiřovat o funkce pro zpracování XML dat střední vrstvu a back-end
(což může značně zvýšit výdaje na technologické zabezpečení) pak může být
přidání potřebné podpory XML implementací NXDB. Taková databáze obvykle nabízí
programová rozhraní a metody pro přístup k datům, které jsou potřebné pro
podporu více aplikací i datových zdrojů.
Další výhodou je, že NXDB lze použít i pro zvýšení procesního výkonu
primárních podnikových databází. Není totiž třeba obětovat procesní cykly
databáze ve špičkách provozu pro překlad, ukládání a vyhledávání XML
přenecháním těchto operací nativním XML databázím můžete snížit zatížení
primárních databází a uvolnit je pro důležitější úlohy (jako zpracování
transakcí apod.).
Mnohá rozšíření pro práci s XML, která byla v poslední době přidána do běžných
RDBMS (relational database management system), poskytují funkcionalitu
podobnou té, již přinášejí NXDB. Tím na trhu vzniknul menší zmatek a vyvolává
to otázku, co je vlastně podstatou NXDB.

Oč vlastně jde
NXDB se od tradičních RDBMS odlišuje ve třech klíčových směrech. Zaprvé, NXDB
používá XML dokumenty jako primární metodu pro ukládání, zatímco v RDBMS jsou
to záznamy. RDBMS může taktéž uchovávat XML dokumenty, avšak obvykle je XML
dokument uložen v záznamu nebo jako objekt v databázi. Nativní ukládání XML
dokumentů zjednodušuje jejich následné vyhledání a vyvolání v průběhu výměny
dat mezi obchodními partnery.
Zadruhé, NXDB používá různé druhy fyzických storage modelů. Některé NXDB jsou
postaveny na principu relačních technologií, zatímco jiné využívají objektově
orientované, hierarchické nebo i proprietární ukládací prostředky. Ty jsou v
NXDB pro koncového uživatele transparentní, což podstatně zjednodušuje správu
skupin XML dokumentů (označovaných jako collections).
A konečně zatřetí, přístup k XML dokumentům v NXDB je prováděn aplikacemi
využívajícími XML technologií, jako např. XPath. Naproti tomu v RDBMS musí
být přístup aplikací k datům založeným na XML většinou zprostředkován pomocí
jiných technologií, jako např. ODBC (Open Database Connectivity) nebo JDBC
(Java Database Connectivity), což může mít za následek vyšší přístupové časy
při B2B výměně dokumentů.

Anatomie NXDB
Když je XML dokument uložen v NXDB, vytváří tato databáze model založený na
XML, který zahrnuje více úrovní hnízdění a semistrukturovaná data. Tento model
je poté namapován do spodní vrstvy mechanismu fyzické storage, která je
podporována touto nativní XML databází. NXDB spravují XML dokumenty
prostřednictvím konstruktu označovaného kolekce (collection). Kolekce umožňují
dotazovat se a modifikovat XML dokumenty, přičemž kolekci v NXDB lze přirovnat
ke konstruktu tabulky v RDBMS. Avšak kolekce v NXDB se od tabulek v RDBMS
odlišují v tom smyslu, že mnohé NXDB nevyžadují schéma asociované s kolekcemi
(zatímco tabulky v RDBMS schéma vyžadují). Databáze typu NXDB, které
nevyžadují schémata, mohou přinést vyšší flexibilitu, ale mohou současně
snížit integritu dat.
V současné době je pro přístup k XML dokumentům v NXDB primárně využíván
dotazovací jazyk XPath ten může být použit pro dotazování se na mnohočetné
XML dokumenty, ale stále má několik nedostatků. K nejzávažnějším náleží
absence třídění, seskupování a datových typů. Dále XPath postrádá podporu pro
křížové spojování dokumentů. Některé z těchto problémů mohou vývojáři obejít
použitím XSLT (Extensible Stylesheet Language Transformations).
XQuery, nový dotazovací jazyk pro NXDB, se pak snaží mnohé z nedostatků XPath
vyřešit. Někteří z dodavatelů NXDB, jako např. Software AG, jej proto
začínají podporovat. Jakmile standard XQuery dospěje ke své konečné
specifikaci u organizace World Wide Web Consortium (W3C), dá se očekávat, že
jej budou adoptovat i další dodavatelé.
V této chvíli však skýtá komplikace i aktualizace dat v rámci NXDB. Většina
řešení vyžaduje, aby byl vyvolán celý XML dokument a aby data v něm obsažená
byla aktualizována prostřednictvím na XML založeného API.
Některé NXDB řeší tyto nedostatky tím, že poskytují proprietární prostředky
pro aktualizaci, nebo tím, že vývojářům doporučují používat pro update dat v
XML dokumentech DOM (Document Object Model). Finální specifikace jazyka XQuery
by měla vyřešit i problémy s aktualizací dat v NXDB.
Jak už bylo řečeno, aplikace přistupují k NXDB s použitím XML technologií.
Většina NXDB poskytuje jedno či více API některá založená na Javě, jiná zase
na C++, aby měli vývojáři jednodušší život. Na straně back-endu pak NXDB
nabízejí služby umožňující přístup k heterogenním databázím.
Jsou tedy NXDB nejlepší možností pro všechny podniky? To zcela určitě ne.
Rozhodně ale představují slibnou strategii pro firmy, které disponují
mnohočetnými heterogenními zdroji dat a směsicí velkého počtu různorodých
aplikací provozovaných ve střední vrstvě.

Co jsou nativní XML databáze
Nativní XML databáze (NXDB) mohou být smysluplnou alternativou pro firmy,
které potřebují podporu práce s XML dokumenty a interakci s několika
back-endovými datovými zdroji. Navíc mohou přispět ke zjednodušení správy v
rámci podnikového zpracování dat. Vzhledem k tomu, že se prakticky jedná o
nově vzniklou a stále se vyvíjející technologii, jsou vhodné např. pro
nasazení ve zkušebním provozu v podnicích, které se nebojí při vývoji svojí
infrastruktury experimentovat. Ve chvíli, kdy budou vyřešeny některé
nedostatky (zpracování dotazů, aktualizace dokumentů), budou tyto systémy
představovat slibnou technologii pro jednodušší správu a zpracování XML
dokumentů ve většině oddělení IT.









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