SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
UNIVERSIDAD DE CASTILLA-LA MANCHA
   ESCUELA SUPERIOR INFORMÁTICA




MODELOS AVANZADOS
 DE BASES DE DATOS

BASES DE DATOS FEDERADAS
Y BASES DE DATOS MÓVILES




        Alberto Rosell Borox
        Marcos Vergara García
         Matías Blanco León

          22 de abril de 2009
Índice
1.     Bases de Datos Federadas. ..................................................................................... 1
     1.1.     Características de los SGBDF. ......................................................................... 1
     1.2.     Tipos de SGBDF. ............................................................................................. 2
     1.3.     Tipos de Arquitectura para un SGBDF. ........................................................... 5
     1.4.     Problemas de Implementación.......................................................................... 7
     1.5.     Aplicaciones Comerciales. ............................................................................... 7
     1.6.     Caso de Uso: MySQL....................................................................................... 7
2.     Base de Datos Móviles. ........................................................................................... 9
     2.1.     Introducción...................................................................................................... 9
     2.2.     Arquitectura. ..................................................................................................... 9
       2.2.1.        Modos de funcionamiento. ..................................................................... 10
     2.3.     Sistemas Gestores de Bases de Datos móviles. .............................................. 11
     2.4.     Aplicaciones móviles y tipos de datos............................................................ 11
     2.5.     Ejemplos de bases de datos móviles............................................................... 12
     2.6.     Caso de estudio: Oracle Database Lite 10g. ................................................... 13
3.     Similitudes entre Bases de Datos Móviles y Bases de Datos Federadas. ......... 15
4.     Diferencias entre Bases de Datos Móviles y Bases de Datos Federadas. ......... 16
5.     ¿En qué casos es más recomendable usar un sistema u otro? .......................... 17
6.     Bibliografía............................................................................................................ 18
Modelos Avanzados de Bases de Datos



    1. Bases de Datos Federadas.

        La definición de Base de Datos Federada ha sido realizada por varios autores. Así,
Sheth A.P. and Larson, J.A. definieron el concepto base de datos federada como “una colección
de sistemas de bases de datos independientes, cooperativos, posiblemente heterogéneos, que son
autónomos y que permiten compartir todos o algunos de sus datos”. Además, Larson amplió
esta definición diciendo que “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, sino que 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”.


        La primera definición pone de manifiesto todas las propiedades que definen a una Base
de Datos Federada: heterogeneidad, autonomía y distribución. Una Base de Datos Federada se
dice que es heterogénea debido a que los sistemas de bases de datos que lo forman pueden
tener cualquier arquitectura. En cuanto a la autonomía, esta propiedad se cumple ya que cada
sistema de bases de datos funciona por sí mismo y de forma local. Por último, el concepto de
distribución hace referencia a que cada sistema de bases de datos puede estar localizado en
cualquier punto.


        En cuanto a la segunda definición, se explica que un sistema federado está compuesto
por los datos de las diferentes bases de datos que forman el esquema, pero que dichos datos no
están presentes en ningún esquema global. Además, no necesariamente todos los datos de una
base de datos son compartidos a los usuarios, sino que se tiene la posibilidad de compartir sólo
una porción de los datos.


    1.1. Características de los SGBDF.

        Un Sistema Gestor de Bases de Datos Federadas (SGBDF) es el responsable de
proveer una vista de datos transparente al usuario. Esto significa que el usuario percibe a la base
de datos federada como una única base de datos local, y no múltiples bases de datos que
contienen diferentes datos, que es como en realidad está configurado.


        Un SGBDF no contiene ningún dato, sino que accede a los datos almacenados en las
diferentes bases de datos que forman el esquema. Para acceder a dichos datos es necesario
establecer las denominadas federaciones. Una federación es una vista que se establece en una
base de datos en particular para exteriorizar los datos que se desean mostrar.


Bases de Datos Federadas y Bases de Datos Móviles                                   1|Página
Modelos Avanzados de Bases de Datos



        A continuación se muestra una figura que ilustra la conexión entre los diferentes
elementos que forman una base de datos federada.




                                     Esquema de un SGBDF


        Como se puede apreciar en la figura anterior, un SGBDF está formado por varios
gestores de bases de datos. Dichos gestores pueden ser tanto gestores de bases de datos
centralizadas (SGBD) como gestores de bases de datos distribuidas (SGBDD). Los SGBDD,
además, pueden ser a su vez sistemas de bases de datos federados. Tanto los sistemas gestores
como las bases de datos que lo forman son denominados componentes del SGBDF.


        Los componentes de un SGBDF pueden ejecutar tanto sus operaciones locales como
participar en la ejecución de las consultas sobre los datos federados (operaciones globales). La
autonomía de cada componente es controlada por el administrador del sistema junto a cada
administrador de cada uno de los componentes. Esto es debido a que dicha autonomía difiere
según la necesidad de federación existente de cada base de datos con el esquema global.


        Todas las federaciones en conjunto forman el sistema federado. En cualquier momento,
según la necesidad, cualquiera de ellas puede variar. Como se ha dicho antes, el usuario final es
transparente a las uniones entre componentes que haya por debajo, por lo que el único cambio
que un usuario puede percibir es que tenga acceso a diferentes datos en el esquema global.


    1.2. Tipos de SGBDF.




Bases de Datos Federadas y Bases de Datos Móviles                                 2|Página
Modelos Avanzados de Bases de Datos



        Los SGBDF se pueden clasificar en 2 grandes categorías: fuertemente acoplados y
débilmente acoplados. Antes de detallar ambas categorías, se muestra un esquema que
específica los diferentes tipos de bases de datos federadas.




                                     Taxonomía de los SGBDF


        Como se puede apreciar, vuelve a aparecer el concepto de autonomía como elemento
diferenciador entre sistemas federados y sistemas que no lo son. En cuanto a los otros 2
conceptos, heterogeneidad y distribución, ambos se cumplen debido a que la propia definición
de sistema federado lo hace posible, al estar compuesto éste de varios SGBD separados en
localizaciones diferentes y con distinta arquitectura.


        SGBDF fuertemente acoplados
                Este tipo de sistema federado posee un esquema conceptual global que está
        formado por un subconjunto de los esquemas conceptuales locales, compuesto de los
        datos que cada sistema local decide compartir. El esquema conceptual global en un
        sistema fuertemente acoplado implica la integración de partes de los esquemas
        conceptuales locales o de los esquemas externos locales.


                En la figura siguiente se ilustra una arquitectura de referencia para un sistema
        gestor de base de datos federado estrechamente acoplado, es decir, que tiene un
        esquema conceptual global.




Bases de Datos Federadas y Bases de Datos Móviles                                3|Página
Modelos Avanzados de Bases de Datos




                Arquitectura de referencia para un SGBDF fuertemente acoplado


               Las características de un SGBDF fuertemente acoplado son las siguientes:
                       El administrador global del sistema federado tiene todo el control sobre
                       la creación y el acceso a los sistemas de bases de datos componente.
                       Soporta uno o más esquemas federados.


               La utilización de un SGBDF de este tipo concierne una serie de ventajas:
                       Capacidad de soportar actualizaciones.
                       La interpretación de la semántica de los múltiples datos integrados en el
                       sistema federado es uniforme.


               Aún así, este tipo de sistema federado posee las siguientes desventajas:
                       Debido a la libertad que disfrutan los administradores globales se puede
                       llegar a violar la autonomía que poseen los sistemas componente.
                       No soporta la evolución dinámica de los esquemas de exportación o
                       componentes.


       SGBDF débilmente acoplados.
               Existe otro tipo de sistema federado, débilmente acoplado, que se basa en no
       tener un esquema conceptual global. En este caso, los esquemas externos están
       compuestos por uno o más esquemas conceptuales locales.

Bases de Datos Federadas y Bases de Datos Móviles                                4|Página
Modelos Avanzados de Bases de Datos




               Este otro tipo de sistema federado posee las siguientes características:
                       Los usuarios son los responsables de la creación y el mantenimiento de
                       las federaciones mediante la utilización de vistas.
                       Soporta sistemas de bases de datos altamente autónomos, los cuales los
                       usuarios deben tratar.


               En cuanto a las ventajas de utilizar este tipo de SGBDF:
                       Dispone de gran flexibilidad para mapear diferentes semánticas de los
                       mismos objetos en distintos esquemas de exportación.
                       Se tiene mayor facilidad para soportar la evolución de los componentes.


               Y las desventajas de los SGBDF débilmente acoplados son las siguientes:
                       Resulta de gran dificultad la comprensión de grandes cantidades de
                       esquemas de exportación.
                       Los esfuerzos para gestionar este tipo de sistema se duplican.
                       Existen problemas para actualizar las vistas que utilizan los usuarios.


   1.3. Tipos de Arquitectura para un SGBDF.

       A continuación se van a detallar dos tipos de arquitecturas para el manejo de bases de
datos federadas. Hay otras muchas, pero en este documento nos vamos a centrar en la
arquitectura de Sheth A.P. and Larson, J.A. y la arquitectura propuesta por ANSI/SPARC.


       Arquitectura de 5 niveles (Sheth y Larson).
               Sheth y Larson propusieron una arquitectura compuesta por 5 niveles de
       esquemas, los cuales son los siguientes:
                       Esquema Local: Se trata del esquema conceptual de las bases de datos
                       componente.
                       Esquema Componente: Se obtiene tras transformar el esquema local en
                       un Modelo de Datos Común.
                       Esquema de Exportación: Representa un subconjunto de la totalidad de
                       los datos que contiene el esquema componente. Este subconjunto de
                       datos es el que se quiere compartir en la base de datos federada.
                       Esquema Federado: Está formado por la integración de todos los
                       esquemas de exportación de cada base de datos componente.



Bases de Datos Federadas y Bases de Datos Móviles                                 5|Página
Modelos Avanzados de Bases de Datos



                       Esquema Externo: Representa una vista hacia un usuario o conjunto de
                       usuarios determinado. No necesariamente este esquema contiene todos
                       los datos que forman el esquema federado, sino que puede ser un
                       subconjunto de estos.


               En la siguiente figura se muestra un ejemplo de este tipo de arquitectura que
       muestra todo lo explicado anteriormente.




                           Arquitectura de 5 niveles de Sheth y Larson


       Arquitectura de 3 niveles (ANSI/SPARC).
               Este tipo de arquitectura es muy utilizada en el diseño de bases de datos
       relacionales. Está formada por los siguientes niveles:
                       Nivel Físico: Está compuesto por el esquema interno. Dicho esquema
                       contiene las diferentes bases de datos componente que forman la base
                       de datos federada.
                       Nivel Lógico: Corresponde al esquema conceptual. Este nivel contiene
                       el modelo global de datos, es decir, el conjunto de datos compartido por
                       todas las bases de datos componente.
                       Nivel Externo: Está representado por el esquema externo. Este esquema
                       está compuesto por las diferentes vistas que poseen los usuarios a los
                       datos compartidos.


               Para mostrar de forma más clara esta arquitectura se sugiere la siguiente figura:




Bases de Datos Federadas y Bases de Datos Móviles                                 6|Página
Modelos Avanzados de Bases de Datos




                             Arquitectura de 3 niveles (ANSI/SPARC)


    1.4. Problemas de Implementación.

        La implementación de este tipo de base de datos concierne una serie de problemas que
se citan a continuación:
                Incompatibilidad entre los sistemas de consulta de los diferentes fabricantes
                Diferente codificación utilizada por las bases de datos componente
                Generación de códigos de error incompatibles por los diferentes fabricantes
                Dificultades para establecer un control de la concurrencia en las distintas
                transacciones
                Las transacciones son heterogéneas debido a que cada SGBD mantiene su
                autonomía


    1.5. 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, etc., 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.


    1.6. Caso de Uso: MySQL.




Bases de Datos Federadas y Bases de Datos Móviles                                 7|Página
Modelos Avanzados de Bases de Datos



        A continuación se va a realizar un ejemplo sencillo de base de datos federada. Para ello
se va a utilizar el SGBD MySQL, que dispone de una versión gratuita que permite crear bases
de datos federadas.


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


        CREATE DATABASE IF NOT EXISTS bbdd1;
        USE bbdd1;

        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;



        Ahora, nuestra base de datos federada va a contener otra tabla que va a tener una
federación a esta primera tabla definida.


        CREATE DATABASE IF NOT EXISTS bbdd_federada;
        USE bbdd_federada;

        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/bbdd1/cliente’;



        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.




Bases de Datos Federadas y Bases de Datos Móviles                                   8|Página
Modelos Avanzados de Bases de Datos




    2. Base de Datos Móviles.


    2.1. Introducción.

        En los últimos años se han producido grandes avances en las tecnologías de
comunicación inalámbricas. Estos avances, junto al uso cada vez más extendido de los
dispositivos móviles, han causado la aparición de una nueva disciplina: la computación móvil.


        Gracias a la computación móvil, los usuarios pueden acceder a una base de datos remota
en cualquier momento y en cualquier lugar. Los empleados de una empresa pueden trabajar
desde su casa, desde las instalaciones del cliente o mientras están de viaje, de la misma forma
que si estuvieran en la oficina.


        La computación móvil introduce el concepto de base de datos móvil. Una base de datos
móvil es una base de datos portable, físicamente independiente del servidor corporativo de base
de datos y capaz de comunicarse con ese servidor desde sitios remotos para compartir datos
corporativos. Utilizando bases de datos móviles, los trabajadores pueden acceder a los datos
corporativos desde cualquier dispositivo que disponga de conexión a Internet.


    2.2. Arquitectura.

        La arquitectura general de una plataforma móvil es un modelo distribuido formado por
computadores fijos, estaciones base y unidades móviles. Los computadores fijos son
computadores de uso general que no disponen de medios para comunicarse con los unidades
móviles. Las estaciones base disponen de enlaces inalámbricos para conectar con las unidades
móviles; son máquinas que actúan de intermediarios entre las unidades móviles y los
computadores fijos. Los computadores fijos y las estaciones base están interconectados por
medio de una red fija (cableada) de alta velocidad. Las unidades móviles se conectan a las
estaciones base mediante enlaces inalámbricos; los enlaces más comunes son el estándar
802.11 (Wi-Fi), el servicio GPRS y la tecnología Bluetooth.




Bases de Datos Federadas y Bases de Datos Móviles                               9|Página
Modelos Avanzados de Bases de Datos




               Arquitectura general de una plataforma móvil (Dunham y Helal, 1995)




        Las unidades móviles se pueden mover libremente por un espacio conocido como
dominio de movilidad geográfica, cuyo alcance está determinado por la cobertura de los
enlaces inalámbricos. Este dominio se divide en dominios más pequeños llamados celdas. Cada
celda es controlada por una estación base. El movimiento de las unidades móviles dentro del
dominio de movilidad geográfica no debe estar restringido, es decir, se debe garantizar el acceso
a la información aunque las unidades móviles se muevan entre las celdas.


    2.2.1.   Modos de funcionamiento.

        Hay dos modos de funcionamiento para trabajar con los datos:
                El usuario de un dispositivo móvil se conecta al servidor de base de datos
                corporativo y trabaja directamente con los datos.
                El usuario descarga una copia de los datos y trabaja con ellos de forma local.
                Posteriormente, se conectará al servidor de base de datos corporativo para
                actualizar la base de datos.


        La adopción del modo funcionamiento depende fundamentalmente de los requisitos de
cada aplicación. Otro factor importante a la hora de elegir el modo de funcionamiento es la
tecnología de comunicación utilizada para conectar a las estaciones base; el coste puede ser


Bases de Datos Federadas y Bases de Datos Móviles                                10 | P á g i n a
Modelos Avanzados de Bases de Datos



elevado si la conexión con el servidor es permanente y se utiliza una comunicación de pago
como GPRS.



    2.3. Sistemas Gestores de Bases de Datos móviles.

        Muchos fabricantes ofrecen SGBD móviles capaces de comunicarse con los principales
SGBD relacionales. Estos SGBD móviles están adaptados a los recursos limitados de las
unidades móviles y proporcionan una serie de funcionalidades adicionales:
                Comunicación con el servidor centralizado de base de datos mediante técnicas
                de comunicación inalámbrica.
                Replicación de datos en el servidor centralizado de base de datos y en el
                dispositivo móvil.
                Sincronización de datos entre el servidor centralizado de base de datos y el
                dispositivo móvil.
                Gestión de datos en el dispositivo móvil.
                Análisis de los datos almacenados en el dispositivo móvil.



    2.4. Aplicaciones móviles y tipos de datos.

        Las aplicaciones móviles se clasifican en las dos siguientes categorías: aplicaciones
verticales y aplicaciones horizontales (Imielinski y Badrinath, 1994). En las aplicaciones
verticales, los usuarios acceden a los datos en una celda específica; fuera de la celda los datos no
están disponibles. Un ejemplo de aplicación vertical es la obtención de información sobre las
plazas libres de un determinado parking. En las aplicaciones horizontales, los datos están
distribuidos por todo el sistema, y los usuarios pueden acceder a ellos desde cualquier celda. La
aplicación horizontal más común es el acceso al correo electrónico.


        Los datos se clasifican en tres categorías:
                Datos privados: pertenecen a un usuario y sólo él puede acceder a ellos y
                manejarlos. Por ejemplo, los datos del perfil de un usuario de cualquier
                aplicación que gestione datos personales.
                Datos públicos: pueden ser consultados por cualquier usuario, pero sólo pueden
                ser modificados por una única fuente. Por ejemplo, los datos de las cotizaciones
                de la bolsa.
                Datos compartidos: pueden ser accedidos por un grupo determinado de
                usuarios, quienes tienen permisos para leerlos y para escribirlos. Por ejemplo,


Bases de Datos Federadas y Bases de Datos Móviles                                  11 | P á g i n a
Modelos Avanzados de Bases de Datos



                los datos de seguros de una compañía aseguradora que vende productos
                utilizando agentes comerciales.

        Las aplicaciones horizontales utilizan, principalmente, datos públicos, mientras que las
aplicaciones horizontales suelen utilizar más los datos compartidos.


    2.5. Ejemplos de bases de datos móviles.

        iAnywhere Solutions, empresa filial de Sybase, lidera el ranking del mercado de bases
de datos móviles gracias a SQL Anywhere. Este paquete proporciona bases de datos que
pueden utilizarse tanto a nivel de servidor (soporta máquinas de hasta 64bits) como a nivel de
dispositivo móvil. SQL Anywhere se compone de las siguientes tecnologías:
                SQL Anywhere Server: sistema gestor de bases de datos relacionales para los
                sistemas de bases de datos móviles.
                Ultralite: sistema gestor de bases de datos que puede embeberse en dispositivos
                móviles.
                Mobilink: tecnología de sincronización para el intercambio de datos entre bases
                de datos relacionales y bases de datos no relacionales.
                QAnywhere: facilita el desarrollo de aplicaciones móviles robustas y seguras.
                SQL Remote: permite a los usuarios de dispositivos móviles sincronizar sus
                datos con otras bases de datos SQL Anywhere.


        DB2 Everyplace de IBM es una base de datos relacional y un servidor de
sincronización que permite extender las aplicaciones y los datos empresariales a dispositivos
móviles. Gracias a un consumo de recursos reducido, esta base de datos puede integrarse en
dispositivos como PDAs y teléfonos móviles.


        Microsoft también ofrece una base de datos para dispositivos móviles. Se trata de
Microsoft SQL Server Compact 3.5, un motor de bases de datos que permite desarrollar
aplicaciones en cualquier plataforma Windows incluyendo Tablet PCs, Pocket PCs, Smart
Phones y equipos de escritorio.


        Oracle Database Lite 10g es la solución de Oracle para desarrollar aplicaciones en
entornos móviles. Proporciona un cliente que permite la realización de consultas SQL para
acceder a los datos locales del dispositivo y un servidor para gestionar los datos de forma
centralizada.




Bases de Datos Federadas y Bases de Datos Móviles                               12 | P á g i n a
Modelos Avanzados de Bases de Datos



        Otros productos menos utilizados son Borland’s JDataStore, una base de datos Java
para dispositivos móviles y aplicaciones Web, o MobiSnap, un proyecto de investigación cuyo
objetivo es soportar el desarrollo de aplicaciones con bases de datos relacionales en entornos
móviles.


    2.6. Caso de estudio: Oracle Database Lite 10g.

        Oracle Database Lite 10g es una solución integrada para el desarrollo de aplicaciones en
entornos móviles. Para evitar que los dispositivos móviles estén continuamente conectados al
servidor, Oracle Database Lite 10g proporciona una pequeña base de datos para gestionar los
datos empresariales de forma local en el dispositivo móvil.




                     Arquitectura de las aplicaciones Oracle Database Lite 10g


        La figura anterior muestra la arquitectura de las aplicaciones Oracle Database Lite 10g.
Esta arquitectura contiene los siguientes componentes:
                Mobile Sync Module: aplicación instalada en el dispositivo móvil que permite la
                sincronización de datos con el servidor empresarial.
                Oracle Lite RDBMS: sistema gestor de bases de datos relacionales creado
                específicamente para dispositivos móviles. Proporciona interfaces ODBC,
                JDBC, SODA y ADO para permitir la utilización de aplicaciones desarrolladas
                en lenguajes como Java, C/C++ y Visual Basic.
                Oracle Lite database: base de datos instalada en el dispositivo móvil.
                Mobile Server: servidor intermedio entre los dispositivos móviles y el servidor
                empresarial. Permite la instalación y actualización de aplicaciones en los




Bases de Datos Federadas y Bases de Datos Móviles                                13 | P á g i n a
Modelos Avanzados de Bases de Datos



                dispositivos móviles y se comunica con el módulo Mobile Sync para
                sincronizar los datos entre el dispositivo móvil y el servidor empresarial.
                Message Generator and Processor (MGP): módulo utilizado en la
                sincronización de datos para detectar y solucionar cualquier conflicto que pueda
                producirse en la actualización de los datos del servidor.
                Mobile Server Repository: repositorio que contiene información necesaria para
                que el Mobile Server pueda ejecutarse. Esta información se almacena junto a
                los datos del negocio, en la misma base de datos.



        Los pasos para poner en funcionamiento una aplicación con Oracle Database Lite 10g
son los siguientes:
            1. Instalar y configurar la base de datos Oracle en el servidor.
            2. Instalar y configurar el Mobile Server en el equipo que hará de intermediario
                entre los dispositivos móviles y el servidor.
            3. Instalar y configurar el Mobile Server Repository en el servidor.
            4. Instalar Oracle Lite RDBMS y Mobile Sync en los dispositivos móviles; para
                facilitar esta tarea, Oracle ofrece un producto llamado Mobile Development Kit,
                que instala rápidamente todos los componentes en los dispositivos móviles.


        Una base de datos local Oracle Lite contiene un subconjunto de los datos almacenados
en la base de datos Oracle. Los cambios realizados en el dispositivo móvil deben sincronizarse
con los datos del servidor. De esta tarea se encarga el módulo Mobile Sync; primero envía los
cambios al Mobile Server, y después descarga los nuevos cambios y los aplica en la base de
datos local Oracle Lite.




            Sincronización de datos entre la base de datos local y la base de datos remota


Bases de Datos Federadas y Bases de Datos Móviles                                     14 | P á g i n a
Modelos Avanzados de Bases de Datos




   3. Similitudes entre Bases de Datos Móviles y Bases de Datos
      Federadas.

               Las dos bases de datos son modelos distribuidos de bases de datos a los cuáles
               se accede de forma remota, ya sea desde un equipo fijo o un equipo móvil.


               Los dos sistemas tienen mecanismos de privilegios de usuarios. Dependiendo de
               los privilegios que tenga el usuario que accede al sistema, dicho usuario podrá
               acceder a una parte del esquema u a otra.


               En estos sistemas el usuario no es consciente de la disposición geográfica en la
               que se encuentra el servidor o servidores de bases de datos. Esta característica
               también da al usuario un gran nivel de movilidad y de acceso a los datos desde
               cualquier punto.


               Son sistemas complejos que necesitan una gran infraestructura que dé soporte a
               este tipo de bases de datos.


               Necesitan tener definidos mecanismos de concurrencia de los datos para que no
               se vea dañada la integridad de los mismos en el caso de que varios usuarios
               accedan a los mismos datos a la vez.


               Al tener la parte de almacenamiento de datos, y el acceso a los mismos,
               distribuida, se libera de una gran carga computacional a los equipos implicados
               en el sistema.


               Para acceder a dichos sistemas se necesita una interfaz, adaptada al dispositivo
               desde el cual se va a acceder, que dé soporte y acceso a las funcionalidades
               disponibles al usuario por parte del sistema.




Bases de Datos Federadas y Bases de Datos Móviles                              15 | P á g i n a
Modelos Avanzados de Bases de Datos




   4. Diferencias entre Bases de Datos Móviles y Bases de Datos
      Federadas.

               A los sistemas de bases de datos móviles se accede por medio de dispositivos
               móviles. Éstos, a su vez, acceden por medio de estaciones base y están
               comunicados directamente con la base de datos, aunque también se puede
               acceder desde equipos fijos. Las bases de datos federadas sólo son accesibles
               desde equipos fijos conectados a la infraestructura del sistema de bases de
               datos.


               Los sistemas de bases de datos móviles están formados por un sólo tipo gestor
               de bases de datos, y todos los equipos conectados al sistema atacan al mismo
               gestor de base de datos. A diferencia de éstos, las bases de datos federadas
               permiten conectar diferentes sistemas gestores de bases de datos, que
               conforman una sola base de datos.


               Los sistemas de bases de datos móviles permiten a los usuarios trabajar de
               forma desconectada con los datos, y una vez que éstos han sido modificados,
               los usuarios sincronizan dichos datos con el sistema. Esto evita que los
               dispositivos móviles tengan que estar siempre conectados al sistema para
               interactuar y acceder a la base de datos.


               En el caso de las bases de datos móviles, el sistema se puede reducir sólo al
               dispositivo móvil que lo ejecuta, ya que éste es el único que contiene la base de
               datos y accede a ellos. Este tipo de sistemas son sistemas gestores de bases de
               datos embebidos en el mismo dispositivo.


               Las bases de datos federadas son un conjunto de esquemas unificados, a
               diferencia de las bases de datos móviles, que sólo disponen de un esquema
               global.


               Los sistemas de bases de datos federados permiten dar acceso a una gran
               cantidad de datos que los demás sistemas no podrían permitir ni soportar.




Bases de Datos Federadas y Bases de Datos Móviles                               16 | P á g i n a
Modelos Avanzados de Bases de Datos




    5. ¿En qué casos es más recomendable usar un sistema u otro?

        Las bases de datos móviles son recomendadas en los casos en los que los usuarios deben
estar moviéndose de un lugar para otro para realizar las funciones y cuando la información que
deben tratar se puede mostrar y tratar en un dispositivo móvil. Este tipo de base de datos
también permite a los dispositivos móviles y a las aplicaciones que corren en ellos almacenar
datos, con todas las ventajas que ofrece un gestor de base de datos.


        Los sistemas de bases de datos federados son usados cuando la cantidad de datos es muy
grande y, además, cuando los mismos se encuentren en diferentes sistemas. Estos sistemas
permiten unificar las bases de datos para permitir al usuario acceder a los datos de forma
transparente, sin que sea consciente de la modularidad de la base de datos, y así poder acceder a
diferentes datos de diferentes bases de datos a la vez.




Bases de Datos Federadas y Bases de Datos Móviles                                17 | P á g i n a
Modelos Avanzados de Bases de Datos




   6. Bibliografía


       Connolly, T. M.; Begg, C. E. Sistemas de Bases de Batos. Pearson Educación S.A.,
       2005.


       Elmasri, Ramez. Fundamentos de Sistemas de Bases de Datos. Addison-Wesley, 2002.


       Imielinski, Tomasz; Korth, Henry. Mobile Computing. Springer, 1996.


       Dunham, M. H.; Helal, A.; Balakrishnan, S. A mobile transaction model that captures
       both the data and movement behaviour. ACM/Baltzer Journal on Special Topics in
       Mobile Networks and Applications, 1997.


       Dunham, M.H.; Helal, A. Mobile computing and databases: Anything new? ACM
       SIGMOD, 1995.


       Piattini Velthuis, Mario. El futuro de las bases de datos. [en línea]
       http://www.ganimides.ucm.cl/aurrutia/doc_pdf/El%20Futuro%20de%20las%20Bases%
       20de%20Datos.pdf [Consulta: 16 abril 2009]


       Motz, Regina. Arquitecturas para DBMS distribuidos y heterogéneos. [en línea]
       http://www.fing.edu.uy/inco/grupos/csi/esp/Cursos/cursos_posg/Inter2002/transpar
       encias/arquitecturas.pdf [Consulta: 16 abril 2009]


       Ramirez, Tonáhtiu A. Bases de Datos Federadas. [en línea]
       http://www.tonahtiu.com/notas/BD/BDF.htm [Consulta: 16 abril 2009]


       Oracle Database Lite 10g Developer’s Guide. [en línea]
       http://download.oracle.com/docs/cd/B14156_01/doc/B13788/html/title.htm
       [Consulta: 16 abril 2009]




Bases de Datos Federadas y Bases de Datos Móviles                              18 | P á g i n a

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Base de datos distribuidos
Base de datos distribuidosBase de datos distribuidos
Base de datos distribuidos
 
Base de Datos
Base de DatosBase de Datos
Base de Datos
 
Bd uni 1_2
Bd uni 1_2Bd uni 1_2
Bd uni 1_2
 
Base de datos distribuidas
Base de datos distribuidasBase de datos distribuidas
Base de datos distribuidas
 
Ddbms
DdbmsDdbms
Ddbms
 
Base de datos distribuidas
Base de datos distribuidasBase de datos distribuidas
Base de datos distribuidas
 
Base de datos
Base de datosBase de datos
Base de datos
 
UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDASUNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
DISEÑO DE BASES DE DATOS DISTRIBUIDAS
DISEÑO DE BASES DE DATOS DISTRIBUIDASDISEÑO DE BASES DE DATOS DISTRIBUIDAS
DISEÑO DE BASES DE DATOS DISTRIBUIDAS
 
Gestor de Base de Datos.
Gestor de Base de Datos.Gestor de Base de Datos.
Gestor de Base de Datos.
 
Base de datos 11-6
Base de datos 11-6Base de datos 11-6
Base de datos 11-6
 
Distribución y fragmentación de datos
Distribución y fragmentación  de datosDistribución y fragmentación  de datos
Distribución y fragmentación de datos
 
Bases de datos distribuidas
Bases de datos distribuidasBases de datos distribuidas
Bases de datos distribuidas
 
Conceptos basicos bd
Conceptos basicos bdConceptos basicos bd
Conceptos basicos bd
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Actividad 1base de datos miguel diaz
Actividad 1base de datos miguel diazActividad 1base de datos miguel diaz
Actividad 1base de datos miguel diaz
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
4042340
40423404042340
4042340
 

Andere mochten auch

Andere mochten auch (7)

Base de datos moviles y federadas
Base de datos moviles y federadasBase de datos moviles y federadas
Base de datos moviles y federadas
 
Concentration cells
Concentration cellsConcentration cells
Concentration cells
 
Electrochemistry
ElectrochemistryElectrochemistry
Electrochemistry
 
Concentration cells
Concentration cellsConcentration cells
Concentration cells
 
Transport number
Transport numberTransport number
Transport number
 
Electrode potential
Electrode potentialElectrode potential
Electrode potential
 
Electrode potential and its applications
Electrode potential and its applicationsElectrode potential and its applications
Electrode potential and its applications
 

Ähnlich wie Distribuidas2

Los sistemas gestores de bases de datos y el sql server 2008 Analucia Vera...
Los sistemas gestores de bases de datos y el sql server 2008    Analucia Vera...Los sistemas gestores de bases de datos y el sql server 2008    Analucia Vera...
Los sistemas gestores de bases de datos y el sql server 2008 Analucia Vera...analuveraarias
 
Base de datos (william mata 26550902)
Base de datos (william mata 26550902)Base de datos (william mata 26550902)
Base de datos (william mata 26550902)WilliamMata7
 
Balotario oficial de bd
Balotario oficial de bdBalotario oficial de bd
Balotario oficial de bdingcastroramos
 
Base de datos
Base de datosBase de datos
Base de datosleimy11
 
Base de datos
Base de datosBase de datos
Base de datosleimy11
 
Unidad1 Bases De Datos Distribuidas
Unidad1 Bases De Datos DistribuidasUnidad1 Bases De Datos Distribuidas
Unidad1 Bases De Datos DistribuidasDeysi Hdz
 
Base de datos distribuida
Base de datos distribuidaBase de datos distribuida
Base de datos distribuidaJulio Lovera
 
Trabajo bdd
Trabajo bddTrabajo bdd
Trabajo bddqweryy
 
Bases de datos
Bases de datosBases de datos
Bases de datosJperez98
 
Base de datos_jehisglay_oliveros
Base de datos_jehisglay_oliverosBase de datos_jehisglay_oliveros
Base de datos_jehisglay_oliverosJehisglayOliveros
 
archivodiapositiva_202261218025.pptx
archivodiapositiva_202261218025.pptxarchivodiapositiva_202261218025.pptx
archivodiapositiva_202261218025.pptxStevenTusabes
 
Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Julicamargo
 

Ähnlich wie Distribuidas2 (20)

Los sistemas gestores de bases de datos y el sql server 2008 Analucia Vera...
Los sistemas gestores de bases de datos y el sql server 2008    Analucia Vera...Los sistemas gestores de bases de datos y el sql server 2008    Analucia Vera...
Los sistemas gestores de bases de datos y el sql server 2008 Analucia Vera...
 
Base de datos (william mata 26550902)
Base de datos (william mata 26550902)Base de datos (william mata 26550902)
Base de datos (william mata 26550902)
 
Balotario oficial de bd
Balotario oficial de bdBalotario oficial de bd
Balotario oficial de bd
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
clase 01BDF.pdf
clase 01BDF.pdfclase 01BDF.pdf
clase 01BDF.pdf
 
BD Federadas 01.pptx
BD Federadas 01.pptxBD Federadas 01.pptx
BD Federadas 01.pptx
 
Unidad1 Bases De Datos Distribuidas
Unidad1 Bases De Datos DistribuidasUnidad1 Bases De Datos Distribuidas
Unidad1 Bases De Datos Distribuidas
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos distribuida
Base de datos distribuidaBase de datos distribuida
Base de datos distribuida
 
BASES DE DATOS
BASES DE DATOSBASES DE DATOS
BASES DE DATOS
 
Trabajo bdd
Trabajo bddTrabajo bdd
Trabajo bdd
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Prese 1 base de datos
Prese 1 base de datosPrese 1 base de datos
Prese 1 base de datos
 
Base de datos_jehisglay_oliveros
Base de datos_jehisglay_oliverosBase de datos_jehisglay_oliveros
Base de datos_jehisglay_oliveros
 
Rafael campos h
Rafael campos hRafael campos h
Rafael campos h
 
archivodiapositiva_202261218025.pptx
archivodiapositiva_202261218025.pptxarchivodiapositiva_202261218025.pptx
archivodiapositiva_202261218025.pptx
 
Taller terminado
Taller terminadoTaller terminado
Taller terminado
 
Tallerterminado
TallerterminadoTallerterminado
Tallerterminado
 
Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.
 

Distribuidas2

  • 1. UNIVERSIDAD DE CASTILLA-LA MANCHA ESCUELA SUPERIOR INFORMÁTICA MODELOS AVANZADOS DE BASES DE DATOS BASES DE DATOS FEDERADAS Y BASES DE DATOS MÓVILES Alberto Rosell Borox Marcos Vergara García Matías Blanco León 22 de abril de 2009
  • 2. Índice 1. Bases de Datos Federadas. ..................................................................................... 1 1.1. Características de los SGBDF. ......................................................................... 1 1.2. Tipos de SGBDF. ............................................................................................. 2 1.3. Tipos de Arquitectura para un SGBDF. ........................................................... 5 1.4. Problemas de Implementación.......................................................................... 7 1.5. Aplicaciones Comerciales. ............................................................................... 7 1.6. Caso de Uso: MySQL....................................................................................... 7 2. Base de Datos Móviles. ........................................................................................... 9 2.1. Introducción...................................................................................................... 9 2.2. Arquitectura. ..................................................................................................... 9 2.2.1. Modos de funcionamiento. ..................................................................... 10 2.3. Sistemas Gestores de Bases de Datos móviles. .............................................. 11 2.4. Aplicaciones móviles y tipos de datos............................................................ 11 2.5. Ejemplos de bases de datos móviles............................................................... 12 2.6. Caso de estudio: Oracle Database Lite 10g. ................................................... 13 3. Similitudes entre Bases de Datos Móviles y Bases de Datos Federadas. ......... 15 4. Diferencias entre Bases de Datos Móviles y Bases de Datos Federadas. ......... 16 5. ¿En qué casos es más recomendable usar un sistema u otro? .......................... 17 6. Bibliografía............................................................................................................ 18
  • 3. Modelos Avanzados de Bases de Datos 1. Bases de Datos Federadas. La definición de Base de Datos Federada ha sido realizada por varios autores. Así, Sheth A.P. and Larson, J.A. definieron el concepto base de datos federada como “una colección de sistemas de bases de datos independientes, cooperativos, posiblemente heterogéneos, que son autónomos y que permiten compartir todos o algunos de sus datos”. Además, Larson amplió esta definición diciendo que “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, sino que 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”. La primera definición pone de manifiesto todas las propiedades que definen a una Base de Datos Federada: heterogeneidad, autonomía y distribución. Una Base de Datos Federada se dice que es heterogénea debido a que los sistemas de bases de datos que lo forman pueden tener cualquier arquitectura. En cuanto a la autonomía, esta propiedad se cumple ya que cada sistema de bases de datos funciona por sí mismo y de forma local. Por último, el concepto de distribución hace referencia a que cada sistema de bases de datos puede estar localizado en cualquier punto. En cuanto a la segunda definición, se explica que un sistema federado está compuesto por los datos de las diferentes bases de datos que forman el esquema, pero que dichos datos no están presentes en ningún esquema global. Además, no necesariamente todos los datos de una base de datos son compartidos a los usuarios, sino que se tiene la posibilidad de compartir sólo una porción de los datos. 1.1. Características de los SGBDF. Un Sistema Gestor de Bases de Datos Federadas (SGBDF) es el responsable de proveer una vista de datos transparente al usuario. Esto significa que el usuario percibe a la base de datos federada como una única base de datos local, y no múltiples bases de datos que contienen diferentes datos, que es como en realidad está configurado. Un SGBDF no contiene ningún dato, sino que accede a los datos almacenados en las diferentes bases de datos que forman el esquema. Para acceder a dichos datos es necesario establecer las denominadas federaciones. Una federación es una vista que se establece en una base de datos en particular para exteriorizar los datos que se desean mostrar. Bases de Datos Federadas y Bases de Datos Móviles 1|Página
  • 4. Modelos Avanzados de Bases de Datos A continuación se muestra una figura que ilustra la conexión entre los diferentes elementos que forman una base de datos federada. Esquema de un SGBDF Como se puede apreciar en la figura anterior, un SGBDF está formado por varios gestores de bases de datos. Dichos gestores pueden ser tanto gestores de bases de datos centralizadas (SGBD) como gestores de bases de datos distribuidas (SGBDD). Los SGBDD, además, pueden ser a su vez sistemas de bases de datos federados. Tanto los sistemas gestores como las bases de datos que lo forman son denominados componentes del SGBDF. Los componentes de un SGBDF pueden ejecutar tanto sus operaciones locales como participar en la ejecución de las consultas sobre los datos federados (operaciones globales). La autonomía de cada componente es controlada por el administrador del sistema junto a cada administrador de cada uno de los componentes. Esto es debido a que dicha autonomía difiere según la necesidad de federación existente de cada base de datos con el esquema global. Todas las federaciones en conjunto forman el sistema federado. En cualquier momento, según la necesidad, cualquiera de ellas puede variar. Como se ha dicho antes, el usuario final es transparente a las uniones entre componentes que haya por debajo, por lo que el único cambio que un usuario puede percibir es que tenga acceso a diferentes datos en el esquema global. 1.2. Tipos de SGBDF. Bases de Datos Federadas y Bases de Datos Móviles 2|Página
  • 5. Modelos Avanzados de Bases de Datos Los SGBDF se pueden clasificar en 2 grandes categorías: fuertemente acoplados y débilmente acoplados. Antes de detallar ambas categorías, se muestra un esquema que específica los diferentes tipos de bases de datos federadas. Taxonomía de los SGBDF Como se puede apreciar, vuelve a aparecer el concepto de autonomía como elemento diferenciador entre sistemas federados y sistemas que no lo son. En cuanto a los otros 2 conceptos, heterogeneidad y distribución, ambos se cumplen debido a que la propia definición de sistema federado lo hace posible, al estar compuesto éste de varios SGBD separados en localizaciones diferentes y con distinta arquitectura. SGBDF fuertemente acoplados Este tipo de sistema federado posee un esquema conceptual global que está formado por un subconjunto de los esquemas conceptuales locales, compuesto de los datos que cada sistema local decide compartir. El esquema conceptual global en un sistema fuertemente acoplado implica la integración de partes de los esquemas conceptuales locales o de los esquemas externos locales. En la figura siguiente se ilustra una arquitectura de referencia para un sistema gestor de base de datos federado estrechamente acoplado, es decir, que tiene un esquema conceptual global. Bases de Datos Federadas y Bases de Datos Móviles 3|Página
  • 6. Modelos Avanzados de Bases de Datos Arquitectura de referencia para un SGBDF fuertemente acoplado Las características de un SGBDF fuertemente acoplado son las siguientes: El administrador global del sistema federado tiene todo el control sobre la creación y el acceso a los sistemas de bases de datos componente. Soporta uno o más esquemas federados. La utilización de un SGBDF de este tipo concierne una serie de ventajas: Capacidad de soportar actualizaciones. La interpretación de la semántica de los múltiples datos integrados en el sistema federado es uniforme. Aún así, este tipo de sistema federado posee las siguientes desventajas: Debido a la libertad que disfrutan los administradores globales se puede llegar a violar la autonomía que poseen los sistemas componente. No soporta la evolución dinámica de los esquemas de exportación o componentes. SGBDF débilmente acoplados. Existe otro tipo de sistema federado, débilmente acoplado, que se basa en no tener un esquema conceptual global. En este caso, los esquemas externos están compuestos por uno o más esquemas conceptuales locales. Bases de Datos Federadas y Bases de Datos Móviles 4|Página
  • 7. Modelos Avanzados de Bases de Datos Este otro tipo de sistema federado posee las siguientes características: Los usuarios son los responsables de la creación y el mantenimiento de las federaciones mediante la utilización de vistas. Soporta sistemas de bases de datos altamente autónomos, los cuales los usuarios deben tratar. En cuanto a las ventajas de utilizar este tipo de SGBDF: Dispone de gran flexibilidad para mapear diferentes semánticas de los mismos objetos en distintos esquemas de exportación. Se tiene mayor facilidad para soportar la evolución de los componentes. Y las desventajas de los SGBDF débilmente acoplados son las siguientes: Resulta de gran dificultad la comprensión de grandes cantidades de esquemas de exportación. Los esfuerzos para gestionar este tipo de sistema se duplican. Existen problemas para actualizar las vistas que utilizan los usuarios. 1.3. Tipos de Arquitectura para un SGBDF. A continuación se van a detallar dos tipos de arquitecturas para el manejo de bases de datos federadas. Hay otras muchas, pero en este documento nos vamos a centrar en la arquitectura de Sheth A.P. and Larson, J.A. y la arquitectura propuesta por ANSI/SPARC. Arquitectura de 5 niveles (Sheth y Larson). Sheth y Larson propusieron una arquitectura compuesta por 5 niveles de esquemas, los cuales son los siguientes: Esquema Local: Se trata del esquema conceptual de las bases de datos componente. Esquema Componente: Se obtiene tras transformar el esquema local en un Modelo de Datos Común. Esquema de Exportación: Representa un subconjunto de la totalidad de los datos que contiene el esquema componente. Este subconjunto de datos es el que se quiere compartir en la base de datos federada. Esquema Federado: Está formado por la integración de todos los esquemas de exportación de cada base de datos componente. Bases de Datos Federadas y Bases de Datos Móviles 5|Página
  • 8. Modelos Avanzados de Bases de Datos Esquema Externo: Representa una vista hacia un usuario o conjunto de usuarios determinado. No necesariamente este esquema contiene todos los datos que forman el esquema federado, sino que puede ser un subconjunto de estos. En la siguiente figura se muestra un ejemplo de este tipo de arquitectura que muestra todo lo explicado anteriormente. Arquitectura de 5 niveles de Sheth y Larson Arquitectura de 3 niveles (ANSI/SPARC). Este tipo de arquitectura es muy utilizada en el diseño de bases de datos relacionales. Está formada por los siguientes niveles: Nivel Físico: Está compuesto por el esquema interno. Dicho esquema contiene las diferentes bases de datos componente que forman la base de datos federada. Nivel Lógico: Corresponde al esquema conceptual. Este nivel contiene el modelo global de datos, es decir, el conjunto de datos compartido por todas las bases de datos componente. Nivel Externo: Está representado por el esquema externo. Este esquema está compuesto por las diferentes vistas que poseen los usuarios a los datos compartidos. Para mostrar de forma más clara esta arquitectura se sugiere la siguiente figura: Bases de Datos Federadas y Bases de Datos Móviles 6|Página
  • 9. Modelos Avanzados de Bases de Datos Arquitectura de 3 niveles (ANSI/SPARC) 1.4. Problemas de Implementación. La implementación de este tipo de base de datos concierne una serie de problemas que se citan a continuación: Incompatibilidad entre los sistemas de consulta de los diferentes fabricantes Diferente codificación utilizada por las bases de datos componente Generación de códigos de error incompatibles por los diferentes fabricantes Dificultades para establecer un control de la concurrencia en las distintas transacciones Las transacciones son heterogéneas debido a que cada SGBD mantiene su autonomía 1.5. 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, etc., 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. 1.6. Caso de Uso: MySQL. Bases de Datos Federadas y Bases de Datos Móviles 7|Página
  • 10. Modelos Avanzados de Bases de Datos A continuación se va a realizar un ejemplo sencillo de base de datos federada. Para ello se va a utilizar el SGBD MySQL, que dispone de una versión gratuita que permite crear bases de datos federadas. 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 bbdd1. CREATE DATABASE IF NOT EXISTS bbdd1; USE bbdd1; 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; Ahora, nuestra base de datos federada va a contener otra tabla que va a tener una federación a esta primera tabla definida. CREATE DATABASE IF NOT EXISTS bbdd_federada; USE bbdd_federada; 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/bbdd1/cliente’; 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. Bases de Datos Federadas y Bases de Datos Móviles 8|Página
  • 11. Modelos Avanzados de Bases de Datos 2. Base de Datos Móviles. 2.1. Introducción. En los últimos años se han producido grandes avances en las tecnologías de comunicación inalámbricas. Estos avances, junto al uso cada vez más extendido de los dispositivos móviles, han causado la aparición de una nueva disciplina: la computación móvil. Gracias a la computación móvil, los usuarios pueden acceder a una base de datos remota en cualquier momento y en cualquier lugar. Los empleados de una empresa pueden trabajar desde su casa, desde las instalaciones del cliente o mientras están de viaje, de la misma forma que si estuvieran en la oficina. La computación móvil introduce el concepto de base de datos móvil. Una base de datos móvil es una base de datos portable, físicamente independiente del servidor corporativo de base de datos y capaz de comunicarse con ese servidor desde sitios remotos para compartir datos corporativos. Utilizando bases de datos móviles, los trabajadores pueden acceder a los datos corporativos desde cualquier dispositivo que disponga de conexión a Internet. 2.2. Arquitectura. La arquitectura general de una plataforma móvil es un modelo distribuido formado por computadores fijos, estaciones base y unidades móviles. Los computadores fijos son computadores de uso general que no disponen de medios para comunicarse con los unidades móviles. Las estaciones base disponen de enlaces inalámbricos para conectar con las unidades móviles; son máquinas que actúan de intermediarios entre las unidades móviles y los computadores fijos. Los computadores fijos y las estaciones base están interconectados por medio de una red fija (cableada) de alta velocidad. Las unidades móviles se conectan a las estaciones base mediante enlaces inalámbricos; los enlaces más comunes son el estándar 802.11 (Wi-Fi), el servicio GPRS y la tecnología Bluetooth. Bases de Datos Federadas y Bases de Datos Móviles 9|Página
  • 12. Modelos Avanzados de Bases de Datos Arquitectura general de una plataforma móvil (Dunham y Helal, 1995) Las unidades móviles se pueden mover libremente por un espacio conocido como dominio de movilidad geográfica, cuyo alcance está determinado por la cobertura de los enlaces inalámbricos. Este dominio se divide en dominios más pequeños llamados celdas. Cada celda es controlada por una estación base. El movimiento de las unidades móviles dentro del dominio de movilidad geográfica no debe estar restringido, es decir, se debe garantizar el acceso a la información aunque las unidades móviles se muevan entre las celdas. 2.2.1. Modos de funcionamiento. Hay dos modos de funcionamiento para trabajar con los datos: El usuario de un dispositivo móvil se conecta al servidor de base de datos corporativo y trabaja directamente con los datos. El usuario descarga una copia de los datos y trabaja con ellos de forma local. Posteriormente, se conectará al servidor de base de datos corporativo para actualizar la base de datos. La adopción del modo funcionamiento depende fundamentalmente de los requisitos de cada aplicación. Otro factor importante a la hora de elegir el modo de funcionamiento es la tecnología de comunicación utilizada para conectar a las estaciones base; el coste puede ser Bases de Datos Federadas y Bases de Datos Móviles 10 | P á g i n a
  • 13. Modelos Avanzados de Bases de Datos elevado si la conexión con el servidor es permanente y se utiliza una comunicación de pago como GPRS. 2.3. Sistemas Gestores de Bases de Datos móviles. Muchos fabricantes ofrecen SGBD móviles capaces de comunicarse con los principales SGBD relacionales. Estos SGBD móviles están adaptados a los recursos limitados de las unidades móviles y proporcionan una serie de funcionalidades adicionales: Comunicación con el servidor centralizado de base de datos mediante técnicas de comunicación inalámbrica. Replicación de datos en el servidor centralizado de base de datos y en el dispositivo móvil. Sincronización de datos entre el servidor centralizado de base de datos y el dispositivo móvil. Gestión de datos en el dispositivo móvil. Análisis de los datos almacenados en el dispositivo móvil. 2.4. Aplicaciones móviles y tipos de datos. Las aplicaciones móviles se clasifican en las dos siguientes categorías: aplicaciones verticales y aplicaciones horizontales (Imielinski y Badrinath, 1994). En las aplicaciones verticales, los usuarios acceden a los datos en una celda específica; fuera de la celda los datos no están disponibles. Un ejemplo de aplicación vertical es la obtención de información sobre las plazas libres de un determinado parking. En las aplicaciones horizontales, los datos están distribuidos por todo el sistema, y los usuarios pueden acceder a ellos desde cualquier celda. La aplicación horizontal más común es el acceso al correo electrónico. Los datos se clasifican en tres categorías: Datos privados: pertenecen a un usuario y sólo él puede acceder a ellos y manejarlos. Por ejemplo, los datos del perfil de un usuario de cualquier aplicación que gestione datos personales. Datos públicos: pueden ser consultados por cualquier usuario, pero sólo pueden ser modificados por una única fuente. Por ejemplo, los datos de las cotizaciones de la bolsa. Datos compartidos: pueden ser accedidos por un grupo determinado de usuarios, quienes tienen permisos para leerlos y para escribirlos. Por ejemplo, Bases de Datos Federadas y Bases de Datos Móviles 11 | P á g i n a
  • 14. Modelos Avanzados de Bases de Datos los datos de seguros de una compañía aseguradora que vende productos utilizando agentes comerciales. Las aplicaciones horizontales utilizan, principalmente, datos públicos, mientras que las aplicaciones horizontales suelen utilizar más los datos compartidos. 2.5. Ejemplos de bases de datos móviles. iAnywhere Solutions, empresa filial de Sybase, lidera el ranking del mercado de bases de datos móviles gracias a SQL Anywhere. Este paquete proporciona bases de datos que pueden utilizarse tanto a nivel de servidor (soporta máquinas de hasta 64bits) como a nivel de dispositivo móvil. SQL Anywhere se compone de las siguientes tecnologías: SQL Anywhere Server: sistema gestor de bases de datos relacionales para los sistemas de bases de datos móviles. Ultralite: sistema gestor de bases de datos que puede embeberse en dispositivos móviles. Mobilink: tecnología de sincronización para el intercambio de datos entre bases de datos relacionales y bases de datos no relacionales. QAnywhere: facilita el desarrollo de aplicaciones móviles robustas y seguras. SQL Remote: permite a los usuarios de dispositivos móviles sincronizar sus datos con otras bases de datos SQL Anywhere. DB2 Everyplace de IBM es una base de datos relacional y un servidor de sincronización que permite extender las aplicaciones y los datos empresariales a dispositivos móviles. Gracias a un consumo de recursos reducido, esta base de datos puede integrarse en dispositivos como PDAs y teléfonos móviles. Microsoft también ofrece una base de datos para dispositivos móviles. Se trata de Microsoft SQL Server Compact 3.5, un motor de bases de datos que permite desarrollar aplicaciones en cualquier plataforma Windows incluyendo Tablet PCs, Pocket PCs, Smart Phones y equipos de escritorio. Oracle Database Lite 10g es la solución de Oracle para desarrollar aplicaciones en entornos móviles. Proporciona un cliente que permite la realización de consultas SQL para acceder a los datos locales del dispositivo y un servidor para gestionar los datos de forma centralizada. Bases de Datos Federadas y Bases de Datos Móviles 12 | P á g i n a
  • 15. Modelos Avanzados de Bases de Datos Otros productos menos utilizados son Borland’s JDataStore, una base de datos Java para dispositivos móviles y aplicaciones Web, o MobiSnap, un proyecto de investigación cuyo objetivo es soportar el desarrollo de aplicaciones con bases de datos relacionales en entornos móviles. 2.6. Caso de estudio: Oracle Database Lite 10g. Oracle Database Lite 10g es una solución integrada para el desarrollo de aplicaciones en entornos móviles. Para evitar que los dispositivos móviles estén continuamente conectados al servidor, Oracle Database Lite 10g proporciona una pequeña base de datos para gestionar los datos empresariales de forma local en el dispositivo móvil. Arquitectura de las aplicaciones Oracle Database Lite 10g La figura anterior muestra la arquitectura de las aplicaciones Oracle Database Lite 10g. Esta arquitectura contiene los siguientes componentes: Mobile Sync Module: aplicación instalada en el dispositivo móvil que permite la sincronización de datos con el servidor empresarial. Oracle Lite RDBMS: sistema gestor de bases de datos relacionales creado específicamente para dispositivos móviles. Proporciona interfaces ODBC, JDBC, SODA y ADO para permitir la utilización de aplicaciones desarrolladas en lenguajes como Java, C/C++ y Visual Basic. Oracle Lite database: base de datos instalada en el dispositivo móvil. Mobile Server: servidor intermedio entre los dispositivos móviles y el servidor empresarial. Permite la instalación y actualización de aplicaciones en los Bases de Datos Federadas y Bases de Datos Móviles 13 | P á g i n a
  • 16. Modelos Avanzados de Bases de Datos dispositivos móviles y se comunica con el módulo Mobile Sync para sincronizar los datos entre el dispositivo móvil y el servidor empresarial. Message Generator and Processor (MGP): módulo utilizado en la sincronización de datos para detectar y solucionar cualquier conflicto que pueda producirse en la actualización de los datos del servidor. Mobile Server Repository: repositorio que contiene información necesaria para que el Mobile Server pueda ejecutarse. Esta información se almacena junto a los datos del negocio, en la misma base de datos. Los pasos para poner en funcionamiento una aplicación con Oracle Database Lite 10g son los siguientes: 1. Instalar y configurar la base de datos Oracle en el servidor. 2. Instalar y configurar el Mobile Server en el equipo que hará de intermediario entre los dispositivos móviles y el servidor. 3. Instalar y configurar el Mobile Server Repository en el servidor. 4. Instalar Oracle Lite RDBMS y Mobile Sync en los dispositivos móviles; para facilitar esta tarea, Oracle ofrece un producto llamado Mobile Development Kit, que instala rápidamente todos los componentes en los dispositivos móviles. Una base de datos local Oracle Lite contiene un subconjunto de los datos almacenados en la base de datos Oracle. Los cambios realizados en el dispositivo móvil deben sincronizarse con los datos del servidor. De esta tarea se encarga el módulo Mobile Sync; primero envía los cambios al Mobile Server, y después descarga los nuevos cambios y los aplica en la base de datos local Oracle Lite. Sincronización de datos entre la base de datos local y la base de datos remota Bases de Datos Federadas y Bases de Datos Móviles 14 | P á g i n a
  • 17. Modelos Avanzados de Bases de Datos 3. Similitudes entre Bases de Datos Móviles y Bases de Datos Federadas. Las dos bases de datos son modelos distribuidos de bases de datos a los cuáles se accede de forma remota, ya sea desde un equipo fijo o un equipo móvil. Los dos sistemas tienen mecanismos de privilegios de usuarios. Dependiendo de los privilegios que tenga el usuario que accede al sistema, dicho usuario podrá acceder a una parte del esquema u a otra. En estos sistemas el usuario no es consciente de la disposición geográfica en la que se encuentra el servidor o servidores de bases de datos. Esta característica también da al usuario un gran nivel de movilidad y de acceso a los datos desde cualquier punto. Son sistemas complejos que necesitan una gran infraestructura que dé soporte a este tipo de bases de datos. Necesitan tener definidos mecanismos de concurrencia de los datos para que no se vea dañada la integridad de los mismos en el caso de que varios usuarios accedan a los mismos datos a la vez. Al tener la parte de almacenamiento de datos, y el acceso a los mismos, distribuida, se libera de una gran carga computacional a los equipos implicados en el sistema. Para acceder a dichos sistemas se necesita una interfaz, adaptada al dispositivo desde el cual se va a acceder, que dé soporte y acceso a las funcionalidades disponibles al usuario por parte del sistema. Bases de Datos Federadas y Bases de Datos Móviles 15 | P á g i n a
  • 18. Modelos Avanzados de Bases de Datos 4. Diferencias entre Bases de Datos Móviles y Bases de Datos Federadas. A los sistemas de bases de datos móviles se accede por medio de dispositivos móviles. Éstos, a su vez, acceden por medio de estaciones base y están comunicados directamente con la base de datos, aunque también se puede acceder desde equipos fijos. Las bases de datos federadas sólo son accesibles desde equipos fijos conectados a la infraestructura del sistema de bases de datos. Los sistemas de bases de datos móviles están formados por un sólo tipo gestor de bases de datos, y todos los equipos conectados al sistema atacan al mismo gestor de base de datos. A diferencia de éstos, las bases de datos federadas permiten conectar diferentes sistemas gestores de bases de datos, que conforman una sola base de datos. Los sistemas de bases de datos móviles permiten a los usuarios trabajar de forma desconectada con los datos, y una vez que éstos han sido modificados, los usuarios sincronizan dichos datos con el sistema. Esto evita que los dispositivos móviles tengan que estar siempre conectados al sistema para interactuar y acceder a la base de datos. En el caso de las bases de datos móviles, el sistema se puede reducir sólo al dispositivo móvil que lo ejecuta, ya que éste es el único que contiene la base de datos y accede a ellos. Este tipo de sistemas son sistemas gestores de bases de datos embebidos en el mismo dispositivo. Las bases de datos federadas son un conjunto de esquemas unificados, a diferencia de las bases de datos móviles, que sólo disponen de un esquema global. Los sistemas de bases de datos federados permiten dar acceso a una gran cantidad de datos que los demás sistemas no podrían permitir ni soportar. Bases de Datos Federadas y Bases de Datos Móviles 16 | P á g i n a
  • 19. Modelos Avanzados de Bases de Datos 5. ¿En qué casos es más recomendable usar un sistema u otro? Las bases de datos móviles son recomendadas en los casos en los que los usuarios deben estar moviéndose de un lugar para otro para realizar las funciones y cuando la información que deben tratar se puede mostrar y tratar en un dispositivo móvil. Este tipo de base de datos también permite a los dispositivos móviles y a las aplicaciones que corren en ellos almacenar datos, con todas las ventajas que ofrece un gestor de base de datos. Los sistemas de bases de datos federados son usados cuando la cantidad de datos es muy grande y, además, cuando los mismos se encuentren en diferentes sistemas. Estos sistemas permiten unificar las bases de datos para permitir al usuario acceder a los datos de forma transparente, sin que sea consciente de la modularidad de la base de datos, y así poder acceder a diferentes datos de diferentes bases de datos a la vez. Bases de Datos Federadas y Bases de Datos Móviles 17 | P á g i n a
  • 20. Modelos Avanzados de Bases de Datos 6. Bibliografía Connolly, T. M.; Begg, C. E. Sistemas de Bases de Batos. Pearson Educación S.A., 2005. Elmasri, Ramez. Fundamentos de Sistemas de Bases de Datos. Addison-Wesley, 2002. Imielinski, Tomasz; Korth, Henry. Mobile Computing. Springer, 1996. Dunham, M. H.; Helal, A.; Balakrishnan, S. A mobile transaction model that captures both the data and movement behaviour. ACM/Baltzer Journal on Special Topics in Mobile Networks and Applications, 1997. Dunham, M.H.; Helal, A. Mobile computing and databases: Anything new? ACM SIGMOD, 1995. Piattini Velthuis, Mario. El futuro de las bases de datos. [en línea] http://www.ganimides.ucm.cl/aurrutia/doc_pdf/El%20Futuro%20de%20las%20Bases% 20de%20Datos.pdf [Consulta: 16 abril 2009] Motz, Regina. Arquitecturas para DBMS distribuidos y heterogéneos. [en línea] http://www.fing.edu.uy/inco/grupos/csi/esp/Cursos/cursos_posg/Inter2002/transpar encias/arquitecturas.pdf [Consulta: 16 abril 2009] Ramirez, Tonáhtiu A. Bases de Datos Federadas. [en línea] http://www.tonahtiu.com/notas/BD/BDF.htm [Consulta: 16 abril 2009] Oracle Database Lite 10g Developer’s Guide. [en línea] http://download.oracle.com/docs/cd/B14156_01/doc/B13788/html/title.htm [Consulta: 16 abril 2009] Bases de Datos Federadas y Bases de Datos Móviles 18 | P á g i n a