• No se han encontrado resultados

7.1 Introducción a los sistemas de integración de datos distribuidos

N/A
N/A
Protected

Academic year: 2021

Share "7.1 Introducción a los sistemas de integración de datos distribuidos"

Copied!
30
0
0

Texto completo

(1)

7.1 Introducción a los sistemas de

integración de datos distribuidos

(2)

Integración de Datos Distribuidos

n

El problema de la integración de datos distribuidos

consiste en integrar datos de fuentes distribuidas,

heterogéneas y posiblemente autónomas.

Heterogéneas

Autónomas Distribuidas

Poco estructuradas

(3)

Ámbito (1)

n

Mundo actual -> Grandes volúmenes de información

accesibles:

n Explosión de informatización y herramientas de creación y

compartición de contenidos

n Internet: WWW es la norma de facto para compartición de

información

n

Heterogeneidad interna:

n 2000 principales empresas USA tienen más de 15

plataformas diferentes y de 8 arquitecturas de

almacenamiento con esquemas y convenciones semánticas incompatibles (Gartner Group).

n

Heterogeneidad externa:

n Internet tiene multitud de fuentes de información útiles. n Información proveniente de otras organizaciones (socios,

(4)

Ámbito (2)

n

Heterogeneidad a múltiples niveles:

n Nivel de estructuración:

n Información estructurada (bases de datos),

n Información no estructurada y semi-estructurada (documentos,

sitios web).

n Información en formatos “legibles para humanos” pero no para

máquinas. Ejemplo: HTML.

n Modelo de datos (e.g. Modelo relacional vs Modelo

jerárquico).

n Plataforma software (e.g. MySQL vs Postgress).

n Convenciones de sintaxis (“Calle Alcalá, nº 32”, “C\Alcalá, 32

”).

n Convenciones semánticas. Taxonomías:

n Una fuente clasifica ofertas de empleo de informática y

telecomunicaciones en categoría “Informática y Teleco”.

n Otra las separa en dos categorías: “Informática”, “Teleco”. n Otra agrupa todas las de ingeniería en “Ingenieros”.

n Otra tiene una categoría “Telemática” que tiene ofertas para

(5)

Ámbito (y 3)

n

Heterogeneidad a múltiples niveles:

n

Diferencias de granularidad.

n Una fuente tiene una tabla con un campo

n

Heterogeneidad de esquema. Ejemplo:

representación de información de criminales y

tipos de delito:

n Una BD tiene una tabla CRIMINALES y una tabla

DELITOS con una relación M:N.

n Otra BD tiene una única tabla CRIMINALES que indica el

tipo o tipos de delito.

n Otra BD tiene en una tabla distinta a los criminales de

cada tipo de delito: tablas ASESINOS, LADRONES, ESTAFADORES, etc.

(6)

Información No Estructurada

n Sólo puede ser consultada

mediante consultas imprecisas:

n Granularidad de documento

(estructura de presentación, no de contenido)

n Búsquedas por palabra

clave, combinadas mediante operadores booleanos.

n En información

n En metainformación

(7)

Información Estructurada (1)

n Datos presentan un esquema

rígido:

n Define tipos de datos para

los elementos atómicos

n Define su organización

interna (como se combinan los elementos)

n Define las restricciones a

aplicar

n Definido por separado de

los datos

n Ejemplos típicos: Bases de

Datos

n Modelo relacional, orientado

(8)

Información Estructurada (y 2)

n

Admiten consultas precisas:

n Granularidad de elemento de información

n Pueden manejar la información del esquema para la

construcción de condiciones

n Ejemplos típicos: los lenguajes de consulta sobre bases de

(9)

Información Semi-estructurada (1)

n

Presentan algún tipo de esquema, pero:

n No es conocido de antemano.

n Es relativamente grande y puede cambiar con frecuencia y

sin previo aviso.

n Se admiten ciertas violaciones del esquema. n No hay tipado fuerte.

n

Además puede ocurrir:

n El modo de acceso/almacenamiento no es “consciente” del

esquema.

n Formato de representación no contiene información sobre el

esquema o la semántica de sus contenidos (e.g. HTML).

n Puede haber partes irrelevantes y/o cambiantes n Las capacidades de consulta pueden ser limitadas

(10)
(11)

Información Semi-estructurada (3)

Página html (Publicidad, logos...) Lista de productos obtenidos (libros) Diferencia s en el conjunto de datos para un item determinado

(12)

Información Semi-estructurada (y 4)

n

Ejemplos típicos:

n Documentos XML (esquema no rígido)

n Resultado de una consulta en una fuente web.

n Cualquier “lista” en formato imprimible (Word, PDF, etc.)

n Catálogos de productos n Listas de personal

n Etc.

n

Lo ideal sería poder tratar esta información de la

manera más similar posible a como si fuese

estructurada:

n Enfoques que “aprenden” la estructura de la información

partiendo de algunos ejemplos.

n Enfoques basados en proporcionar normas para la

(13)

Clasificación Sistemas Integración de Datos

n Criterio 1: Materializados vs Virtuales

n Criterio 2: Tipo de información y tipo de consultas que tratan:

n Consultas imprecisas sobre información no estructurada (no los

veremos):

n Motores de recuperación y clasificación automática de información.

Materializado.

n Metabúsqueda. Virtual.

n Útiles en Gestión del conocimiento, portales, etc.

n Consultas precisas sobre información estructurada:

n Base de Datos Universal. Materializado.

n Data Warehouse (almacén de datos). Materializado. n Bases de Datos Federadas. Virtual.

n Consultas precisas sobre información estructurada y

semi-estructurada:

(14)

Sistemas Materializados

n

Los datos de las fuentes se copian periódicamente de

forma masiva al sistema de integración.

n

Consultas eficientes:

n Datos son locales al sistema de integración.

n

Datos no actualizados.

n La información se carga periódicamente.

n

Es necesario construir un gran repositorio central:

largo y costoso de construir y mantener

n

No siempre es posible con fuentes autónomas:

n Organizaciones quieren mantener el control sobre cómo se

consulta su información (e.g. Vendedores de contenidos on-line, socios B2B).

n No es factible proporcionar copias periódicas completas de la

(15)

Sistemas Virtuales (1)

n

Los datos permanecen en las fuentes.

n

Cuando se recibe una consulta sobre el sistema de

integración:

n La consulta se reformula en una serie de subconsultas sobre

las fuentes,

n El sistema ejecuta las subconsultas sobre las fuentes en

tiempo real, recogiendo de cada fuente los datos precisos para contestar la consulta del usuario.

n Integra los sub-resultados obtenidos.

(16)

Sistemas Virtuales (y 2)

n

Datos actualizados.

n Se recogen los datos en tiempo real de las fuentes.

n

El Sistema de Integración es “ligero” ya que no

maneja por si mismo grandes cantidades de datos.

n

Más adecuado con fuentes autónomas.

n Las fuentes mantienen el control sobre cómo se consulta su

información.

n Se pueden aprovechar los interfaces de consulta ya

existentes y no hay cargas masivas.

n

Menos eficiente:

n Hay que transmitir los datos por la red desde las fuentes en

el momento de la consulta.

n Pueden usarse sistemas de cache para materializar las

fuentes no autónomas y que no precisemos actualizadas en tiempo real.

(17)

Base de Datos Universal

n

Se construye un nuevo sistema integrando todos los

datos.

n

Las fuentes de información originales desaparecen.

n

Lecturas y Escrituras se realizan sobre el sistema de

integración.

n

Ventaja: Eficiente

n

Problemas:

n Hay que rehacer todas las aplicaciones n Hay que volver a formar a los usuarios n Requiere un caro y crítico servidor central n No es válido para fuentes autónomas

n Intrusivo.

n Conclusión: inviable muchas veces. Cuando es viable, largo y

(18)

Data Warehouse (1)

n Los datos de las fuentes se copian periódicamente a un almacén

central.

n Pueden copiarse todos los datos o sólo un subconjunto. n Para disminuir la carga de las actualizaciones, las fuentes

pueden enviar sólo los cambios producidos.

n Requiere dicho soporte por parte de las fuentes.

n Ventajas:

n No es necesario rehacer aplicaciones ni volver a formar a los

usuarios

(19)

Data Warehouse (y 2)

n

Problemas:

n Datos no actualizados

n Puede no ser posible o muy ineficiente con fuentes

autónomas

n Organizaciones quieren mantener el control sobre sus datos. n No es factible hacer copias masivas periódicas.

n Sistema de integración “pesado”

n Contiene gran cantidad de datos.

n

Conclusión: muy bueno para obtención de informes,

tratamiento de históricos, análisis de tendencias, etc.

Menos útil en otros ámbitos.

n En informes/análisis de tendencias, a menudo no es

importante tiempo real, pero sí lo es mucho la eficiencia (a veces, los procesos son muy pesados).

(20)

Sistemas EII (1)

n EII: Enterprise Information Integration.

n Similares conceptualmente a las bases de datos federadas.

n Bases de datos federadas se limitan a fuentes que sean bases de

datos.

n Pueden tratar otras fuentes que no sean BDs: Servicios Web,

XML, aplicaciones populares …

n Algunos pueden tratar fuentes semi-estructuradas “casi”

como si fuesen estructuradas.

n A veces, incluso fuentes web no “etiquetadas” (sólo “legibles

para humanos”), mediante técnicas de aprendizaje.

n Datos permanecen en las fuentes y se define un esquema

“virtual” de integración.

n Cuando el sistema recibe una consulta, la subdivide en

consultas para los esquemas de las bases de datos origen.

n El sistema EII combina los resultados de las fuentes y

devuelve la respuesta unificada de acuerdo al esquema global.

(21)

HTTP HTTP

HTML HTML

SELECT * FROM R WHERE TITULO=‘Moby Dick’

SELECT * FROM B WHERE TITULO=‘Moby Dick’

SELECT * FROM A WHERE TITULO=‘Moby Dick’ DATOS R DATOS A DATOS B NIVEL FÍSICO NIVEL LÓGICO ENVOLTORIO1 ENVOLTORIO 2 A={TITULO,AUTOR,PRECIO} B={TITULO,AUTOR,PUNTOS} R={TITULO,AUTOR,PRECIO ,PUNTOS} APLICACIÓN USUARIO

DATOS R=(DATOS A)∞(DATOS B)

(22)

Sistemas EII (3)

n En ocasiones, pueden permitir inserciones:

n En fuentes que implementen Two-Phase Commit.

n Problema de inserciones sobre vistas: algunas vistas “pierden

información”, con lo cuál no es factible hacer inserciones sobre ellas.

n Pueden incluir funcionalidades de consulta imprecisa

combinadas con las de consulta precisa.

n Ventajas:

n Datos en tiempo real.

n Válidos para fuentes autónomas. n Sistema de integración “ligero”. n Tratan fuentes semi-estructuradas.

n Inconveniente: Menos eficiente.

n Puede usar precargas para las fuentes que se desee. En

realidad, contiene “lógicamente” al esquema Data Warehouse, aunque los paquetes software actuales no siempre proporcionen esta funcionalidad.

(23)

Sistemas EII (y 4)

n

Tareas principales:

n Reformulación y ejecución de consultas. Traducir consulta

general sobre el esquema global en una lista de subconsultas sobre las fuentes.

n Optimización de consultas. Tener en cuenta retardos de

red, trabajar con poca información de costes de las fuentes, etc.

n Diversidad de formatos. Heterogeneidad de taxonomías,

convenciones semánticas, esquema, etc.

n Mayor flexibilidad en manejo de esquema (datos

semi-estructurados).

n Mayor número de fuentes y más autónomas.

n Heterogeneidad en las capacidades de consulta de las

fuentes (e.g. un formulario web).

n Acceso y recuperación de datos puede ser complejo (e.g.

(24)

Arquitectura EII (1)

EII SYSTEM Caché

Execution Engine Optimizer Plan Generator Query Analyzer and Decomposer Propietary Interface Proprietary Wrappers Web Services Web Services Wrapper http Web Wrapper External Websites Partner´s Applications Backoffice and Propietary Applications Local Databases and Data Warehouses J DBC/ODBC Database Wrapper JDBC/ODBC Proprietary

APIS and Protocols SOAP HTTP HTML

APP1 APP2 APP3 APP4

ACCESS INTERFACES

Web

Services J DBC ODBC XQuery

SQL / XQuery / XPath Full Text Result Sets / XML SOAP J DBC ODBC XQUERY

Graphical Tool AI - Based Web Wrapper Generation Metadata Repository Wrapper Creator

(25)

Arquitectura EII (2)

n

Envoltorios (capa física):

n Proporcionan una visión de las relaciones de las fuentes

(relaciones base) de acuerdo a un modelo común (p.e. Relacional con extensiones semi-estructuradas).

n Suelen tratar al menos:

n Bases de Datos. n Fuentes XML. n Web Services.

n Algunos incorporan mecanismos de generación automática

de wrappers para fuentes web convencionales (no etiquetadas).

(26)

Arquitectura EII (3)

n

Capa Lógica:

n Generador de planes de consulta:

n Descomposición de consulta global en subconsultas y

determinación de las acciones de recombinación necesarias con los sub-resultados obtenidos.

n Debe tener en cuenta que las fuentes pueden tener

capacidades de consulta limitadas.

n Optimizador:

n Escoge el plan de ejecución más óptimo en función del número

de resultados esperado de cada fuente, los retardos de red, etc.

n Motor de ejecución

n Se encarga ejecutar el plan de consulta escogido:

n Ejecutar sub-consultas (en paralelo cuando sea posible). n Combinar sub-resultados.

(27)

Arquitectura EII (4)

n

Capa de aplicación:

n Sistema EII ofrece como interfaz un lenguaje para consultas

precisas, que puede incluir ciertas peculiaridades para fuentes semi-estructuradas e incluso no estructuradas.

n Variantes de SQL. n XQuery.

n Normalmente es posible acceder al sistema EII de la misma

forma que si fuese una BD convencional:

n JDBC. n ODBC.

n También es habitual que ofrezca algún tipo de interfaz Web

Service.

n Notar que puede ser útil que un sistema EII sea fuente de

(28)

Arquitectura EII (5)

n

Idea análoga al EAI, pero con la integración

de datos.

n

Se crea una sola vez un wrapper para cada

fuente

n

Para los tipos de fuentes más comunes, el EII

permitirá que el wrapper se cree sólo mediante

configuración.

n

Después, cada necesidad de combinación de

datos se realiza de forma declarativa, sin

programar:

n

Se requerirá sólo definir una vista en el lenguaje

del sistema EII (SQL, Xquery, …).

(29)

Arquitectura EII (6)

n

Ventajas similares al EAI pero en el contexto

de integración de datos:

n

Crear un nuevo proceso de combinación de datos

no implica programar

n

El sistema se encarga de tareas complejas como

la reformulación de consultas, su optimización o la

interacción con las fuentes.

n

La respuesta a cambios es mucho más rápida.

n

No es necesario escribir cada vez código ad-hoc

para acceder a cada fuente de datos.

(30)

Arquitectura EII (y 7)

n Todos los procesos de combinación de datos son

gestionados de la misma forma y desde un único punto:

n Facilidad de administración y obtención de informes.

n Facilita la implantación de políticas globales: autenticación,

seguridad, etc.

n Las herramientas traen ya implementados wrappers

configurables, para los tipos principales de fuentes:

n Bases de datos. n Servicios Web. n Fuentes XML

n Aplicaciones típicas de fabricantes populares: ERPs, CRMs, etc.

n Algunas incorporan sistemas de aprendizaje

Referencias

Documento similar

Luis Miguel Utrera Navarrete ha presentado la relación de Bienes y Actividades siguientes para la legislatura de 2015-2019, según constan inscritos en el

En primer lugar, se va a realizar el contraste de Chow para concluir si hay cambio estructural desde el segundo trimestre de 2009, lo que nos indicará si

If certification of devices under the MDR has not been finalised before expiry of the Directive’s certificate, and where the device does not present an unacceptable risk to health

In addition to the requirements set out in Chapter VII MDR, also other MDR requirements should apply to ‘legacy devices’, provided that those requirements

The notified body that issued the AIMDD or MDD certificate may confirm in writing (after having reviewed manufacturer’s description of the (proposed) change) that the

c CAPITULO II LOS DATOS DE LA ANTROPOLOGIA CRIMINAL Estos datos precisamente determinaron el movimiento moderno en la ciencia criminal y de ellos tomó el nombre la nueva escuela,

Asegurar una calidad mínima en los datos es una de las tareas más difíciles de conseguir para los organismos públicos cuyo objetivo es publicar datos lo más rápidamente posible

La campaña ha consistido en la revisión del etiquetado e instrucciones de uso de todos los ter- mómetros digitales comunicados, así como de la documentación técnica adicional de