Re: Define "flatten database" ?

From: Alan <not.me_at_rcn.com>
Date: Sun, 30 Jan 2005 22:02:23 -0500
Message-ID: <365lilF4t5jjcU1_at_individual.net>


"Dawn M. Wolthuis" <dwolt_at_tincat-group.comREMOVE> wrote in message news:ctk6l0$tfm$1_at_news.netins.net...
> "Alan" <not.me_at_rcn.com> wrote in message
> news:365jjsF4nn7hlU1_at_individual.net...
> >
> > "Dawn M. Wolthuis" <dwolt_at_tincat-group.comREMOVE> wrote in message
> > news:ctjk9u$h1u$1_at_news.netins.net...
> >> "Jan Hidders" <jan.hidders_at_REMOVETHIS.pandora.be> wrote in message
> >> news:WPWKd.8976$tX7.741404_at_phobos.telenet-ops.be...
> >> > Dawn M. Wolthuis wrote:
> >> >> "Alan" <alan_at_erols.com> wrote in message
> >> >> news:35vdofF4rvh8nU1_at_individual.net...
> >> >>>"Dawn M. Wolthuis" <dwolt_at_tincat-group.comREMOVE> wrote in message
> >> >>>news:ctdn9o$7sq$1_at_news.netins.net...
> >> >>>>"DA Morgan" <damorgan_at_x.washington.edu> wrote in message
> >> >>>>news:1106859773.807419_at_yasure...
> >> >>>>>silversw2000_at_yahoo.com wrote:
> >> >>>>>>
> >> >>>>>>Can someone define "flatten database" for me, in 100 words or
less
> > (OK
> >> >>>>>>500 words is fine).
> >> >>>>>
> >> >>>>>Denormalize.
> >> >>>>
> >> >>>>I would guess "normalize" is more likely. [...]
> >> >>>
> >> >>>Flattening is DEnormalizing. Period.
> >> >>
> >> >> OK, I'd vote for both terms being incorrect. It is not
denormalizing
> >> >> because it is starting with non-1NF data -- agreed? And it is not
> >> >> normalizing because, well, it clearly isn't (the key, the whole keyu
> > and
> >> >> nothing but the key ...).
> >> >
> >> > Can I try to bring some light here?
> >>
> >> Yes, you are always welcome!
> >>
> >> > Some database texts actually do treat the step from NFNF (or UNF or
> >> > non-1NF or whatever you want to call it) to 1NF as the first step of
> >> > the
> >> > normalization process which makes it valid to call this step
> >> > "normalization". Note that normalization means in general that you
are
> >> > transforming something such that it afterwards adheres to a certain
> > normal
> >> > form, i.e., a form in which it satisfies certain criteria, and that
is
> > of
> >> > course exactly what is happening in this step. So the term
> > "normalization"
> >> > is certainly justified and correct.
> >> >
> >> > However, it is also defendable to classify it as denormalization
since
> > one
> >> > of the goals of normalization was to remove redundancy, but
flattening
> > the
> >> > database may actually introduce redundancy, which sets it somewhat
> >> > apart
> >> > from the other steps. Since in industry the term normalization is
often
> >> > loosely used synonymously with any form of restructuring of the
schema
> >> > that removes redundancy, it then makes sense to see it as
> > denormalization.
> >> > But, from an academic point of view that is not strictly correct.
> >> > Obviously, *defining* flattening as denormalization is clearly wrong,
> > even
> >> > under the latter interpretation, since not all denormalization is
> >> > flattening.
> >>
> >> Yes -- thanks, you clearly were tracking with me and it looks like Alan
> > now
> >> understands this point too. He wants to say that when you flatten you
> >> ALWAYS are denormalizing, which seems to me to have a semantic problem,
> > but
> >> otherwise I understand that point. If you start with data that are not
> >> normalized, do we say we are denormalizing if we introduce more
> > redundancy?
> >> Or should we reserve the term "denormalize" for times when we start
with
> >> data that are at least in 1NF and head to a structure that is not? I'm
> >> OK
> >> either way, but it makes a difference in whether I can give a counter
> >> example to Alan's claim or simply agree with it.
> >
> > Let's reserve "denormalizing" for occasions when we start with data that
> > is
> > at least 1NF.

>

> I thought you might prefer that, so we then can come up with the
> counter-example you requested showing that flattening data is not always
> "denormalizing", right? We can be flattening the data by moving from one
> unnormalized structure to another.

No, as seen below...

>

> > Otherwise, we are "reorganizing". Actually, what say we not
> > use "flatten" at all?
>
> You need not use it, but I will continue to for this simple reason -- it
is
> a visual term and even if the theory isn't clear to everyone immediately
> regarding whether data are being normalized, denormalized, both or
neither,
> when used in context, I suspect most would understand that such "flat"
data
> would fit cleanly into a single worksheet in Excel.

As long as flattening is used in context to mean denormalizing, otherwise, you are reorganizing :) But, anyway, -generally speaking, I agree- I was really talking about using these terms in this NG for clarity, not in the real world. In the real world, my motto is "Whatever works." If someone grasps the concept of what is going to happen if I say "flatten", or, "dilute it", or "turn it into water ice" that's just peachy keen.

>

> > We are either normalizing (always moving up the
> > normalization steps), denormalizing (always moving down the steps), or
> > renormalizing (either a sideways move in normalization or correcting an
> > error that does not make substantial changes), or reorganizing (working
> > with
> > NNF data, but not normalizing it).
>

> Those terms work for me and I doubt I'll ever again attempt to explain any
> relationshiop between the words "normalize" and "flatten" -- I've learned
my
> lesson on that ;-) but thanks for tracking it through until you understood
> my comments -- much appreciated.
> Cheers! --dawn
>
> Received on Mon Jan 31 2005 - 04:02:23 CET

Original text of this message