Fourth Normal Form (4NF)



next up previous
Next: Normalization Using Join Up: Normalization Using Multivalued Previous: Theory of Multivalued

Fourth Normal Form (4NF)

  1. We saw that BC-scheme was in BCNF, but still was not an ideal design as it suffered from repetition of information. We had the multivalued dependency cname street ccity, but no non-trivial functional dependencies.

  2. We can use the given multivalued dependencies to improve the database design by decomposing it into fourth normal form.

  3. A relation scheme is in 4NF with respect to a set of functional and multivalued dependencies if for all multivalued dependencies in of the form , where and , at least one of the following hold:
  4. A database design is in 4NF if each member of the set of relation schemes is in 4NF.

  5. The definition of 4NF differs from the BCNF definition only in the use of multivalued dependencies.
  6. We have an algorithm similar to the BCNF algorithm for decomposing a scheme into 4NF:

  7. If we apply this algorithm to BC=scheme:
  8. We can show that our algorithm generates only lossless-join decompositions.
  9. Dependency preservation is not as simple to determine as with functional dependencies.
  10. What does this formal statement say? It says that a decomposition is dependency preserving if for every set of relations on the decomposition scheme satisfying only the restrictions on there exists a relation on the entire scheme that the decomposed schemes can be derived from, and that also satisfies the functional and multivalued dependencies.

  11. We'll do an example using our decomposition algorithm and check the result for dependency preservation.
  12. Let's analyze the result.

     
    Figure 6.4:   Projection of relation onto a 4NF decomposition of .

     
    Figure 6.5:   A relation that does not satisfy .

  13. We have seen that if we are given a set of functional and multivalued dependencies, it is best to find a database design that meets the three criteria:
  14. If we only have functional dependencies, the first criteria is just BCNF.

  15. We cannot always meet all three criteria. When this occurs, we compromise on 4NF, and accept BCNF, or even 3NF if necessary, to ensure dependency preservation.



next up previous
Next: Normalization Using Join Up: Normalization Using Multivalued Previous: Theory of Multivalued



Page created and maintained by Osmar R. Zaï ane
Last Update: Mon Oct 16 17:18:28 PDT 1995