Title: INTEGRACI
1INTEGRACIÓN DE SISTEMAS DE INFORMACIÓN
Curso Doctorado Sistemas Informáticos
Avanzados 2004/2005
2Motivació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
3Ejemplos
- 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.
4Motivació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
5Motivació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
6Capas 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
7Organizaciones Virtuales
ORGANIZACIÓN VIRTUAL
Workflow
Unidades Organizativas
Perfiles usuarios, grupos
8Capas 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
9Integración/Coordinación
Dimensiones de estudio en sistemas integrados
Autonomía
Escalabilidad
Heterogeneidad
10Integración/Coordinación
Semántica
Autonomía
Escalabilidad
Heterogeneidad
11Integración/Coordinación
MIDDELWARE
Semántica
Autonomía
Escalabilidad
Heterogeneidad
12Integración/Coordinación
Semántica
Autonomía
Escalabilidad
Heterogeneidad
13Información, Modelos de Datos
Información
XML
SGML HTML
OEM
tablas
objetos
GIF MP3 WAV
ASCII
14Poder expresivo de formatos
SGML
XML
HTML
objetos
texto
tablas
RECUBRIMIENTOS
15Conversiones
tuplas
SGML
DTD o Esquema
Esquema
Esquema
objetos
XML
DTD o Esquema
XHTML
HTML
texto
16Ejemplos
ltlibrogt ltisbngt1231lt/isbngt
lttitulogtTesislt/titulogt ltcapitulosgt
lttitulogtt1lt/titulogt lttitulogtt2lt/titulogt
lt/capitulosgt lt/librogt
XML
(isbn1231, tituloTesis)
Tupla
(libro1,isbn1231, titulo Tesis,
capítulos ( (cap3, titulot1), (cap4,
titulot2)))
lthtmlgtltbodygt lth1gtLibrolt/h1gt ltbgt isbn
1231lt/bgt ltbgttitulo Tesislt/bgt
ltbgtcapitulosltulgt ltligtTitulo t1lt/igt
ltligtTitulo t2lt/igtlt/bgtlt/ulgt lt/bodygtlt/htmlgt
Objeto
HTML
17Integració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.
18Integración/Coordinación
Semántica
Autonomía
Escalabilidad
Heterogeneidad
19Integració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)
20Qué es una ontología?
- Una especificación de una conceptualización
(Gruber93) - 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
21Por 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
22Ontologías y Metadatos
23Metadatos
O. Descriptivas
O. Expresivas
Taxonomías
Términos
Tesaurus
Frames
UML
Axiomas lógicos
Axiomas estructurales
Yahoo! Diccionario
Dublin Core
Protégé RDF(S)
OWL Full
OWL DL
WordNet
OWL Lite
Ontologías pesadas
Ontologías Ligeras
24Ejemplo de ontología
Artist
Artifact
Museum
String
Sculpture
Sculptor
Painting
Painter
Cubist
Flemish
25Manejo 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!!)
26Schema 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)
27Schema 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
28Integración/Coordinación
Global-as-view
Global/Local-as-view
Autonomía
Local-as-view
Escalabilidad
Heterogeneidad
29Autonomí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
30Autonomí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.
31Ejemplo GAV
GAV estudiante(id, nombre, grado) x,y,z
ltx,y,z,_gt?ug ? ltx,_,_,gt?doctor ? ltx, y, zgt?doctor
? z phd sigue(sno, id)x, y ltx,_,_,ygt
?ug ? ltx,_,_,gt?doctor ? ltx,ygt?supervisa profesor
(sno, sname, dept)x, y, z ltx,ygt?tutor ?
ltx,_,_,gt?supervisor ? ltx,y,zgt ? supervisor
estudiante(id,nombre,grado) sigue(sno,id) profesor
(sno,sname,dept)
Sg
ug(id,nombre,grado,sno) tutor(sno,sname)
S1
doctor(id,nombre,titulo) supervisa(sno,id) supervi
sor(sno,sname,dept)
S2
32Ejemplo LAV
LAV S1 tutor(sno,sname) x,y ltx,y,_gt?profesor
? ltx,zgt ?sigue ? ltz, _, wgt?estudiante ? w ?
phd ... S2 doctor(id, nombre, titulo) x, y,
w ltx,y,zgt?estudiante ? zphd ? wnull ...
estudiante(id,nombre,grado) sigue(sno,id) profesor
(sno,sname,dept)
Sg
ug(id,nombre,grado,sno) tutor(sno,sname)
S1
doctor(id,nombre,titulo) supervisa(sno,id) supervi
sor(sno,sname,dept)
S2
33Pros 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..
34Global/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?
35Aproximaciones de SS.II integrados
36BBDD Federadas/Warehouses
A
S
USUARIOS
H
ESQUEMA EXTERNO
ESQ. EXP.
ESQ. EXP.
Diccionario de Datos Esquema Importado
ESQ. EXP.
ESQ. EXP.
ESQUEMA EXTERNO
USUARIOS
37Arquitectura 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
38Fauna 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.
39Otras 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
40Otras 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
41qué falta?
Posible tamaño la web de contenidos (útiles)
actual !!
textos e imágenes? miles de ontologías? organiz
aciones virtuales dinámicas? seguridad,
privacidad, etc.?
Semántica
Sintáctica
Autonomía
Escalabilidad
Heterogeneidad