1 - Universidad de Castilla-La Mancha
1 - Universidad de Castilla-La Mancha
1 - Universidad de Castilla-La Mancha
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
UNIVERSIDAD DE CASTILLA-LA MANCHA<br />
ESCUELA SUPERIOR DE INFORMÁTICA<br />
INGENIERÍA EN<br />
INFORMÁTICA<br />
DISTRIBUIDOS 2:<br />
Bases <strong>de</strong> datos Fe<strong>de</strong>radas<br />
Bases <strong>de</strong> datos Móviles<br />
Ariadna Gómez Escobar<br />
Fátima Ruiz Fernán<strong>de</strong>z<br />
Verónica Cuevas Ruiz
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
ÍNDICE<br />
BASES DE DATOS FEDERADAS…………………………………………………...<br />
1.1. Introducción…………………………………………………………….<br />
1.2. Sistema Gestor <strong>de</strong> Bases <strong>de</strong> Datos Fe<strong>de</strong>radas (SGBDF)……………….<br />
1.2.1. Propieda<strong>de</strong>s <strong>de</strong>l SGBDF………………………………………..<br />
1.2.2. Clasificación…………………………………………………….<br />
1.3. Bases <strong>de</strong> Datos Fe<strong>de</strong>radas (BDF)………………………………………<br />
1.4. Arquitectura <strong>de</strong> un sistema <strong>de</strong> Base <strong>de</strong> Datos fe<strong>de</strong>rada (SBDF)……….<br />
1.5. Problemática para la implementación <strong>de</strong> BDF…………………............<br />
1.6. Sistemas Distribuidos contra Sistemas Fe<strong>de</strong>rados……………..............<br />
1.7. Ejemplo Base <strong>de</strong> Datos Fe<strong>de</strong>rada………………………………………<br />
BASES DE DATOS MÓVILES………………………………………………………<br />
2.1. Introducción…………………………………………………………….<br />
2.2. Arquitectura…………………………………………………………….<br />
2.3. Temas sobre Gestión <strong>de</strong> Datos…………………………………………<br />
2.4. Ejemplos <strong>de</strong> Bases <strong>de</strong> Datos Móviles………………………………….<br />
2.5. Caso <strong>de</strong> Estudio: Oracle9i Lite…………………………………………<br />
2.6. Ventajas e Inconvenientes……………………………………………...<br />
COMPARACIÓN DE AMBOS MODELOS………………………………………….<br />
BIBLIOGRAFÍA……………………………………………………………………….<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 2
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
BASES DE DATOS FEDERADAS<br />
1.1. INTRODUCCIÓN<br />
El avance espectacular <strong>de</strong> las comunicaciones y la creciente necesidad <strong>de</strong> cooperar con otras<br />
entida<strong>de</strong>s in<strong>de</strong>pendientes, obligan a replantear los conceptos fundamentales <strong>de</strong> las bases <strong>de</strong><br />
datos, dirigiéndose <strong>de</strong> forma directa a la reciente ten<strong>de</strong>ncia <strong>de</strong> crear software para tener acceso<br />
a varias bases <strong>de</strong> datos autónomas preexistentes almacenadas en SGBD heterogéneos.<br />
Pero el acceso a varias bases <strong>de</strong> datos como si <strong>de</strong> una sola se tratara viene acompañado <strong>de</strong><br />
problemas como la integración, seguridad, control, etc. Para poner solución a estos problemas y<br />
ofrecer un a<strong>de</strong>cuado acceso a varias bases <strong>de</strong> datos se han <strong>de</strong>sarrollado nuevos esquemas como<br />
los Sistemas Gestores <strong>de</strong> Bases <strong>de</strong> Datos Fe<strong>de</strong>radas (SGBDF).<br />
1.2. SISTEMA GESTOR DE BASES DE DATOS FEDERADAS (SGBDF)<br />
Los primeros sistemas gestores <strong>de</strong> bases <strong>de</strong> datos surgen en los 60, pero no es hasta los 90<br />
cuando aparecen los sistemas gestores <strong>de</strong> bases <strong>de</strong> datos fe<strong>de</strong>rados. Aunque el concepto <strong>de</strong><br />
bases <strong>de</strong> datos fe<strong>de</strong>radas viene <strong>de</strong> Hammer y McLeod en 1979 y luego retomado en 1985 por<br />
Heimbigner y McLeod y posteriormente en 1990 y 1991 por Sheth y <strong>La</strong>rson y luego por Saltor.<br />
En general los sistemas gestores <strong>de</strong> bases <strong>de</strong> datos fe<strong>de</strong>rados, tienen la función <strong>de</strong> compartir<br />
solo la información que quieran compartir las entida<strong>de</strong>s participantes, a<strong>de</strong>más <strong>de</strong> que los<br />
usuarios locales podrán acce<strong>de</strong>r <strong>de</strong> forma transparente a los <strong>de</strong>más datos compartidos y ver los<br />
suyos, como si fuera una sola base <strong>de</strong> datos, esto sin embargo no es algo sencillo pero es algo<br />
muy útil.<br />
1.2.1. PROPIEDADES DEL SGBDF<br />
tiene un manejo transparente para los usuarios.<br />
Se aprecia como una sola base <strong>de</strong> datos.<br />
El sistema está conformado por un conjunto <strong>de</strong> bases <strong>de</strong> datos heterogéneas. Esto<br />
significa que pue<strong>de</strong>n o no tener diferentes sistemas operativos, diferente equipo <strong>de</strong><br />
computo (hardware), diferentes sistemas gestores <strong>de</strong> bases <strong>de</strong> datos, diferente<br />
mo<strong>de</strong>lo <strong>de</strong> datos( red, Relacional, orientada a objetos), diferente estructura <strong>de</strong> datos.<br />
<strong>La</strong>s bases <strong>de</strong> datos que participan en la BDF mantienen su autonomía. Esto quiere<br />
<strong>de</strong>cir que cada elemento <strong>de</strong> la fe<strong>de</strong>ración <strong>de</strong>ci<strong>de</strong> con quien, qué y cómo compartir<br />
sus datos, a<strong>de</strong>más <strong>de</strong> que cada una cuenta con su respectivo diseño <strong>de</strong> acuerdo con<br />
las necesida<strong>de</strong>s <strong>de</strong>l usuario.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 3
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
El SGBDF <strong>de</strong>berá tener un optimizador <strong>de</strong> recursos para aprovechar correctamente<br />
todos los componentes.<br />
Pue<strong>de</strong>n ser físicamente distribuidas e in<strong>de</strong>pendientes en diferentes lugares.<br />
Un SBDF pue<strong>de</strong> ser categorizado como débilmente acoplado o fuertemente acoplado<br />
basado en la i<strong>de</strong>a <strong>de</strong> quien maneja la fe<strong>de</strong>ración y como los componentes son<br />
integrados.<br />
Los SBDF tienen dos niveles, nivel componente ( bases <strong>de</strong> datos existentes) y nivel<br />
fe<strong>de</strong>rado (conjunto <strong>de</strong> bases <strong>de</strong> datos que interoperan)<br />
Se dice que las bases <strong>de</strong> datos se fe<strong>de</strong>ran para dar lugar a un SGBDF. A continuación se<br />
muestra una gráfica con la i<strong>de</strong>a <strong>de</strong> un esquema <strong>de</strong> sistema <strong>de</strong> datos fe<strong>de</strong>rados<br />
Sistema gestor <strong>de</strong> Base <strong>de</strong> Datos Fe<strong>de</strong>rada.<br />
<strong>La</strong>s fe<strong>de</strong>raciones se forman y <strong>de</strong>saparecen<br />
No existe un esquema conceptual único<br />
Un componente pue<strong>de</strong> ser <strong>de</strong> varios sistemas fe<strong>de</strong>rados<br />
Un componente pue<strong>de</strong> ser otro sistema <strong>de</strong> bases <strong>de</strong> datos fe<strong>de</strong>rados<br />
1.2.2. CLASIFICACIÓN SGBDF<br />
Según Sheth y <strong>La</strong>rson po<strong>de</strong>mos clasificar según el grado <strong>de</strong> autonomía, los SGBDF en:<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 4
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
Débilmente acoplados: cuando es responsabilidad propia <strong>de</strong> cada usuario crear y mantener la<br />
fe<strong>de</strong>ración y no existe ningún tipo <strong>de</strong> control <strong>de</strong>s<strong>de</strong> el sistema fe<strong>de</strong>rado ni <strong>de</strong> sus<br />
administradores. Estos sistemas también se conocen como sistemas <strong>de</strong> bases <strong>de</strong> datos<br />
interoperables y/o sistemas multibase <strong>de</strong> datos.<br />
Fuertemente acoplados: cuando la fe<strong>de</strong>ración y sus administradores son responsables <strong>de</strong> la<br />
creación y el mantenimiento <strong>de</strong> la misma y participan activamente en el control <strong>de</strong> acceso <strong>de</strong> las<br />
BDF. Un sistema fe<strong>de</strong>rado fuertemente acoplado pue<strong>de</strong> ser <strong>de</strong> dos tipos.<br />
Con fe<strong>de</strong>ración única: si permite la creación y gestión <strong>de</strong> un único esquema<br />
fe<strong>de</strong>rado.<br />
Con múltiples fe<strong>de</strong>raciones: si permite la creación y gestión <strong>de</strong> múltiples<br />
esquemas fe<strong>de</strong>rados.<br />
1.3. BASES DE DATOS FEDERADAS (BDF)<br />
Se <strong>de</strong>be remarcar que una base <strong>de</strong> datos fe<strong>de</strong>rada no es una base <strong>de</strong> datos única distribuida,<br />
más bien son soluciones para acce<strong>de</strong>r a la información <strong>de</strong>positada en distintas bases <strong>de</strong> datos.<br />
Un sistema <strong>de</strong> bases <strong>de</strong> datos fe<strong>de</strong>radas es una colección <strong>de</strong> sistemas <strong>de</strong> bases <strong>de</strong> datos<br />
cooperativos y autónomos.<br />
<strong>La</strong> importancia principal <strong>de</strong> las bases <strong>de</strong> datos fe<strong>de</strong>radas radica principalmente en su bi-<br />
procesamiento. Es <strong>de</strong>cir, en su capacidad <strong>de</strong> aten<strong>de</strong>r consultas globales, al mismo tiempo que<br />
permite que la base <strong>de</strong> datos componente siga atendiendo a sus aplicaciones locales.<br />
En un sistema fe<strong>de</strong>rado los usuarios tienen acceso a los datos, <strong>de</strong> los distintos sistemas, a<br />
través <strong>de</strong> una interfaz común sin embargo, no existe un esquema global que <strong>de</strong>scriba a todos los<br />
datos <strong>de</strong> las distintas bases <strong>de</strong> datos, en su lugar hay varios esquemas unificados, cada uno<br />
<strong>de</strong>scribiendo porciones <strong>de</strong> bases <strong>de</strong> datos y archivos para el uso <strong>de</strong> cierta clase <strong>de</strong> usuarios.<br />
<strong>La</strong> autonomía o la integración <strong>de</strong> los componentes la controla el administrador <strong>de</strong>l sistema<br />
global en colaboración con los administradores <strong>de</strong> las bases <strong>de</strong> datos componente. Este nivel <strong>de</strong><br />
integración se da <strong>de</strong> acuerdo a las necesida<strong>de</strong>s propias <strong>de</strong> cada componente.<br />
Es posible agrupar/<strong>de</strong>sagrupar componentes para formar una fe<strong>de</strong>ración, pudiendo entrar/salir<br />
componentes <strong>de</strong> la fe<strong>de</strong>ración.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 5
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
1.4. ARQUITECTURA DE UN SISTEMA DE BASE DE DATOS FEDERADA (SBDF)<br />
<strong>La</strong> arquitectura porpuesta por Sheth y <strong>La</strong>rson se trata <strong>de</strong> una arquitectura con cinco niveles <strong>de</strong><br />
esquemas para un SBDF: esquema local, esquema componente, esquema <strong>de</strong> exportación,<br />
esquema fe<strong>de</strong>rado y esquema externo.<br />
1. Esquema Local. Un esquema local es el esquema conceptual <strong>de</strong> los componentes.<br />
2. Esquema Componente. Un esquema componente es <strong>de</strong>rivado <strong>de</strong> trasladar el<br />
esquema local en un mo<strong>de</strong>lo <strong>de</strong> datos llamado canónico o mo<strong>de</strong>lo <strong>de</strong> datos común.<br />
3. Esquema <strong>de</strong> Exportación. Un esquema <strong>de</strong> exportación representa un subconjunto <strong>de</strong><br />
un esquema componente que está disponible para el SBDF.<br />
4. Esquema Fe<strong>de</strong>rado. Un esquema fe<strong>de</strong>rado es una integración <strong>de</strong> múltiples esquemas<br />
<strong>de</strong> exportación. Este esquema también incluye la información <strong>de</strong> la distribución <strong>de</strong> datos que<br />
es generada cuando se integran los esquemas <strong>de</strong> exportación.<br />
5. Esquema Externo. Un esquema externo <strong>de</strong>fine un esquema para un usuario y/o<br />
aplicación. Este esquema pue<strong>de</strong> ser usado para especificar un subconjunto <strong>de</strong> la información<br />
en el esquema fe<strong>de</strong>rado.<br />
1.5. PROBLEMÁTICA PARA LA IMPLEMENTACIÓN DE BASES DE DATOS<br />
FEDERADAS<br />
Uno <strong>de</strong> los principales problemas es la incompatibilidad entre los sistemas <strong>de</strong> consulta<br />
entre los diferentes fabricantes, aunque existen estándares para el SQL por ejemplo el SQL 92,<br />
normalmente los fabricantes construyen dialectos, o finalmente una instrucción no es la misma<br />
en un gestor que en otro, o simplemente tipos <strong>de</strong> datos. Otro problema es la codificación por<br />
ejemplo unos usan ASCII otros ASCII extendido. Otro aspecto importante, son los códigos <strong>de</strong><br />
error generados por los distintos fabricantes, que normalmente no son compatibles.<br />
Problemas en transacciones<br />
Control <strong>de</strong> concurrencia. El SGBDF no conoce las transacciones a nivel <strong>de</strong><br />
componentes y los componentes no siempre pue<strong>de</strong>n distinguir entre transacciones<br />
propias y externas.<br />
Heterogeneidad. Cada SGBD mantiene su autonomía.<br />
<strong>La</strong> autonomía total es incompatible con la atomicidad.<br />
Soluciones comerciales<br />
Existen varias opciones y varias instituciones y compañías que trabajan para solucionar<br />
estos problemas <strong>de</strong> interoperabilidad, sin embargo muy pocos trabajan para la administración<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 6
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
global, algunas <strong>de</strong> las compañías que trabajan en soluciones son Augsoft, Oracle, Sybase, y ha<br />
usado distintas opciones por ejemplo ODBC(open Data Base Connectivity) y JDBC el conector<br />
<strong>de</strong> Java, en general los gran<strong>de</strong>s gestores <strong>de</strong> bases <strong>de</strong> datos contienen alguna herramienta para<br />
po<strong>de</strong>r hacer esto, lo malo es que tienen un producto para conectarse con otros gestores, pero<br />
cada uno se ven<strong>de</strong> aparte a<strong>de</strong>más <strong>de</strong> que los costos son exorbitantes.<br />
1.6. SISTEMAS DISTRIBUIDOS CONTRA SISTEMAS FEDERADOS<br />
Semejanzas<br />
Los datos están en diversas ubicaciones.<br />
<strong>La</strong>s instalaciones están interconectadas<br />
Ambos tienen dos componentes: global/local y fe<strong>de</strong>rado/componente.<br />
Reciben peticiones que son resueltas en una sola respuesta.<br />
Diferencias<br />
En cuanto a diseño.<br />
SGDBD (Sistema gestor <strong>de</strong> bases <strong>de</strong> datos distribuidas). Utilizan un diseño top – down,<br />
existe una sola base <strong>de</strong> datos y se distribuye en diferentes ubicaciones. Se fragmenta o<br />
se replica.<br />
SGBDF. Utiliza un diseño Botton – up, las bases <strong>de</strong> datos ya existen y se i<strong>de</strong>ntifica<br />
como se formaran las fe<strong>de</strong>raciones.<br />
En cuanto a Niveles.<br />
SGBDD. Local y global.<br />
SGBDF. Fe<strong>de</strong>rado y componente.<br />
En cuanto a autonomía.<br />
SGBDD. Carece <strong>de</strong> esta ya que la base esta bajo las reglas <strong>de</strong>l global.<br />
SGBDF. Cada base que compone al sistema fe<strong>de</strong>rado, es autónoma y por tanto tiene sus<br />
propios privilegios.<br />
En cuanto a transparencia.<br />
SGBDD. Los usuarios ven a la base como una sola y no sabe como se encuentra<br />
distribuida.<br />
SGBDF. Existen dos tipos <strong>de</strong> usuarios, el primero es el que ve la base <strong>de</strong> datos como si<br />
fuera única, y otros ven un componente <strong>de</strong> la base <strong>de</strong> datos.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 7
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
1.7. EJEMPLO BASE DE DATOS FEDERADA<br />
MySQL 5.0.3 permite crear tablas fe<strong>de</strong>radas <strong>de</strong> forma sencilla.<br />
¿Cómo usar las tablas FEDERATED?<br />
El procedimiento para usar tablas FEDERATED es muy simple. Normalmente, tiene dos<br />
servidores en ejecución, en la misma máquina o en distintas. (También es posible para una tabla<br />
FEDERATED usar otra tabla administrada por el mismo servidor, aunque no tiene mucho<br />
sentido.)<br />
Primero, tiene que tener una tabla en el servidor remoto que quiera acce<strong>de</strong>r con la tabla<br />
FEDERATED . Suponga que la tabla remota está en la base <strong>de</strong> datos fe<strong>de</strong>rated y se <strong>de</strong>fine así:<br />
CREATE TABLE test_table (<br />
id int(20) NOT NULL auto_increment,<br />
name varchar(32) NOT NULL <strong>de</strong>fault '',<br />
other int(20) NOT NULL <strong>de</strong>fault '0',<br />
PRIMARY KEY (id),<br />
KEY name (name),<br />
KEY other_key (other)<br />
)<br />
ENGINE=MyISAM<br />
DEFAULT CHARSET=latin1;<br />
A continuación, cree una tabla FEDERATED en el servidor local para acce<strong>de</strong>r a la tabla remota:<br />
CREATE TABLE fe<strong>de</strong>rated_table (<br />
id int(20) NOT NULL auto_increment,<br />
name varchar(32) NOT NULL <strong>de</strong>fault '',<br />
other int(20) NOT NULL <strong>de</strong>fault '0',<br />
PRIMARY KEY (id),<br />
KEY name (name),<br />
KEY other_key (other)<br />
)<br />
ENGINE=FEDERATED<br />
DEFAULT CHARSET=latin1<br />
COMMENT='mysql://root@remote_host:9306/fe<strong>de</strong>rated/test_table';<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 8
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
BASES DE DATOS MÓVILES<br />
2.1. INTRODUCCIÓN<br />
Los dispositivos móviles junto con las comunicaciones inalámbricas, permiten a los clientes el<br />
acceso a los datos <strong>de</strong>s<strong>de</strong> prácticamente cualquier lugar y en cualquier momento. Esta<br />
funcionalidad resulta especialmente útil para empresas dispersas geográficamente. Entre los<br />
ejemplos típicos podríamos incluir la policía <strong>de</strong> tráfico, conductores <strong>de</strong> taxi, y servicios <strong>de</strong><br />
información meteorológica así como aplicaciones para informes sobre mercados financieros e<br />
información <strong>de</strong> corredores <strong>de</strong> bolsa.<br />
2.2. ARQUITECTURA<br />
Plataforma móvil basada en infraestructura.<br />
Se trata <strong>de</strong> una arquitectura distribuida en la que varios computadores, a los que se les <strong>de</strong>nomina<br />
generalmente Host fijo (FS) y Estación base (BS), se interconectan a través <strong>de</strong> una red <strong>de</strong> cable<br />
<strong>de</strong> alta velocidad. Los host fijos son, por lo general, computadores <strong>de</strong>dicados que no están<br />
equipados normalmente para la gestión <strong>de</strong> unida<strong>de</strong>s móviles pero que pue<strong>de</strong>n ser configurados<br />
para ello. <strong>La</strong>s estaciones base son pasarelas entre las Unida<strong>de</strong>s móviles (MU) y la red fija.<br />
Están equipadas con interfaces inalámbricas y ofrecen servicios <strong>de</strong> acceso a la red a las unida<strong>de</strong>s<br />
móviles clientes.<br />
Cabe añadir que el medio inalámbrico sobre el que se comunican las unida<strong>de</strong>s móviles y las<br />
estaciones base dispone <strong>de</strong> un ancho <strong>de</strong> banda significativamente inferior al <strong>de</strong> la red fija.<br />
<strong>La</strong>s unida<strong>de</strong>s móviles se pue<strong>de</strong>n <strong>de</strong>splazar con libertad <strong>de</strong>ntro <strong>de</strong> un dominio <strong>de</strong> movilidad<br />
geográfica, un área circunscrita por la cobertura <strong>de</strong> la red inalámbrica. Para gestionar la<br />
movilidad <strong>de</strong> las unida<strong>de</strong>s, todo el se divi<strong>de</strong> en uno o más dominios <strong>de</strong> menor tamaño<br />
<strong>de</strong>nominados celdas, cada una <strong>de</strong> las cuales está controlada por, al menos, una estación base. <strong>La</strong><br />
disciplina <strong>de</strong> movilidad requiere que el movimiento <strong>de</strong> las unida<strong>de</strong>s móviles no esté restringido<br />
<strong>de</strong>ntro <strong>de</strong> las celdas que pertenecen a un dominio <strong>de</strong> movilidad geográfica, a la vez que se<br />
mantiene la contigüidad <strong>de</strong> acceso a la información; es <strong>de</strong>cir, el movimiento (especialmente el<br />
intercelular), no <strong>de</strong>bería afectar negativamente al proceso <strong>de</strong> obtención <strong>de</strong> información.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 9
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
Plataforma móvil no basada en infraestructura<br />
<strong>La</strong> arquitectura <strong>de</strong> comunicaciones que se acaba <strong>de</strong> <strong>de</strong>scribir está diseñada para dar al cliente la<br />
impresión <strong>de</strong> que se encuentra conectado a una red fija, emulando la arquitectura<br />
cliente/servidor tradicional. A<strong>de</strong>más <strong>de</strong> lo anterior, las comunicaciones inalámbricas posibilitan<br />
otro tipo <strong>de</strong> arquitecturas. Una <strong>de</strong> ellas es una plataforma móvil sin infraestructura, también<br />
llamada red móvil ad hoc (MANET).<br />
En una MANET, las unida<strong>de</strong>s móviles que pertenecen a ella no necesitan comunicarse a través<br />
<strong>de</strong> una red fija, sino que forman una propia entre ellas utilizando tecnologías <strong>de</strong> bajo coste como<br />
Bluetooth.<br />
<strong>La</strong>s unida<strong>de</strong>s móviles van a ser las encargadas <strong>de</strong> encaminar sus propios datos, actuando en<br />
realidad como estaciones base a<strong>de</strong>más <strong>de</strong> cómo clientes. A<strong>de</strong>más <strong>de</strong>ben ser lo suficientemente<br />
robustas como para gestionar los cambios en la topología <strong>de</strong> la red, como la incorporación o<br />
abandono <strong>de</strong> la red por parte <strong>de</strong> otras unida<strong>de</strong>s móviles.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 10
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
2.3. TEMAS SOBRE GESTIÓN DE DATOS<br />
Consi<strong>de</strong>raciones:<br />
Distribución <strong>de</strong> datos y replicación.<br />
Los datos se encuentran distribuidos <strong>de</strong> manera no uniforme entre las estaciones base y las<br />
unida<strong>de</strong>s móviles. <strong>La</strong>s restricciones <strong>de</strong> consistencia dan lugar al problema <strong>de</strong> la gestión y el<br />
almacenamiento intermedio. Los almacenes intermedios intentan proporcionar los datos que son<br />
accedidos o actualizados con más frecuencia a las unida<strong>de</strong>s móviles que procesan sus propias<br />
transacciones y pue<strong>de</strong>n quedar <strong>de</strong>sconectados durante largos periodos <strong>de</strong> tiempo.<br />
Mo<strong>de</strong>los <strong>de</strong> transacción.<br />
<strong>La</strong> tolerancia a fallos y la ejecución correcta <strong>de</strong> las transacciones se agravan en un entorno<br />
móvil. Una transacción móvil se ejecuta <strong>de</strong> forma secuencial a lo largo <strong>de</strong> varias estaciones base<br />
y, quizá sobre diferentes conjuntos <strong>de</strong> datos <strong>de</strong>pendiendo <strong>de</strong>l movimiento <strong>de</strong> la unidad móvil.<br />
A<strong>de</strong>más, lo más probable es que una transacción móvil tenga una larga duración <strong>de</strong>bido a la<br />
<strong>de</strong>sconexión que se produce en las unida<strong>de</strong>s móviles.<br />
Procesamiento <strong>de</strong> consultas.<br />
Es importante conocer dón<strong>de</strong> se encuentran ubicados los datos, ya que afecta al análisis<br />
coste/beneficio en el procesamiento <strong>de</strong> las consultas. <strong>La</strong> optimización <strong>de</strong> consultas se vuelve<br />
más complicada <strong>de</strong>bido a la movilidad y al rápido cambio <strong>de</strong> los recursos en las unida<strong>de</strong>s<br />
móviles. <strong>La</strong> respuesta a las consultas tiene que ser <strong>de</strong>vuelta a unida<strong>de</strong>s móviles que aun<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 11
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
encontrándose en tránsito o atravesando los límites entre celdas necesitan recibir resultados<br />
correctos y completos.<br />
Recuperación y tolerancia a fallos.<br />
El entorno <strong>de</strong> base <strong>de</strong> datos móvil <strong>de</strong>be enfrentarse a fallos en las unida<strong>de</strong>s, en los soportes <strong>de</strong><br />
datos, en las transacciones y en las comunicaciones. Los fallos en las unida<strong>de</strong>s se <strong>de</strong>ben<br />
frecuentemente a la limitación en la capacidad <strong>de</strong> las baterías. El apagado voluntario <strong>de</strong> una<br />
unidad móvil no <strong>de</strong>bería ser tratado como fallo. Los fallos en transacciones son más frecuentes<br />
cuando una unidad móvil atraviesa <strong>de</strong> una celda a otra.<br />
Diseño <strong>de</strong> bases <strong>de</strong> datos móviles.<br />
Es necesario tener en cuenta la movilidad y a las caídas frecuentes. El diseño <strong>de</strong> bases <strong>de</strong> datos<br />
móviles <strong>de</strong>be tener en cuenta diversos aspectos <strong>de</strong> la gestión <strong>de</strong> metadatos; por ejemplo, la<br />
actualización constante <strong>de</strong> la información <strong>de</strong> la ubicación.<br />
Servicio en función <strong>de</strong> la ubicación.<br />
A medida que los clientes se <strong>de</strong>splazan, la información almacenada que <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la ubicación<br />
pue<strong>de</strong> quedarse obsoleta. En estos casos son importantes las técnicas <strong>de</strong> <strong>de</strong>sahucio.<br />
División <strong>de</strong>l trabajo.<br />
Determinadas características <strong>de</strong> los entornos móviles obligan a cambiar la división <strong>de</strong>l trabajo<br />
en el procesamiento <strong>de</strong> las consultas. En algunos casos, el cliente <strong>de</strong>be trabajar <strong>de</strong> forma<br />
in<strong>de</strong>pendiente <strong>de</strong>l servidor.<br />
Seguridad.<br />
Los datos móviles son menos seguros que los que permaneces en ubicaciones fijas. <strong>La</strong>s técnicas<br />
a<strong>de</strong>cuadas <strong>de</strong> gestión y autorización <strong>de</strong> acceso a los datos críticos resultan más importantes en<br />
estos entornos. Los datos son también más volátiles y es necesario <strong>de</strong>sarrollar técnicas para<br />
compensar su posible pérdida.<br />
2.4. EJEMPLO DE BASES DE DATOS MÓVILES<br />
Destacar que actualmente el mercado esta dominado por Anywhere Solutions, empresa filial <strong>de</strong><br />
Sybase, con un 73% <strong>de</strong> cuota. DB2 Everyplace <strong>de</strong> IBM es una base <strong>de</strong> datos relacional que<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 12
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
extien<strong>de</strong> las aplicaciones empresariales a dispositivos móviles. Microsoft SQL Server Compact<br />
and Oracle9i Lite son bases <strong>de</strong> datos similares. Otro productos <strong>de</strong> otros proveedores menos<br />
conocidos son SQLBase <strong>de</strong> Gupta Technologies LLC, HanDBase <strong>de</strong> DDH Software,etc.<br />
SQL Anywhere<br />
Proporciona bases <strong>de</strong> datos <strong>de</strong> tipo empresarial que pue<strong>de</strong>n usarse en servidores <strong>de</strong> 64 bits con<br />
miles <strong>de</strong> usuarios y acce<strong>de</strong>r <strong>de</strong>s<strong>de</strong> incluso dispositivos <strong>de</strong> móviles.<br />
Tecnologías SQL Anywhere:<br />
SQL Anywhere Server: es una base <strong>de</strong> datos relacional y embebida dirigida a los<br />
sistemas <strong>de</strong> bases <strong>de</strong> datos móviles.<br />
ULTRALITE: es un sistema <strong>de</strong> gestión <strong>de</strong> datos diseñado para la utilización <strong>de</strong><br />
pequeños dispositivos móviles como PDAs.<br />
MOBILINK: es una tecnología <strong>de</strong> sincronización sumamente escalable.<br />
QANYWHERE: Facilita el <strong>de</strong>sarrollo seguro <strong>de</strong> transacciones <strong>de</strong> información.<br />
SQL REMOTE: Ayuda a sincronizar datos por usuarios móviles en transacciones <strong>de</strong><br />
información.<br />
SQL Anywhere alimenta aplicaciones en entornos informáticos en más <strong>de</strong> 10.000<br />
organizaciones, incluyendo al Pepsi Bottling Group, FEDEC y el ejército <strong>de</strong> los Estados Unidos<br />
<strong>de</strong> América, entre muchas otras.<br />
2.5. CASO DE ESTUDIO: Oracle9i Lite<br />
Oracle9i Lite es una arquitectura para manejo <strong>de</strong> bases <strong>de</strong> datos Oracle en dispositivos móviles,<br />
la cual permite <strong>de</strong>sarrollar aplicaciones basadas en tecnología Oracle para dispositivos móviles.<br />
Este entorno <strong>de</strong> <strong>de</strong>sarrollo tiene 2 gran<strong>de</strong>s elementos:<br />
- Mobile Server: Es el punto intermedio entre un dispositivo móvil como un PDA o un<br />
teléfono móvil y la aplicación que maneja la lógica <strong>de</strong>l negocio.<br />
- Mobile Development Kit : Provee las facilida<strong>de</strong>s, herramientas, APIs y códigos <strong>de</strong><br />
ejemplo para efectuar el <strong>de</strong>sarrollo <strong>de</strong> las aplicaciones, instalarlas en un PDA, o emularlas.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 13
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
<strong>La</strong> arquitectura <strong>de</strong>l Mobile Server esta formada <strong>de</strong> tres niveles:<br />
1. El cliente (por ejemplo, el cliente WebToGo)<br />
2. Servidor <strong>de</strong> aplicaciones Web<br />
3. Servidor <strong>de</strong> la Base <strong>de</strong> Datos (por ejemplo, base <strong>de</strong> datos Oracle)<br />
Cliente Móvil<br />
El nivel <strong>de</strong> clientes móviles, consiste en la base <strong>de</strong> datos Oracle Lite, Mobile Sync(software<br />
para la sincronización <strong>de</strong> dispositivos), y una máquina cliente o dispositivo <strong>de</strong> mano.<br />
Servidor Móvil<br />
El servidor <strong>de</strong> aplicaciones <strong>de</strong> nivel contiene el servidor Móvil, que procesa las solicitu<strong>de</strong>s <strong>de</strong><br />
los clientes para replicar los datos en el servidor <strong>de</strong> base <strong>de</strong> datos.<br />
Servidor <strong>de</strong> Base <strong>de</strong> Datos<br />
El servidor <strong>de</strong> base <strong>de</strong> datos almacena los datos <strong>de</strong> la aplicación, la propia aplicación y los<br />
archivos <strong>de</strong>l sistema. Los archivos se almacenan en el repositorio <strong>de</strong> Mobile Server, un sistema<br />
<strong>de</strong> archivos virtual que se encuentra en Oracle. <strong>La</strong> solicitud está disponible para el usuario<br />
<strong>de</strong>spués <strong>de</strong> que el administrador la comunica al sistema y otorga los privilegios <strong>de</strong> acceso para<br />
el usuario.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 14
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
Conceptos <strong>de</strong> sincronización<br />
Los clientes móviles <strong>de</strong> las distintas plataformas móviles usan Mobile Sync para sincronizar los<br />
cambios <strong>de</strong> los datos entre la base <strong>de</strong> datos local Oracle Lite y la base <strong>de</strong> datos Oracle.<br />
• Sincronización <strong>de</strong> datos<br />
Durante la sincronización <strong>de</strong> los datos, el cliente sube los cambios <strong>de</strong> los datos en la cola <strong>de</strong><br />
entrada <strong>de</strong> la base <strong>de</strong> datos <strong>de</strong> Oracle. Después el cliente baja los nuevos cambios y aplica esos<br />
cambios en la base <strong>de</strong> datos local Oracle Lite.<br />
2.6. VENTAJAS E INCONVENIENTES<br />
<strong>La</strong>s principales ventajas que hemos <strong>de</strong>tectado en las bases <strong>de</strong> datos móviles son las siguientes:<br />
Permiten la movilidad <strong>de</strong> los usuarios, por lo que no es necesario estar físicamente en la<br />
organización para acce<strong>de</strong>r a sus datos. Éstos pue<strong>de</strong>n ser accedidos remotamente.<br />
El mercado potencial <strong>de</strong> este tipo <strong>de</strong> bases <strong>de</strong> datos es bastante amplio, ya que multitud<br />
<strong>de</strong> empresas <strong>de</strong> todo tipo poseen trabajadores que necesitan acce<strong>de</strong>r a los datos <strong>de</strong> la<br />
compañía mientras se encuentran en localizaciones remotas.<br />
Estas bases <strong>de</strong> datos poseen un gran ámbito <strong>de</strong> aplicación ya que en principio cualquier<br />
base <strong>de</strong> datos relacional pue<strong>de</strong> ampliarse para ofrecer los servicios <strong>de</strong> las bases <strong>de</strong> datos<br />
móviles.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 15
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
Inconvenientes:<br />
Los enlaces <strong>de</strong> comunicaciones juegan un papel importante es el <strong>de</strong>sarrollo <strong>de</strong> estos<br />
sistemas, por lo que su <strong>de</strong>pen<strong>de</strong>ncia pue<strong>de</strong> suponer un freno para ellos.<br />
Los datos pue<strong>de</strong>n estar replicados, por lo que consistencia y coherencia <strong>de</strong> los mismos<br />
son fundamentales y pue<strong>de</strong> generar conflictos importantes.<br />
COMPARACIÓN DE AMBOS MODELOS<br />
<strong>La</strong>s bases <strong>de</strong> datos móviles pue<strong>de</strong>n acce<strong>de</strong>r a un SGBD global que proporcione la<br />
información necesaria, o bien a otros SGBDs móviles que dispongan <strong>de</strong> la información<br />
que necesitan en ese momento. <strong>La</strong>s bases <strong>de</strong> datos fe<strong>de</strong>radas utilizan un SGBD<br />
global/central que selecciona la base <strong>de</strong> datos a la que se pedirá la información.<br />
<strong>La</strong>s bases <strong>de</strong> datos móviles pue<strong>de</strong>n estar basadas tanto en bases <strong>de</strong> datos fe<strong>de</strong>radas<br />
como distribuidas.<br />
En las bases <strong>de</strong> datos móviles las consultas normalmente se realizan mediante PDAs,<br />
teléfonos móviles, or<strong>de</strong>nadores portátiles… En las bases <strong>de</strong> datos fe<strong>de</strong>radas no existen<br />
restricciones respecto al dispositivo.<br />
En las bases <strong>de</strong> datos móviles los nodos son móviles, lo cual aña<strong>de</strong> datos <strong>de</strong>pendientes<br />
<strong>de</strong> la localización <strong>de</strong> los nodos y consultas <strong>de</strong>pendientes <strong>de</strong> la posición <strong>de</strong> los nodos.<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 16
Mo<strong>de</strong>los Avanzados <strong>de</strong> Bases <strong>de</strong> Datos<br />
BIBLIOGRAFÍA<br />
David Bell, Jane Grimson. Distributed Database Systems. ADDISON_WESLEY.<br />
Mario Piattini, Oscar Diaz. Advanced Database Technology and Design. AH.<br />
Thomas M.Connolly, Carolyn E.Begg. Sistemas <strong>de</strong> Bases <strong>de</strong> Datos. PEARSON<br />
ADDISON WESLEY.<br />
Ramez A. Elmasri, Shamkant B. Nakthe. Fundamentos <strong>de</strong> Sistemas <strong>de</strong> Bases <strong>de</strong> Datos.<br />
ADDISON WESLEY.<br />
Sandra Navarro, Carlos Castellano. Bases <strong>de</strong> Datos Heterogéneas. Marzo 2006.<br />
http://alfa.facyt.uc.edu.ve/computacion/pensum/cs0347/download/exposiciones/1/BDH<br />
eterogeneas.pdf<br />
http://alfa.facyt.uc.edu.ve/computacion/pensum/cs0347/download/exposiciones2006-<br />
2007/BDH.pdf<br />
Tonáhtiu A. Ramirez. Bases <strong>de</strong> Datos Fe<strong>de</strong>radas. Abril 2007.<br />
www.tonahtiu.com/notas/BD/BDF.htm<br />
http://lsi.ugr.es/~bdf/<br />
www.turismo.uma.es/turitec/turitec99/pdf/bd3.pdf<br />
www.hipertexto.info/documentos/b_datos.htm<br />
http://download.oracle.com/docs/html/A97376_01/pmdcon.htm<br />
http://<strong>de</strong>v.mysql.com/doc/refman/5.0/es/<br />
Bases <strong>de</strong> Datos Fe<strong>de</strong>radas y Bases <strong>de</strong> Datos Móviles 17