Re: Normalization by Composing, not just Decomposing
Date: Mon, 12 Apr 2004 16:16:02 GMT
Message-ID: <6hzec.53531$YU6.29843_at_newssvr16.news.prodigy.com>
"Dawn M. Wolthuis" <dwolt_at_tincat-group.com> wrote in message
news:c54c6j$cbq$1_at_news.netins.net...
> "Alan" <alan_at_erols.com> wrote in message
> news:c54a0e$2ohurg$1_at_ID-114862.news.uni-berlin.de...
> > You are assuming that (good) normalization is a science. It is not. It
is
> > part science and part art- that's where experience (as well as ESP to
read
> > the user's minds and clairvoiance to predict future needs) comes in to
> play.
> > Oh, it is also part voodoo. Sometimes waving a dead chicken in a paper
bag
> > over your head produces the results you need.
>
> You are preachin' to the choir-ish -- that's the type of thing I would say
> if I were not trying, oh so hard, to learn what makes relational theorists
> tick and trying, oh so hard, to use the same way of thinking so that I can
> really learn what it is about relational theory that is keeping it the
king
> of the hill. There are very formalized statements,
I think it's formal, but would expect that any software developer with a bit of patience could understand the math. Date writes in a very clear style, and avoids complex explanations and excessive notations. But sometimes a formula really is worth a thousand pictures (that's from Dijkstra).
> using very mathematical
> terminology and all, that show the process of normalization to be
> np-complete or whatever else makes some folks feel all warm and fuzzy (not
> the mathematical use of the term "fuzzy").
> When I ask what it is about
> relational theory that makes it king, I hear that it is because it is
based
> on mathematics, including predicate logic.
Specifically a closer correlation with it than other models, which add additional complexity with no additional computational or expressive power. You can still apply logic (different ones) to those data structures, but it's much harder. Witness the mathematical complexities of generalized graph theory, for example. Relational is about avoiding complexity, not adding it. It's not about bondage to mathematics for its own sake.
- Eric