Sei sulla pagina 1di 36

Bases de Datos Distribuidas

PROBLEMA DE LOS SISTEMAS DISTRIBUIDOS


SISTEMAS MANEJADORES DE BASES DE DATOS DISTRIBUIDAS

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

El problema principal es que las redes de comunicacin al menos las de larga distancia o redes de rea amplia (WLAN) son lentas. Una Wan tpica puede tener una velocidad de datos efectiva cercana a los 5 o 10 mil bytes por segundo. Por el contrario, la unidad de disco tpica tiene una velocidad de datos cercana a los 5 o 10 millones de bytes por segundo.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

Por consecuencia, un objetivo principal en los sistemas distribuidos es minimizar la utilizacin de la red. Es decir, minimizar la cantidad y el volumen de los mensajes.

Este objetivo hace a su vez que se presenten problemas en varias reas complementarias, entre ellas las siguientes:
Procesamiento de Consultas Administracin del Catlogo Propagacin de la actualizacin Control de la Recuperacin Control de la Concurrencia

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS El objetivo de minimizar la utilizacin de la red implica que el propio Proceso de Optimizacin de Consultas debe ser distribuido, al igual que el proceso de ejecucin de consulta. En otras palabras, el proceso de optimizacin general consistir tpicamente en un paso de optimizacin global seguido por pasos de optimizacin local en cada sitio afectado.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS
DESCOMPOSICION DE CONSULTAS

En un DDBMS sin transparencia el usuario expresa su consulta en trminos de fragmentos especficos. Tambin ser responsabilidad del usuario mantener la consistencia. Si el DDBMS tiene transparencia el usuario especificar una consulta como si el sistema fuera centralizado. En las actualizaciones, la consistencia deber garantizarla el sistema.
M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS DESCOMPOSICION DE CONSULTAS En las consultas, el mdulo de descomposicin de subconsultas deber descomponer la consulta en subconsultas que puedan ejecutarse en sitios individuales. Adems tiene que existir composicin de resultados. una estrategia de

Si el sistema detecta un elemento replicado dentro de una consulta, deber mantenerlo actualizado tras la ejecucin de sta.
M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Supongamos que una consulta C se enva al sitio X, y supongamos que la consulta C involucra la unin de una relacin Ry de cien tuplas en el sitio Y con una relacin Rz de un milln de tuplas en el sitio Z. El optimizador que est en el sitio X seleccionar la estrategia global para la ejecucin de C; es claramente necesario que decida mover Ry hacia Z y no Rz hacia Y (por supuesto, tampoco Ry y Rz hacia el sitio X)

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Entonces, una vez que que se ha decido mover Ry hacia Z, la estrategia para ejecutar la unin real en el sitio Z ser decida por el optimizador local que est en Z.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Ejemplo:


Tablas Proveedores Partes Envos Nmero de Tuplas 10, 000 100, 000 1, 000, 000 Sitio A B A

Supongamos que cada tupla almacenada es de 25 bytes (200 bits) de longitud.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

Tablas que Componen el SBDD


Proveedores
SNo Proveedor Status Ciudad

Partes
Pno Parte Color Peso Ciudad

Envos
SNo PNo Cantidad

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Consulta: Obtener los Nmeros de Proveedores que surten Partes rojas de Londres. Cardinalidad intermedios: estimada de ciertos resultados

Cantidad de Partes Rojas = 10 Cantidad de envos de los proveedores de Londres = 100, 000

Suposiciones de comunicacin:
Velocidad de datos Retardo en el acceso = 50, 000 bits/segundo = 0.1 segundo

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Ahora analicemos brevemente 6 estrategias posibles para el procesamiento de esta consulta, y para cada estrategia calcularemos el tiempo de comunicacin total a partir de la frmula: (retardo de acceso total) + (volumen total de datos / velocidad de datos)

que se convierte (en segundos)


(cantidad de mensajes / 10) + (cantidad de bits / 50 000)

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Primer Estrategia. Mover Partes hacia el sitio A y procesar la consulta en A. T1 = 0.1 + (100 000 * 200) / 50 000 = 400 segs. Aproximadamente (6.67 minutos)

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Segunda Estrategia. Mover Proveedores y Envos hacia el sitio B y procesar la consulta en B. T2 = 0.2 + ((10 000 + 1 000 000) * 200) / 50 000 = 4040 segs. Aproximadamente (1.12 horas)

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Tercer Estrategia. Juntar Proveedores y Envos en el sitio A, restringir el resultado a los proveedores de Londres y luego, para cada uno de esos proveedores, revisar el sitio B para ver si la parte correspondiente es roja. Cada una de estas revisiones involucrar dos mensajes (una consulta y una respuesta). El tiempo de transmisin para estos mensajes ser pequeo en comparacin con el retardo del acceso. T3 = 20 000 segundos aproximadamente (5.56 horas)
M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Cuarta Estrategia. Restringir las Partes en el sitio B a solamente las que sean rojas y luego, para cada una de stas, revisar el sitio A para ver si existe un envo que relacione la parte con un proveedor de Londres. Cada una de estas revisiones involucrar dos mensajes; de nuevo, el tiempo de transmisin de los mensajes ser pequeo en comparacin con el retardo del acceso. T4 = 2 segundos aproximadamente

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Quinta Estrategia. Juntar Proveedores y Envos en el sitio A, restringir el resultado a los proveedores de Londres, proyectar el resultado sobre Sno y Pno, y mover el resultado al sitio B. Completar el procesamiento en el sitio B. T5 = 0.1 + (100 000 * 200) / 50 000 = 400 segundos aproximadamente minutos)

(6.67

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Sexta Estrategia. Restringir las Partes en el sitio B a las que son Rojas y mover el resultado al sitio A. Completar el procesamiento en el sitio A. T6 = 0.1 + (10 * 200) / 50 000 = 0.1 segundos aproximadamente

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

Resumen de las Estrategias y Tiempos

Estrategia
1 2 3 4 5 6

Tcnica
Mover Partes hacia A Mover Proveedores y Envos hacia B Para cada envo de Londres, revisar si la parte es roja Para cada parte roja, revisar si existe un proveedor de Londres Mover los envos de Londres hacia B Mover las partes rojas hacia A

Tiempo de comunicacin
6.67 minutos 1.12 horas 5.56 horas 2.00 segundos 6.67 minutos 0.10 segundos (el mejor)

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Conclusin: Cada una de las seis estrategias representan un enfoque admisible para el problema, pero la variacin en el tiempo de comunicacin es enorme (la ms lenta es dos millones de veces ms lenta que la ms rpida).

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

PROCESAMIENTO DE CONSULTAS Conclusin: La velocidad de datos y el retardo en el acceso son factores importantes para seleccin de una estrategia. Adems, algunas estrategias permiten el procesamiento paralelo en los dos sitios; por lo tanto, el tiempo de respuesta ante el usuario puede ser, de hecho, menor que en un sistema centralizado.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO ACTUALIZACIONES La informacin relativa a las rplicas se encuentra en el catlogo: Para la fragmentacin horizontal se guarda la condicin de cada fragmento.

Para la vertical la lista de atributos de cada fragmento.


Para la mixta se almacenan ambas informaciones.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO

En un sistema distribuido, el Catlogo del Sistema (o Diccionario de Datos) incluir no solamente los datos usuales del catlogo con relacin a la estructura de las tablas, vistas, autorizaciones, etc.
Sino tambin toda la informacin de control necesaria para permitir que el sistema proporcione la independencia de ubicacin, fragmentacin y replicacin necesaria. Ahora bien Dnde y cmo debe ser almacenado el propio catlogo?
M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO

1. Centralizado. El catlogo total es almacenado exactamente una vez en un sitio central. 2. Completamente replicado. El catlogo total es almacenado por completo en cada uno de los sitios. 3. Dividido. Cada sitio mantiene su propio catlogo de los objetos que estn almacenados en ese sitio.
El catlogo total es la unin de todos los catlogos locales.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO

4. Combinacin de Centralizado y Dividido.


Cada sitio mantiene su propio catlogo local. Adems, un nico sitio central mantiene una copia unificada de todos esos catlogos locales.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO Problemas del Manejo del Catlogo 1. Centralizado.- Viola el objetivo dependencia de un sitio central. de no

2.

Completamente Replicado.- Sufre una severa prdida de autonoma, ya que cada actualizacin del catlogo tiene que ser propagada a cada uno de los sitios.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO Problemas del Manejo del Catlogo 3. Dividido.- El enfoque eleva en gran medida el costo de las operaciones que no son locales (para localizar un objeto remoto ser necesario acceder, en promedio, a la mitad de los sitios).

4.

Centralizado-Dividido.- Este enfoque es ms eficiente que el punto 3 (la localizacin de un objeto remoto requiere slo un acceso al catlogo remoto), pero viola nuevamente el objetivo de no dependencia de un sitio central

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO Una forma de manejador el Catlogo del Sistema, para lograr la transparencia de localizacin, es a travs del Mapeo. Esto es, primero se distingue el Nombre Comn de una relacin o tabla, que es nombre por el cual los usuarios hacen normalmente referencia al objeto. Y su Nombre a Nivel de Sistema, que es un identificador interno globalmente nico para ese objeto.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO


Los nombres a nivel de sistema tienen cuatro componentes:


ID del creador (ID del usuario) ID del sitio del creador (sitio donde se oper CREATE) Nombre local (nombre original) ID del sitio de nacimiento (sitio donde se almacen inicialmente)

Por ejemplo: ALBERTO @ MORELIA . CLIENTE @ URUAPAN

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO ALBERTO @ MORELIA . CLIENTE @ URUAPAN Donde se denota la creacin de una tabla denominada localmente Cliente. Creada por el usuario Alberto desde el sitio de Morelia.

Y almacenada inicialmente en Uruapan.

Donde se garantiza que este nombre no cambiar, ni aunque el objeto emigre a otro sitio.
M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO Los usuarios pueden acceder a ella a travs de su nombre comn o un sinnimo para ese nombre a nivel de sistema. Para esto, se realiza un mapeo del nombre comn al de nivel de sistema. Por ejemplo (sistema R*):

CREATE SYNONYM MCLIENTE FOR ALBERTO @ MORELIA . CLIENTE @ URUAPAN;

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO Ahora la manipulacin del elemento se puede realizar de la siguiente manera:

SELECT ... FROM CLIENTE ...;


o SELECT ... FROM MCLIENTE ...;

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO Para acceder a la tabla MCLIENTE, el sistema consulta la Tabla de Sinnimos.

Donde la tabla de sinnimos puede ser vista como el primer componente del catlogo.
Cada sitio mantiene un conjunto de esas tablas para los usuarios, y transforma los sinnimos conocidos en los nombres a nivel de sistema correspondiente.

M. en C. Anastacio Antolino Hernndez

Bases de Datos Distribuidas

ADMINISTRACION DEL CATALOGO Adems, cada sitio mantiene: Una entrada de catlogo para cada tabla nacida en ese sitio Una entrada de catlogo para cada almacenada actualmente en ese sitio. tabla

M. en C. Anastacio Antolino Hernndez

Potrebbero piacerti anche