Sie sind auf Seite 1von 22

Resumen

SMF
ndice de contenido
Unidad 1...............................................................................................................................................3
Interconexin, Integracin e Interoperacin....................................................................................3
Ejemplo Hospital.............................................................................................................................3
Interoperar........................................................................................................................................5
Semntica.........................................................................................................................................5
Distribucin.....................................................................................................................................5
Autonoma.......................................................................................................................................5
Heterogeneidad................................................................................................................................6
Unidad 2...............................................................................................................................................7
Bases de Datos Distribuidas............................................................................................................7
Esquema Global para Mltiples Sistemas de Bases de Datos.........................................................7
Lenguajes para Mltiples Bases de Datos.......................................................................................8
Bases de Datos Federadas................................................................................................................8
Clasificacin de Sistemas Federados...............................................................................................9
Arquitectura de Sistemas Federados..............................................................................................10
Sistemas Basados en Wrappers y Mediadores...............................................................................10
Comparacin con sistemas federados............................................................................................11
Arquitectura de Sistemas Interoperables.......................................................................................11
Comparacin de Arquitectura de Sistemas Heterogneos, Autnomos y Distribuidos.................12
Unidad 3.............................................................................................................................................13
Modelos de Datos..........................................................................................................................13
Niveles de Abstraccin..................................................................................................................13
Relaciones entre Modelos, Esquemas y Datos..............................................................................13
XML...............................................................................................................................................14
Comparacin entre esquemas: Capacidad de Informacin............................................................14
Funciones en la comparacin de capacidad de informacin entre esquemas................................14
Objetivos Operacionales................................................................................................................15
Transformacin de esquemas.........................................................................................................17
Unidad 4.............................................................................................................................................19
Procesos para la Integracin..........................................................................................................19
Unidad 1
Interconexin, Integracin e Interoperacin
Interconexin: refiere a poder conectar a nivel de hardware distintos sistemas entre s. El
objetivo de una interconexin es intercambiar informacin y para que la interconexin sea exitosa
es suficiente con disponer al menos de un protocolo comn de comunicacin.
Integracin: refiere no slo a intercambiar informacin sino tambin a unificar la informacin
que se encuentre replicada, resolviendo posibles conflictos de heterogeneidad entre las diferentes
fuentes de origen de la informacin.
Interoperacin: refiere no slo a integrar informacin sino tambin a integrar funcionalidades.
Hablamos entonces en forma general de sistemas interoperables cuando nos referimos a sistemas
que cooperan intercambiando datos y sincronizando las ejecuciones de sus aplicaciones.
Segn [SSU91] distintos sistemas de informacin son interoperables cuando poseen la habilidad
de requerir y recibir servicios y operan como un nico sistema en la resolucin de un problema
comn.
Las caractersticas principales de los sistemas interoperables son:
Existe distribucin en un ambiente de Cliente/Servidor
Existe comunicacin a pesar de heterogeneidad
Cada uno de los sistema usa las facilidades del otro
De esta breve reflexin se observa que para poder lograr interoperacin de sistemas, es necesario
tener a los sistemas de alguna forma interconectados y de alguna forma integrados.
En este curso no nos dedicaremos al nivel de interconexin sino que comenzaremos estudiando
como lograr integracin para analizar luego los problemas de lograr interoperacin. Realizaremos
nuestro estudio sobre los Sistemas Gerenciadores de Bases de Datos (SGBD o DBMS de sus siglas
en ingls) y trataremos de comparar y generalizar los resultados hacia Sistemas de Informacin en
general.
Un Sistema de Informacin es un conjunto integrado de componentes para la recogida,
almacenamiento, procesamiento y comunicacin de informacin. Dicho de otro modo son sistemas
que proveen acceso a informacin, basados en la administracin de datos que realiza el sistema.
Actualmente existe (y contina creciendo) un enorme volumen de sistemas de informacin
disponibles a travs de la Web. Acompaando el crecimiento de este volumen de informacin,
aumenta tambin la necesidad de resolver consultas cada vez ms complejas, lo que posibilita que
actualmente sea comn resolver una consulta integrando conocimientos provenientes desde varias
fuentes.
El objetivo de la interoperacin es el de incrementar el valor de la informacin cuando mltiples
sistemas de informacin (Sistemas Participantes) son capaces de trabajar en forma cooperativa
combinando sus datos y funcionalidades conformando un Sistema Interoperable. Se requiere sin
embargo de un proceso complejo de cooperacin entre los servicios prestados por cada fuente y de
mecanismos de correspondencias de esos datos para resolver estas consultas.
Es el objetivo de este curso estudiar la problemtica y las soluciones para lograr
interoperabilidad.
Ejemplo Hospital
En un hospital de Interpolis existen los siguientes tres grupos de sistemas utilizados
independientemente en diferentes reas del hospital:
Sistemas de Gestin Administrativa
Sistemas de Informacin Mdica
Sistemas Econmicos/Financieros
Dentro de los Sistemas Administrativos se encuentran la administracin del personal y de
recursos materiales. Tambin se encuentran los datos personales de los pacientes. Estos sistemas
fueron desarrollados hace tiempo en base a programas Cobol y archivos planos para sus datos.
Funcionan en un mainframe. Para estos sistemas resultara de inters tener informacin sobre la
eficacia de los medicamentos.
Los Sistemas de Informacin Mdica se orientan a manejar la informacin sobre actos mdicos,
anlisis y datos de pacientes. Estos sistemas estn desarrollados en plataforma Windows y trabajan
con un manejador de bases de datos relacional en plataforma Unix. La informacin es de diferentes
tipos (textos, imgenes, video), para lo cual se aplican tcnicas de gestin de bases de datos
multimedia. Independientemente, se extrae informacin de la Web, de otras instituciones
hospitalarias del mundo, sobre enfermedades, sntomas y medicamentos. Esta informacin queda
almacenada en documentos XML.
Los Sistemas Econmicos/Financieros trabajan sobre bases de datos relacionales. En estos
sistemas se analizan datos para el estudio de montos segn diferentes cortes de la informacin (por
dependencia, por rubro, por fecha, etc.). Para esto se aplican tcnicas de bases de datos
multidimensionales y herramientas de On Line Analitical Processing (OLAP) que trabajan sobre
la base de datos relacional.
En los tres sistemas se mantienen datos de los pacientes. En los Administrativos se llevan los
datos personales, como direccin, telfono, edad. En los de Informacin Mdica se centran ms en
lo relativo a la historia clnica del paciente, esto incluye algunos de los datos personales tambin,
como por ejemplo edad. En los Sistemas Econmicos se tiene informacin sobre los pagos de los
pacientes.
Algo similar a lo que ocurre con los pacientes ocurre con otros conceptos, como los empleados y
los medicamentos, que tambin existen en ms de uno de los sistemas.
Estos conceptos que se repiten a travs de los distintos sistemas, son representados en stos de
distintas formas. Por ejemplo, en los Sistemas de Informacin Mdica los pacientes se representan
divididos en dos categoras: pacientes que sufren enfermedad crnica y pacientes que no la
sufren. En el caso de los pacientes que sufren enfermedad crnica se guarda informacin adicional.
Mientras que en los Sistemas Econmicos se clasifican los pacientes en nios, adultos y adultos
mayores, existiendo distintos tipos de beneficios econmicos en las distintas categoras y
estudiando los costos del hospital por categoras de pacientes.
Tambin puede ocurrir muchas veces que los valores de los mismos conceptos no son
consistentes, sera el caso del paciente Ricardo Lpez que aparece en los Sistemas de Informacin
Mdica con fecha de nacimiento "22/6/89" y en el Sistema Econmico aparece dentro de la
categora "adulto mayor". (O el caso de la especialidad de la empleada Agustina Prez que aparece
en los Sistemas Administrativos como "traductora" mientras que su profesin en los Sistemas de
Informacin Mdica aparece como "bailarina").
La directiva del hospital est sintiendo la necesidad de tener un Sistema Gerencial que le facilite
la limpieza de datos para evitar inconsistencias como las anteriormente citadas, que facilite la
definicin de metas, objetivos, factores crticos de xito, y la toma de decisiones. Para la
construccin de estos sistemas se debe extraer y sintetizar, desde las bases de datos de los sistemas
anteriormente descriptos, la informacin relevante para la toma de decisiones. Asimismo se deben
ofrecer mecanismos para facilitar el anlisis de la misma por parte de los usuarios gerenciales.
Interoperar
Qu es necesario para que dos sistemas puedan interoperar?
Dos sistemas pueden interoperar si en primer lugar, existe alguna relacin semntica entre ellos,
es decir que algunos de los datos que ellos manejan sean correspondientes entre s a nivel
semntico. Una buena razn para decir que dos Sistemas Gerenciadores de Bases de Datos
necesiten ser interoperables es que sus respectivas aplicaciones necesitan interactuar en algn nivel
semntico.
Semntica
Este trmino refiere al concepto significado. La semntica de los datos, segn Wood (1985), es
el significado y uso de los datos. Esta definicin nos resulta incompleta y poco precisa, pues
podramos preguntarnos a su vez qu es el significado y el uso de los datos, y podramos discutir un
buen tiempo para ponernos de acuerdo.
En una definicin un poco ms reciente (1995) la semntica de los datos es para Sheth el mapeo
entre el objeto modelado, representado y/o almacenado en un sistema de informacin y el objeto
del mundo real que l representa. Segn esta definicin la semntica de los datos se interpreta
como la conexin entre la base de datos y el mundo real fuera de la base de datos. Desde una
perspectiva intuitiva, es la correspondencia que podemos establecer entre el objeto del Mundo Real
y la representacin que de l estamos usando en la base de datos.
Hablar entonces de dos sistemas que interactan en algn nivel semntico es hablar de dos
sistemas donde parte de la realidad que representan es la misma.
Distribucin
Los datos distribuidos son un conjunto de datos, lgicamente relacionados y residentes en varias
computadoras conectadas por una red de comunicacin. La red de comunicacin permite tener
acceso centralizado, en el sentido de acceso lgico nico.
No trataremos en este curso la distribucin como un problema separado y asumiremos que los
sistemas de informacin se encuentran distribuidos entre componentes que no comparten ni
memoria ni disco. La existencia de aplicaciones globales sobre datos distribuidos seala la
presencia de bases de datos distribuidas.
Autonoma
Este trmino refiere a la capacidad de ser independiente. Los sistemas de informacin pueden
cooperar entre s teniendo autonoma. Para hablar de autonoma vamos a distinguir entre distintos
tipos (extrado de [ERS99]):
Autonoma de Diseo: hace referencia a la libertad en la eleccin del sistema de su
propio: Modelo de Datos, Lenguaje de consulta, Implementacin, Restricciones,
Gerenciamiento de datos a ser usado y Funcionalidades soportadas.
Autonoma de Comunicacin: refiere a la capacidad de los componentes de decidir
cundo y cmo responder a requisitos de otros componentes.
Autonoma de Ejecucin: refiere a la libertad que tiene cada componente de ejecutar sus
propias operaciones sin interferir en la ejecucin de operaciones no locales.
Autonoma de Participacin: refiere a la capacidad de los componentes de decidir cunto
de sus funciones, operaciones y datos compartir. Tambin incluye la posibilidad de decidir
entrar o salir de la cooperacin cuando lo deseen.
Para preservar la autonoma de diseo y la de participacin el sistema global no debe imponer
ninguna restriccin sobre los sistemas de bases de datos locales ni tampoco requerir ninguna
modificacin sobre ellos.
Para preservar la autonoma de comunicacin y la de ejecucin el sistema global no debe ejercer
ningn control sobre las ejecuciones de transacciones locales (a excepcin del envo de
subtransacciones).
La preservacin de la autonoma de ejecucin debe asegurar que las operaciones locales
(comandos o transacciones enviadas directamente por un usuario local del sistema manejador de
bases de datos) son ejecutadas sin interferencia de las operaciones externas (operaciones enviadas
por otro componente o por el sistema global) mientras que es el propio participante quien decide el
orden en el cual ejecuta las operaciones externas.
Por lo tanto, un sistema externo no puede forzar un orden de ejecucin de los comandos sobre un
sistema gerenciador de bases de datos con autonoma de ejecucin. Tampoco necesita el sistema
participante informar al sistema global el orden en el cual las operaciones del sistema global son por
l ejecutadas. Operacionalmente, un sistema participante ejercita su autonoma de ejecucin
tratando las operaciones externas en la misma forma que operaciones locales.
Este ltimo aspecto de autonoma puede, sin embargo, ser relajado haciendo que el componente
informe al sistema global del orden de ejecucin de la transaccin (o grafo de espera de la
transaccin) para permitir una administracin ms simple y ms eficiente de las transacciones
globales.
Segn [BE+96] los distintos tipos de autonoma tambin se pueden agrupar de acuerdo a
aspectos estticos o dinmicos.
El grado de autonoma de diseo y de participacin son determinados por aspectos estticos, que
son las situaciones o caractersticas que influyen sobre el sistema participante, que no cambian.
Estas autonomas son fijadas antes (autonoma de diseo) o en el momento (autonoma de
participacin) de la integracin con otros sistemas. En contraste, la autonoma de comunicacin y
de ejecucin dependen de aspectos dinmicos, caractersticas o situaciones que pueden cambiar
constantemente, pudiendo los sistemas participantes tomar decisiones sobre su autonoma durante el
proceso de integracin.
Heterogeneidad
Un sistema de informacin es homogneo si el software que crea y manipula los datos es el
mismo, si la representacin de los datos sigue el mismo modelo, y es parte del mismo universo de
discurso. Si un sistema no cumple alguno de estos requerimientos se habla de un sistema
heterogneo.
Presentamos una clasificacin de heterogeneidades basada en la clasificacin de [KS96].
Agrupamos las heterogeneidades en cuatro clases:
1. Heterogeneidad de sistemas: corresponde al uso de diferentes plataformas de hardware y
software, el uso de diferentes sistemas operativos, as como tambin diferentes protocolos
de comunicacin.
2. Heterogeneidad sintctica: corresponde al uso de diferentes modelos de datos
(relacionales, jerrquicos, orientados a objetos, etc.). Tambin se habla de heterogeneidad
sintctica o descriptiva refirindose a los nombres de los elementos con los cuales se
representa la realidad, por ejemplo la existencia de sinnimos u homnimos.
3. Heterogeneidad semntica: corresponde a diferencias en el significado, interpretacin, o
el uso deseado para los mismos datos o para datos relacionados.
4. Heterogeneidad estructural: corresponde a diferentes representaciones para la misma
realidad.
Unidad 2
Bases de Datos Distribuidas
Una base de datos distribuida consiste en un conjunto de datos lgicamente relacionados
residentes en varias computadoras conectadas por una red de comunicacin entre las que existe una
aplicacin global.
Cada sitio de la red tiene procesos autnomos y puede ejecutar aplicaciones locales. Tambin
participa en la ejecucin de por lo menos una aplicacin global, la que requiere acceder a los datos
de otros sitios usando un subsistema de comunicacin. Esta definicin enfatiza los siguientes
aspectos importantes en un Sistema de Bases de Datos Distribuidas:
distribucin: el hecho de que los datos no estn residentes en el mismo sitio.
lgicamente relacionados: el hecho de que los datos tienen ciertas propiedades que los
vinculan.
la existencia de un nico gerenciador de bases de datos el cual se encuentra distribuido
entre los diferentes sitios.
Los problemas ms importantes a resolver desde el punto de vista del diseo son la definicin de
los fragmentos de datos y su ubicacin. La definicin debe asegurar:
+ una adecuada concurrencia. Las transacciones pueden ser divididas en varias subconsultas
que operan sobre los fragmentos paralelamente.
+ una adecuada seguridad. Al separar los fragmentos se puede prohibir el acceso a
fragmentos a usuarios no autorizados.
La ubicacin de los fragmentos debe intentar minimizar los costos de comunicacin, ubicndolos
cerca de los lugares donde son ms usados. Empleando redundancia controlada se puede disminuir
la carga en las comunicaciones en la red haciendo rplicas de los fragmentos localmente. Por otro
lado, la necesidad de que todas las rplicas sean exactamente iguales en cada sitio dificulta el
mantenimiento del sistema cuando las actualizaciones de estos fragmentos es una tarea muy
frecuente.
Notar que estos problemas no corresponden con los problemas relativos a bases de datos
heterogneas y autnomas, ya que en estas ltimas la ubicacin de los datos se encuentra
predeterminada a priori.
Esquema Global para Mltiples Sistemas de Bases de Datos
Por esquema global entendemos la integracin completa de varias bases de datos heterogneas
para proveer una vista nica.
Su principal ventaja es que los usuarios tienen una nica vista consistente y un acceso uniforme a
los datos.
La construccin de un esquema global posee serias desventajas:
las heterogeneidades se resuelven en forma manual por un super usuario capaz de tener
el conocimiento de cada una de las bases de datos participantes. Esto hace al sistema muy
factible de errores y muy costoso en horas-hombre dedicadas.
debido a la dependencia de la comprensin del usuario, y de la semntica en el contexto de
cada sistema participante, resulta muy difcil probar la correctitud del esquema global. Es
decir, probar si representa completamente a toda la informacin de todos los esquemas
participantes.
los sistemas participantes deben sacrificar su autonoma, especialmente la autonoma de
participacin, pues para lograr una visin lgica de una nica base de datos el esquema
global debe disponer de toda la informacin de los participantes a priori.
no es evolutivo, ya que ante cambios en las bases de datos participantes todo el proceso de
construccin del esquema global debe ser realizado nuevamente.
Lenguajes para Mltiples Bases de Datos
Proveen construcciones que permiten realizar consultas sobre ms de una base de datos al mismo
tiempo.
Estos lenguajes tienen caractersticas
que no poseen los lenguajes
tradicionales de consulta, por ejemplo,
un nombre global puede ser usado para
identificar a un conjunto de bases de
datos, y las consultas pueden realizarse
sobre datos que residan en cualquiera
de las bases de datos participantes
como se ilustra en la siguiente figura.
Debido a que en las arquitecturas de
lenguaje para mltiples bases de datos
es necesario conocer la estructura de los participantes para establecer el mapping de las consultas, el
grado de transparencia en la distribucin de los datos se ve muy reducido. Asimismo, requieren un
alto grado de responsabilidad del usuario para lograr sus objetivos con xito.
Bases de Datos Federadas
Son una coleccin de sistemas de bases de datos independientes, cooperativos, heterogneos,
autnomos que permiten compartir todos o algunos de sus datos.
La principal ventaja respecto al esquema global es que los sistemas de bases de datos
participantes preservan su autonoma. Los sistemas participantes pueden continuar con sus
operaciones locales mientras que al mismo tiempo participan de la federacin, o sea, participan en
la ejecucin de una operacin global.
Poseen un esquema global unificado al cual acceden todos los usuarios de la federacin. Este
esquema global puede ser:
materializado: cuando se puebla con nuevas instancias extradas de las bases de datos
participantes.
virtual: cuando no se generan nuevas instancias sino que se mantienen correspondencias
con las instancias de las bases de datos participantes.
La participacin de los sistemas fuentes en el esquema global puede ser en forma:
completa: el participante colabora en la federacin con todo su esquema.
parcial: el participante colabora en la federacin con cierto subesquema de su sistema.
Esto marca una fuerte diferencia con la arquitectura de esquema global donde siempre los
participantes deben colaborar con la totalidad de su esquema. Otra gran diferencia es la autonoma
de ejecucin que poseen los sistemas federados.
Clasificacin de Sistemas Federados
Los sistemas federados se clasifican segn la forma de acoplamiento entre sus participantes en:
fuertemente acoplados y dbilmente acoplados. La forma de acoplamiento se refiere al
procedimiento por el cual se identifican los subesquemas equivalentes, o complementarios, entre los
esquemas participantes.
En los sistemas fuertemente acoplados existe un usuario experto de la federacin quien decide
las correspondencias entre los sistemas participantes. Para que este usuario identifique estas
correspondencias los sistemas participantes deben permitirle ver sus esquemas, acceder a sus
descripciones, pero esto viola la autonoma de los participantes. Sin embargo, la ventaja de este
enfoque es que existe una visin centralizadora del problema que se encarga de asegurar la
consistencia del sistema federado.
Por el contrario, en federaciones dbilmente acopladas, cada uno de los sistemas participantes
es el encargado de negociar con los dems para identificar sus similaridades. Esta negociacin par-
a-par tiene la ventaja de no necesitar que el administrador de la federacin vea sus esquemas
completos, pero presenta la desventaja de la terrible duplicacin de esfuerzos para negociar con
cada uno de los participantes. Otro inconveniente es que requiere que sus participantes posean algn
lenguaje comn de acceso a datos para poder identificar las partes de los esquemas que tienen en
comn.
Como ventajas para los dbilmente acoplados podemos citar el alto grado de autonoma, y la
mayor facilidad para manejar la escalabilidad del sistema federado.
Arquitectura de Sistemas Federados
En el nivel 1 se encuentra el Esquema Local correspondiente a cada base de datos participante.
Cada sistema de bases de datos participante de la federacin puede utilizar un modelo de datos
diferente (modelo de redes, relacional, orientado a objetos, etc.) por lo cual se encuentra
heterogeneidad sintctica entre estos esquemas. El primer proceso de transformacin consiste en
convertirlos todos a un modelo comn de datos. El modelo escogido como modelo comn debe ser
aqul que no pierda poder de abstraccin respecto a ninguno de los usados por los participantes.
En el nivel 2 se encuentra el Esquema Componente, que corresponde a la traduccin de los
esquemas locales al modelo de datos comn.
En el nivel 3 se encuentra el Esquema de Exportacin, que corresponde al filtrado de los
esquemas componentes, donde cada sistema participante (para los sistemas dbilmente acoplados) o
el DBA de la federacin (para los sistemas fuertemente acoplados) decide que parte de su esquema
desea compartir con la federacin.
En el nivel 4 se encuentra el Esquema Federado, que corresponde al esquema integrado de la
federacin. El recuadro punteado que engloba los niveles 3, 4 y 5 est representando la necesidad de
contar con un diccionario de datos entre esos niveles para posibilitar, entre otras cosas, registrar las
correspondencias entre los diferentes esquemas.
Por ltimo, en el Nivel 5, los Esquemas Externos son el resultado de transformar el esquema
federado a los modelos de datos que usa cada uno de los sistemas participantes. Los esquemas
externos permiten que cada participante pueda acceder a la federacin con el mismo modelo en el
cual estn acostumbrados a trabajar.
Sistemas Basados en Wrappers y Mediadores
Estn constituidos por diferentes sistemas participantes donde pueden haber sistemas no-bases de
datos, y un mediador puede ser a su vez un participante del sistema.
La arquitectura de estos sistemas esta organizada en tres capas:
capa de wrappers: encargada de hacer transparentes las heterogeneidades de sistemas y
de modelos. Se corresponde con las capas de Esquema Componente y Esquema de
Exportacin de la arquitectura de Sistemas Federados.
capa de mediadores: encargada de realizar la integracin semntica de datos, se
corresponde con la capa del Esquema Federado.
capa de presentacin: conformada por servicios brindados a las aplicaciones. Se
corresponde al nivel de Esquemas de Exportacin de los Sistemas Federados.
Comparacin con sistemas federados
Los sistemas federados generalmente se disean en forma ascendente (bottom-up) mientras que
los sistemas basados en mediadores se conciben generalmente en forma descendente (top-down).
Por otro lado, los sistemas federados son sistemas que cuentan con las funcionalidades de las
bases de datos y que pueden soportan acceso tanto de lectura como de escritura a los datos. Por el
contrario, los sistemas basados en mediadores no disponen de interfaces a datos estructurados, ellos
pueden acceder tanto a datos semi-estructurados como no-estructurados, y el tipo de acceso es solo
de lectura.
Arquitectura de Sistemas Interoperables
Un sistema es completamente interoperable cuando integra datos y tambin funcionalidades.
Analizaremos los distintos niveles de integracin que se pueden dar cuando se construye un sistema
integrado con el ejemplo de una Universidad. En este ejemplo se tienen tres sistemas
independientes de una universidad. Ellos son el sistema de la Biblioteca, el sistema de la bedela
que registra a los Estudiantes y el sistema que registra a los Empleados.
El esquema resultante en la Figura 1 corresponde al Nivel 0 de integracin, ya que la integracin
realizada es simplemente una generalizacin de clases sin identificar objetos comunes.
Cuando se integran los subesquemas que tienen correspondencia de equivalencia entre s en un
nico subesquema homogneo, se fusionan los datos y se habla de Nivel I de integracin. Este es el
caso del ejemplo de la Figura 2 donde se identificaron como semnticamente equivalentes las clases
Estudiantes y Empleados, dando origen en el esquema integrado a la clase Persona. En esta
integracin los estudiantes que son a la vez estudiantes y empleados de la universidad estn
fusionados en un nico objeto de la clase Persona.
El siguiente nivel de integracin, Nivel II, corresponde a la derivacin de funcionalidades entre
las distintas bases de datos (Figura 3). Este ejemplo muestra la posibilidad de derivar la funcin que
devuelve los libros favoritos de los estudiantes relacionando la base de datos de Estudiantes con la
de la Biblioteca. Esta derivacin, tiene implcita la identificacin de cierta correspondencia
semntica entre los lectores de la biblioteca y los estudiantes. Sin embargo, notar que va ms all al
lograr derivar una nueva funcionalidad entre distintas bases de datos. Al lograr este nivel de
integracin es que hablamos de sistemas interoperables.
Comparacin de Arquitectura de Sistemas Heterogneos,
Autnomos y Distribuidos
Unidad 3
Modelos de Datos
Un modelo de datos es una herramienta con la cual se representa la realidad. Tambin se definen
como lenguajes usados para especificar bases de datos que permiten expresar:
estructuras: los objetos de los problemas.
restricciones: reglas que deben cumplir los datos.
operaciones: insertar, borrar, actualizar y consultar la Base de Datos.
Los modelos de datos brindan niveles de abstraccin sobre la definicin de los datos de una base
de datos.
Niveles de Abstraccin
El nivel de abstraccin que las bases de datos proveen se obtiene a travs de tres niveles distintos
de modelos de datos:
i. Modelo Conceptual: es la herramienta de representacin ms cercana a la realidad que se
utiliza para describir los conceptos, sus propiedades y sus relacionamientos. Es utilizado en la
etapa de Anlisis.
ii. Modelo Lgico: describe los conceptos y ofrecen operaciones para manipularlos. Es
utilizado en la etapa de Diseo.
iii. Modelo Fsico: describe la implementacin, y es utilizado en dicha etapa.
En el uso de estos tres niveles de abstraccin son especialmente interesantes las propiedades de:
+ independencia lgica de los datos: cambios a nivel conceptual o lgico no afectan la
implementacin de los datos.
+ independencia fsica de datos: cambios en las implementaciones de los datos no afectan
las representaciones a nivel lgico ni conceptual.
Relaciones entre Modelos, Esquemas y Datos
XML
Los modelos de datos Relacional, Orientados a Objetos, Relacionales-Orientados a Objetos, han
sido los modelos tradicionales utilizados hasta el momento en bases de datos. Pero la realidad actual
es que al querer integrar informacin heterognea y autnoma, el escenario donde existe mayor
volumen de informacin con estas caractersticas es la Web.
En la Web, ninguno de estos modelos es adecuado debido a la caracterstica de datos semi-
estructurados que manejan. Es as que, actualmente existe una corriente muy fuerte para utilizar a la
familia de XML como modelo de datos.
Comparacin entre esquemas: Capacidad de Informacin
Cuando transformamos esquemas es necesario contar con una definicin sobre la cul poder
comparar los esquemas.
Se define la capacidad de un esquema como el conjunto de todas las instancias vlidas del
esquema S , y se denota por I S ) , donde la I se puede asociar con la palabra Instancias del
esquema S .
La capacidad de informacin de un esquema no dice nada sobre la semntica del mismo. Esto se
debe a que, el conjunto de posibles instancias vlidas puede servir para comparar esquemas, pero no
para definir la semntica del esquema. sta ltima es un proceso de abstraccin intelectual que
puede estar guiado y apoyado por distintas herramientas y estructuras de datos, pero que no es
formalizable tan fcilmente.
Podemos decir que si dos esquemas representan la misma semntica entonces tienen la misma
capacidad de informacin, independiente de su estructura (nmero de atributos o propiedades). Pero
sin embargo no se cumple el inverso. Saber que en capacidad de informacin los esquemas son
equivalentes, NO sirve para derivar nada ms sobre la semntica que representan los esquemas.
Funciones en la comparacin de capacidad de informacin entre esquemas
Repaso:
f : A-B es una funcin si para cada
a A
, existe como mximo un
b B
tal que
f a) =b .

f
es inyectiva si su inversa es una funcin.

f
es total si est definida para todo elemento de
A
.

f
es sobreyectiva si su inversa es total.

f
es biyectiva si es una funcin inyectiva, total y sobreyectiva.
Cuando se comparan dos esquemas respecto a su capacidad de informacin podemos encontrar o
que:
+ no tienen relacin.
+ son equivalentes.
+ uno domina al otro.
Preservacin de la Capacidad de Informacin
Un mapeo que preserva la capacidad de informacin entre las instancias de dos esquemas
S
1
y
S
2
es una funcin
f : I S
1
)-I S
2
)
total e inyectiva.
Dominancia con respecto a la Capacidad de Informacin
Def 1: Si
f : I S
1
)-I S
2
)
es un mapeo que preserva la capacidad de informacin entre las
instancias de dos esquemas
S
1
y
S
2
, entonces
S
2
domina a
S
1
via f , y se denota:
S
1
< S
2
.
Def 2: Un esquema
S
2
tiene mayor capacidad de informacin que un esquema
S
1
si cada
instancia de
S
1
puede ser mapeada a una instancia de
S
2
sin prdida de informacin. En este caso
decimos que
S
2
domina a
S
1
va f (la funcin de mapeo) y usamos la siguiente notacin:
S
1
< S
2
. Interpretamos sin prdida de informacin como la posibilidad de volver a obtener la
instancia original de
S
1
(nica) a partir de una instancia de
S
2
.
Preservacin de la Equivalencia
Un mapeo que preserva la equivalencia entre las instancias de dos esquemas
S
1
y
S
2
es una
funcin
f : I S
1
)-I S
2
)
biyectiva.
Equivalencia con respecto a la Capacidad de Informacin
Si
f : I S
1
)-I S
2
)
es un mapeo que preserva la equivalencia entre las instancias de dos
esquemas
S
1
y
S
2
, entonces
S
1
y
S
2
son equivalentes via f , y se denota:
S
1
S
2
.
Objetivos Operacionales
Los objetivos operacionales son los diferentes tipos de operaciones que queremos permitir que se
realicen sobre los esquemas involucrados en una transformacin.
Para estudiar en detalle cada uno de los objetivos consideremos dos esquemas
S
1
y
S
2
, siendo
S
1
el resultado de la aplicacin de una funcin de transformacin f sobre
S
2
.
En particular, consideraremos que el esquema
S
1
es el usado en la interfase con el usuario, y el
esquema
S
2
es el usado en el nivel de la base de datos (esto incluye el caso en que
S
1
es una vista
de
S
2
).
Consideraremos adems que:
i
1
I

S
1
) ,
i
2
I

S
2
) , e
i
1
= f i
2
)
.
Consultar a travs del esquema
S
1
los datos almacenados correspondientes a
S
2
Para que estas consultas puedan realizarse, el nico requisito existente es que toda consulta
hecha sobre
S
1
se corresponda con una nica consulta sobre
S
2
.
Entonces, una consulta q sobre la instancia
i
1
, es igual a la funcin de mapeo f aplicada a
la instancia
i
2
compuesta con q . Esto es:
qi
1
)=q f i
2
))=q f i
2
)
. Por tanto, q sobre
S
1

se corresponde con q f sobre
S
2
.
Luego, para que se pueda consultar a travs de
S
1
los datos de
S
2
, se debe poder aplicar f
a cualquier instancia de
S
2
. Por tanto,
f : I S
2
)-I S
1
)
debe ser una funcin total .
Ntese que para cumplirse este objetivo f no necesita preservar la informacin.
El siguiente ejemplo ilustra el objetivo operacional mencionado. Considrense los esquemas
S
1
: CursosIng curso , docente )
y
S
2
: CursosIngComp curso , carrera , docente , horario)
.
Supongamos que los conjuntos
I S
1
)
e
I S
2
)
, y la funcin f son como muestra la figura.
Si hacemos una consulta q sobre una instancia de
S
1
, siempre la podemos expresar como la
consulta q f sobre la instancia actual de
S
2
.
Ntese que en este ejemplo f no es inyectiva ni tampoco sobreyectiva.
Consultar a travs del esquema
S
1
los datos almacenados correspondientes a
S
2
, y
adems que todos los datos de
S
2
se puedan ver a travs de
S
1
Para lograr esto necesitamos que la funcin de mapeo f , adems de ser total, sea sin perdida
de informacin. Recordamos que para que se cumpla esto ltimo una instancia de
S
1
debe
nicamente determinar a una instancia de
S
2
, o sea, que dos instancias de
S
2
no pueden
corresponderse con la misma instancia de
S
1
. Entonces necesitamos que exista la funcin
f
1
,
o lo que es lo mismo, que f sea inyectiva.
Por tanto,
f : I S
2
)-I S
1
)
debe ser una funcin total e inyectiva . Podemos decir que
f : I S
2
)-I S
1
)
es un mapeo que preserva la informacin, y que
S
1
S
2
.
El siguiente ejemplo ilustra el objetivo operacional mencionado. Considrense los esquemas:
S
1
: CursosIng curso , docente , horario)
y
S
2
: CursosIngComp curso , carrera , docente , horario)
.
Supongamos que los conjuntos
I S
1
)
e
I S
2
)
, y la funcin f son como muestra la figura.
A cada instancia posible de
S
1
le corresponde como mximo una instancia de
S
2
. Por lo
tanto f es inyectiva, o sea que existe
f
1
. Adems, teniendo en cuenta las definiciones vistas
anteriormente, en este caso podemos decir que
S
1
domina a
S
2
. A travs de
S
1
podemos ver la
totalidad de las instancias posibles de
S
2
.
Consultar a travs del esquema
S
1
los datos almacenados correspondientes a
S
2
, que
todos los datos de
S
2
se puedan ver a travs de
S
1
, y que se pueda actualizar a travs
de
S
1
los datos de
S
2
Para que se puedan actualizar los datos de
S
2
a travs de
S
1
, adems de las condiciones
anteriores que debe cumplir f , debe suceder que a toda instancia posible de
S
1
le debe
corresponder (va f ) una instancia posible de
S
2
.
Supongamos que actualizamos la instancia
i
1
S
1
, cuya pre-imagen es
i
2
S
2
. Tenemos
que
i
1
se transforma en
i
1
' S
1
, la cual debe tener una pre-imagen
i
2
' S
2
.
Considrese la actualizacin
ui
1
) =i
1
' u f i
2
)) = f i
2
' ) f
1
u f i
2
))) = f
1
f i
2
' )) =i
2
'
f
1
u f
sera la actualizacin en
S
2
que genera la instancia
i
2
'
.
La condicin de que a toda instancia posible de
S
1
le corresponda una instancia posible de
S
2
, se cumple si
f
1
es total, es decir si f es sobreyectiva.
Por tanto,
f : I S
2
)-I S
1
)
debe ser una funcin biyectiva . Podemos decir que
f : I S
2
)-I S
1
)
es un mapeo que preserva la equivalencia, y que
S
1
S
2
.
El siguiente ejemplo ilustra el objetivo operacional mencionado. Considrense los esquemas:
S
1
: CursosIng curso , docente , horario)
y
S
2
: CursosIngComp curso , carrera , docente , horario)
.
Supongamos que los conjuntos
I S
1
)
e
I S
2
)
, y la funcin f son como muestra la figura.
Si realizamos una actualizacin sobre una instancia de
S
1
, esta se reflejar sobre una
instancia de
S
2
.
Consultar a travs de
S
1
los datos de
S
2
y viceversa
Este objetivo es equivalente al primero para ambas direcciones. Entonces, se necesita tener
una f total ,y una
f
1
total. Por lo tanto, al igual que para el objetivo anterior,
f : I S
2
)-I S
1
)
debe ser biyectiva .
Transformacin de esquemas
Sean
S
1
y
S
2
familias (conjuntos) de esquemas, una transformacin de esquemas es una
funcin total
F : S
1
-S
2
. Si
S
1
y
S
2
estn especificados en diferentes modelos de datos, la
transformacin F se denomina translation.
Una transformacin
F : S
1
-S
2
es una transformacin que preserva la equivalencia si para
todo
S
1
S
1
,
S
1
F S
1
)
.???????????????????????????????????????????????????????
Algunos de los contextos o escenarios donde se pueden realizar transformaciones de esquemas
son:
1) Esquemas especificados en distintos modelos de datos (Integracin de Bases de Datos
Heterogneas). En este caso se aplica la transformacin para convertir las bases de datos de
un modelo a otro, en general al modelo cannico. Aqu interesa demostrar que el esquema
obtenido tiene la misma capacidad de informacin que el esquema al que se le aplica la
transformacin. Dicho de otra forma, que la transformacin preserva la equivalencia.
2) Esquemas especificados en el mismo modelo de datos (Integracin de Vistas). En este caso se
integran vistas derivadas de una misma base de datos. En la siguiente figura se integrara
S
1

con
S
2
, y la transformacin se realizara dentro del mismo modelo.
El esquema integrado se deriva de un conjunto de aserciones de integracin, las cuales
relacionan construcciones de las vistas, que se corresponden. Las aserciones tpicamente
describen relaciones de conjunto (equivalencia, inclusin, etc.) entre las extensiones de las
entidades o atributos relacionados.
En el enfoque presentado en [Joh93] se plantea que es ms difcil identificar relaciones entre
construcciones estructuralmente diferentes que entre dos entidades o dos atributos. Una
opcin para aliviar esto es transformar (estandarizar) los esquemas que van a ser integrados,
antes de establecer las aserciones de integracin. De esta forma, las aserciones entre las vistas
pueden ser expresadas como relaciones simples entre dos entidades o dos atributos. Se
proponen algunas transformaciones bsicas para lograr esa estandarizacin.
3) Evolucin de esquemas. Decimos que un esquema evoluciona cuando cambia su estructura o
sus restricciones de integridad. En este caso se estudian cambios producidos por alteraciones
en la estructura. Los cambios que sufre un esquema los podemos ver como transformaciones
del mismo. Por tanto, estamos nuevamente frente a un caso de transformacin de esquemas
dentro de un mismo modelo.
Unidad 4
Procesos para la Integracin
Cualquier solucin exitosa para la interoperacin semntica de sistemas de informacin debe
pasar por resolver exitosamente la integracin semntica de los sistemas participantes. Para alcanzar
la integracin semntica hay a su vez varios problemas a resolver:
1. Transformacin de Esquemas
El primer paso para lograr integracin es transformar a un modelo de datos comn. El
objetivo de la transformacin de esquemas es transformar a esquemas equivalentes o que tengan
dominancia sin prdida de informacin. Poder caracterizar la funcin f de la transformacin es
til para saber sobre las propiedades de la funcin que se busca. Sin embargo, hallar en forma
automtica la funcin de transformacin entre los esquemas es un trabajo complejo. La solucin
actual consiste en tener procedimientos de transformacin para cada uno de los esquemas
heterogneos que puedan participar en la federacin.
2. Identificacin de Correspondencias Semnticas
Una vez que los esquemas se encuentran en el mismo modelo de datos pueden persistir an
heterogeneidades de representacin y semnticas. El primer problema es identificar las
correspondencias semnticas. Esto se puede realizar manualmente o por tcnicas de aprendizaje
automtico de inteligencia artificial.
Si bien en la generalidad de las propuestas slo se analiza la correspondencia de equivalencia
es posible establecer distintas correspondencias semnticas entre los elementos de los esquemas.
Las diferentes correspondencias semnticas se clasifican en:
Equivalencia. Corresponde a equivalencia semntica entre los conceptos, independiente de
su representacin. Decimos que existe una correspondencia de equivalencia entre el
esquema
E
1
y el esquema
E
2
cuando la informacin estructurada en
E
1
puede ser re-
estructurada para el esquema
E
2
va una funcin f , y re-estructurada nuevamente para el
esquema
E
1
va una funcin g , tal que el resultado es el mismo que el original. Lo
mismo ocurre para la informacin estructurada en el esquema
E
2
. Esto es equivalente a la
existencia de una funcin biyectiva
f : I E
1
)-I E
2
)
.
Inclusin. Existe inclusin de un esquema
E
1
en otro esquema
E
2
si la intensin de
E
1

es un subconjunto propio de la intensin de
E
2
. Esto es equivalente a la existencia de una
correspondencia de equivalencia entre
E
1
y un subconjunto de
E
2
. En otras palabras,
E
1
est incluido en
E
2
si existe una funcin inyectiva (pero no sobreyectiva)
f : I E
1
)-I E
2
)
.
Solapamiento. Se dice que dos esquemas
E
1
y
E
2
tienen correspondencia de
solapamiento, si existen subesquemas
E'
1
incluido en
E
1
y
E'
2
incluido en
E
2
, tal que
E'
1
es equivalente a
E'
2
.
Particin vertical. Dos esquemas
E
1
y
E
2
estn en correspondencia de particin vertical
cuando es posible encontrar una particin de
E
2
en dos clases disyuntas
E'
2
y
E' '
2
, y
definir un par de funciones
f : I E
1
)-I E'
2
)
y
g : I E
1
)-I E ' '
2
)
tales que la pareja
f , g>, donde:
f , g>: I E
1
)-I E '
2
)I E ' '
2
)
, es inyectiva.
Particin horizontal. La correspondencia de particin horizontal entre dos esquemas
E
1

y
E
2
se define cuando existen subesquemas
E
2i
, i =1, ., n , con
E
2
la unin disyunta
de los
E
2i
, tal que la funcin biyectiva
f : I E
1
)-
i = 1, . ,n
I E
2i
)
puede ser definida.
Agrupamiento. La correspondencia de agrupamiento entre dos esquemas
E
1
y
E
2
vale
si se cumple que existe una funcin inyectiva
f : I E
1
)-P
fin
I E
2
))
, donde
P
fin

corresponde al conjunto potencia.
A partir de la identificacin de las correspondencias semnticas es posible derivar la
resolucin de las heterogeneidades de representacin. La tcnica utilizada es transformar cada
correspondencia semntica en una transformacin del esquema sin prdida de informacin y que
vuelva explcitos algunos conceptos modelados implcitamente.
Se puede mostrar que toda correspondencia semntica es expresable por una transformacin
ms una correspondencia de equivalencia.
3. Conformacin de los Esquemas
Una vez establecidas las correspondencias semnticas entre los esquemas participantes resta
establecer la metodologa para conformar los esquemas que se encuentran semnticamente
relacionados y que estructuralmente son heterogneos.
El proceso de conformacin de los esquemas consiste en homogeneizar las representaciones
de subesquemas semnticamente relacionados. Distinguimos entre tres grandes metodologas
para conformar o integrar esquemas:
i. lenguaje de re-estructuracin de esquemas. Un esquema integrado generado utilizando
esta metodologa es una representacin que refleja las definiciones de esquemas al tiempo
en que la integracin fue realizada. Cualquier cambio en las bases de datos subyacentes
que afecten los esquemas requerir que el proceso de integracin sea repetido. Por tanto,
decimos que es de naturaleza esttica.
ii. integracin de vistas. se definen vistas sobre los esquemas, con un enfoque
operacional. El esquema integrado esta formado por la unin de estas vistas. Esta
metodologa es ms dinmica que la anterior, ya que la representacin integrada es
generada definiendo una vista sobre los esquemas locales. Por lo tanto, si los esquemas
cambian, solo es necesario definir una nueva vista, y eso solo si los cambios pueden afectar
a la vista existente.
iii. establecimiento de correspondencias (llamadas de mapeos o aumentaciones) desde
los esquemas participantes al esquema integrado. A partir de la identificacin de las
correspondencias semnticas es posible derivar la resolucin de las heterogeneidades de
representacin. La tcnica es transformar cada correspondencia semntica en una
transformacin del esquema sin prdida de informacin y que vuelva explcitos algunos
conceptos modelados implcitamente.
4 Integracin de Instancias
En el proceso de integracin de instancias cuando hablamos de sistemas interoperables debe
existir al menos el concepto de fusin de datos (unificacin de los objetos idnticos).
Otro proceso es el de abstraccin por el cual se colocan los conceptos provenientes de
distintas fuentes en jerarquas, de esta forma se puede organizar que el concepto Persona es una
abstraccin del concepto Estudiante y tambin es una abstraccin del concepto Docente, pero sin
preocuparse de ver si si existen estudiantes que son tambin docentes. Este ltimo caso, cuando
existen estudiantes que son docentes es lo que llamamos de fusin de datos.
Por otro lado, el abordaje de integracin de datos puede ser: virtual o materializado. El
abordaje virtual est basado en el modelo de descomposicin de consultas, enviando las
subconsultas a las BD fuentes y mezclando las respuestas. Este abordaje puede realizarse dentro
de la premisa de mundo cerrado (Close Word Assumption (CWA) ), o del (Open Word
Assumption (OWA)). En el CWA, la vista integrada posee exactamente la unin de los datos en
las BD fuentes. Esta vista se caracteriza por ser construida en forma ascendente,bottom-up. En
el abordaje del OWA, la respuesta provista a travs de una vista integrada tendr un subconjunto
de las respuestas completas que implican cada una de las bases de datos fuentes. Por lo tanto,
este enfoque es generalmente construido como vistas descendentes, top-down.
El abordaje materializado se desarrolla generalmente sobre un encare de vista construida
bottom-up en un abordaje CWA, y es el favorito para la construccin de los sistemas de Data
Warehouses. Sus aspectos crticos residen en el mantenimiento actualizado de la vista, el tiempo
de la actualizacin peridica, y el mantenimiento incremental.
La heterogeneidad de datos puede aparecer entre dos objetos que semnticamente son
identificados como equivalentes. Estas diferencias en general se dividen en las siguientes
categoras:
+ Heterogeneidad de escala. Ocurren cuando se utilizan diferentes unidades o medidas
para representar los mismos valores. Cuando se realiza la integracin de datos es posible
solucionar estas heterogeneidades a travs de funciones de conversin definidas por el
usuario.
+ Heterogeneidades de precisin. Ocurren cuando entre dos atributos que son
semnticamente similares la representacin usada sigue diferentes precisiones. Este caso
es diferente al anterior debido a que podra no existir una funcin total que hiciera
corresponder los valores en los distintos esquemas. La resolucin de estas
heterogeneidades se estudia desde diferentes perspectivas tales como tcnicas basadas en
lgica, enfoques de inteligencia artificial, enfoques de procesamiento de consultas o
enfoques probabilsticos. La solucin ms sencilla para la integracin es considerar que
en los datos integrados la precisin corresponde a la granularidad mayor.
+ Heterogeneidad de valores por defecto. Depende de la definicin del dominio de los
atributos correspondientes. No es posible especificar mapeos de correspondencia entre
los valores por defecto, la nica solucin para el esquema integrado es tomar preferencia
por uno de los valores por defecto.
+ Heterogeneidad entre las restricciones de integridad. Ocurren cuando las
restricciones establecidas en el esquema no son compatibles. Dependiendo de las
restricciones de integridad, puede ser posible generalizarlas y encontrar una
correspondencia de las restricciones ms especficas a la ms general. Sin embargo, en
otros casos puede ser imposible obtener una funcin de correspondencia.
+ Heterogeneidad entre valores. Se refiere a las incompatibilidades que pueden ocurrir
entre los valores de datos idnticos presentes en diferentes bases de datos. Corresponden
a casos de inconsistencias, y la solucin ms sencilla para los datos integrados es
considerar cul de las bases de datos tiene el tiempo de actualizacin ms reciente y de
ella tomar el valor del dato. En casos ms complejos entre mltiples fuentes de
informacin, sin conocimiento de ltima fecha de actualizacin, una posible estrategia es
la del dato "ms votado" aqul valor en el que la mayora coincide es el que se toma
como bueno.

Das könnte Ihnen auch gefallen