2. Bases de Datos Federadas
TOPICOS ESPECIALES
BASES DE DATOS FEDERADAS
Renato Urvina
3. Bases de Datos Federadas
BASES DE DATOS FEDERADAS
CLASE 01
Introducción a los Sistemas de Información
Cooperativos y Bases de Datos Federadas
Renato Urvina
4. Bases de Datos Federadas
BASES DE DATOS FEDERADAS
CLASE 01
CONTENIDO:
• Sistemas de Información Cooperativos y Bases de Datos
Federadas
• Consultas Multi-base: problemática y soluciones
• El acceso integrado
• Sistemas de Bases de Datos Federadas
Renato Urvina
5. Bases de Datos Federadas
Sistemas de Información Cooperativos
Sistemas informáticos que soportan el trabajo en grupo,
con objeto de facilitar la comunicación, coordinación y
compartición de recursos entre sus miembros.
Sistema pensado para facilitar a un grupo de
individuos/organizaciones la realización de tareas
compartidas por medio de la comunicación, coordinación
y/o colaboración efectiva de sus miembros.
Renato Urvina
6. Bases de Datos Federadas
Sistemas de Información Cooperativos
Comunicación
Podemos distinguir entre comunicación sincrónica y asíncrona.
Decimos que es sincrónica cuando la comunicación se establece en tiempo real, es
decir, la interacción es simultánea.
Cuando la interacción entre los participantes se realiza en distintos momentos
decimos que la comunicación es asíncrona.
Colaboración
La colaboración tiene que ver con la interacción entre varios participantes para la
consecución de un objetivo común, generalmente la creación compartida de algún
artefacto que representa el resultado.
Al igual que la comunicación, la colaboración puede ser sincrónica o asíncrona,
dependiendo de si ésta se produce en tiempo real o no.
Coordinación
La coordinación permite que cada unidad o parte de un todo sepa cómo y cuándo
actuar para conseguir un objetivo mayor.
Renato Urvina
7. Bases de Datos Federadas
Bases de Datos Federadas
El avance de las comunicaciones y la creciente necesidad de cooperar con otras
entidades independientes, obligan a replantear los conceptos fundamentales de las
bases de datos, dirigiéndose de forma directa a la reciente tendencia de crear
software para tener acceso a varias bases de datos autónomas preexistentes
almacenadas en SGBD heterogéneos.
Un sistema de bases de datos federadas es una colección de sistemas de bases de
datos cooperativos y autónomos.
En un sistema federado los usuarios tienen acceso a los datos, de los distintos
sistemas, a través de una interfaz común, sin embargo, no existe un esquema global
que describa a todos los datos de las distintas bases de datos, en su lugar hay varios
esquemas unificados, cada uno describiendo porciones de bases de datos y
archivos para el uso de cierta clase de usuarios.
Renato Urvina
8. Bases de Datos Federadas
Bases de Datos Federadas
Las bases de datos federadas son vistas unificadas
de bases de datos independientes, aparentan ser
una sola base de datos, pero son una colección de
sistemas de bases de datos independientes,
cooperativos, heterogéneos, que son autónomos y
que permiten compartir todos o algunos de sus
datos.
Una BDF aparenta ser una BD normal y corriente,
pero no tiene existencia física, es una vista lógica.
Renato Urvina
9. Bases de Datos Federadas
Bases de Datos Federadas
En general los sistemas gestores de bases de datos
federados, tienen la función de compartir solo la
información que quieran compartir las entidades
participantes, además de que los usuarios locales
podrán acceder de forma transparente a los demás
datos compartidos y ver los suyos, como si fuera
una sola base de datos, esto sin embargo no es algo
sencillo, pero es algo muy útil.
Renato Urvina
10. Bases de Datos Federadas
Bases de Datos Federadas
Se debe remarcar que una base de datos federada
no es una base de datos única distribuida, más bien
son soluciones para acceder a la información
depositada en distintas bases de datos.
Un sistema de bases de datos federadas es una
colección de sistemas de bases de datos
cooperativos y autónomos.
La importancia principal de las bases de datos
federadas radica principalmente en su
biprocesamiento. Es decir, en su capacidad de
atender consultas globales, al mismo tiempo que
permite que la base de datos componente siga
atendiendo a sus aplicaciones locales.
Renato Urvina
11. Bases de Datos Federadas
Bases de Datos Federadas
Enfoque federado
La forma en que cooperan se basa fundamentalmente en dos
esquemas:
• Esquema de exportación
• Esquema de importación.
El esquema de exportación.
Denota las partes de la base de datos que va a compartir o que
va a poner a disposición de los demás miembros de la
federación. Así también es un subconjunto de un esquema
componente ya que no todos los datos deberán de ser
disponibles para la federación.
El esquema de importación.
Son vistas de la base de datos que proporcionan lo que se
desea del esquema de exportación.
Renato Urvina
12. Bases de Datos Federadas
Bases de Datos Federadas
PROPIEDADES
• Este tipo de manejadores, tiene un manejo transparente
para los usuarios.
• Se aprecia como una sola base de datos. A esto se le conoce
como ínter operar y existen tres formas: Distribuidas,
federadas o multibase.
• El sistema está conformado por un conjunto de bases de
datos heterogéneas. Esto significa que pueden o no tener
diferentes sistemas operativos, diferente equipo de cómputo
(hardware), diferentes manejadores de bases de datos,
diferente modelo de datos (Jerárquico, red, Relacional,
orientada a objetos), diferente estructura de datos.
Renato Urvina
13. Bases de Datos Federadas
Bases de Datos Federadas
PROPIEDADES
• Las bases de datos que participan en la BDF mantienen su
autonomía. Esto quiere decir que cada elemento de la federación
decide con quien, qué y cómo compartir sus datos, además de
que cada una cuenta con su respectivo diseño de acuerdo con las
necesidades del usuario.
• El MBDF (Manejador de Bases de Datos Federadas) recibe una
consulta sencilla y este a su vez la descompone en varias
consultas parciales.
• El MBDF deberá tener un optimizador de recursos para
aprovechar correctamente todos los componentes.
• Pueden ser físicamente distribuidas en diferentes lugares e
incluso en lugares muy lejanos.
Renato Urvina
14. Bases de Datos Federadas
Bases de Datos Federadas
NIVELES
Hay dos niveles, como mínimo:
• el de las bases de datos preexistentes, que denominaremos
bases de datos componentes:
NIVEL COMPONENTE
• el del conjunto de bases de datos que interoperan, que
llamaremos
NIVEL FEDERADO
Renato Urvina
15. Bases de Datos Federadas
Bases de Datos Federadas
TIPOS DE SGBDF
Los SGBDF se pueden clasificar en 2
grandes categorías:
• fuertemente acoplados
• débilmente acoplados.
Renato Urvina
17. Bases de Datos Federadas
Bases de Datos Federadas
Ejemplos
1. Dos empresas, cada una con sus bases de datos, que se
fusionan o pasan a formar parte de un mismo holding
2. Ministerios que quieren compartir sus datos
3. Provincias o territorios autónomos que desean acceder
mutuamente a ciertos datos
4. Países de un mercado común que necesitan intercambiar
datos
5. Sistemas de proveedores distintos que manejan distintas
áreas de información.
Renato Urvina
18. Bases de Datos Federadas
Bases de Datos Federadas
Soluciones:
a) Consultar separadamente cada base de datos, e integrar
manualmente las respuestas
b) Crear una nueva base de datos que integre todos los datos
de las preexistentes: integración de datos
c) Construir un Sistema Federado en el que las bases que las
bases de datos interoperen: integración del acceso
d) Crear un Data Warehouse
En cada caso hay que analizar cuál es la mejor solución
Renato Urvina
19. Bases de Datos Federadas
Bases de Datos Federadas
Aplicaciones Comerciales
Existen multitud de aplicaciones comerciales que soportan
bases de datos federadas.
Todos los sistemas gestores de bases de datos conocidos
poseen la posibilidad de crear este tipo de bases de datos.
Por ejemplo, IBM, ORACLE, MySQL, SQL Server, Firebird,
permiten la creación de bases de datos federadas.
El problema que surge es cuando se desea realizar una base
de datos federada que consulta los datos de otra base de
datos con una tecnología diferente, es decir, de otro
fabricante. En este caso las posibilidades se reducen, y es
necesaria la incorporación de algún componente extra que
incrementa el coste considerablemente.
Renato Urvina
20. Bases de Datos Federadas
Bases de Datos Federadas
Caso de Uso: MySQL.
A continuación, se va a realizar un ejemplo sencillo de base
de datos federada.
Para ello se va a utilizar el SGBD MySQL/MariaDB
En primer lugar, se va a definir la tabla cliente que será
consultada por la tabla federada.
Notar que pertenece a la base de datos BD1.
Renato Urvina
21. Bases de Datos Federadas
Bases de Datos Federadas
Caso de Uso: MySQL.
EQUIPO 1
CREATE DATABASE IF NOT EXISTS BD1;
USE BD1;
DROP TABLE IF EXISTS `cliente`;
CREATE TABLE `cliente` (
`idCliente` int(10) unsigned NOT NULL auto_increment,
`Nombre` varchar(45) NOT NULL,
`Apellidos` varchar(45) NOT NULL,
PRIMARY KEY (`idCliente`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Renato Urvina
22. Bases de Datos Federadas
Bases de Datos Federadas
Caso de Uso: MySQL.
EQUIPO 2
CREATE DATABASE IF NOT EXISTS BD_F;
USE BD_F;
DROP TABLE IF EXISTS `cliente_federada`;
CREATE TABLE `cliente_federada` (
`idCliente` int(10) unsigned NOT NULL auto_increment,
`Nombre` varchar(45) NOT NULL,
`Apellidos` varchar(45) NOT NULL,
PRIMARY KEY (`idCliente`)
) ENGINE=FEDERATED
DEFAULT CHARSET=utf8
COMMENT:’mysql://root@remote_host:9306/BD1/cliente’;
Renato Urvina
23. Bases de Datos Federadas
Bases de Datos Federadas
Caso de Uso: MySQL.
La tabla federada que se acaba de crear muestra los mismos
datos que la tabla remota a la que consulta.
Notar que con referencia a la definición de la primera tabla
existen 2 diferencias:
El motor de consulta cambia de MyISAM a FEDERATED.
Se añade el atributo COMMENT donde se especifica la
dirección de la tabla remota a la que tiene que consultar.
Renato Urvina