in Databases recategorized
561 views
0 votes
0 votes

Consider a schema $R(MNPQ)$ and functional dependencies $M\rightarrow N, P\rightarrow Q$. Then the decomposition of  $R$ into $R_{1} \left (MN \right )$ and  $R_{2} \left (PQ \right )$ is __________.

  1. Dependency preserving but not lossless join
  2. Dependency preserving and lossless join
  3. Lossless join but not dependency preserving
  4. Neither dependency preserving nor lossless join.
in Databases recategorized
561 views

4 Answers

5 votes
5 votes
Best answer

R(MNPQ) and functional dependencies M→N, P→Q. Then the decomposition of R into R1(MN) and R2(PQ) 

here clearly the dependencies are preserved but they are not lossless as both R1 and R2 cannot be formed back again as they donot have a common attribute which is a key so answer is 1

selected by

4 Comments

lossless??
0
0
I think option 1 It will be not lossless join.
0
0
i answered it..it will not be loseless
1
1
@udipito lossy does not mean that some records are lost....It means that you will not be able to generate the exact relation as before ...In the above if R1 and R2 are joined to form the previous relation you will not get exact relations as many will come out of from the Cartesian product to remove unnecessary things we need a common attribute which is a key(unique) it is clearly lossy
1
1
3 votes
3 votes
Here as only M->N and P->Q is there, and decomposition is also in MN and PQ

so it is Not Loseless

and all dependency are also preserved

so 1 is correct answer here

4 Comments

i know the method to find lossless which is so long.. by drawing tables..

is there any simpler way?
0
0
i think not..i also ude the same method..but here you can do just by visualising
2
2

For better understanding of the concept go to the article 

http://www.geeksforgeeks.org/lossless-join-and-dependency-preserving-decomposition/

0
0
@Debasmita Bhoumik

For two relations : Just see which are common attributes of the relations i.e. by looking only. Now, take closure of that common attribute if u found any one of the relations back that means it is lossless.

For more than two relations u have to follow the Chase Algorithm which is very easy to implement.
0
0
3 votes
3 votes

OPTION 1 Since there is no common attribute in the decomposed table so when we join it there will be some spurious(Extra) tuple so itwill be lossy.But the dependencies are preserved.

1 vote
1 vote
The condition for the decomposition to be lossless is that the common attribute(s) between the decomposed relation(s) should be the "key" in at least one of the decomposed relations. Since this is not true for the given decomposition, the decomposition is not lossless.

The dependencies are well preserved as  $M\rightarrow N$  is applicable for relation $R_{1}$  and  $P\rightarrow Q$  is applicable for relation  $R_{2}$ and their union gives original functional dependencies set.

$\therefore$  Option A is correct.
Answer:

Related questions