Saltar la navegación

10.- Bases de datos distribuidas.

Caso práctico

Cinco miembros de una empresa, ante un ordenador portátil, gesticulan saludando a otra persona que está al otro lado de la comunicación.
Stockbyte (CC BY-NC)


Para poder apreciar la diferencia, Ada ha organizado una videoconferencia en la que intervienen dos técnicos de bases de datos y un gerente de una gran cadena hotelera, amigos suyos. Cada uno de ellos se encuentra en sedes diferentes dispersas geográficamente. Juan y María, permanecen atentos a las intervenciones que se realizan y toman buena nota de las valoraciones de los sistemas de bases de datos distribuidos hechas por los conferenciantes.

La necesidad de integrar información de varias fuentes y la evolución de las tecnologías de comunicaciones, han producido cambios muy importantes en los sistemas de bases de datos. La respuesta a estas nuevas necesidades y evoluciones se materializa en los sistemas de bases de datos distribuidas.

Base de datos distribuida (BDD): es un conjunto de múltiples bases de datos lógicamente relacionadas las cuales se encuentran distribuidas entre diferentes nodos interconectados por una red de comunicaciones.

Sistema de bases de datos distribuida (SBDD): es un sistema en el cual múltiples sitios de bases de datos están ligados por un sistema de comunicaciones, de tal forma que, un usuario en cualquier sitio puede acceder los datos en cualquier parte de la red exactamente como si los datos estuvieran almacenados en su sitio propio.

Sistema gestor de bases de datos distribuida (SGBDD): es aquel que se encarga del manejo de la BDD y proporciona un mecanismo de acceso que hace que la distribución sea transparente a los usuarios. El término transparente significa que la aplicación trabajaría, desde un punto de vista lógico, como si un solo SGBD ejecutado en una sola máquina administrara esos datos.

Esquema en el que aparece en el centro una nube que representa la red de comunicaciones y conectados a ella, tres nodos con dos cilindros en 3D cada uno de ellos, representando sendas bases de datos. Varias bases de diferentes nodos aparecen interconectadas para representar la arquitectura distribuida de base de datos.
Ministerio de Educación (CC BY-NC)

Un SGBDD desarrollará su trabajo a través de un conjunto de sitios o nodos, que poseen un sistema de procesamiento de datos completo con una base de datos local, un sistema de gestor de bases de datos e interconectados entre sí. Si estos nodos están dispersos geográficamente se interconectarán a través de una red de área amplia o WAN, pero si se encuentran en edificios relativamente cercanos, pueden estar interconectados por una red de área local o LAN. Este tipo de sistemas es utilizado en: organizaciones con estructura descentralizada, industrias de manufactura con múltiples sedes (automoción), aplicaciones militares, lineas aéreas, cadenas hoteleras, servicios bancarios, etc.

En la siguiente tabla se representan las ventajas e inconvenientes destacables de las BDD:

Ventajas e inconvenientes de las bases de datos distribuidas.

Ventajas

Inconvenientes

El acceso y procesamiento de los datos es más rápido ya que varios nodos comparten carga de trabajo.

La probabilidad de violaciones de seguridad es creciente si no se toman las precauciones debidas.

Desde una ubicación puede accederse a información alojada en diferentes lugares.

Existe una complejidad añadida que es necesaria para garantizar la coordinación apropiada entre los nodos.

Los costes son inferiores a los de las bases centralizadas.

La inversión inicial es menor, pero el mantenimiento y control puede resultar costoso.

Existe cierta tolerancia a fallos. Mediante la replicación, si un nodo deja de funcionar el sistema completo no deja de funcionar.

Dado que los datos pueden estar replicados, el control de concurrencia y los mecanismos de recuperación son mucho más complejos que en un sistema centralizado.

El enfoque distribuido de las bases de datos se adapta más naturalmente a la estructura de las organizaciones. Permiten la incorporación de nodos de forma flexible y fácil.

El intercambio de mensajes y el cómputo adicional necesario para conseguir la coordinación entre los distintos nodos constituyen una forma de sobrecarga que no surge en los sistemas centralizados.

Aunque los nodos están interconectados, tienen independencia local.

Dada la complejidad del procesamiento entre nodos es difícil asegurar la corrección de los algoritmos, el funcionamiento correcto durante un fallo o la recuperación.

Es el proceso de copiar y mantener objetos de la base de datos, como por ejemplo relaciones, tablas, etc. en múltiples bases de datos que forman un sistema de base de datos distribuido