Está en la página 1de 42

Master Servicios Web, Seguridad Informática y

Aplicaciones de Comercio Electrónico

Módulo
Web Semántica

Bases de Datos Federadas

Eduardo Mena
Área de Lenguajes y Sistemas Informáticos
Dpto. de Informática e Ingeniería de Sistemas
emena@unizar.es, 976-76 23 40
Despacho D0.17, Edificio Ada Byron
Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico
Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Bases de Datos Federadas

Bases de Datos Distribuidas

Bases de Datos Interoperables

Bases de Datos Federadas

Sistemas de Información Globales

Prácticas: agentes que acceden a BDs y Webs para poblar una


ontología sobre alimentos y comensales

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Bases de Datos Federadas

Objetivo:
 Una BD  varias BDs
 Problemas de heterogeneidad
 Sintáctica
 Semántica
 Conocer las tendencias futuras (I+D)
 Saber aplicar nuestros conocimientos a casos reales

Prácticas: Desarrollo de un prototipo en entornos heterogéneos y


distribuidos

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Bases de datos distribuidas

Tecnología de Bases de Datos (tradicional)


 Centralización de datos
 Varios Ficheros  Una Base de Datos

Redes de Computadores
 Distribución/compartición de recursos
 BD centralizada  BD distribuida (¿varias BDs?)

BD Distribuidas: unión de estas dos aproximaciones


(aparentemente opuestas)
 La tecnología de BD busca la INTEGRACIÓN de los datos y no la
CENTRALIZACIÓN

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Integración vs. Centralización

El número de fuentes de datos accesibles crece

Centralización
 mantener un único depósito de datos donde acceder desde distintos
nodos

Integración
 enlazar virtualmente los distintos depósitos de datos (heterogéneos)
para ofrecer una visión similar a un único depósito centralizado

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Definición de base de datos distribuida

Un sistema de BD distribuidas es una colección de varias BDs que


se encuentran lógicamente inter-relacionadas y distribuidas sobre
una red de ordenadores.

Un sistema de gestión de bases de datos distribuidas (SGBDD) es


el software que permite el manejo de sistemas de BDs distribuidas
y que hace dicha distribución transparente al usuario.

No son Sistemas de BDs Distribuidas:


 Acceder remotamente a una BD que reside en uno de los nodos de
una red

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Transparencia en Entornos Distribuidos

Transparencia de red
 el usuario no debe ser consciente del uso de la red
 transparencia de localización: dónde están los datos, lenguajes “locales”
necesarios
 transparencia de nombres: nombres únicos en todo el sistema distribuido,
independientes de la localización

Transparencia de fragmentación
 el usuario no debe ser consciente de la existencia de varios depósitos de datos

Transparencia de replicación
 el usuario no debe ser consciente de la existencia de varias copias de los datos

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Ventajas de las BDD

La distribución puede ser la organización más natural


Mayor fiabilidad y disponibilidad (puede haber replicación)
Autonomía local (establecer políticas locales de acceso a datos)
Más eficiencia al acceder a los datos locales (frente a una
centralizada)
Economía (mejor varios PCs en red que un mainframe)
Más posibilidades de expansión (añadir más recursos a la red)
Compartición de datos (debido a que se encuentran en red)

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Desventajas de las BDD

Falta de experiencia en el diseño de SBDD


Complejidad
 todos los problemas de las BD centralizadas + otros
Costo (hardware / tiempo acceso)
Distribución del control
 también era ventaja: autonomía
Seguridad
 se añaden los problemas de seguridad en redes
Dificultad de cambio
 Cuando ya existe una BD centralizada

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Factores que influyen en las arquitecturas de BDDs (I)

Distribución

 Una BD es distribuida si esta dividida en distintos componentes


(integrados)

 BDD ≠ varias BDs no integradas

 Los componentes distribuidos que constituyen una BD distribuida son


a su vez bases de datos (BDs componentes o locales)

 Las BDs componentes tendrán un grado de autonomía local


determinado

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Factores que influyen en las arquitecturas de BDDs (II)

Autonomía
Tipo de control que los SGBD tienen sobre cada BD local
 Autonomía de diseño: existe si los administradores de la BD (ABD)
pueden cambiar el esquema conceptual de sus BDs independientemente
de si forman parte de un sistema distribuido o no.

 Autonomía de comunicación: si se puede decidir localmente


cuándo comunicarse con los otros SGBD locales.

 Autonomía de ejecución: si se pueden ejecutar transacciones


globales y locales en el orden en que se quiera.

 Autonomía de participación: si puede decidir cómo participar en el


sistema distribuido.

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Factores que influyen en las arquitecturas de BDDs (III)

Heterogeneidad
 Distinto hardware, SO, software comunicaciones.

 Distinto modelo de datos (rel., jerárquico, red, OO,..)

 Distintos SGBDs (aunque sean del mismo modelo)

 Heterogeneidad semántica (aun con el mismo SGBD)


 sinonimia: elementos iguales con distintos nombres
 homonimia: elementos distintos con igual nombre
 otras relaciones semánticas (hiperonimia, hiponimia, agregación, etc,…)
 el mismo elemento del mundo real puede ser representado como entidad
o atributo, atributos con tipos diferentes, etc.
 Puede existir tanto a nivel intensional como extensional

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Factores que influyen en las arquitecturas de BDDs (y IV)

Existencia o no de esquema global


 Si se proporciona un esquema global entonces es como si se
trabajara con una única base de datos. Las preguntas se realizan
sobre dicho esquema global:
SELECT *

 FROM VUELOREAL, BILLETES

 WHERE VUELOREAL.ID=BILLETES.ID

 En el esquema global se sabrá que VUELOREAL está en BD1 y BILLETES


en BD2 pero es transparente al usuario (desarrollador de aplicaciones)
 Si no, se necesita un lenguaje de acceso a distintas BDs.
 SELECT *
 FROM BD1@VUELOREAL, BD2@BILLETES
 WHERE VUELOREAL.ID=BILLETES.ID

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Arquitecturas de BD distribuidas

Sistemas de BDs Distribuidas (SBDD)


 Formados por BDs no autónomas.
 Proporcionan un esquema global.
 El esquema global se obtiene de arriba a abajo: primero se define el esquema
conceptual global y luego se fragmenta en varias BDs.
Sistemas de BDs Interoperantes (SBDI)
 Formados por BDs autónomas.
 No proporcionan esquema global sino lenguajes de acceso a BDs.
 El usuario es consciente de que trabaja con varias BDs.
Sistemas de BDs Federadas (SBDF)
 Formados por BDs autónomas.
 Proporcionan un esquema global.
 El esquema global se obtiene de abajo a arriba: los esquemas locales son pre-
existentes y se integran en un esquema global. No se decide fragmentar: la
redundancia probablemente ya existe.

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Diseño de BDs Distribuidas

Es necesario un sistema de gestión de BD Distribuidas que realice


lo siguiente:
 procesamiento de preguntas
 mantenimiento de la consistencia si hay replicación de datos
 control de transacciones
 etc...

En algunos casos (determinados SBDD, SBDI) se podrá comprar,


pero no siempre (SBDF)

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Diseño top-down de BDD
Esquema Global Información de Acceso
(transacciones)

FRAGMENTACIÓN

Esquema Global Fragmentado

ASIGNACIÓN

Esquema Local 1 Esquema Local N

DISEÑO FÍSICO DISEÑO FÍSICO

Esquema Físico 1 Esquema Físico N

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Fragmentación (I)

El problema de obtener los esquemas locales a partir del global se


divide en dos:
 Fragmentación: dividir el esquema global en fragmentos.
 Asignación: distribuir los fragmentos entre los esquemas locales.

El fragmento es la unidad a distribuir


 puede ser parte de un tabla o un cjto. de ellas.
 ventaja: incrementa el nivel de concurrencia de transacciones.
 desventaja: algunas transacciones se degradarán si tienen que trabajar
con varios fragmentos.

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Fragmentación (II)

Fragmentación horizontal: basada en encontrar condiciones de


selección

Fragmentación vertical: basada en encontrar conjuntos de atributos a


proyectar

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Fragmentación híbrida (y III)

Primero horizontal...

... y luego vertical a cada fragmento

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Corrección de la fragmentación

Completitud
 Todo elemento de la relación debe estar en alguno de los fragmentos.

Reconstrucción
 La relación inicial debe poder reconstruirse aplicando operadores
sobre los fragmentos

Intersección vacía (disjointness)


 Intersección de los fragmentos debe ser vacía
• Nota: a excepción de las claves (para poder reconstruir la relación
inicial a partir de los fragmentos)

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Asignación (I)

Asignar fragmentos a los esquemas locales

 Sin replicación: todo fragmento reside en un único nodo


 bueno para actualizaciones, malo para preguntas

 Con replicación total: todos los fragmentos residen en todos los


nodos
 bueno para preguntas, malo para actualizaciones

 Con replicación parcial: algunos fragmentos pueden residir en más de


un nodo
 compromiso entre actualizaciones y preguntas

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Asignación (y II)

REPLICACIÓN REPLICACIÓN SIN


COMPLETA PARCIAL REPLICACIÓN

PROCESAMIENTO
Más fácil Más difícil Más difícil
DE PREGUNTAS

CONTROL DE
Difícil Más difícil Más fácil
CONCURRENCIA

DISPONIBILIDAD Muy alta Alta Baja


DE LOS DATOS

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Formulación del problema de la asignación

Dados N fragmentos y M nodos, encontrar la matriz X


 (Xij = true)  el fragmento i se aloja en el nodo j tal que minimiza

el costo total
 suma de los costos de procesamiento de todas las preguntas,
actualizaciones (multiplicando cada costo por el nº de veces que se
pregunta / actualiza) y costos de almacenar todos los fragmentos
 sujeto a las siguientes restricciones:
 tiempo de respuesta máximo para cada pregunta
 existe un almacenamiento máximo en cada nodo
 no superar la carga de procesamiento en cada nodo

El problema es NP-completo. Pero se pueden usar heurísticos:


problema de la mochila, técnicas de ramificar y acotar, algoritmos
genéticos, etc...

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Bases de Datos Federadas

Integración de distintas bases de datos autónomas, distribuidas y


heterogéneas
Generación de un esquema global
 Fase de traducción e integración
 Generación de información de enlace (GAV vs. LAV)
Procesamiento de preguntas formuladas sobre el esquema global
Principal objetivo
 Ocultar la heterogeneidad al usuario

Ventajas
 Técnicas válidas para integración de otras organizaciones de datos
(no sólo BDs)

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Bases de Datos Federadas: Diseño bottom-up (5 niveles)

Vista 1 . . . . . Vista m

Esquema integrado (ont. integrada)


Integración
Esq. Export. canónico 1 (ont1) Esq. Export. canónico n (ont2)
Traducción
Esq. Exportado 1 Esq. Exportado n
Esquema BD 1 Esquema BD n
. . . . .

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Obtención del Esquema Global (I)

El problema de obtener un esquema global a partir de N


esquemas locales se divide en dos:

 Traducción: cada esquema local se traduce a un modelo canónico

 Integración: los esquemas locales se integran en uno solo

Este es un tema de investigación. Todavía no resuelto por


productos comerciales

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Modelo canónico

El modelo de datos (canónico) utilizado para expresar el esquema


global es muy importante.

– No hay que olvidar que las bases de datos locales pueden ser
heterogéneas (distintos modelos de datos)

– Se utilizan modelos más ricos semánticamente que el relacional: OO,


modelos funcionales, semánticos, etc...

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Obtención del Esquema Global (y II)

Supongamos que los esquemas locales son relacionales y se usa como


modelo canónico el modelo semántico Entidad-Relación Extendido de
Chen

Traducción
 A partir de tablas y atributos relacionales (esquema exportado) se
identifican entidades, relaciones y atributos (enriquecimiento
semántico)
 Pueden aparecer nuevas entidades
(especializaciones/generalizaciones, etc.)

Integración
 Aplicación de las propiedades semánticas entre las entidades y
relaciones de distintos esquemas locales canónicos (sinonimia, unión,
generalización/especialización, etc.)
Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico
Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Uso del esquema global

Procesamiento de preguntas
 Las preguntas realizadas sobre el esquema global deben responderse
sobre los esquemas locales

Información de enlace
 Relación entre los elementos de datos del esquema global y los
elementos de datos de los esquemas locales

 Necesaria para poder responder a las preguntas

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
LAV vs. GAV

GAV (Global As View)


 Enlaces desde el esquema global a los esquemas locales
 Fácil reescritura de preguntas
 Sensible a incorporación/eliminación de depósitos de datos

LAV (Local As View)


 Cada depósito de datos tiene su descripción
 Fácil incorporación de nuevos depósitos
 Procesamiento de preguntas complicado

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Ejercicio Práctico: Un ejemplo de BDF

Diseñar dos bases de datos


 Sobre el mismo contexto: alimentos, recetas, tipos de comensales
 Añadir cierto grado de heterogeneidad (sintáctica, semántica)
Traducción
 Elegir un modelo de datos canónico
 Traducir cada esquema al modelo canónico (ontologías componentes)
 Crear la información de enlace para cada término
Integración
 Definir las reglas de integración (relaciones semánticas)
 Obtener el esquema global
 Crear la información de enlace del esquema global
Simular el plan correspondiente a algunas consultas sobre el
esquema global

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Sistemas de Información Globales

Muchos depósitos de datos (miles, millones)


Gran heterogeneidad a todos los niveles
Altamente dinámico y cambiante
Un ejemplo: La Web

Adaptación de las técnicas conocidas a dicho contexto


Aún es objeto de investigación

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Problema

Semántica,
formatos,
etc.
Telnet C C++ Java
Oracle Sybase
IP WWW FTP Formularios
Informix
Archie Interfaces ad hoc

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Objetivo
Formatos
Semántica

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Aproximaciones: clasificación
Sistemas de
Acceso a
Información

Basados en Basados en
palabras clave Agentes
Altavista, TSIMMIS,
Yahoo! DISCO
Basados en
Ontologías

Una Ontología Varias


Global Ontologías
Carnot, SIMS,
Information Manifold InfoSleuth,
Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico
Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
OBSERVER
Aproximaciones relevantes

SIMS (Univ. de California del Sur, 1992)

TSIMMIS (Univ. de Stanford & IBM, 1993)

Information Manifold (AT&T Bell Lab., 1994)

OBSERVER (Univ. Pais Vasco & UGA, 1995)

InfoSleuth (MCC, 1996)

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Un Ejemplo: Arquitectura de OBSERVER

Relaciones
Interontología

Ontology Query Processor

IRM
Based
System
Enhanced with Ontology Server
Ontology Server

Relationships for Ontology Server

Vocabulary Enlaces
Enlaces
hEterogeneity Enlaces Enlaces

Resolution
Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico
Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Procesamiento de Preguntas (Query Processor)

Construcción
Seleccionar
Comienzo Ontología Usuario de la pregunta

Editar pregunta
Expansión incremental
a otra ontología
Elegir plan con
Acceso a menor pérdida
Acceder datos
los datos subyacentes Generar Planes
Correlacionar y
mostrar respuesta Integrar nueva ont.
y ont. usuario

Seleccionar
No Si ontología destino
Final Más datos?
Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico
Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Multiples ontologías: Transformaciones de la pregunta

Query Processor
Pregunta del usuario expresada en Respuesta expresada según la
términos de la Ontología Usuario semántica de la Ontología Usuario
Rel. del IRM Correlación
F. Trans. Inv. del IRM F. Trans. del IRM
Pregunta expresada en términos Respuesta expresada según la
de la Ontología Destino semántica de la Ontología Destino
Traducción a Enlaces Correlación
F. Trans. Inv. de enlaces F. Trans. de enlaces
Respuesta expresada según la
Pregunta expresada en Enlaces
semántica de los depósitos

Acceso a los datos


Ontology
Master Server
Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico
subyacentes
Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Problemas de los sistemas de los 90’s

Integración estática de fuentes de datos


 La traducción e integración se hace “a mano” por humanos y cuesta
bastante tiempo

Generación no automática de la información de enlace


 Hay que definir a mano el camino hacia los datos

Generación no automática de las relaciones interontología


 Hay que definir a mano las propiedades semánticas entre ontologías

Imposibles de aplicar a contextos altamente dinámicos (como la


Web)

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Web Semántica

Problemas con la Web actual


 HTML
 Orientado a humanos
 Búsquedas sintácticas (palabras clave)

Objetivos
 Separar contenido de visualización
 Orientado a humanos y a programas (servicios)
 Búsquedas semánticas (expresar qué se está buscando)

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)
Web Semántica
Definición
 Proyecto W3C desde aprox. 1999
 Nueva filosofía
 Red de ordenadores  Espacio compartido
 Documentos autodescritos
 Procesable por máquinas (ni lenguaje natural, ni GUIs)
 Enlaces indirectos (independencia de la localización)

Claves
 Ontologías
 Servicios Web

Master Servicios Web, Seguridad Informática y Aplicaciones de Comercio Electrónico


Departamento de Informática e Ingeniería de Sistemas (Universidad de Zaragoza)