Actualidad

XML penetra en los sistemas DBMS

Se ha convertido en la "lingua franca" del manejo de datos

Todo el mundo está de acuerdo en que el lenguaje XML es una forma excelente de intercambiar datos entre aplicaciones y entre empresas u organizaciones. Ahora bien, ¿en qué medida funciona bien como formato de bases de datos nativas? ¿Y cómo funciona en la práctica?

El lenguaje XML (Extensible Markup Language) está surgiendo como el formato clave para una variedad de tipos de datos, especialmente documentos. Con su capacidad de marcar mediante “marcas” o “tags” diferentes campos, XML hace más sencillas y dinámicas las búsquedas, permitiendo que los documentos de las empresas pasen de ser materiales reciclables e inútiles a convertirse en oro obtenible mediante minería de datos. Como el contenido XML está libre de formato de presentación (que es especificado por hojas de estilo independientes) el estándar permite una amplia reutilización del material, lo cual a su vez permite a las empresas convertir un mismo contenido en boletines de prensa, libros blancos, folletos, presentaciones y páginas web. Para las empresas que intentan fusionar sistemas incompatibles, XML puede servir como tecnología de transporte común para mover datos en un formato neutro y válido para múltiples sistemas. Además, XML puede manejar todo tipo de datos, incluyendo texto, imágenes y sonido y puede ser ampliado por el usuario para manejar cualquier cosa considerada especial.
Es obvio que XML está adquiriendo importancia por derecho propio y que parece destinado a convertirse en la “lingua franca” del manejo de datos, tanto online como offline. El problema hasta ahora ha sido cómo gestionar los datos marcados de XML. Una solución prometedora es utilizar bases de datos para almacenar, extraer y manipular este lenguaje. La idea en este caso es situar los datos marcados por XML en un marco en el que pueda realizarse la búsqueda, análisis, actualización y salida en un entorno más manejable, sistemático y comprensible. Las bases de datos tienen la ventaja de que los usuarios está familiarizados con ellas y con su comportamiento, por lo que asociar a XML con un contexto de base de datos parece natural.
Sin embargo, hay bases de datos XML y bases de datos XML, y algunos puristas afirmarían que sólo las bases de datos que almacenan XML en su formato nativo merecen este nombre. Otros responden que si se pueden almacenar datos XML en ella y extraerlos, es una base de datos XML, independientemente de cómo estén almacenados estos datos. Dejando a un lado estas discusiones conceptuales, si XML no está almacenado internamente como XML, la llamaremos una “base de datos con capacidad o características XML”, mientras que si está realmente almacenado como XML internamente la llamaremos una “base de datos XML nativa.”
Hay numerosos motivos para utilizar tipos de base de datos ya existentes y productos de base de datos ya existentes para almacenar XML, incluso si no está en su forma nativa. Las bases de datos corrientes, tanto relacionales como orientadas a objetos, son conocidas, mientras que las nativas en XML son más nuevas. Al estar familiarizados con las bases de datos relacionales y las orientadas a objetos, los usuarios comprenden su comportamiento, en especial en lo que se refiere al rendimiento. Existe cierto rechazo a pasar a una base de datos XML nativa cuyas características (en especial la escalabilidad) no han sido probadas aún. Bajo la mentalidad corporativa de las empresas, las bases de datos relacionales y las orientadas a objetos son opciones a elegir sobre seguro. Se trata del antiguo razonamiento de que “a nadie lo han despedido por comprar productos IBM”. Y nadie desea “apostar el futuro de la empresa” a una base de datos XML nativa.
Por suerte, no necesita hacerlo necesariamente. Hay bases de datos con características o capacidad XML que pueden manejar lenguaje XML y que están basadas en modelos relacionales u orientados a objetos de eficacia probada. Esas bases de datos suelen aceptar XML, lo dividen en porciones adecuadas al esquema de la base y las almacenan. Para recuperar XML, las porciones se agrupan de nuevo.
La utilización de bases de datos relacionales y bases de datos orientadas a objetos para almacenar XML es objeto de algunas críticas. Una de las características atractivas de XML es la forma en que está organizado jerárquicamente, a diferencia de las tablas de base de datos. Las bases de datos relacionales tienen que realizar el traslado o “mapping” de XML a tablas relacionales. La conversión de XML a y desde la base de datos requiere un proceso considerable, especialmente para documentos grandes o complejos. Este factor que afecta al rendimiento podría ser muy inconveniente al realizar uno de los puntos fuertes de XML: producir páginas web a partir de contenido independiente de formato. El problema es que las páginas resultantes podrían no cargarse con suficiente rapidez.

Terreno nativo
Los puristas de XML responderían que la solución a estas dificultades es almacenar XML nativamente, con lo que se elimina la necesidad de conversión entre XML y la base de datos. Actualmente está surgiendo una nueva clase de esas bases de datos XML nativas.
La primera y la mejor conocida es Tamino, de Software AG. Además almacenar XML y acceder a él, posee todas las características, como Open Database Connectivity, compatibilidad Unicode, comunicaciones HTTP y la capacidad de manejar datos no-XML. En un informe de Gartner se señala que Tamino es adecuado para permitir a las empresas integrar información procedente de muchas plataformas y formatos diferentes, y enviarla a firmas colaboradoras o clientes.”
Además, Tamino posee un elegante lenguaje de consultas de datos que permite realizar consultas cortas pero potentes que destrozarían al lenguaje SQL.
Otras bases de datos XML nativas son las de las compañías americanas dbXML, eXcelon y X-Hive/DB. El xCelon Data Server de eXcelon Corp., incluye una base de datos XML orientada a objetos que almacena, gestiona y distribuye XML nativo. X-Hive/DB, de la empresa The Connection Factory, trabaja con bases de datos relacionales compatibles con JDBC. El dbXML Group LLC está aún desarrollando dbXML.
Resulta algo paradójico que una de las principales críticas a las bases de datos XML se refiera al rendimiento. Algunos prevén problemas en las búsquedas de información que pudieran estar situadas cerca del final de un documento grande. Si no hay instalado otro mecanismo, una base de datos XML nativa tendría que recorrer todo el documento para completar la búsqueda. (Las bases de datos relacionales y las orientadas a objetos evitarían probablemente esta dificultad fraccionando el documento en porciones más pequeñas, en cada una de las cuales podría buscarse con más rapidez).

Viñeta publicada el 20 de febrero de 1870 en La Flaca n.º 35 Tendencias

ny2 ACTUALIDAD

ny2 Sociedad de la información

Día de la Movilidad y el BYOD Coffee Break