Lossless separation

I am studying a test, and this is on the manual sheet. This is not homework and will not be appreciated.

Communication scheme R = (A, B, C, D, E)

Functional dependencies = (AB-> E, C-> AD, D-> B, E-> C)

Is r1 = (A, C, D) r2 = (B, C, E) OR

x1 = (A, C, D) x2 = (A, B, E) lossless compound decomposition? and why?

+5
source share
3 answers

My relational algebra is terribly rusty, but here's how I remember it to go

If r1 ∩ r2 -> r1 - r2or r1 ∩ r2 -> r2 - r1in FD, then you have lossless decomposition.

r1 ∩ r2 = C
r1 - r2 = AD

C->AD is in functional dependencies => lossless

for x1 and x2

x1 ∩ x2 = A
x1 - x2 = CD

A->CDnot in FD now check x2 - x1

x2 - x1 = BE

A->BEis not in FD, therefore lossy

, , ,

+4

, , .

, R1 R2 - , , C. C R1, C → A, D. .

X1 X2 , , - A, X1 X2 , .

0

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

r1 = (A, C, D) r2 = (B, C, E) Chase. , "C", C- > AD ACD.

x1 = (A, C, D) x2 = (A, B, E) is unprofitable, as you end up after executing the Chase algorithm. Alternatively, you can see that both tables are consistent only on A, and there is no such dependence that is fully functionally dependent on A.

0
source

All Articles