absoluty
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 [Ceri, 1984]. Para el diseño de BDDs se handefinido dos grandes estrategias [Ceri, 1987]: 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 enun 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 decomputadoras. 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 serlocalizados.
Bloqueos
Un bloqueo en general es cuando una acción que debe ser realizada está esperando a un evento. Para manejar los bloqueos hay distintos acercamientos: prevención, detección, y recuperación. También es necesario considerar factores como que hay sistemas en los que permitir un bloqueo es inaceptable y catastrófico, y sistemas en los que la detección del bloqueo es demasiadocostosa.
En el caso específico de las bases de datos distribuidas usar bloqueo de recursos, peticiones para probar, establecer o liberar bloqueos requiere mensajes entre los manejadores de transacciones y el calendarizado. Para esto existen dos formas básicas:
Autónoma: cada nodo es responsable por sus propios bloqueos de recursos.
Una transacción sobre un elemento con n replicas requiere 5nmensajes
Petición del recurso
Aprobación de la petición
Mensaje de la transacción
Reconocimientos de transacción exitosa
Peticiones de liberación de recursos
Copia Primaria: un nodo primario es responsable para todos los bloqueos de recursos
Una transacción sobre un elemento con n copias requiere 2n+3 mensajes
Una petición del recurso
Una aprobación de la petición
n mensajes de latransacción
n reconocimientos de transacción exitosa
Una petición de liberación de recurso
Podemos definir que dos operaciones entran en conflicto que debe ser resuelto si ambas acceden a los mismos datos, y una de ellas es de escritura y si fueron realizadas por transacciones distintas.
Concurrencia
El ejemplo más común de un bloqueo mutuo es cuando un recurso A está siendo utilizado por unatransacción A que a su vez solicita un recurso B que está siendo utilizado por una transacción B que solicita el recurso A.
Control de concurrencia
El problema de las actualizaciones perdidas: cuando dos transacciones concurrentes borran el efecto una de la otra
Recuperaciones inconsistentes: acceder a información modificada parcialmente por una transacción de Ian.
Soluciones
El control deconcurrencia y detección y manejo de bloqueos es un área de mucho estudio en las bases de datos distribuidas, a pesar de esto no hay ningún algoritmo aceptado para solucionar el problema. Esto se debe a varios factores de los cuales se consideran a los siguientes tres los más determinantes:
1. El dato puede estar duplicada en un BDD, por tanto, el manejador de la BDD es responsable de localizar y...
Regístrate para leer el documento completo.