450 likes | 662 Views
INTEGRACIÓN DE SISTEMAS DE INFORMACIÓN. Curso Doctorado “Sistemas Informáticos Avanzados” 2004/2005. Motivación. Repositorios Documentos. “Reporting”/Análisis. Sitios Web. ventas. ¡¡ Dominio e intereses comunes !!. BD Corporativas. BD Públicas (millones de registros).
E N D
INTEGRACIÓN DE SISTEMAS DE INFORMACIÓN Curso Doctorado “Sistemas Informáticos Avanzados” 2004/2005
Motivación RepositoriosDocumentos “Reporting”/Análisis Sitios Web ventas ¡¡ Dominio e intereses comunes !! BD Corporativas BD Públicas (millones de registros) Servidores de Mapas Clusters Altas Prestaciones
Ejemplos • Plataformas integradas para Bioinformática • Plataformas integradas para Hospitales • Sistemas de Información Geográfica • Integración de museos virtuales (Hypermuseum) • Comercio Electrónico • Etc.
Motivación RepositoriosDocumentos “Reporting”/Análisis Sitios Web ventas ¿Cómo crear organizacionesvirtuales por encima de ellas? ¿Cómo obtener el máximo de información de todas las componentes? ¡¡ Dominio e intereses comunes !! BD Corporativas BD Públicas (millones de registros) Servidores de Mapas Clusters Altas Prestaciones
MIDDLEWARE Motivación RepositoriosDocumentos “Reporting”/Análisis Sitios Web ventas Cliente/Servidor JDBC-ODBC HTTP RMI, CORBA SOAP ... BD Corporativas BD Públicas (millones de registros) Servidores de Mapas Clusters Altas Prestaciones
Capas a estudiar ORGANIZACIÓN VIRTUAL COMPONENTES INTEGRACIÓN/COORDINACIÓN MIDDLEWARE COMPONENTES RepositoriosDocumentos “Reporting”/Análisis Sitios Web BD Corporativas BD Públicas (millones de registros) Clusters Altas Prestaciones Servidores de Mapas
Políticas globales de acceso, seguridad y privacidad Proveedores Intermediarios Clientes Organizaciones Virtuales ORGANIZACIÓN VIRTUAL Unidades Organizativas Workflow Perfiles: usuarios, grupos
Capas a estudiar ORGANIZACIÓN VIRTUAL COMPONENTES INTEGRACIÓN/COORDINACIÓN MIDDLEWARE COMPONENTES RepositoriosDocumentos “Reporting”/Análisis Sitios Web BD Corporativas BD Públicas (millones de registros) Clusters Altas Prestaciones Servidores de Mapas
Integración/Coordinación Dimensiones de estudio en sistemas integrados Autonomía Escalabilidad Heterogeneidad
Plataforma Sintáctica Integración/Coordinación Semántica Autonomía Escalabilidad Heterogeneidad
Plataforma Sintáctica Integración/Coordinación MIDDELWARE Semántica Autonomía Escalabilidad Heterogeneidad
Plataforma Sintáctica Integración/Coordinación Semántica Autonomía Escalabilidad Heterogeneidad
datos raw texto documentos estructurados semi-estruct. Recuperación de la Información RDBMS OODBMS Nativas (Tamino) MM-SRI Lore ORDBMS Sistemas BBDD(universales) ORDBMS(+Extensiones) Información, Modelos de Datos Información SGML HTML XML OEM tablas objetos GIF MP3 WAV ASCII
Poder expresivo de formatos SGML XML HTML objetos texto tablas RECUBRIMIENTOS
¿inferencia? ¿extracción? Conversiones tuplas SGML DTD o Esquema Esquema Esquema XML objetos DTD o Esquema XHTML HTML texto
Ejemplos <libro> <isbn>1231</isbn> <titulo>Tesis</titulo> <capitulos> <titulo>t1</titulo> <titulo>t2</titulo> </capitulos> </libro> XML (isbn:1231, titulo:’Tesis’) Tupla (libro#1,isbn:1231, titulo: ’Tesis’, capítulos: ( (cap#3, titulo:’t1’), (cap#4, titulo:’t2’))) <html><body> <h1>Libro:</h1> <b> isbn : 1231</b> <b>titulo : Tesis</b> <b>capitulos:<ul> <li>Titulo : t1</i> <li>Titulo : t2</i></b></ul> </body></html> Objeto HTML
Integración Sintáctica • MODELO DE DATOS COMÚN o CANÓNICO: • Todas las fuentes exportarán sus datos a dicho modelo • Generalmente un modelo conceptual Orientado a Objetos: UML, Ontologías, etc. • MODELO DE ACCESO COMÚN • Todas las fuentes son consultadas a través de un lenguaje común • También Orientado a Objetos: OQL o similar • RECUBRIDORES • Dispondremos de mecanismos de traslación tanto de consultas como de respuestas • ESTRUCTURAS DE DATOS GLOBALES • Directorios, Catálogos de datos, esquemas globales, etc.
Plataforma Sintáctica Integración/Coordinación Semántica Autonomía Escalabilidad Heterogeneidad
Integración Semántica • Semántica: qué es y para qué sirve cada dato o información. • Diferentes conceptualizaciones utilizadas por diferentes administradores: relativismo. • Se expresa de muchas formas: • Conflictos de nombres (sinónimos, holónimos,...) • Conflictos de tipos (atributos, restricciones, etc.) • Conflictos de datos (objetos iguales?, valores contradictorios?, etc.) • Conflicto de usos (diferentes aplicaciones)
¿Qué es una ontología? • “Una especificación de una conceptualización” (Gruber’93) • Conceptualización: Expresa todo lo que “existe” en el sistema como conceptos y relaciones entre ellos. • Especificación: Formal, sin ambigüedad • Expresión de un consenso
¿Por qué son útiles? • Definen una semántica formal • Permiten el procesamiento de información por máquinas • Permiten una semántica del mundo real • Establecen una terminología por consenso • Unión entre el contenido procesable por máquinas y por humanos
Ontología title fname creates Artifact Artist exhibited Museum String lname URIs Museo1.xml/pintura{id=4}.... BD2::Escultura.obra BD1::Galería.Autor http://museo.com/cgi? pintor... RECURSOS Ontologías y Metadatos
WEB-based Metadatos O. Descriptivas O. Expresivas Taxonomías Términos Tesaurus Frames UML Axiomas estructurales Axiomas lógicos Yahoo! Diccionario Dublin Core Protégé RDF(S) OWL Full OWL DL WordNet OWL Lite Ontologías pesadas Ontologías Ligeras
title fname creates exhibited lname sculpts technique paints Pablo Picasso fname title lname Guernica paints I1 I2 Oil on canvas technique Ejemplo de ontología Artist Artifact Museum String Sculptor Sculpture Painter Painting Cubist Flemish
Manejo de metadatos • Ontologías Esquemas • Expresadas en lenguaje natural • No son sistemas de tipos • Permiten describir datos/información de una manera flexible • Descubriendo metadatos: • Lenguajes específicos: RQL, OWL-QL (solo una ontología) • Buscadores basados en Recuperación de la Información (son aproximados!!)
Schema Matching • ¿Cómo asociamos automáticamente los elementos de los esquemas con la ontología o esquema global? • Mezcla, alineamiento o combinación? • Numerosas aproximaciones: • COMA (Do, 2001) • CUPID (Madhavan, 2001) • Artemis (Castano, 2001) • PROMPT-Protégé (Noy, 2001) • S-Match (Giunchiglia, 2004)
Schema Matching • Nivel de elemento: • Similitud léxica (e.g. Distancia edición) • Diccionarios (sinónimos, hiperónimos, etc.) • Similitud de tipos (numéricos, tipos nombrados,...) • Nivel de estructura: • Similitud entre árboles o grafos • Similitud taxonómica • Vecinos próximos • Nivel semántico (escasas propuestas) • Integración de axiomas consistente
Integración/Coordinación Global-as-view Global/Local-as-view Autonomía Local-as-view Escalabilidad Heterogeneidad
Autonomía de componentes • Fuerte relación con heterogeneidad: • A mayor autonomía, más redundancias, heterogeneidades e inconsistencias. • A mayor autonomía, mayor DINAMICIDAD del sistema integrado • Varios aspectos: • Autonomía en el diseño • Autonomía en la administración • Autonomía en el procesamiento de consultas
Autonomía de componentes Principales enfoques (Levy 1999): • Global as view (GAV). El esquema global se crea a partir de los esquema locales. • Local as view (LAV). Los esquemas locales se definen a partir de un esquema global común.
Ejemplo GAV GAV: estudiante(id, nombre, grado)= {x,y,z | <x,y,z,_>ug <x,_,_,>doctor <x, y, z>doctor z = ‘phd’} sigue(sno, id)={x, y | <x,_,_,y> ug <x,_,_,>doctor <x,y>supervisa} profesor(sno, sname, dept)={x, y, z | <x,y>tutor <x,_,_,>supervisor <x,y,z> supervisor} Sg estudiante(id,nombre,grado) sigue(sno,id) profesor(sno,sname,dept#) S1 ug(id,nombre,grado,sno) tutor(sno,sname) S2 doctor(id,nombre,titulo) supervisa(sno,id) supervisor(sno,sname,dept)
Ejemplo LAV LAV: S1 tutor(sno,sname)= {x,y | <x,y,_>profesor <x,z> sigue <z, _, w>estudiante w ‘phd’} ... S2 doctor(id, nombre, titulo)= {x, y, w | <x,y,z>estudiante z=‘phd’ w=null} ... Sg estudiante(id,nombre,grado) sigue(sno,id) profesor(sno,sname,dept#) S1 ug(id,nombre,grado,sno) tutor(sno,sname) S2 doctor(id,nombre,titulo) supervisa(sno,id) supervisor(sno,sname,dept)
Pros y contras • GAV no soporta la evolución de los esquemas locales, pero facilita la reformulación de consultas globales a los esquemas locales. • En LAV los cambios del esquema local solo afectan a las reglas de ese esquema. • Pero, en LAV los cambios del esquema global afectan a todas las reglas de los esquemas locales!!, y la reformulación de consultas no es una tarea sencilla..
Global/Local as View • El esquema global es una ontología consensuada. • Las fuentes de información se encargan de traducir localmente sus datos/consultas según la ontología de referencia. • Los cambios de los esquemas locales deben ser administrados por las componentes. • La ontología de referencia es invariante. • ¿Lenguaje de consulta global?
USUARIOS USUARIOS USUARIOS USUARIOS Esquema Local Esquema Local Esquema Local Esquema Local BDD BDD BDD BDD BBDD Federadas/Warehouses A S USUARIOS H ESQUEMA EXTERNO ESQ. EXP. ESQ. EXP. Diccionario de Datos Esquema Importado ESQ. EXP. ESQ. EXP. ESQUEMA EXTERNO USUARIOS
Arquitectura I3-DARPA Interfaces de usuario A E H Aplicación Cliente Aplicación Cliente Aplicación Cliente Intermediario Intermediario Servicios de Coordinación Mediador Mediador Servicios de Integración dinámico diseñado Servicios de conversión Recubridor Recubridor Recubridor Recubridor .. XML XML RDBMS Fuentes
Fauna del I3-DARPA • Intemediario (Facilitator): son dinámicos. En tiempo de ejecución seleccionan las fuentes y las componentes necesarias para el acceso e integración de los datos. Son útiles para el descubrimiento de nuevos recursos y su incorporación a las aplicaciones. • Mediadores (Mediators): codifican las tareas de consolidación de datos, fusión y análisis. • Descomponen las consultas complejas de las aplicaciones en sub-consultas ajustadas a la semántica y estructura de las fuentes. Planifican estas sub-consultas y las mandan a los recubridores implicados. • Integran los resultados intermedios y, una vez elaborados, los mandan a la aplicación. • Recubridores (Wrappers): transladan las consultas al lenguaje de interrogación de los servidores, y transforman las respuestas en el formato uniforme utilizado en los mediadores.
Otras emergentes: GRID • GRID: distribución transparente de procesos computacionales muy costosos. • Organizaciones Virtuales bien definidas y estrictas. • Middleware muy potente: OGSA (Open Grid Services Arquitecture) • Acceso integrado a datos aún pobre (OGSA-DAI) • Integración semántica aún en fase muy preliminar (GRID semántico) A E H
Otras emergentes: redes P2P • Redes para compartir recursos entre pares. • Operaciones básicas: • Anuncios en la red (broadcast) • Búsqueda de pares afines (o grupos) • Reunión e intercambio par a par • Alta escalabilidad (redes de miles de nodos) • Alta autonomía (cada usuario decide qué desea compartir y con quién) • Alta heterogeneidad semántica!!. • Redes P2P semánticas: • RDF como lenguajes para buscar y anunciar • Grupos semánticos basados en sus metadatos ... A E H
Plataforma ¿qué falta? Posible tamaño: la web de contenidos (útiles) actual !! ¿textos e imágenes? ¿miles de ontologías? ¿organizaciones virtuales dinámicas? ¿seguridad, privacidad, etc.? Semántica Sintáctica Autonomía Escalabilidad Heterogeneidad