Base De Datos Distribuidas
Enviado por himeldo • 11 de Abril de 2013 • 2.267 Palabras (10 Páginas) • 406 Visitas
Base de Datos Distribuidas
Introducción
Una Base de Datos Distribuida (BDD) es una colección de datos distribuidos en diferentes nodos de una red de computadoras. Cada sitio de la red es autónomo, puede ejecutar aplicaciones locales y al menos una aplicación global, lo cual requiere el acceso a datos, ubicados en varios sitios, usando un subsistema de comunicación. Para el diseño de BDD´s se han definido dos grandes estrategias: el enfoque Top-Down y el Bottom-Up.
En el enfoque Top-Down se comienza diseñando el esquema global, luego se concibe la fragmentación de la BD y la localización de los fragmentos en los sitios. Se completa ejecutando, en cada sitio, el diseño físico de los datos. Por otro lado el enfoque Bottom-Up se basa en la integración de esquemas ya creados en un esquema global a partir de las BD existentes.
Los Sistemas de Bases de Datos Distribuidas representan más naturalmente la estructura geográficamente descentralizada de una organización, aumentan la disponibilidad de los datos, reducen el tráfico de comunicación y es justificable, además, por el abaratamiento de los costos en el equipamiento y la infraestructura de comunicaciones de las redes de computadoras. El diseño de las Bases de Datos Distribuidas posee las fases del diseño centralizado y cuenta, además, con dos nuevos problemas que caracterizan el proceso de distribución de datos, e incluyen la determinación de: cómo dividir la base de datos en componentes para localizarlos en diferentes sitios, qué cantidad de datos debe ser replicados y cómo deben los fragmentos replicados ser localizados.
Existen varias definiciones sobre qué es un sistema distribuido pero hay divergencias entre ellas, para nuestros propósitos es suficiente expresar que un sistema distribuido es una colección de computadoras independientes interconectadas entre sí que aparecen ante los usuarios del sistema como una única computadora [Özsu, 1991].
Ventajas y Desventajas de los sistemas distribuidos
Ventajas
El acceso a los datos es más rápido debido a que los datos se localizan más cercanos al lugar donde se utilizan.
El procesamiento es rápido debido a que varios nodos intervienen en el procesamiento de una carga de trabajo.
Nuevos nodos se pueden agregar fácil y rápidamente.
La probabilidad de que una falla en un solo nodo afecte al sistema es baja y existe una autonomía e independencia entre los nodos.
Control local de los datos con que se interactúa.
Mayor tolerancia a los fallos
Desventajas
Es más complicado el control y la manipulación de los datos
Es compleja el aseguramiento de la integridad de la información en presencia de fallas no predecibles tanto de componentes de hardware como de software. La integridad se refiere a la consistencia, validez y exactitud de la información.
El control de concurrencia y los mecanismos de recuperación son mucho más complejos que en un sistema centralizado dado que los datos pueden estar replicados.
La distribución de la BD requiere determinar la fragmentación y la localización. La fragmentación es el proceso de dividir una relación en pequeñas porciones llamadas fragmentos [Meghini, 1991]. Las razones principales para la fragmentación son el incremento del nivel de concurrencia y el desempeño del sistema. Existen dos alternativas para fragmentar datos: fragmentación horizontal (FH) y fragmentación vertical (FV). La combinación de las anteriores resulta en una fragmentación híbrida. Es importante seguir tres reglas, las cuales aseguran que la BD no tenga cambios semánticos durante la fragmentación: completitud, reconstrucción y disjuntura.
Sistema de Gestión de Base de Datos Distribuida
Un sistema de gestión de bases de datos distribuidas (SGBDD) es un Sistema de Gestión de bases de datos que gestiona la BD distribuida
Funcionalidades adicionales de un SGBDD
Accede a sitios remotos y transmite consultas y datos a través de varios sitios mediante una red de comunicación.
Almacena el esquema de distribución y replicación de los datos en el catalogo del sistema.
Establece las estrategias de ejecución de las consultas y las transacciones que acceden a los datos en más de un sitio.
Decide sobre cual copia de los datos replicados acceder.
Mantiene la consistencia de las copias de los datos replicados.
Realiza la recuperación ante los fallos.
Ambientes de bases de datos distribuidas
Las BDD pueden ser:
Homogéneas: Todos los sitios tienen el mismo SGBD, son conscientes de la existencia de los demás sitios y cooperan en el procesamiento de las solicitudes. Los sitios locales mantienen un mismo esquema y SGBD.
Heterogéneas: Cada sitio puede tener un SGBD distinto así como esquemas diferentes. Puede que algunos sitios no conozcan a otros. Puede que solo ofrezcan facilidades limitadas para la cooperación en el procesamiento de transacciones.
Problemas fundamentales a resolver en las bases de datos distribuidas
Diseño de bases de datos distribuidas
Procesamiento y optimización de consultas
Manejo de transacciones y control de concurrencia
Etapas del diseño
La etapa diferenciadora entre el diseño de una base de datos centralizada y una base de datos distribuidos es el “Diseño de la distribución” que consta de dos actividades:
Fragmentación: Decidir “como” dividimos la BD y en “que” partes.
Asignación: Decidir “donde” ubicamos cada parte, así como si tendremos replicación de datos.
Aspectos a considerar en el diseño de una BD distribuida
Fragmentación: Una relación puede ser dividida en un número de sub-relaciones, denominadas fragmentos, los cuales son entonces distribuidas
Asignación: cada fragmento debe ser almacenado en un sitio en base a una distribución óptima.
Replicación: El SGBDD puede mantener una copia de un fragmento en diferentes sitios
Fragmentación
El problema de fragmentación se refiere al particionamiento de la información para distribuir cada parte a los diferentes sitios de la red
Objetivos de la fragmentación
El
...