Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cuál es la relación entre XML y las bases de datos relacionales?

¿Cuál es la relación entre XML y las bases de datos relacionales?

La tecnología de bases de datos y sus sistemas de aplicación han experimentado el desarrollo desde bases de datos jerárquicas, bases de datos en red hasta bases de datos relacionales y bases de datos orientadas a objetos, y han madurado gradualmente en los campos tradicionales de procesamiento de transacciones y negocios, reemplazando los métodos de procesamiento de datos originales basados ​​​​en sistemas de archivos y convirtiéndose en La computadora Una base y pilar importante de los sistemas de información. Sin embargo, con el rápido desarrollo de Internet, la aparición de la Web ha cambiado los métodos de procesamiento habituales de las personas, y la tecnología de bases de datos debe enfrentar un problema importante: cómo almacenar y administrar datos (documentos) de manera efectiva en la Web para que puedan ser. puede operarse y mantenerse de manera eficiente y puede expresarse e intercambiarse fácilmente en la plataforma de Internet.

La tecnología XML se ha desarrollado rápidamente desde su aparición, ha recibido un amplio apoyo en muchos campos y tiene amplias perspectivas de aplicación. Por ejemplo, el intercambio electrónico de datos, el comercio electrónico, etc., se consideran tecnologías pilares y basadas en XML.

1. Breve historia de las bases de datos

Con el continuo desarrollo de la tecnología informática, los sistemas de bases de datos surgieron en períodos históricos específicos y bajo requisitos ambientales específicos. En los largos 20 años transcurridos desde la llegada de la primera computadora en 1946 hasta la década de 1960, el funcionamiento de los sistemas operativos de las computadoras se limitó principalmente a archivos, y la gestión de datos se logró principalmente a través de sistemas de archivos. Varios datos necesarios para el cálculo se almacenan en sus propios archivos. Cuando utilice estos datos, abra el archivo y lea los datos del archivo en la memoria. Una vez completado el cálculo, los resultados del cálculo aún se escribirán en su archivo principal. Las desventajas se concentran en la incapacidad de gestionar eficazmente los datos de forma unificada. En respuesta a las importantes deficiencias del sistema de archivos, la gente ha desarrollado gradualmente un sistema cuyas características principales son la gestión unificada de datos y el máximo intercambio de datos, es decir, un sistema de base de datos. En 1964, General Electric Company de los Estados Unidos desarrolló con éxito el primer sistema de base de datos del mundo, IDS (Integrated Data Store). IDS sentó las bases para las bases de datos en red y se difundió y aplicó ampliamente, convirtiéndose en un monumento en la historia del desarrollo de sistemas de bases de datos. En 1969, la American International Business Machines Corporation (IBM) también lanzó el primer sistema de base de datos jerárquico IMS (Information Management System) del mundo, que también ocupó una posición importante en la historia del desarrollo de sistemas de bases de datos.

A principios de la década de 1970, E.F. Codd propuso los conceptos de modelo de datos relacionales, álgebra relacional y algoritmo relacional basándose en resumir las ventajas y desventajas de las bases de datos jerárquicas y de red anteriores. En la década de 1970, los sistemas de bases de datos relacionales lograron resultados fructíferos tanto en la teoría como en la práctica. En teoría, se ha establecido una teoría completa del modelado relacional, una teoría de la dependencia de datos y una teoría del diseño de bases de datos relacionales. En la práctica, han aparecido muchos sistemas de bases de datos relacionales famosos en el mundo, como SystemR, INGRES, Oracle, etc.

En comparación con los sistemas de archivos, los sistemas de bases de datos tienen las siguientes características: proporcionar a los usuarios interfaces avanzadas; proporcionar a los usuarios un lenguaje de base de datos no procesal (es decir, lenguaje SQL para procesamiento y optimización de datos); restricciones de integridad.

Después de entrar en la década de 1980, la rápida mejora de la tecnología del hardware informático condujo a la profundización continua de las aplicaciones informáticas, lo que dio lugar a muchos campos de aplicación nuevos, como el diseño asistido por ordenador, la fabricación asistida por ordenador y la fabricación asistida por ordenador. docencia, ofimática, procesamiento inteligente de la información, soporte a decisiones, etc. Estos nuevos campos plantean nuevos requisitos para los sistemas de bases de datos. Sin embargo, debido a la diversidad de aplicaciones, es imposible diseñar un modelo de datos unificado para representar estos nuevos tipos de datos y sus relaciones. Por lo tanto, cien escuelas de pensamiento compiten, lo que da como resultado bases de datos deductivas, bases de datos orientadas a objetos y bases de datos distribuidas. , bases de datos de ingeniería y bases de datos temporales Investigación y aplicación de nuevas bases de datos como bases de datos y bases de datos difusas.

2. Introducción a XML

La versión 1.0 del estándar recomendado por XML se lanzó en febrero de 1998 y rápidamente provocó un aumento en las aplicaciones XML en todo el mundo. XML es un lenguaje de marcado descriptivo que, al igual que HTML, es una aplicación de SGML (Standard Generalized Markup Language, estándar internacional ISO-8879). Debido a las destacadas ventajas de XML en términos de escalabilidad, portabilidad y estructura, su alcance de aplicación excede el alcance de HTML.

Los documentos XML constan de etiquetas y contenido. Hay seis tipos de etiquetas en XML: elementos, atributos, referencias de entidades, comentarios, instrucciones de procesamiento y CDATA. La mayor diferencia entre XML y HTML es la introducción de la "Declaración de tipo de documento" (DTD) en los documentos XML, que permite que el documento transmita metainformación sobre su contenido al analizador. La aparición de DTD brinda escalabilidad, estructura y verificabilidad a los documentos XML, lo que hace que XML tenga ciertas propiedades similares a las bases de datos. XML se puede utilizar para organizar y administrar información y se puede mostrar fácilmente en un navegador como HTML. a través de Internet. Por compatibilidad con HTML, la DTD no es una parte obligatoria del documento XML. Un documento XML con una DTD se denomina documento "válido"; de lo contrario, se denomina documento "bien formado".

Actualmente, existen dos métodos principales de procesamiento de documentos XML: SAX y DOM. SAX (SimpleAPI para XML) es una interfaz de procesamiento de eventos basada en secuencias que funciona igual que SAX 2.0 lanzado en mayo de 2000, con muchas mejoras, incluida la compatibilidad con espacios de nombres. Modelo) consiste en construir una estructura de árbol completa en la memoria después de analizar el documento XML y luego realizar varias operaciones sobre esta base. En comparación simple, SAX tiene bajos requisitos de recursos del sistema y es rápido, pero la operación de documentos es de solo lectura; la capacidad de procesamiento DOM es sólida, pero requiere muchos recursos del sistema, especialmente para documentos grandes. Xpath y Xpointer que aparecieron más tarde completaron la búsqueda y conversión de XML; XSL, XSLT y SOAP completaron el acceso remoto a objetos de XML. La aparición del lenguaje de consulta XML permite utilizar el lenguaje de consulta XML para cualquier documento XML.

3. XML y base de datos

El archivo XML es una colección de datos que se describe a sí mismo y es intercambiable, y puede describir datos en un árbol o estructura gráfica. XML proporciona herramientas para muchas bases de datos: almacenamiento (documentos XML), esquemas (DTD, XMLschema, RE1AXNG, etc.), lenguajes de consulta (XQuery, XPath, XQL, XML Query Language). XPath, XQL, XML-QL, QUILT, etc.), interfaces de programación (SAX, DOM, JDOM), etc. Sin embargo, XML no puede reemplazar completamente la tecnología de bases de datos. XML carece de las características que debería tener una base de datos práctica: mecanismos eficientes de almacenamiento, indexación y modificación de datos; control estricto de seguridad de datos; control completo de transacciones y coherencia de datos; control de concurrencia. Por lo tanto, aunque los documentos XML se pueden utilizar como bases de datos en entornos con pequeñas cantidades de datos, pocos usuarios y bajos requisitos de rendimiento, no son adecuados para entornos operativos con grandes cantidades de usuarios, alta integración de datos y altos requisitos de rendimiento.

Con el desarrollo continuo de la tecnología web, el alcance del disfrute de la información y el intercambio de datos continúa expandiéndose, y las bases de datos relacionales tradicionales también enfrentan desafíos. La aplicación de la tecnología de bases de datos se basa en los sistemas de gestión de bases de datos. La heterogeneidad entre los sistemas de gestión de bases de datos y su dependencia heterogénea del sistema operativo limita gravemente el alcance del intercambio de información y de datos. La capacidad de descripción semántica de la tecnología de bases de datos es deficiente. Utilice la representación, lo que dificulta la persistencia de la semántica de datos y la transmisión de datos. Sin embargo, el intercambio de datos y el intercambio de información se basan en la semántica y en entornos heterogéneos, en un entorno heterogéneo, en un entorno heterogéneo. La semántica, el intercambio de datos en aplicaciones heterogéneas, no favorece que las computadoras recuperen automáticamente datos correctos y las aplicaciones basadas en bases de datos semánticas son aplicaciones de alto nivel que requieren precios y entornos operativos costosos. Con el desarrollo de las redes e Internet, las capacidades de intercambio de datos se han convertido en un requisito importante para los nuevos sistemas de aplicaciones.

La ventaja de XML es la intercambiabilidad (portabilidad) de los datos y también tiene las siguientes ventajas en los datos de la aplicación: (1) los archivos XML son archivos de texto sin formato y no están restringidos por los sistemas operativos ni las plataformas de software (2) XML tiene El; La función de autodescripción basada en la semántica de esquemas facilita la descripción de la semántica de los datos. Esta descripción puede ser entendida y procesada automáticamente por las computadoras (3) XML no solo puede describir datos estructurados, sino que también puede describir de manera efectiva datos semiestructurados e incluso no estructurados. datos. .

4. Almacenamiento de documentos XML

Existen tres tipos principales de almacenamiento de documentos XML: (1) Documentos almacenados en el sistema de archivos (Almacenamiento de documentos en el sistema de archivos); en BLOB Almacenamiento de documentos en BLOB, aprovechando la gestión de transacciones de la base de datos, la seguridad, el acceso multiusuario y otras ventajas. Además, muchas bases de datos relacionales también proporcionan herramientas de búsqueda como búsqueda de texto completo, búsqueda aproximada, búsqueda de sinónimos y búsqueda difusa. Algunas de estas herramientas admitirán XML, lo que elimina el problema de buscar archivos XML como texto sin formato. (3) Almacene el archivo en bases de datos XML locales (Bases de datos XML nativas, NXD). NXD es una base de datos diseñada específicamente para almacenar documentos XML, que admite gestión de transacciones, seguridad, acceso multiusuario, API de programación y lenguajes de consulta. La única diferencia con otras bases de datos es que su modelo interno está basado en XML. Entre ellos, el método de almacenamiento más importante es la base de datos XML local.

4.1 Base de datos XML nativa

La base de datos NativeXML define un modelo (lógico) para documentos XML y accede a archivos de acuerdo con este modelo. Como mínimo, el modelo debe incluir elementos, atributos, PCDATA y orden de los documentos. Los ejemplos incluyen el modelo de datos XPath, XMLIn-foset y los modelos utilizados por los eventos DOM y SAX 1.0. Utiliza archivos XML como unidad de almacenamiento básica y no tiene requisitos especiales para el modelo de almacenamiento físico subyacente. Por ejemplo, puede construirse sobre una base de datos relacional, jerárquica u orientada a objetos, o puede utilizar formatos de almacenamiento especializados, como índices o archivos comprimidos.

NXD es más adecuado para almacenar archivos centrados en documentos. Esto se debe a que NXD conserva archivos, secuencias, instrucciones de procesamiento, comentarios, bloques CDA-TA, referencias de entidades, etc., mientras que la base de datos XED (base de datos habilitada para XML) no lo hace. XED amplía el módulo de soporte XML basado en la base de datos original para completar la conversión de formato y la transferencia entre datos XML y la base de datos. Desde la perspectiva de la granularidad del almacenamiento, todo el documento XML se puede utilizar como una fila de tabla en el RDBMS, o el documento XML se puede analizar y almacenar en la tabla correspondiente. Para admitir algunos estándares de operación XML del W3C, XPath y XED proporcionan algunos lenguajes primitivos nuevos (como algunos paquetes de datos agregados por Oracle9iR2 para operar datos XML, etc.) y optimizan el módulo de procesamiento XML.