La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Ing. Fabián Ruano.  Definición  Diferencias con BD Centralizadas.

Presentaciones similares


Presentación del tema: "Ing. Fabián Ruano.  Definición  Diferencias con BD Centralizadas."— Transcripción de la presentación:

1 Ing. Fabián Ruano

2  Definición  Diferencias con BD Centralizadas

3  Almacenamiento cercano  Procesamiento paralelo  Expansión rápida  Tolerancia a fallos  Autonomía de nodos

4  Control y manejo de datos  Seguridad  Complejidad en mantener integridad  Control de concurrencia mas complejo

5  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

6 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.

7  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

8  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

9 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

10 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

11

12  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

13

14  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

15  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.

16  Diseño físico: mapear esquemas conceptuales locales con los dispositivos de almacenamiento físicos disponibles en cada sitio.

17  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.

18  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.

19  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

20  Fragmentación vertical  Fragmentación horizontal  Fragmentación híbrida

21  Afecta desempeño de la ejecución de los Query.  Dependerá de las necesidades de nuestra aplicación.

22  Condición de completitud. La descomposición de una relación R en los fragmentos R 1, R 2,..., R n es completa si y solamente si cada elemento de datos en R se encuentra en algún de los R i.  Condición de Reconstrucción. Si la relación R se descompone en los fragmentos R 1, R 2,..., R n, entonces debe existir algún operador relacional Ñ, tal que,R = Ñ 1£ i£ n R i  Condición de Fragmentos Disjuntos. Si la relación R se descompone en los fragmentos R 1, R 2,..., R n, y el dato d i está en R j, entonces, no debe estar en ningún otro fragmento R k (k¹ j).

23  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.

24  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.

25

26 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  Información acerca de la red de comunicaciones  Información acerca de los sistemas de cómputo

27 Cada subconjunto puede contener datos que tienen propiedades comunes y se puede definir expresando cada fragmento como una operación de selección sobre la relación global Considere la relación global: SUPPLIER( SNUM, NAME, CITY ) entonces, la fragmentación horizontal puede ser definida como: SUPPLIER1 = SLcity == "SF"SUPPLIER SUPPLIER1 = SLcity == "LA"SUPPLIER  Esta fragmentación satisface la condición de completes si "SF" y "LA" son solamente los únicos valores posibles del atributo CITY.  La condición de reconstrucción se logra con: SUPPLIER = SUPPLIER1 union SUPPLIER2  La condición de disjuntos se cumple claramente en este ejemplo.

28 La fragmentación derivada horizontal se define partiendo de una fragmentación horizontal. En esta operación se requiere de Semi-junta (Semi-Join) el cual nos sirve para derivar las tuplas o registros de dos relaciones. Las siguientes relaciones definen una fragmentación horizontal derivada de la relación SUPPLY. SUPPLY1 = SUPPLYSJsnum == snumSUPPLIER1 SUPPLY2 = SUPPLYSJsnum == snumSUPPLIER2

29  Enfoques ◦ Agrupamiento (Clustering): Inicia asignando cada atributo a un fragmento, y en cada paso, algunos de los fragmentos satisfaciendo algún criterio se unen para formar un solo fragmento. ◦ Division: Inicia con una sola relación realizar un particionamiento basado en el comportamiento de acceso de las consultas sobre los atributos.

30 Formula general: min( Costo Total ) Dadas: - Restricciones tiempo de rta - Restricciones capacidad de almacenamiento - Restricciones en tiempo de procesamiento Costo total = procesamiento de consultas + almacenamiento Procesamiento de consultas = sumatoria del costo de procesamiento de todas las consultas Almacenamiento = sumatoria de costos de almacenar todos los fragmentos en los correspondientes nodos

31 Costo de almacenamiento por nodo = costo almacenamiento unitario en el nodo * tamaño del fragmento Costo del procesamiento por consulta = costo de procesamiento + costo de transmision Costo de procesamiento = costo de acceso + costo de mantenimiento de integridad + costo debido a control de concurrencia

32 Costo de acceso = sumatoria(numero total de actualizaciones y lecturas realizadas por consulta en el fragmento i * costo unitario de procesamiento local en el fragmento i) i = cada fragmento involucrado en la consulta Costos de mantenimiento de integridad y costo de control de concurrencia se calculan similar al costo del control de acceso.

33 Costo de transmisión - Procesamiento de actualizaciones = costo de envió de mensajes de actualización a los N nodos involucrados + costo de envió de mensaje de confirmación - Procesamiento de consultas = costo de transmitir consulta a N nodos involucrados + costo de transmisión de respuestas de los N nodos a las N consultas

34  Tiempo de respuesta Para cada Qi el tiempo de respuesta <= máximo tiempo de respuesta esperado. Almacenamiento Costo de almacenamiento en Nodoi <= capacidad de almacenamiento de dicho nodo Tiempo procesamiento Carga de procesamiento Nodoi <= capacidad de procesamiento de dicho nodo

35  http://tododistribuido.files.wordpress.com/2 008/10/disdabe_design.pdf http://tododistribuido.files.wordpress.com/2 008/10/disdabe_design.pdf  http://cursos.aiu.edu/Base%20de%20Datos%2 0Distribuidas/pdf/Tema%202.pdf http://cursos.aiu.edu/Base%20de%20Datos%2 0Distribuidas/pdf/Tema%202.pdf  http://geocities.ws/immonroy7/Cap_3.html http://geocities.ws/immonroy7/Cap_3.html  http://lihectortorres.files.wordpress.com/201 0/09/base_de_datos_distribuidas.pdf http://lihectortorres.files.wordpress.com/201 0/09/base_de_datos_distribuidas.pdf


Descargar ppt "Ing. Fabián Ruano.  Definición  Diferencias con BD Centralizadas."

Presentaciones similares


Anuncios Google