db normalization

D

Dave F

Is there ever a justification for NOT normalizing a db?

A consultant and I are in a debate right now. We have an Access db which
essentially acts as a data repository, from which data are reported upon once
a month in Excel.

My take: the db should be normalized.

His take: the db doesn't need to be normalized because it is not being
queried daily.

Thoughts?
 
T

Tim Ferguson

My take: the db should be normalized.

His take: the db doesn't need to be normalized because it is not being
queried daily.

It depends on how much you care about internal inconsistencies and data
integrity. R theory is about having data "correct" -- in other words,
there are no situations where ACME's hometown could be Cincinatti in one
record and London in another.

It's possible that the repository is only being fed high-quality cleaned
data and that data integrity problems have been dealt with in another
way. In that case, your consultant would argue that the extra storage
space and disk accesses required by an R database would not be efficient.

On the other hand, you view might be that data are inherently unstable
and that only a rigorously designed, mathematically-verifiable, fully
normal design can keep them from degenerating into a pile of dog-doos.
And you are prepared to pay for the comfort of that knowledge.

It's got bugger-all to do with daily querying, though!

Hope that helps


Tim F
 
J

jmonty

I would have to agree with both of you, but I do want to share this:
The only time that I have witnessed a DB that was not completely normalized
was when there were over 150-200 tables/views in a database and they were
trying to maximize the application's efficiency. The field lookup would have
required a series of complex joins on several tables. Due to record locking
etc, the speed of the application itself would have been affected if the data
(member demographics for example) was not contained in more than one place.


jmonty
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top