2010-11-29 19 views
5

Estoy estudiando para una prueba, y esto está en la hoja de guía de estudio. Esto no es tarea, y no será calificado.Sin pérdida Unirse a la descomposición

Relación Esquema R = (A, B, C, D, E)

dependencias funcionales = (AB-> E, C-> AD, D-> B, E-> C)

Es r1 = (A, C, D) r2 = (B, C, E) O

x1 = (A, C, D) x2 = (A, B, E) ¿descomposición de unión sin pérdida? ¿y por qué?

+0

a qué pertenecen R y A, b, c, d, e en el mundo real – XMen

+0

he editado la pregunta – Mike

+1

Votación negativa inexplicada votada. – EJP

Respuesta

4

Mi álgebra relacional es terriblemente oxidado, pero aquí es como lo recuerdo ir

Si r1 ∩ r2 -> r1 - r2 o r1 ∩ r2 -> r2 - r1 en FDs entonces usted tiene la descomposición sin pérdida.

r1 ∩ r2 = C 
r1 - r2 = AD 

C->AD se encuentra en las dependencias funcionales => sin pérdida

para x1 y x2

x1 ∩ x2 = A 
x1 - x2 = CD 

A->CD no está en FD s Ahora compruebe x2 - x1

x2 - x1 = BE 

A->BE no está en FD s, ya sea, por lo tanto, con pérdida

referencias here, por favor, compruebe los errores horribles que podría haber cometido

0

Aquí es mi entendimiento, básicamente nos fijamos en sus descomposiciones y determinar si los atributos comunes entre la las relaciones son la clave de al menos una de las relaciones.

Así que con R1 y R2 - lo único común entre ellos es C. C sería una clave para R1, ya que se le da C -> A, D. Entonces es sin pérdida.

Para X1 y X2, lo único común es A, que por sí solo no es una clave para X1 o X2 de las dependencias funcionales que se le otorgan.

0

dependencias funcionales = (AB-> E, C-> AD, D-> B, E-> C)

Es r1 = (A, C, D) r2 = (B, C, E) no tiene pérdidas cuando ejecuta el algoritmo Chase. Se puede ver que ambas tablas coinciden en 'C' y la dependencia C-> AD se conserva en la tabla ACD.

x1 = (A, C, D) x2 = (A, B, E) es con pérdidas, ya que concluirá después de realizar el algoritmo de Chase. Alternativamente, se puede ver que ambas tablas solo coinciden en A y que no existe tal dependencia que dependa totalmente de A.