Bazy danych XML

Coraz więcej faktów przemawia za tym, żeby informacje oparte na XML dysponowały własną bazą danych.

Coraz więcej faktów przemawia za tym, żeby informacje oparte na XML dysponowały własną bazą danych.

Różnorakie eksperymenty przeprowadzane na tzw. usługach webowych często prowadzą do wniosku: potrzebny jest nowy rodzaj magazynu danych - baza danych XML.

Oprogramowanie związane z usługami webowymi jest projektowane pod kątem efektywnego przechowywania i zarządzania wzrastającą liczbą dokumentów XML, tworzonych przez użytkowników w webowych interakcjach z partnerami biznesowymi i klientami. Zwolennicy idei oddzielnej bazy danych podkreślają szczególne zalety specjalistycznej bazy XML w porównaniu z tradycyjną: prostota, łatwość projektowania aplikacji, możliwość przeszukiwania i kwerendowania dokumentów XML oraz ich szybkiego uzyskiwania.

Do tej pory jednak nie istnieje formalna, standardowa definicja bazy danych XML. Jednak grupa inicjatywna XML: DB ( www.xmldb.org ) opisuje ją jako definiującą logiczny model dla dokumentów XML (a nie danych zawartych w dokumencie) i zarządzającą dokumentami opartymi na tym modelu. Kluczową cechą takiej bazy danych jest "myślenie" i działanie oparte na XML - XML na wejściu i XML na wyjściu - niezależnie od tego, czy fizycznie dokumenty przechowywane są w obiektowej lub relacyjnej bazie danych, czy w innym modelu magazynu, takim jak pliki indeksowane.

Baza dostosowana do przechowywania danych XML daje możliwość efektywniejszego przechowywania oraz obsługiwania danych i metadanych. Dla szeregu aplikacji mechanizmy bazy danych XML będą często znacznie efektywniejsze od mechanizmów tradycyjnego przechowywania - w aspekcie wygody, łatwości projektowania i wydajności. Aplikacje idealnie dostosowane do użytkowania bazy danych XML to m.in. korporacyjne portale informacyjne, katalogi produktów, bazy danych części zamiennych, wymiana dokumentów typu B2B.

Grupa inicjatywna XML:DB, której zamierzeniem jest stworzenie przemysłowego standardu baz danych XML, stawia sobie następujące cele:

  • Opracowanie specyfikacji technologicznej zarządzania danymi w bazie danych XML.

  • Przygotowanie materiału do implementacji zaleceń takiej specyfikacji w modelu Open Source License.

  • Utworzenie forum wymiany informacji, w ramach którego dostawcy i użytkownicy baz danych XML będą mogli wymieniać wątpliwości i informacje z zakresu technologii i aplikacji XML.

    Promotorami tej inicjatywy są SMB GmBH, dbXML Group L.L.C i OpenHealth Care Group. Inicjatywę wspiera też wiele innych organizacji.

    Brak formalnej definicji to tylko jeden z problemów tworzenia właściwego repozytorium dokumentów XML. Niemniej ważnymi są też: niedojrzałość produktów i standardów XML, brak standardu niezawodnego języka kwerend (porównywalnego z SQL używanym w relacyjnych bazach danych) oraz możliwe problemy z integralnością danych.

    Dostawcy relacyjnych baz danych, mając na uwadze te problemy, starają się zapewnić lepsze wsparcie XML w swoich produktach. I tak Microsoft przygotowuje wydanie SQL Server pod nazwą Yukon; Oracle zademonstrował w grudniu ub.r. technologię o nazwie Projekt XDB. Celem obydwu inicjatyw jest stworzenie w bazie danych mechanizmów pozwalających na traktowanie dokumentów XML jako nowego typu danych i zarządzanie nimi w taki sam sposób jak obiektami i danymi relacyjnymi.

    Według zapewnień Oracle dokumenty XML będzie można przechowywać jak obiekty i kwerendować je oraz etykietować. Problemem pozostaje jednak wydajność takich operacji, przeprowadzanych przecież na dużych zestawach danych, w zasadniczy sposób różniących się od danych relacyjnych.

    Prognozy IDC przewidują przyrost baz danych XML w przedsiębiorstwach na poziomie 130 proc. rocznie, osiągający wartość 700 mln USD w 2004 r. Według analityków IDC będą one uzupełniać relacyjne bazy danych - te pierwsze będą lepiej dostosowane do przechowywania i przetwarzania dokumentów XML, te drugie - liczb i tekstów.

    Na rynku istnieje kilkanaście produktów baz danych XML projektowanych według własnych standardów. Kluczowymi dostawcami są Software AG i Xcelon. Nad projektami własnych baz danych XML pracuje też szereg mniejszych firm, takich jak NeoCore, IXIA czy ZYZFind. Istnieje również kilka projektów w formule open source. Jednym z nich jest Xindice, wcześniej znany jako dbXML Core, który jest teraz opracowywany przez Apache Software Foundation.

    XML jest używany zazwyczaj do wymiany danych, ale wzrastająca liczba tego typu dokumentów może uzasadniać potrzebę istnienia specjalnego repozytorium. Zalety i problemy takiego rozwiązania mogą być następujące:

    Zalety

  • Efektywne przechowywanie i przetwarzanie całych dokumentów XML.

  • Dokumenty mogą być poszukiwane, kwerendowanie i uzyskiwane szybko.

  • Dopuszcza zmiany w dokumentach bez konieczności zmian w powiązanych strukturach danych.

  • Łatwa manipulacja zbiorami dokumentów.

    Problemy

  • Nieefektywna obsługa danych strukturalizowanych.

  • Brak standardu języka kwerend XML.

  • Integracja XML z istniejącymi relacyjnymi bazami danych wymaga nowych umiejętności i narzędzi.

  • Potencjalne problemy z integracją danych.

  • W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

    TOP 200