Introducción


El uso de computadoras portátiles, teléfonos móviles y PDA está aumentando y es probable que aumente en el futuro con más y más aplicaciones que residen en los sistemas móviles. Es evidente que en el futuro un gran porcentaje de aplicaciones requerirá el uso de una base de datos de algún tipo con la capacidad de descargar información de un repositorio de información y actuar sobre esta información aún cuando esté desconectado.
Una base de datos móvil es una base de datos que puede ser instalada en un dispositivo de computación móvil a través de una red móvil. El cliente y el servidor tienen conexiones inalámbricas.
La memoria caché se mantiene para almacenar los datos frecuentes y transacciones de manera que no se pierdan debido a un fallo de conexión. Una base de datos es una forma estructurada de organizar la información. Esto podría ser una lista de contactos, información de precios o la distancia recorrida.
Un ejemplo de esto es una plantilla de trabajadores con bases de datos móviles. En este escenario el usuario requeriría poder acceder y actualizar la información de los archivos en los directorios de inicio de un servidor o cliente de registros de una base de datos. Este tipo de acceso y carga de trabajo generada por dichos usuarios es diferente de las cargas de trabajo tradicionales visto en los sistemas cliente servidor de hoy.
Las bases de datos móviles permiten a los empleados introducir datos sobre la marcha. La información puede ser sincronizada con una base de datos de servidor posteriormente
.

Origen


Los sistemas de base de datos surgen a finales del siglo XIX, y fueron desarrollados a partir de la necesidad de almacenar grandes cantidades de datos.
Hay que destacar la figura de Herman Hollerit, quien fue denominado el primer ingeniero estadístico de la Historia, puesto que construyó la llamada “Máquina Automática Perforador de Tarjeta” capaz de realizar el censo de los Estados Unidos en solo 3 años. Con esto, ahora se podían obtener importantes datos referentes a la población.
Desde ese momento los sistemas de bases de datos van evolucionando y se produce una evolución de soportes direccionados con una mayor capacidad, y un menor coste. Lo mismo ocurre con las necesidades de almacenar diversos tipos de datos como documentos, archivos, por lo que van surgiendo BD distribuidas y paralelas, o las BD orientadas a objetos.
Llegado el siglo XXI y en respuesta a las nuevas necesidades de asequibilidad y eficiencia surgen las Bases de Datos Móviles.
Como bien hemos podido observar, en los últimos años los grandes avances en la tecnología de comunicaciones inalámbricas han dado origen a dispositivos en forma de ordenadores portátiles, PDAs o algunos otros dispositivos con acceso a Internet. Si a esto le unimos la rápida distribución de las comunicaciones, ya sea de accesos desde teléfonos móviles, conexiones inalámbricas o vía satélite, podemos tener acceso a todo tipo de información desde prácticamente cualquier sitio y en cualquier momento.
Esto resulta muy cómodo y ventajoso, ya que en algunos casos el usuario de un dispositivo móvil puede conectarse a un servidor de base de datos corporativos gracias a los agentes móviles y trabajar allí con los datos mientras que en otros el usuario puede descargar los datos y trabajar con ellos en un dispositivos móvil, Es decir, varias aplicaciones pueden tener acceso simultaneo a la información compartida. Esta característica permite a los usuarios estar en una sincronización con la base de datos corporativa en diferentes ubicaciones geográficas.

Por todo esto, podríamos definir una base de datos móvil como una base de datos portable y físicamente independiente del servidor corporativo de bases de datos, pero que es capaz de comunicarse con ese servidor desde sitios remotos, permitiéndose el compartir los datos corporativos.

Arquitectura BBDD Móvil


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

arquitectura-general-de-una-plataforma-movil.jpg


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.

Algunos ejemplos de Sistemas Gestores de bases de datos moviles son:

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

environ.gif

Ejemplos de BD Móviles


La plataforma Java Micro Edition (Java para dispositivos móviles, J2ME) incluye un mecanismo de almacenamiento de datos llamado Record Management System(RMS)
  • Base de datos formada por almacenes de registros (Record Store).
  • Un almacén de registros es un conjunto de registros.
  • Un registro es un conjunto de bytes.
  • Problemas:
    • Un almacén de registros sólo puede ser utilizado por el programa que lo crea.
    • No tiene lenguaje de descripción de datos ni lenguaje de manipulación de datos.
      • Sólo permite guardar y recuperar bytes.

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, los datos de seguros de una compañía aseguradora que vende productos utilizando agentes comerciales.

Tipos


Actualmente estamos comprobando como los diferentes tipos de bases de datos móviles tienen un gran auge. Debido principalmente al desarrollo de las comunicaciones inalámbricas y a los ordenadores portátiles o laptop, PDAs (del inglés Personal Digital Asistan), teléfonos móviles o celulares, y cualquier otro aparato de similares características.
Este enorme desarrollo de los tipos de bases de datos moviles es debido al auge que tienen actualmente las redes inalámbricas y las comunicaciones vía satélite, lo que permite el poder acceder a datos desde prácticamente cualquier sitio. Los usuarios se pueden acceder a este tipo de bases de datos móviles desde cualquier punto fuera de la empresa, por ejemplo si están visitando a un cliente y necesitan un listado de precios poder acceder al último y más actual de todos.
Una base de datos es el conjunto de datos o información de contenido similar almacenados de forma ordenada para su posterior uso. Y una base de datos móviles sería una base de datos portable y físicamente independiente del servidor corporativo que nos la suministra, y que nos permite comunicarnos con ella desde cualquier lugar remoto compartiendo su información.

Los tipos de bases de datos móviles son a grandes rasgos:
· Las bases de datos móviles de las diferentes empresas o bases de datos corporativas móviles.
· Las bases de datos móviles que se crean a través de los teléfonos móviles.
· Las bases de datos móviles que son consecuencia de las comunicaciones inalámbrica generadas por los ordenadores portátiles, PDAs u otro aparato que tenga acceso a Internet.


¿Por qué usar BBDD Móviles?


Con la llegada de la era de Internet y la globalización económica cada vez son más las empresas que experimentan la necesidad de compartir recursos geográficamente muy distantes unos de otros. De estos recursos, la información almacenada en bases de datos empresariales ocupa un lugar esencial. La red Internet ofrece la infraestructura adecuada para conectar estos recursos a través de una mezcla de máquinas, sistemas operativos y redes de ordenadores de diferentes tipos.

En este contexto, la saturación del ancho de banda de la red se convierte en el problema clave a solucionar y aquí es donde aparece la tecnología de agentes móviles, al permitir interactuar localmente con esas bases de datos remotas.

La tecnología de agentes móviles soluciona (o pretende solucionar) diversos problemas en diversos frentes. Por un lado, proporciona una solución al derroche de ancho de banda que se produce en la red en una arquitectura cliente/servidor. Este ancho de banda en una aplicación distribuida es un bien escaso y, por tanto, valioso. Una transacción o consulta realizada entre un cliente y el servidor puede requerir bastantes viajes por la red para completarse, cada uno de los cuales provoca un cierto tráfico de datos y consume ancho de banda. En un sistema en el que tengamos muchos clientes o mucho volumen de transacciones (o ambas cosas a la vez) posiblemente se sobrepase el ancho de banda disponible, lo que se traducirá en una disminución del rendimiento de la aplicación completa. Aplicando a este problema la tecnología de agentes móviles podríamos crear un agente que, dada la consulta o transacción a realizar, se trasladase desde el cliente al servidor, completase en él la operación y regresase con los resultados de la misma, necesitando de esta manera sólo dos viajes por la red al eliminar todo el tráfico intermedio de datos y resultados.



Inconvenientes de las BBDD Móviles



Los principales incovenientes de las BBDD Móviles son:
  • Enrutamiento y procesamiento de consultas: La informática móvil plantea problemas típicos desde el punto de vista de enrutamiento y procesamiento de consultas. Por ejemplo, según el modelo de computación móvil, la ruta entre un par de hosts puede cambiar con el tiempo, si uno de los dos hosts es móvil. Este simple hecho puede tener un efecto dramático en el nivel de red, ya que las direcciones de red basadas en la ubicación ya no son constantes en el sistema.
  • El modelo de computación móvil también afecta directamente el procesamiento de consultas de la base de datos. En el caso del procesamiento de consultas distribuidas, los costos de comunicación desempeñan un papel importante en el proceso de optimización al seleccionar el mejor método de estrategia de evaluación de la consulta. La movilidad en los resultados de forma dinámica cambia los costes de comunicación, por lo tanto, complica el proceso de optimización.
  • Desconectividad y consistencia: Como uno de los costos principales implicados en la comunicación inalámbrica, el costo de conectividad, se paga sobre la base de tiempo de conexión, hay un incentivo para determinados hosts móviles por ser desconectado por largos períodos. Sin embargo, durante el tiempo de desconexión, el usuario puede estar trabajando en la máquina y puede realizar consultas y actualizaciones sobre los datos almacenados localmente en caché. Esta situación crea varios problemas de los siguientes tipos:
    • Recuperabilidad: Actualizaciones en un host móvil no conectado se pueden perder si la máquina sufre una avería importante.
    • Consistencia: Los datos almacenados localmente en caché pueden llegar a ser incompatibles, pero el host móvil solo podrá descubrir este hecho cuando se vuelva a conectar. Del mismo modo, las actualizaciones que se producen en el anfitrión móvil no se pueden propagar hasta la reconexión. Sin embargo, si las copias de sólo lectura del host móvil están siendo actualizadas por otros equipos, los datos en cache puede ser inconsistentes.

Bibliografía


http://larevistainformatica.com/tipos-de-bases-de-datos-moviles.htm
http://www.forosdelweb.com/f21/bases-datos-moviles-126407/
http://modelobdpnfi.wordpress.com/2010/04/14/bases-de-datos-federadas-bases-de-datos-moviles/
http://en.wikipedia.org/wiki/Mobile_database