Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Disec3b1o Base de Datos Distribuidas
Disec3b1o Base de Datos Distribuidas
Fabián Ruano
Definición
Diferencias con BD Centralizadas
Almacenamiento cercano
Procesamiento paralelo
Expansión rápida
Tolerancia a fallos
Autonomía de nodos
Control y manejo de datos
Seguridad
Complejidad en mantener integridad
Control de concurrencia mas complejo
Diseño de la base de datos distribuida:
distribución de información entre nodos
Procesamiento de consultas: costo de
procesamiento y transmisión de datos
Control de concurrencia: coordinación de
acceso a la base de datos
Confiabilidad: manejo de transacciones
• Independencia de datos: aplicaciones
inmunes a cambios en definición y
organización de datos y viceversa
• Lógica: inmunidad a cambios en estructura lógica
de la base de datos
• Física: ocultamiento de detalles sobre estructuras
de almacenamiento a las aplicaciones de usuario
• Transparencia de replicación: replicas
controladas por el sistema, no por el usuario.
Transparencia a nivel de red
◦ Localización de datos: comando usado es
independiente de la ubicación de los datos y lugar
donde la operación se realice
◦ Esquema de nombramiento: proporcionando
nombre único a cada objeto de sistema distribuido.
Transparencia de fragmentación: sistema
maneja conversión de consultas definidas
sobre relaciones globales a consultas
definidas sobre fragmentos
Mayoría basadas en sistema ANSI-SPARC con
tres niveles: interno, conceptual y externo.
◦ Externa: vista por usuario
◦ Conceptual: vista lógica global
◦ Interno: nivel de descripción mas bajo de los datos
en una base de datos
Dimensiones
• Distribución
• Heterogeneidad
• Autonomía
• Diseño: decisión sobre cuestiones de diseño
• Comunicación: decisión sobre cuestiones de
comunicación
• Ejecución: decisión sobre cuestiones de ejecución
de operaciones de manera local
Algoritmos de control de concurrencia:
• Candado de dos fases
• Ordenamiento por estampas de tiempo
• Ordenamiento por estampas de tiempo
múltiple
• Control de concurrencia optimista
Nivel de distribución
◦ Ninguno
◦ Solo datos (sist. Homogéneo)
◦ Datos mas programas (sist. Heteregéneo)
Comportamiento de patrones de acceso
◦ Estático
◦ Dinámico
Nivel de conocimiento sobre comportamiento de
patrones
◦ Sin información / parcial
◦ Información total
Análisis de requerimientos que define el
ambiente del sistema. Determina necesidades
de los datos y del proceso.
DBMS debe ser definido por: desempeño,
confiabilidad, disponibilidad, economía y
flexibilidad.
Diseño visual: definir las GUI
Diseño conceptual: examina la empresa para
generar diagrama E-R
Como resultado de los diseños conceptual y
visual debe darse un esquema conceptual
global y recopilación de los patrones de
acceso.
Diseño de distribución: diseñar esquema
conceptual local para cada sitio del SD.
Fragmentación y asignación.
Diseño físico: mapear esquemas conceptuales
locales con los dispositivos de
almacenamiento físicos disponibles en cada
sitio.
Conveniente cuando BD ya existen y tareas de
proceso involucran integración.
Punto de inicio son esquemas conceptuales
individuales, se integran para obtener
esquema conceptual global y posiblemente
generar GUI.
Encontrar unidad de relación apropiada.
Diferentes aplicaciones ingresan a diferentes
sub-conjuntos de datos.
Replicaciones mas convenientes, solamente
de sub-relaciones.
Ejecuciones concurrentes de procesos sobre
sub-conjuntos aislados.
Unión de fragmentos para consultas
◦ Costoso en proceso
◦ Costoso en transferencia de datos
Control de semántica de datos y revisión de
integridad
Fragmentación vertical
Fragmentación horizontal
Fragmentación híbrida
Afecta desempeño de la ejecución de los
Query.
Dependerá de las necesidades de nuestra
aplicación.
Condición de completitud. La descomposición de una
relación R en los fragmentos R1, R2, ..., Rn es
completa si y solamente si cada elemento de datos
en R se encuentra en algún de los Ri.
Condición de Reconstrucción. Si la relación R se
descompone en los fragmentos R1, R2, ..., Rn,
entonces debe existir algún operador relacional Ñ ,
tal que,R = Ñ 1£ i£ n Ri
Condición de Fragmentos Disjuntos. Si la
relación R se descompone en los fragmentos R1, R2,
..., Rn, y el dato di está en Rj, entonces, no debe estar
en ningún otro fragmento Rk (k¹ j).
Forma para asignación de fragmentos de las
relaciones en cada uno de los sitios teniendo
ya bien realizada nuestra fragmentación.
◦ Costos mínimos: costos de actualización entre
sitios y costos de comunicación de datos
◦ Desempeño: minimizar el tiempo de respuesta y
maximizar la salida de información a cada sitio.
Mejora Querys de sólo lectura
Confiabilidad
Empeora Query de actualización
Estrategias:
◦ No soportar replicación. Cada fragmento reside en un
solo sitio.
◦ Soportar replicación completa. Cada fragmento en cada
uno de los sitios.
◦ Soportar replicación parcial. Cada fragmento en algunos
de los sitios.
En diseño de distribución influyen factores
como:
Información sobre el significado de los datos
Información sobre las aplicaciones que los usan