Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Help with Database design

Re: Help with Database design

From: Kelly Burkhart <kburk_at_sky.net>
Date: 30 Oct 1999 21:36:08 -0600
Message-ID: <m3u2n8gq1j.fsf@speedy.sky.net>


"Eric" <admin_at_t10.net> writes:

> I am a new employee at this company and I need help
> in explaining to the Data Modelers that their designs are not good.
>
> They will take a customer table and split it out into:
> customer
> email
> phone
> address
> etc...
>
> So when queries take place, a 5+ table join must occur.
> Does anyone have any quick stats on the overheads of joins?
> They tell me they split this up because they need to store history.
>
> How can I explain this to them that they need 1 customer table
> and maybe a history table. (since the history hardly ever gets queried)
>

How many email addresses can a customer have? How many phone numbers can a customer have? How many mailing addresses can a customer have?

I bet the answer to each question is "more than one". (It may be phrased "almost always one" but that is equivalent to "more than one").

Your data modelers are doing the correct thing; I suspect that "improving" the data model by denormalizing all of those tables back into the customer table would cause more harm than good.

If you can persuade the Data Modelers that performance in this case is more important than proper design, and the advantages outweigh the disadvantages you may be able to get the data model changed.

--
Kelly R. Burkhart
kburk_at_sky.net

[The litigation] industry was, of course, up and running before the tobacco litigation, but that taught lawyers just how lucrative it could be to blame individuals' foolishness on, say, Joe Camel.

Received on Sat Oct 30 1999 - 22:36:08 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US