Lossless Decomposition

If the information is not lost from the relation that is decomposed, then the decomposition will be lossless. The lossless decomposition guarantees that the join of relations will result in the same relation as it was decomposed.

Example

Consider the following table:

EMPLOYEE_DEPARTMENT table

EMP_IDEMP_NAMEEMP_AGEEMP_CITYDEPT_IDDEPT_NAME
22Denim28Mumbai827Sales
33Alina25Delhi438Marketing
46Stephan30Bangalore869Finance
52Katherine36Mumbai575Production
60Jack40Noida678Testing

It can be decomposed into:

EMPLOYEE table:

EMP_IDEMP_NAMEEMP_AGEEMP_CITY
22Denim28Mumbai
33Alina25Delhi
46Stephan30Bangalore
52Katherine36Mumbai
60Jack40Noida

DEPARTMENT table:

DEPT_IDEMP_IDDEPT_NAME
82722Sales
43833Marketing
86946Finance
57552Production
67860Testing

Thus, the join on these relations on EMP_ID will generate the same relation as the decomposed one.

Determine Decomposition Is Lossless Or Lossy

Dependency Preserving

In the dependency preservation, at least one decomposed table must satisfy every dependency. If a relation R is decomposed into relation R1 and R2, then the dependencies of R either must be a part of R1 or R2 or must be derivable from the combination of functional dependencies of R1 and R2.

Example

For example, suppose there is a relation R (A, B, C, D) with functional dependency set (ABC). The relational R is decomposed into R1(ABC) and R2(AD) which is dependency preserving because FD ABC is a part of relation R1(ABC).