Saturday, February 25, 2012

Amount of Normalization

Hello all,

My question concerns the amount of normalization i require for my specific needs. I realize this is a difficult question without knowing alot more about my database. I am hoping with some information I could get advice from those more experienced than I.

- My database consists of 9 tables with the maximim number of columns being 11 which is the contacts table.

- the largest data type is nvarchar 125.

- number of rows in the largest table will eventually grow to hundreds of thousands.

- users access the database online

This is large to me but I expect that to some of you this not.

My application would be easier to setup if the contacts table were to include address info.

So my question is, for a database of this size could I create a contacts table similar to the customer table in the Microsoft Northwind sample data base with the address included, or should I model something more like the contact table in the Microsoft Adventureworks db with the address and State/province split to separate tables.

Any help you could provide with this scetchy info would be greatly appreciated.

Hi,

for me the amount of normalization should not be decided on the number of possible stored rows, as the amount could raise unexpectly. It should be decided on design considerations as databases of Microsoft are. The business case for the northwind database might be that a customer can only have one address, otherwise he will get another customer number (This could be a business decision). The thoughts of the Adventureworks database and the fictional company might be that a customer can have many subsidaries and therefore many addresses.

Jens K. Suessmeyer.

-
http://www.sqlserver2005.de
-

|||

Blair,

See the responses to your very similar post here.

The only real reason to separate Addresses from Contacts would be if there were multiple Contacts per Address.

|||

Hello and thank you for your response,

Thanks to your answers from a previous post I now have a better understanding on normalization and denormalization.

What I was unable to determine from the answers to my previous post was the performance impact differing amounts of normalization would have on varying databases. In providing some information as to the size of my db I was hoping for some insight as to whether or not the amount of normalization would impact the performance.

Thanks again for your responses they were helpful.

|||

Good question Blair.

Your database is so small in relative terms that I wouldn't be concerned with any performance issues related to trying to move the contacts table into third normal form.

The only significant issue for you is the potential syncronization issues related to multiple contacts having the same address information, i.e., several folks working for the same company, and the company merges now having a new address. You would have to have a process in place to find all occurances of the old address and determine if it is appropriate to change it for each contact. Did ALL of them move to the new address, or just some of them... Questions, questions, question...

ONLY if you expect a significant proportion of the contacts to share an address would I consider separating the address information from the contact information.

No comments:

Post a Comment