Normal Forms
Returning to the issue of schema refinement, the first question to ask is whether any refinement is needed!
If a relation is in a certain normal form (BCNF, 3NF etc.), it is known that certain kinds of problems are avoided/minimized. This can be used to help us decide whether decomposing the relation will help.
Role of FDs in detecting redundancy:
- Consider a relation R with 3 attributes, ABC.
- No FDs hold: There is no redundancy here.
- Given A B: Several tuples could have the same A value, and if so, they’ll all have the same B value!