Re: A Normalization Question

From: Alan <alan_at_erols.com>
Date: Mon, 12 Jul 2004 12:57:50 -0400
Message-ID: <2lfu8aFb4aqrU1_at_uni-berlin.de>


"Neo" <neo55592_at_hotmail.com> wrote in message news:4b45d3ad.0407120816.4c33296a_at_posting.google.com...
> > > Having the same person three times in a db is redundant.
> > > Having the same string three times in a db is redundant.
> > > Having the same thing three times in a db is redundant.
> >
> > You keep treating redundancy and normalization as if
> > they were the same things; they're not.
>
> With respect to dbs, normalization is the process of eliminating or
> replacing duplicate (redundant) things with a reference to the
> original thing being represented. If one interprets it as treating
> redundancy and normalization as the same thing, one is correct (in
> their own mind).

For the umpteen zillionth time: The elimination of redundancy is a byproduct of normalization. It is not the process of normalization.

From "Fundamentals of Database Systems", Elmasri/Navathe, 3rd Ed. (Electronic Version) Addison-Wesley Copyright 2000:

"Normalization of data can hence be looked upon as a process of analyzing the given relation schemas based on their FDs and primary keys to achieve the desirable properties of (1) minimizing redundancy and (2) minimizing the insertion, deletion, and update anomalies..."

Now. let's break up the sentence into two understandable chunks:

  1. "Normalization of data can hence be looked upon as a process of analyzing the given relation schemas based on their FDs and primary keys..."

So, it is a process of analyzing Functional Dependencies (FDs) and primary keys. It is not a process of eliminating redundancy.

2. "...to achieve the desirable properties of (1) minimizing redundancy and (2) minimizing the insertion, deletion, and update anomalies..."

Here, it is stated that minimizing redundancy and minimizing ceratin anomalies are DESIRED PROPERTIES of normalization. Again, reducing redundancy is not part of the process, it is an outcome of the process.

3. Nowhere is it ever stated that a degree of redundancy approaching zero is the goal, or even a desireable outcome. In fact, they state, "The normal form of a relation refers to the highest normal form condition that it meets, and hence indicates the degree to which it has been normalized. Normal forms, when considered in isolation from other factors, do not guarantee a good database design."

IOW, normalizing to the nth degree is not necessarily a good thing. They go on to specify the conditions that must be met, but one needs to undertsand this much first. Received on Mon Jul 12 2004 - 18:57:50 CEST

Original text of this message