eXist: Base de Datos Nativa XML
Feb 13
Posted: under eXist, XML, XQuery.
En los últimos años han aparecido un gran número de bases de datos con soporte para documentos XML y algunas de ellas con soporte para XQuery. Existen principalmente dos tipos de bases de datos XML: 1- XML-Enabled las cuales mapean los documentos XML en una base de datos relacional u objeto-relacional 2. Bases de datos nativas XML (XNDB) donde utilizan como unidad fundamental de almacenamiento estructuras específicas para documentos XML. Un listado de bases de datos nativas junto con algunas características se encuentra en Bourret. Entre todas ellas, en este post analizaremos eXist.
eXist-db es un sistema de gestión de bases de datos libre y de código abierto que almacena datos XML de acuerdo a un modelo de datos XML. Algunas de sus características son: soporte para distintos lenguajes de consultas XML como XQuery, XPath y XSLT, indexación de documentos y soporte para la actualización de los datos y para multitud de protocolos como SOAP, XML-RPC, WebDav y REST y en la actualidad cumple el estandarestándar XQuery en un 99.4%.
Se pueden realizar distintas instalaciones:
- Mediante un fichero de instalación (.jar multiplataforma). Al ejecutar el instalador (java -jar fichero.jar) aparece un asistente guiándote en el proceso de instalación.
- Mediante un fichero .war para incluirlo en un servidor Cocoon.
- Mediante el código fuente.
Personalmente prefiero utilizar esta última opción pues siempre tendrás la base de dato actualizada mientras que las anteriores versiones se liberan cada cierto tiempo. Pasos
- Instalar un cliente de subversion (apt-get install subversion)
- Seleccionar la rama del código fuente a instalar:
- Versión estable (liberada) (https://exist.svn.sourceforge.net/svnroot/exist/release)
- Versión actualizada (https://exist.svn.sourceforge.net/svnroot/exist/branches/eXist-stable-1.2/)
- VersiónTrunk (https://exist.svn.sourceforge.net/svnroot/exist/trunk/)
- En mi caso he seleccionado la rama branches que tiene los bugs corregidos con respecto a la versión estable
svn co https://exist.svn.sourceforge.net/svnroot/exist/branches/eXist-stable-1.2/ eXist-stable-1.2
A partir de este instante en el directorio eXist-stable-1.2 se encuentra instalada la base de datos. Cosas a saber, una vez instalada:
- Lanzar una instancia de la bases de datos: $Home_eXist/bin/startup.sh (debes configurar $JAVA_HOME)
- Cliente Java: $Home_eXist/bin/client.sh (debes configurar $JAVA_HOME)
- Cliente web: http://localhost:8080/
Con esto acabo por hoy, otro día/s veremos cómo: compilar eXist, cambiar los puertos por defecto, incrementar la memoria asociada, definir de índices, depuración en eXist, ficheros logs, ……. !
Queda mucho camino por andar!.
Luis