Documente Academic
Documente Profesional
Documente Cultură
5.1 Introducción
5.2 Definición
Base de Datos Distribuida
DDBMS (Distributed DBMS). Es el software que administra todas las bases de datos de
los sitios y proporciona un mecanismo de acceso que hace
transparente esta distribución a los usuarios.
Esta regla conduce a 12 objetivos o reglas secundarias:
1. Autonomia local.
2. No dependencia de ningun sitio central.
3. Operación continua.
4. Independencia con respectos a la localización (transparencia de localización).
5. Indepencia con respecto a la fragmentación.
6. Independencia de réplica.
7. Optimización en el procesamiento distribuido de consultas.
8. Manejo de transacciones distribuídas
9. Independencia con respecto al equipo.
10. Independencia con respecto al sistema operativo.
11. Independencia con respecto a la red.
12. Independencia con respecto al DBMS.
Autonomia local.
Mejora la confiabilidad / disponibilidad.
Mejora de la eficiciencia.
Expandibilidad.
Economía en cuanto crecimiento incremental.
Compartición de recursos.
5.3.1 Definición
Condición de Completés.
Todos los datos de la relación global deberán ser mapeados a algún fragmento.
Condición de Reconstrucción.
Deberá ser siempre posible reconstruir la relación global a partir de sus fragmentos.
Condición de Conjuntos Disjuntos.
Es conveniente que los fragmentos sean disjuntos.
5.3.3 Fragmentación Horizontal
Los predicados que nos permiten definir una fragmentación de una relación son llamados la
calificación de la fragmentación.
q1 : CD = ‘L’
q2 : CD = ‘P’
El conjunto de calificaciones mapea todo el dominio del atributo(s) bajo el cual se hace
la calificación.
Si siempre es posible reconstruir la tabla global por medio del operador UNION del
algebra relaciónal:
R = F1 UNION F2 UNION …UNION Fn
Si todas las calificaciones de los fragmentos son mutuamente exclusivas, es decir, si al
aplicar las calificaciones se producen fragmentos que al intersectarlos generan un
conjunto vacio.
F = F1 INTERSECT F2 INTERSECT ..
INTESECT Fn
Definir fragmentos verticales se hace a través del operador de proyección del algebra
relacional operando sobre una relación global.
Una característica importante de la fragmentación vertical, es que todos los fragmentos
deben incluir la llave primaria de la relación global.
La razón es que si no incluímos la llave primaria no es posible reconstruir la relación original.
Para reconstruir la relación original debemos realizar un JOIN de todos los fragmentos.
R = F1 JOIN F2 JOIN … JOIN F3
En fragmentación vertical no se cumple que los fragmentos sean disjuntos (la llave está
repetida en todos los fragmentos).
Requiere:
1. Existe un agente raíz que inicia toda la transacción, así que cuando el usuario requiere
la ejecución de una aplicación distribuida el agente raíz es iniciado; el sitio del agente
raíz es llamado el sitio origen de la transacción.
2. El agente raíz tiene la responsabilidad de asegurar BEGIN-TRANSACTION, COMMIT O
ROLLBACK de toda la transacción distribuida.
En este protocolo hay un agente que tiene un papel especial, este agente es llamado el
coordinador (el cual es el agente raíz) y todo los demás agentes son llamados
PARTICIPANTES.
La idea básica del protocolo en dos fases (2pl, 2 phase locking) es determinar una decisión
única para todos los participantes con respecto a hacer un COMMIT o un ROLLBACK en todas
las subtransacciones locales.
La primera fase de este protocolo tiene como objetivo lograr una decisión común, la meta de
la segunda fase es llevar a cabo esta decisión.