1 / 42

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

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

katy
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. 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

  3. 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

  4. 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

  5. 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

  6. 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

  7. 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

  8. 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)

  9. 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

  10. 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

  11. 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.

  12. 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

  13. 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

  14. 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 sefragmentaen 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.

  15. 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)

  16. Información de Acceso (transacciones) Esquema Global FRAGMENTACIÓN Esquema Global Fragmentado ASIGNACIÓN Esquema Local N Esquema Local 1 DISEÑO FÍSICO DISEÑO FÍSICO Esquema Físico 1 Esquema Físico N Diseño top-down de BDD

  17. 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.

  18. Fragmentación (II) • Fragmentación horizontal: basada en encontrar condiciones de selección • Fragmentación vertical: basada en encontrar conjuntos de atributos a proyectar

  19. Fragmentación híbrida (y III) • Primero horizontal... • ... y luego vertical a cada fragmento

  20. 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)

  21. 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

  22. REPLICACIÓN COMPLETA REPLICACIÓN PARCIAL SIN REPLICACIÓN PROCESAMIENTO DE PREGUNTAS Más fácil Más difícil Más difícil CONTROL DE CONCURRENCIA Más difícil Más fácil Difícil DISPONIBILIDAD DE LOS DATOS Muy alta Alta Baja Asignación (y II)

  23. 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... 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 queminimiza 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

  24. 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)

  25. 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 . . . . .

  26. 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

  27. 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...

  28. 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.)

  29. 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

  30. 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

  31. 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

  32. 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

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

  34. Objetivo Formatos Datos Semántica

  35. Aproximaciones: clasificación Basados en palabras clave Basados en Agentes TSIMMIS, DISCO Altavista, Yahoo! Basados en Ontologías Una Ontología Global Varias Ontologías SIMS, InfoSleuth, OBSERVER Carnot, Information Manifold Sistemas de Acceso a Información

  36. 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)

  37. Un Ejemplo: Arquitectura de OBSERVER Relaciones Interontología Query Processor IRM OntologyServer OntologyServer OntologyServer Enlaces Enlaces Enlaces Enlaces Ontology Based System Enhanced with Relationships for Vocabulary hEterogeneity Resolution

  38. Construcción de la pregunta Comienzo Seleccionar Ontología Usuario Editar pregunta Expansión incremental a otra ontología Elegir plan con menor pérdida Acceso a los datos Acceder datos subyacentes Generar Planes Correlacionar y mostrar respuesta Integrar nueva ont. y ont. usuario Seleccionar ontología destino No Si Final Más datos? Procesamiento de Preguntas (Query Processor)

  39. Multiples ontologías: Transformaciones de la pregunta Query Processor OntologyServer Pregunta del usuario expresada en términos de la Ontología Usuario Respuesta expresada según la semántica de la Ontología Usuario Rel. del IRM F. Trans. Inv. del IRM Correlación F. Trans. del IRM Pregunta expresada en términos de la Ontología Destino Respuesta expresada según la semántica de la Ontología Destino Traducción a Enlaces F. Trans. Inv. de enlaces Correlación F. Trans. de enlaces Respuesta expresada según la semántica de los depósitos Pregunta expresada en Enlaces Acceso a los datos subyacentes

  40. 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)

  41. 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)

  42. 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

More Related