I agree totaly to what Sujay Koduri writes :
http://dev.mysql.com/tech-resources/articles/intro-to-normalization.html
> My 2 cents..
>
> Before you actually start worrying about the performance tuning of database
> parameters or hardware required for the DB, you should make sure that you
> have designed the database properly by taking care of all aspects like
> normalisation, denormalisation (??). If you don't take care of these logical
> design aspects in the early stages properly, these things will prove you
> very costly in the long run.
>
> Th easy and recommended way to do it is
>
> .Draw an E-R diagram
> .Do any normalization.
> .Identify proper datatypes for the table creation.
> .Identify and add proper indexes.
> .And now actually you should start worrying abt the DB Tuning and harware
> requirements.
>
> sujay
>
> -----Original Message-----
> From: Ian Sales (DBA) [mailto:isales@stripped]
> Sent: Thursday, September 22, 2005 2:17 PM
> To: tim.hayes@stripped
> Cc: mysql@stripped
> Subject: Re: good database design
>
> Tim Hayes wrote:
>
>> I disagree completely.
>>
>> I prefer to have regard to the statement of requirement, which in this
>> case is a concern over performance. If following conventional design
>> rules creates performance issues, then performance related issues come
>> first when considering design.
>>
>>
>>
> - personally, I would consider integrity, and then reliability, above
> performance. But then 80% of any performance hit is in the application code.
> Design a database that gives you confidence in the data it stores first and
> foremost.
>