Está en la página 1de 14

Diseo de Bases de Datos Distribuidas (2da Parte)

Lic. Brbara da Silva Sistemas de Bases de Datos Distribuidas - UCV

Esquema de la Clase
Fragmentacin Horizontal Fragmentacin Horizontal Primaria

Reglas de Correctitud de Fragmentacin


1. Completitud: La descomposicin de una relacin R en los fragmentos R1, R2, ..., Rn es completa si y solamente si cada elemento de datos en R se encuentra en algn de los Ri. En el caso de fragmentacin horizontal el elemento de datos, normalmente, es una tupla, mientras que en el caso de fragmentacin vertical es un atributo. 2. Reconstruccin: Debe ser posible definir una operacin relacional que permita reconstruir la relacin R a partir de los fragmentos. Esta regla asegura que se preserven las dependencias funcionales. 3. Disyuncin: Si una relacin R se descompone horizontalmente en una serie de fragmentos R1, R2, ..., Rn, y un elemento de datos Di se encuentra en algn fragmento Rj, entonces no se encuentra en otro fragmento Rk (k<> j).

Fragmentacin Horizontal
Consiste en particionar una relacin sobre sus tuplas. Cada fragmento ser un subconjunto de las tuplas de la relacin global.

Ejemplo:

Proyecto
numProy 100 200 300 400 500 nombre Proyecto1 Proyecto2 Proyecto3 Proyecto4 Proyecto5 presupuesto 2000 5000 3000 4000 6000 localizacin Caracas Valencia Valencia Caracas Caracas

Proyecto1
numProy 100 400 500 nombre Proyecto1 Proyecto4 Proyecto5 presupuesto 2000 4000 6000 localizacin Caracas Caracas Caracas

Proyecto2
numProy 200 300 nombre Proyecto2 Proyecto3 presupuesto 5000 3000 localizacin Valencia Valencia

En el ejemplo se cumplen las tres reglas de correctitud?

Fragmentacin Horizontal
Para llevar a cabo la fragmentacin horizontal se necesita:

1. Esquema Conceptual Global: permite conocer las entidades y las relaciones entre ellas.
Empleado (numEmp, nombre, titulo) Sueldo (titulo, salario) Proyecto (numProy, nombre, presupuesto, localizacin) Asignacin (numEmp, numProy, responsabilidad, duracin)

Relaciones: Asignacin (M-M), Sueldo-Empleado (1-N)

Fragmentacin Horizontal
Para llevar a cabo la fragmentacin horizontal se necesita: 2. Predicados usados en las consultas de los usuarios.

atributo definido sobre un dominio Di, un predicado simple pj definido sobre R tiene la forma pj: Ai & Value Donde & {=,<,>, , , } y Value Di

Predicado Simple: Dada una relacin R (A1, A2, AN), donde Ai es un

Ejemplo: localizacion = Caracas

presupuesto <= 1000

Fragmentacin Horizontal
2. Predicados usados en las consultas de los usuarios. Pero generalmente las consultas tienen combinaciones de predicados simples. La conjuncin de predicados simples (natural o negada) se denomina Predicado Mnimo Predicado de Mnimo Trmino.

Ejemplo:
m1: m2: m3: m4: localizacion localizacion localizacion localizacion = Caracas ^ presupuesto 1000 Caracas ^ presupuesto 1000 = Caracas ^ presupuesto > 1000 Caracas ^ presupuesto > 1000

Fragmentacin Horizontal
2. Predicados usados en las consultas de los usuarios. por un query de un usuario el cual se basa en el predicado mnimo mi. Ejemplo Sel (m1) = 0 Sel (m3) = 3

Seleccin Minitrmino - Sel(mi): El nmero de tuplas que sern accedidas

accede a la data en un periodo de tiempo.

Frecuencia de Acceso Acc(qi): Frecuencia con la cual una query(qi)

Fragmentacin Horizontal
Hay dos tipos de fragmentacin horizontal: Fragmentacin Horizontal Primaria -> los predicados son definidos sobre la relacin. Fragmentacin Horizontal Derivada -> los predicados son definidos sobre otra relacin.

Fragmentacin Horizontal Primaria


La Fragmentacin Horizontal primaria se puede definir como Ri = SLFi(R) Donde Fi es la formula de seleccin -> preferiblemente un mi. Un fragmento horizontal Ri de una relacin R consiste de todas las tuplas de R que cumplen con un predicado mnimo. Dado un conjunto M de predicados mnimos tenemos tantos fragmentos como mnimos predicados existan. Ese conjunto de fragmento son llamados Fragmentos Minitrminos.

Fragmentacin Horizontal Primaria


Los predicados simples debe cumplir con: Completitud: Se dice que un conjunto de predicados simples(Pr) es completo si y solo si dos tuplas del mismo fragmento tienen la misma probabilidad de ser accedidos.

Minimilidad: Pr es minimal si todos sus predicados son relevantes.


Un predicado es relevante cuando influye en como es hecha la fragmentacin.

Fragmentacin Horizontal Primaria


Ejemplo de Completitud Se poseen dos aplicaciones: 1. Buscar los presupuestos de los proyectos de cada localizacin. 2. Buscar los proyectos con presupuestos menores que 2000. Pr = {Localizacion = Caracas, Localizacion = Valencia} No es completo con respecto a la aplicacin 2. Pr = {Localizacion = Caracas, Localizacion = Valencia, presupuesto 2000, presupuest > 2000} Si es completo.

Fragmentacin Horizontal Primaria


Ejemplo de Minimal Se poseen dos aplicaciones: 1. Buscar los presupuestos de los proyectos de cada localizacin. 2. Buscar los proyectos con presupuestos menores que 2000. Pr = {Localizacion = Caracas, Localizacion = Valencia, presupuesto 2000, presupuesto > 2000} Es mnimo. Pr = {Localizacion = Caracas, Localizacion = Valencia, presupuesto 2000, presupuesto> 2000, nombre=Proyecto4 } NO es mnimo.

Fragmentacin Horizontal Primaria


Verificando las Reglas de Correctitud 1. Completitud: Si Pr es completo y mnimo entonces los predicados seleccionados estn completos. 2. Reconstruccin: mediante la unin de los fragmentos. 3. Disyuncin: Los predicados mnimos deben ser mutuamente exclusivos.

También podría gustarte