Bases de datos distribuidas: ventajas, desventajas y principios fundamentales

InformáticaActualizado el 5,69 KB

Resumen

El texto explica las bases de datos distribuidas, comenzando por la heterogeneidad de los datos y la necesidad de integrarlos. Después presenta las ventajas y desventajas del procesamiento distribuido frente al centralizado. Por último, desarrolla la "regla cero" y los objetivos que debe cumplir un sistema distribuido idealmente transparente para el usuario.

Puntos clave

  • La heterogeneidad de los datos puede darse desde su forma y significado hasta el formato y medio de almacenamiento.
  • Entre las ventajas del procesamiento distribuido están el mejor rendimiento, la mayor confiabilidad mediante réplicas y la escalabilidad.
  • Entre las desventajas figuran el rendimiento variable en consultas con acceso a sitios remotos, la complejidad de la consistencia entre réplicas y el mayor coste de diseño y mantenimiento.
  • La "regla cero" establece que un sistema distribuido debe parecer indistinguible de uno no distribuido para el usuario.
  • Los objetivos derivados incluyen autonomía local, no dependencia de un sitio central, operación continua y independencia de localización, fragmentación y réplica.
  • Un sistema distribuido debe garantizar las propiedades ACID en transacciones que afectan a varios sitios, usando mecanismos como bloqueo y compromiso en dos fases.

Ponte a prueba

Heterogeneidad y la Presión para Integrar Datos

La heterogeneidad (diversidad) puede darse en muchos niveles, desde la forma y el significado de cada dato hasta el formato y el medio de almacenamiento elegido para guardarlo.

Surge la necesidad de integración debido a requerimientos de procesamiento no locales, donde es necesario intercambiar información proveniente de otras áreas o departamentos.

Ventajas del Procesamiento de Bases de Datos Distribuidas

  • Mejor rendimiento: En muchos casos, puede ofrecer un rendimiento superior al obtenido mediante un procesamiento centralizado.
  • Mayor confiabilidad: Los datos duplicados (réplicas) aumentan la disponibilidad. Cuando falla una computadora, se pueden obtener los datos desde otras réplicas en otras computadoras.
  • Escalabilidad: Los sistemas distribuidos pueden variar su tamaño (escalar) de un modo más sencillo que los centralizados.

Desventajas del Procesamiento de Bases de Datos Distribuidas

  • Rendimiento variable: Bajo ciertas circunstancias, el rendimiento puede ser peor para el procesamiento distribuido que para el centralizado, especialmente si las consultas requieren acceder a datos en múltiples sitios remotos.
  • Confiabilidad compleja: Aunque la replicación puede aumentar la disponibilidad, la gestión de la consistencia entre réplicas y la recuperación de fallos en un entorno distribuido pueden ser más complejos y, si no se manejan adecuadamente, pueden resultar en menor confiabilidad percibida que en un sistema centralizado bien gestionado.
  • Mayor complejidad: Su diseño, implementación y mantenimiento son inherentemente más complejos, lo que a menudo se traduce en altos gastos de construcción y operación.

El Principio Fundamental de las Bases de Datos Distribuidas

La "Regla Cero" de los Sistemas Distribuidos

Llamaremos al principio fundamental recién identificado la "regla cero" de los sistemas distribuidos. Para cualquier usuario genuino de un sistema distribuido, este debe parecer indistinguible de un sistema no distribuido. La regla cero conduce a doce objetivos:

  1. Autonomía local: Significa que todas las operaciones en un sitio dado se controlan en ese sitio. Ningún sitio X deberá depender de algún otro sitio Y para su operación básica; debe poder operar incluso si el sitio Y falla.
  2. No dependencia de un sitio central: La autonomía local implica que todos los sitios deben tratarse como iguales. No debe haber dependencia de un sitio central "maestro" para obtener servicios esenciales como el catálogo del sistema, el procesamiento de consultas o la gestión de transacciones.
  3. Operación continua: En un sistema distribuido ideal, nunca debería haber necesidad de apagar el sistema globalmente para realizar operaciones como añadir o quitar sitios, actualizar el DBMS en un sitio, etc.
  4. Independencia con respecto a la localización: Los usuarios no deben necesitar saber dónde están almacenados físicamente los datos. Deben poder interactuar con el sistema como si todos los datos estuvieran almacenados localmente.
  5. Independencia con respecto a la fragmentación: Si los datos se dividen en fragmentos (fragmentación horizontal o vertical) y se almacenan en diferentes sitios, los usuarios deben poder seguir accediendo a ellos como si fueran una única unidad lógica, sin necesidad de conocer cómo están fragmentados. La fragmentación es deseable por razones de desempeño: los datos pueden almacenarse en la localidad donde se utilizan con mayor frecuencia, de manera que la mayor parte de las operaciones sean locales y se reduzca el tráfico en la red.
  6. Independencia de réplica: Si los datos se replican en múltiples sitios para mejorar la disponibilidad o el rendimiento, los usuarios (y sus aplicaciones) no deben ser conscientes de la existencia de estas réplicas. El sistema debe gestionar automáticamente la consistencia entre las réplicas.
  7. Procesamiento distribuido de consultas: El sistema debe ser capaz de procesar consultas que accedan a datos distribuidos en múltiples sitios, optimizando la ejecución para minimizar el costo (por ejemplo, el tráfico de red).
  8. Manejo distribuido de transacciones: El sistema debe garantizar las propiedades ACID (Atomicidad, Consistencia, Aislamiento, Durabilidad) para las transacciones que actualizan datos en múltiples sitios. Esta función, en un ambiente distribuido, estará basada con toda seguridad en mecanismos como el bloqueo y protocolos de compromiso (ej. compromiso en dos fases), como sucede en los sistemas no distribuidos, pero adaptados al entorno distribuido.
  9. Independencia con respecto al equipo (Hardware): Debería ser posible ejecutar el sistema distribuido sobre diferentes plataformas de hardware.
  10. Independencia con respecto al sistema operativo: Debería ser posible ejecutar el sistema distribuido sobre diferentes sistemas operativos.
  11. Independencia con respecto a la red: Debería ser posible que los sitios del sistema distribuido se comuniquen a través de diferentes tipos de redes de comunicación.
  12. Independencia con respecto al DBMS: En un sistema distribuido idealmente heterogéneo, debería ser posible integrar DBMS de diferentes proveedores, aunque este objetivo es particularmente difícil de alcanzar en la práctica.

Descargar

PDF Word HTML

Preguntas frecuentes

¿Cuáles son las ventajas de las bases de datos distribuidas?

Ofrecen en muchos casos mejor rendimiento que el procesamiento centralizado, mayor confiabilidad gracias a las réplicas que mantienen la disponibilidad ante fallos y una escalabilidad más sencilla. Su tamaño puede variar con más facilidad que en los sistemas centralizados.

¿Cuáles son las desventajas del procesamiento distribuido de bases de datos?

El rendimiento puede ser peor que el centralizado, sobre todo en consultas que acceden a sitios remotos. Además, gestionar la consistencia entre réplicas y la recuperación de fallos es más complejo, y su diseño, implementación y mantenimiento son más costosos.

¿Qué es la "regla cero" de los sistemas distribuidos?

Es el principio según el cual, para un usuario genuino, un sistema distribuido debe parecer indistinguible de uno no distribuido. De ella se derivan doce objetivos, como la autonomía local y la independencia de la localización, la fragmentación y la réplica.

Ponte a prueba

Tarjetas de repaso

Pulsa una tarjeta para ver la respuesta.

Test

1. ¿Qué establece la "regla cero" de los sistemas distribuidos?
2. ¿Qué significa la autonomía local según el texto?
3. ¿Por qué puede ser deseable la fragmentación de datos?
4. ¿Qué propiedades debe garantizar el manejo distribuido de transacciones?
5. ¿Cuál es una desventaja de la replicación según el texto?
6. ¿Qué objetivo es especialmente difícil de alcanzar en la práctica?

Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.