Omet navegació

4 - Emmagatzematge en BD-XML Natives

En les Bases de Dades XML natives, a diferència de tots els SGBD anteriors (centrats en les dades), no existeixen camps ni guarden dades en tipus de dades senzills. Sempre guarden documents XML i són Bases de Dades centrades en els documents. La unitat mínima d'emmagatzematge és el document XML.

Podríem definir SGBD-XML natives (o senzillament un SGBD-XML) com un sistema de gestió de la informació que ha de:

  • Definir un model lògic per a un document XML (en contraposició als SGBD habilitats que defineixen el model per les dades) i enregistrar i recuperar els documents segons aquest model. Com a mínim, el model ha d’incloure elements, atributs, PCDATA i l’ordre del document.
  • Mantenir una relació transparent amb el mecanisme subjacent d’emmagatzematge, incorporant les característiques ACID de qualsevol SGBD (Atomicity, Consistency, Isolation and Durability).
  • Incloure un nombre arbitrari de nivells de dades i complexitat.
  • Permetre les tecnologies de consulta i transformació pròpies d’XML: XPath, XSLT, XQL, XQuery, etc.
  • Permetre la introducció d’informació data-centric, document-centric i mixta.

El segon punt de la definició porta implícita la idea que un SGBD-XML no té per què tenir cap model físic d’emmagatzematge subjacent específic, sinó que es podria construir per damunt d'un SGBD Relacional, un SGBD Orientat a Objectes, ..., o un sistema propi d’emmagatzematge. Això sembla contradictori amb els problemes i crítiques que presenten per a la gestió de documents XML els SGBD predecessors dels SGBD-XML

Avantatges de les BD-XML, en comparació a les BD no XML:

  • Faciliten accés i emmagatzematge d’informació en format XML sense necessitat de codi addicional ni cap tipus de mapatge.
  • La majoria d’SGBD-XML incorporen un motor de recerca d’alt rendiment.
  • És molt senzill afegir nous documents XML.
  • Permeten emmagatzemar dades heterogènies.
  • Conserven la integritat dels documents (es poden recuperar en el seu estat inicial).

Per contra, els inconvenients que tenen normalment els SGBD-XML són aquestos:

  • La gran quantitat d’espai necessari per emmagatzemar el mateix document XML com a format de representació de la informació, a causa del fet que les etiquetes poden suposar el 50% 0 el 75% de la informació d’un document XML. I això és, sense cap mena de dubte, innecessari en guardar molts documents validats per un mateix XSD o DTD.
  • El fet que les BD-XML només puguen guardar i retornar dades en format XML.
  • En emmagatzemar la informació en format XML es fa molt complicat poder generar noves estructures a partir de la informació existent com, per exemple, aconseguir càlculs estadístics.
  • Les dificultats d’indexació del contingut d’una base de dades, que ha de permetre la reducció dràstica del temps necessari per trobar certs elements clau.
  • Les pobres facilitats per modificar el contingut dels documents XML emmagatzemats sense haver de substituir tot el document.

Els dos darrers inconvenients (indexació-actualització) són cavalls de batalla dels SGBD i de ben segur que s’anirà avançant en aquest camp fins que deixen de ser inconvenients.