Sunteți pe pagina 1din 59

CURSO : Sistemas Distribuidos

BASE DE DATOS DISTRIBUIDAS Ing. Ivn M. Prez Farfn Noviembre 2.004

Sistemas distribuidos

20/01/1999 1

BASE DE DATOS DISTRIBUIDOS

Sistemas distribuidos

20/01/1999 2

CONCEPTO GENERAL
Un sistema de Base de datos distribuidas se compone de un conjunto de localidades, cada una de las cuales mantiene un sistema de base de datos local. Cada localidad puede procesar transacciones locales, es decir, aquellas que slo acceden a datos que residen en esa localidad. Adems una localidad puede participar en la ejecucin de transacciones globales, es decir, aquellas que acceden a datos de varias localidades. La ejecucin de transacciones globales requiere comunicacin entre las localidades, esta comunicacin puede ser, por ejemplo, mediante lneas telefnicas o cables de alta velocidad.

Sistemas distribuidos

20/01/1999 3

Sistemas de Bases de Datos Un Sistema de Bases Distribuidas


de Datos Distribuidas (SBDD) es un conjunto de sitios (servidores) dbilmente acoplados y que no comparten componentes fsicos. Cada sitio corre un SGBD que es independiente de los dems. Las Transacciones en un SBDD pueden acceder a datos de uno o ms sitios.

CARACTERISTICAS
Cabe destacar que en un sistema de BDD tiene las siguientes caractersticas: 1.- Cada sitio es un sistema de base de datos en s mismo. 2.- Los sitios han convenido en trabajar juntos (si es necesario) con el fin de que un usuario de cualquier sitio pueda obtener acceso a los datos de cualquier punto de la red tal como si todos estuvieran almacenados en el sitio propio del usuario. En consecuencia, la llamada base de datos distribuida es en realidad una especie de objeto virtual, cuyas partes componentes se almacenan fsicamente en varias bases de datos reales distintas ubicadas en diferentes sitios. De hecho, es la unin lgica de esas bases de datos.

Sistemas distribuidos

20/01/1999 5

TIPOS DE DISTRIBUCION

Sistemas distribuidos

20/01/1999 6

Fragmentacin de Datos
Divisin de la relacin R en fragmentos R1, R2, , Rn, los cuales contienen informacion suficiente para recostruir R. Fragmentacin Horizontal: Cada fila de R es asignado a uno o mas fragmentos Ri = < condicion i > ( R ) R = R1 U R2 U U Rn Fragmentacin Vertical El esquema de la relacin R es partido en dos o ms subesquemas. Todo los subesquemas deben contar con una clave candidata que permita la reunin natural de los fragmentos Se puede usar el id de la tuplas como clave de reunin, de esta manera todos los subesquemas deben contener este atributo. Ri = < subesquema i > (R) R = R1 join R2 join join Rn

Fragmentacin horizontal Es un subconjunto de las tuplas de una relacin formado por aquellas tuplas que satisfagan una condicin sobre uno o ms de sus atributos (generalmente, slo interviene un atributo). Los fragmentos pueden ser asignados a diferentes sitios del sistema distribuido. Una condicin de seleccin puede estar compuesta de varias condiciones conectadas por AND y OR. fragmentacin horizontal derivada: la fragmentacin horizontal de una relacin primaria se aplica a otras relaciones secundarias, que referencian a la primaria a travs de una clave externa o fornea. De esta forma, los datos relacionados en ambos tipos de relacin se fragmentan de la misma forma.

Fragmentacin horizontal Derivada: Ejemplo


Almacen(cod_almacen, direccin, telfono, rea) EMP( DNI, nombre, direccin, telfono, funcin, localizacin, cod_almacen) Producto(ref, nombre, descripcin, cod_almacen) Esta es la fragmentacin horizontal para almacn Almacensur= select * from almacen where area= sur Almacennorte= select * from almacen where area= Norte Esta es la fragmentacin horizontal derivada para producto productosur= select producto.* from producto, almacensur where producto.cod_almacen = almacensur.cod_almacen productonorte= select producto.* from producto, almacennorte where producto.cod_almacen = almacennorte.cod_almacen Esta es la fragmentacin horizontal derivada para EMP EMPsur= select EMP.* from EMP, almacensur where EMP.cod_almacen=almacensur.cod_almacen EMPnorte= select EMP.* from EMP, almacennorte where EMP.cod_almacen=almacennorte.cod_almacen

Fragmentacin horizontal.... Cada fragmento horizontal de una relacin R se puede especificar como una operacin Restriccin o Seleccin del lgebra relacional ( Ci (R) ). Un conjunto de fragmentos horizontales cuyas condiciones C1, C2,, Cn incluyan todas las tuplas de R (todas las tuplas satisfacen C1 OR C2 OR Cn) se denomina fragmentacin horizontal completa de R. En muchos casos, una fragmentacin horizontal completa es adems disjunta; es decir, ninguna tupla de R satisface Ci AND Cj para cualquier i<>j. Para reconstruir la relacin R a partir de una fragmentacin horizontal completa, es necesario aplicar la operacin Unin a los fragmentos.

Fragmentacin Horizontal
branch_name Hillside Hillside Hillside account_number A-305 A-226 A-155 balance 500 336 62

account1 = branch_name=Hillside (account ) branch_name Valleyview Valleyview Valleyview Valleyview account_number A-177 A-402 A-408 A-639 balance 205 10000 1123 750

Suc. Hillside

account2 = branch_name=Valleyview (account )

Suc. Valleyview

2. Almacenamiento distribuido de datos


Fragmentacin de datos
Fragmentacin horizontal: Ejemplo.
Tabla inicial de alumnos de la UPM (T)
DNI 87633483 99855743 33887293 05399075 44343234 44543324 66553234 Escuela EUI EUI EUIT EUI EUIT EUI EUIT Nombre Concha Queta Josechu Letn Oscar Romato Bill Gates Pepe Ptamo Maite Clado Ernesto Mate Nota ingreso 5.6 7.2 6.1 5.0 8.0 7.5 6.6 Beca No Si Si No No Si No

2. Almacenamiento distribuido de datos


Fragmentacin de datos Fragmentacin horizontal: Ejemplo. Fragmento de la EUI: Escuela="EUI"(T)
DNI 87633483 99855743 05399075 44543324 Escuela EUI EUI EUI EUI Nombre Concha Queta JosechuLetn Bill Gates Maite Clado Nota ingreso 5.6 7.2 5.0 7.5 Beca No Si No Si

Fragmento de la EUIT: Escuela="EUIT"(T)


DNI 33887293 44343234 66553234 Escuela EUIT EUIT EUIT Nombre Oscar Romato Pepe Ptamo Ernesto Mate Nota ingreso 6.1 8.0 6.6 Beca Si No No

Fragmentacin vertical Es un subconjunto de una relacin creado a partir de un subconjunto de sus columnas. Ser necesario incluir el atributo de clave primaria o clave candidata en todo fragmento vertical para poder reconstruir una relacin a partir de sus fragmentos. Un fragmento vertical de una relacin R se especifica con una operacin Proyeccin del lgebra relacional (Li(R) ). Un conjunto de fragmentos verticales cuyas listas de proyeccin L1, L2,, Ln incluyan todos los atributos de R, compartiendo slo el atributo de clave primaria de R, se denomina fragmentacin vertical completa de R y satisface: L1 L2 ... Ln = ATTRS (R), donde ATTRS (R) es el conjunto de atributos de R Li Lj = PK(R) para cq i<> j, donde PK(R) es la clave primaria de R Para reconstruir R desde una fragmentacin vertical completa se aplica la operacin OUTER UNION.

Fragmentacin vertical
branch_name customer_name tuple_id Lowman 1 Hillside Camp 2 Hillside Camp 3 Valleyview Kahn 4 Valleyview Kahn 5 Hillside Kahn 6 Valleyview Green 7 Valleyview deposit1 = branch_name, customer_name, tuple_id (employee_info ) account_number balance tuple_id

Marketing

500 A-305 1 336 A-226 2 205 A-177 3 10000 A-402 4 62 A-155 5 1123 A-408 6 750 A-639 7 deposit2 = account_number, balance, tuple_id (employee_info )

Contabilidad

Sistemas distribuidos

20/01/1999 16

Fragmentacin mixta o Hbrida

Este tipo de fragmentacin surge cuando los dos tipos anteriores se combinan. En tal caso, la relacin original puede reconstruirse aplicando las operaciones de Unin y Reunin Externa en el orden apropiado. En general, un fragmento de una relacin R se puede especificar con una combinacin de operaciones Seleccionar-Proyectar ( Li(Ci (R)) ).
Si C = True (Selecciono todas las tuplas) y si L ATTRS(R) es fragmento vertical Si C True and L = ATTRS(R) es fragmento horizontal Si C True and L ATTRS(R) es fragmento mixto Si C = True and L = ATTRS(R) R es considerada como un fragmento *

* Es vlido aclarar que una relacin completa puede considerarse tambin


como un fragmento.

2. Almacenamiento distribuido de datos


Fragmentacin de datos Fragmentacin Mixta: Un Ejemplo
Secretara
DNI 87633483 99855743 0539907 44543324 Escuela EUI EUI EUI EUI Nombre Concha Queta Josechu Letn Bill Gates Maite Clado Beca No Si No Si

Datos EUI (tabla E)


DNI 87633483
99855743 05399075 44543324

DNI,Escuela,Nombre,Beca(E)
Nombre Concha Queta
Josechu Letn Bill Gates Maite Clado

Escuela EUI
EUI EUI EUI

Nota ingreso 5.6


7.2 5.0 7.5

Beca No
Si No Si

Resultante de una fragmentacin horizontal previa

DNI

DNI,Escuela,Nombre,Nota Escuela Nombre (E) ingreso


EUI EUI EUI EUI Concha Queta JosechuLetn Bill Gates Maite Clado

Nota ingreso 5.6 7.2 5.0 7.5

Jefatura estudios

87633483 99855743 05399075 44543324

Ventajas de la Fragmentacin
Horizontal
Permite el procesamiento en paralelo de los fragmentos Permite que las tuplas se ubiquen el sitio donde son mas frecuentemente accedidas.

Vertical
Permite que los fragmentos sean almacenados en el sitio ms apropiado para la informacin. Permite el procesamiento paralelo sobre una relacin.

La Fragmentacin Vertical y Horizontal pueden ser combinadas


Los fragmentos pueden ser sucesivamente fragmentados en cualquier versin.

Diseo de BDD Las 12 Reglas de Date


1 Autonoma local
Los nodos o localidades de un SD deben ser independientes entre si en el mayor grado posible. Caractersticas de cada nodo

Tiene su propio DBMS El DBMS controla todos los aspectos del nodo Las operaciones de acceso a datos locales utilizan slo recursos locales Hay cooperacin entre los nodos para el acceso distribuido de datos.

Diseo de BDD Las 12 Reglas de Date...

2 No es necesario un sitio central


Todos los sitios/nodos deben ser tratados como iguales De existir un sitio central, habra un cuello de botella De existir un sitio central, el sistema sera vulnerable, porque una falla hara fallar a todo el sistema Para el protocolo de commit de dos fases se necesita un sitio central pero slo durante la ejecucin de una transaccin

Diseo de BDD Las 12 Reglas de Date...


3 Operacin continua
Un sistema BDD no debera estar nunca fuera de servicio Para proporcionar mayor confiabilidad y mayor disponibilidad se requiere:

Soporte para backups on line, total o incremental Soporte para recuperaciones rpidas de BD. DBMS tolerante a fallos (con hardware acorde)

Diseo de BDD Las 12 Reglas de Date...


4 Independencia de localizacin
Sin transparencia local deberan distinguirse los datos locales de los datos remotos. Simplifica los programas de usuario. Punto crtico: el Diccionario de Datos
Usuarios y aplicaciones se refieren a los datos mediante alias

Los usuarios y las aplicaciones no necesitan conocer la ubicacin fsica de los datos. Actan como si fuesen locales a ellos.

El DD debe mantener una tabla con los elementos de datos, sus alias y sus ubicaciones

Un DDBMS debe mantener y utilizar el DD an cuando los datos se mueve entre localidades

El DD debe estar replicado en las localidades y las rplicas deben mantenerse actualizadas.

Diseo de BDD Las 12 Reglas de Date...


5 Independencia de Fragmentacin de datos
Los usuarios pueden comportarse como si los datos no estuvieran fragmentados (no necesitan conocer los
fragmentos fsicos en que est dividida cada coleccin lgica de datos)

La fragmentacin es necesaria por razones de rendimiento. Los datos pueden estar almacenados en la ubicacin donde son usados con mayor frecuencia para que la mayora de las operaciones sean locales y se reduzca el trfico de la Red.

Diseo de BDD Las 12 Reglas de Date...


6 Independencia de la Replicacin de datos Replicacin
El usuario debe comportarse como si los datos no estuvieran replicados (a nivel lgico los usuarios no necesitan tener en cuenta si los datos tienen rplicas o no) Recordemos que esto significa:

Mejor rendimiento: las aplicaciones operan sobre copias locales en vez de comunicarse con sitios remotos.
Mejor disponibilidad: un objeto replicado est disponible mientras haya al menos una copia. Desventaja: propagar las actualizaciones.

Diseo de BDD Las 12 Reglas de Date...


7 Procesamiento de consultas distribuidas

La performance de una consulta debe ser independiente del sitio donde se realiza la consulta El SD debe disponer de mecanismos para optimizar las consultas y en el especial para reducir la carga de trfico necesaria.

Sistemas distribuidos

20/01/1999 27

Diseo de BDD Las 12 Reglas de Date...


8 Gestin de transacciones distribuidas

El SD debe disponer de mecanismos adecuados para el control de concurrencia y la recuperacin de transacciones distribuidas Debe mantenerse la atomicidad de las transacciones. Control de recuperacin de informacin. Control de concurrencia. Protocolos utilizado para preservar la atomicidad: dos fases o tres fases los ms conocidos.

Diseo de BDD Las 12 Reglas de Date...


9 Independencia de hardware Es necesario tener la posibilidad de ejecutar el mismo DBMS en diferentes plataformas de Hardware. 10 Independencia del SO Es necesario tener la posibilidad de ejecutar el mismo DBMS en sitios con diferentes sistemas operativos.

Diseo de BDD Las 12 Reglas de Date...


11 Independencia de red El SD debe poder operar con diferentes redes de comunicaciones. 12 Independencia del DBMS Debe permitirse la heterogeneidad, es decir, que cada sitio pueda funcionar con un SGBD diferente, incluso basado en un modelo de datos diferente, siempre y cuando compartan una interface comn.

CARACTERISTICAS DE UN SGBDD

Sistemas distribuidos

20/01/1999 31

CARACTERISTICAS DE UN SGBDD
Una coleccin de datos compartidos y relacionados logicamente. Los datos estan divididos en fragmentos. Los fragmentos se pueden duplicar. Los fragmentos se colocan en varios computadoras. Dichas computadoras estan conectadas por una red. Los Datos de cada computadora estan bajo el control de un SGBD. El SGBD en cada computador puede manejar aplicaciones locales autonomamente. Cada SGBD participa en al menos una aplicacin Global.

Sistemas distribuidos

20/01/1999 32

FUNCIONES Y ARQUITECTURA DE UN SGBDD


Un SGBDD debe tener las siguientes funciones: Servicios de comunicacin extendidos para proporcionar acceso a localizaciones remotas y permitir la transferencia de consultar datos entre las localizaciones usando una red. Catalogo del sistema extendido para almacenar detalles sobre la distribucin de los datos. Procesamiento distribuido de consultas, incluyendo optimizacin de consultas y acceso a datos remotos. Control de concurrencia extendido para mantener la consistencia de los datos replicados. Servicios de recuperacin extendidos que tengan en cuenta fallos en las localizaciones individuales y fallos de conexiones de comunicacin.

Sistemas distribuidos

20/01/1999 33

ARQUITECTURA DE REFERENCIA PARA UN SGBDD


En la siguiente Figura muestra una arquitectura de referencia para un SGBDD conforme a la arquitectura ANSI-SPARC:
S1
Esquma Externo Global

S2
Esquma Externo Global Esquma Conceptual Global Esquma Fragmentacion

Sn
Esquma Externo Global

S1
Esquma Correspondencia Local Esquma Conceptual Local Esquma Interno Local

Esquma Localizacion

S2
Esquma Correspondencia Local Esquma Conceptual Local Esquma Interno Local

Sn
Esquma Correspondencia Local Esquma Conceptual Local Esquma Interno Local

Sistemas distribuidos

20/01/1999 34

ARQUITECTURA DE REFERENCIA PARA UN SGBDD


Esquema Externo Global: proporciona independencia de datos logica. Esquema Conceptual Global: El esquema conceptual global es la descripcin logica de la base de datos completa, como si no estuviera distribuida. Este nivel corresponde al nivel conceptual de la arquitectura ANSI-SPARC y contiene definiciones de entidades, relaciones, constantes e informacin sobre seguridad e integridad. Proporciona independencia de datos fisicas desde el entorno distribuido. Esquema de fragmentacion y localizacion: El esquema de fragmentacion es una descripcion de cmo los datos estan particionados logicamente. El esquema de localizacin es una descripcion de donde estan localizados los datos. El esquema de localizacin tiene en cuenta cualquier replicacin. Esquema Locales: Cada SGBD local tiene su propio conjunto de esquemas. Los esquemas conceptuales e internos locales corresponden a los equivalentes de la arquitectura ANSI-SPARC.

Sistemas distribuidos

20/01/1999 35

ETAPAS DE DISEO DE BASE DE DATOS DISTRIBUIDOS

Sistemas distribuidos

20/01/1999 36

Sistemas distribuidos

20/01/1999 37

Analisis de Requisitos
Todo comienza con un anlisis de los requisitos que definirn el entorno del sistema en aras a obtener tanto los datos como las necesidades de procesamiento de todos los posibles usuarios del banco de datos.

Sistemas distribuidos

20/01/1999 38

Requisitos del Sistema Objetivos


se debern fijar los requisitos del sistema, los objetivos que debe cumplir respecto a unos grados de rendimiento, seguridad, disponibilidad y flexibilidad, sin olvidar el importante aspecto econmico.

Sistemas distribuidos

20/01/1999 39

Diseo de las Vistas


El diseo de las vistas trata de definir las interfaces para el usuario final y, por otro lado, el diseo conceptual se encarga de examinar la empresa para determinar los tipos de entidades y establecer la relacin entre ellas. Existe un vnculo entre el diseo de las vistas y el diseo conceptual.

Sistemas distribuidos

20/01/1999 40

Diseo Conceptual
El diseo conceptual puede interpretarse como la integracin de las vistas del usuario, este aspecto es de vital importancia ya que el modelo conceptual debera soportar no slo las aplicaciones existentes, sino que debera estar preparado para futuras aplicaciones. En el diseo conceptual y de las vistas del usuario se especificarn las entidades de datos y se determinarn las aplicaciones que funcionarn sobre la base de datos, as mismo, se recopilarn datos estadsticos o estimaciones sobre la actividad de estas aplicaciones. Sistemas distribuidos
20/01/1999 41

Diseo de la distribucion
El objetivo de esta etapa consiste en disear los esquemas conceptuales locales que se distribuirn a lo largo de todos los puestos del sistema distribuido. Sera posible tratar cada entidad como una unidad de distribucin; en el caso del modelo relacional, cada entidad se corresponde con una relacin. Resulta bastante frecuente dividir cada relacin en subrelaciones menores denominadas fragmentos que luego se ubican en uno u otro sitio. De ah, que el proceso del diseo de la distribucin conste de dos actividades fundamentales: la fragmentacin y la asignacin. Sistemas distribuidos
20/01/1999 42

Diseo de la distribucion
El diseo de la distribucin es el diseo fsico, el cual proyecta los esquemas conceptuales locales sobre los dispositivos de almacenamiento fsico disponibles en los distintos sitios. Las entradas para este paso son los esquemas conceptuales locales y la informacin de acceso a los fragmentos. Por ltimo, se sabe que la actividad de desarrollo y diseo es un tipo de proceso que necesita de una monitorizacin y un ajuste peridicos, para que si se llegan a producir desviaciones, se pueda retornar a alguna de las fases anteriores. Sistemas distribuidos
20/01/1999 43

Enfoques para realizar el diseo distributivo.

FRAGMENTACIN

Sistemas distribuidos

20/01/1999 44

FRAGMENTACIN
Una base de datos fragmentada es aquella donde no existe rplica alguna. Los fragmentos se alojan en sitios donde nicamente existe una copia de cada uno de ellos a lo largo de toda la red. En caso de rplica, podemos considerar una base de datos totalmente replicada, donde existe una copia de todo el banco de datos en cada sitio, o considerar una base de datos parcialmente replicada donde existan copias de los fragmentos ubicados en diferentes sitios. El nmero de copias de un fragmento ser una de las posibles entradas a los algoritmos de asignacin, o una variable de decisin cuyo valor lo determine el algoritmo. Sistemas distribuidos
20/01/1999 45

BOLQUEO
El Bloqueo es una tcnica muy empleada con el fin de obtener consistencia de datos. Cuando est tecnica se lleva a cabo de una forma adecuada con una planificacin seria, se puede mantener la integridad de la base de datos, en la sgte. Imagen Lima ejecuta una transaccin de actualizar dos bases de datos duplicadas que se encuentran en Arequipa y Trujillo. Para ello se debe intercambiar entre los puntos de red los siguientes mensajes :

Sistemas distribuidos

20/01/1999 46

BOLQUEO

Sistemas distribuidos

20/01/1999 47

Clase de Datos
James Martin nos proporciona una interesante clasificacin de los datos basadas en la frecuencia de cambios que experimentan, la necesidad de actualizaciones rpidas y el tipo de actualizaciones. Clase 0 : Los datos no son modificados nunca, o bien con poca frecuencia. Clase 1 : Los datos son modificados con un simple reemplazamiento; si el nmero de ; reemplazamientos es mayor que uno los datos no sufren ningn tipo de dao. ningn tipo de dao.
20/01/1999 48

Sistemas distribuidos

Clase de Datos
Clase 2 : Los datos no deben ser actualizados ms de una vez con una transaccin , pero las actualizaciones se pueden realizar en cualquier orden. Clase 3 : Los datos deben ser actualizados en un orden predeterminado y en tiempo real. Clase 4 : Los datos son actualizados y las actualizaciones afectan otras bases de datos y/u ordenadores de la red. ordenadores de la red.

Sistemas distribuidos

20/01/1999 49

Clase de Datos
Las diferentes clases de datos dependen del tipo de sistema de gestin de base de datos que se emplee. Existe otra serie de factores importantes de cara a realizar la mejor eleccin.. Ejm. Si una base de datos de gran tamao es de clase 3 y presenta una relacin de alta de actualizaciones con respecto a recuperaciones , deberamos pensar mucho el crear diversas copias.

Sistemas distribuidos

20/01/1999 50

CARGA
El termino carga se hace referencia a las asignaciones de recursos a un punto del sistema distribuido. Los recursos pueden ser programas o equipos. En la mayor parte de los casos la carga no se realiza en tiempo real. Esta solucin puede simplificar el entorno distribuido considerablemente.

Sistemas distribuidos

20/01/1999 51

CARGA
La carga puede realizarse dentro las topologas vertical u horizontal de tres formas : Carga ascendendente Carga descendente Carga interna.

Sistemas distribuidos

20/01/1999 52

Carga Descendente.
Los recursos son transmitidos desde el centro primario o maestro hacia los centros secundarios o esclavos, La carga descendente se emplea, a menudo para transportar copias de programas desarrollados y probados en el centro maestro. Esta solucin evita tener que disponer de personal tcnico de programacin en los centro distribuidos.

Sistemas distribuidos

20/01/1999 53

Carga ascendente
Se emplea cuando un centro secundario requiere un ordenador de mayor capacidad para ejecutar una tarea. Dicho centro transmite su secuencia de trabajo hacia el centro maestro para que este lo ejecute.

Sistemas distribuidos

20/01/1999 54

Los componente de una red horizontal pueden llevar a cabo las mismas funciones vistas anteriormente. Al igual que en la carga ascendente y descendente, la carga interna se emplea frecuentemente para compartir recursos, dividir el trabajo y proporcionar servicio de recuperacin entre los elemento de una red horizontal. Ejemplo: Edicin . la edicin de datos se realiza localmente. Los criterios de edicin se pueden desarrollar en el centro maestro y realizar posteriormente una carga descendente hacia los distintos puntos del sistema. Proceso de errores. Cualquier condicin de error en los programas se transmite a los centros secundarios. Base de datos . Se asignan datos determinados a distintos puntos del sistema.

Carga Interna

Sistemas distribuidos

20/01/1999 55

Esquema para la base de datos relacional EMPRESA (claves primarias subrayadas).

...Tcnicas de Fragmentacin, Replicacin y Asignacin de Datos: Ejemplo 2

De acuerdo con los requisitos, es conveniente almacenar la BD completa en el sitio 1.

Para generar los fragmentos correspondientes al sitio 2 y al sitio 3, primero se puede fragmentar horizontalmente Departamento por su clave (NmeroD). Despus se aplica fragmentacin derivada a las relaciones Empleado, Proyecto y Localizaciones_Dept segn la clave fornea (presente en todas ellas) que refiere a un nmero de departamento. Despus se pueden fragmentar verticalmente los fragmentos resultantes de Empleado para incluir slo los atributos: {Nombre, NSS, Salario, NSS_Superv, ND}. La figura muestra los fragmentos mixtos EMPD5 y EMPD4, que contienen las tuplas Empleado que satisfacen las condiciones ND=5 y ND=4, respectivamente. Los fragmentos horizontales de Proyecto, Departamento y Localizaciones_Dept se fragmentan de manera similar por nmero de departamento. Todos estos fragmentos, almacenados en los sitios 2 y 3, estn replicados porque tambin se almacenan en el sitio 1 que es la oficina central.

(a) Fragmentos en el sitio 2 correspondientes al Departamento 5

(b) Fragmentos en el sitio 3 correspondientes al Departamento 4

S-ar putea să vă placă și