[BiO BB] RE: Normalization WAS: database design question

JRambla jrambla at hotmail.com
Tue Mar 2 09:29:40 EST 2004


Although I'm not sure I understand your comment, normalization must be
eventually an attitude, an inner practice, essential for a good design
having a long lifetime. Is like a good laboratory practice, you can obtain
results without it, but it's a lot more probably to have good results having
it by default.

They can look a bit abstract, but when understood they're very practical,
close to a methodology.
However, you're right that they're not a checklist, step by step guide.

Jordi Rambla
Barcelona (Spain)

-----Mensaje original-----
De: bio_bulletin_board-admin at bioinformatics.org
[mailto:bio_bulletin_board-admin at bioinformatics.org] En nombre de Svensson,
B.A.T. (HKG)
Enviado el: martes, 02 de marzo de 2004 14:57
Para: Bio Bulletin
Asunto: RE: [BiO BB] RE: Normalization WAS: database design question

The only problem with (de)normalization theory is that
it is not that very useful for everyday practical purposes.


On Tue, 2004-03-02 at 14:21, JRambla wrote:
> Hi,
> 
> According to my experience (near 20 years now) in designing/consulting
about
> enterprise databases:
> 
> - Normalization is good/desirable in all online systems (like ones where
> several users can be reading and updating data simultaneously), usually
> called OLTP systems. Exceptions are not significant at all.
> - De-normalization is good (indeed mandatory) for datawarehouse & data
> mining systems where grouping, sorting and summarized data is the real
> interest. This is due to performance reasons associated to intensive
> calculations. Also, we will apply de-normalization in history files or
logs,
> where you actually need a snapshot of relationships and data in the moment
> of the entry.
> 
> The kind of database I remember starting the thread is a sequence
database.
> I will classify it in the first group, although I have little experience
in
> that field nowadays.
> 
> As I mentioned in the previous e-mail, normalization (usually only the
> higher levels count as normalized) means not allowing repetitive data to
> live in the system. I.e. not copying customer address data in every
invoice
> in the Invoices table.
> 
> That way any change to the data is done only in the "master" record, and
you
> don't need to keep track of all places where those data can be copied
> before. Keeping track of data copies is, usually, a tricky and error prone
> affair. So, you keep out of it as much as you can.
> 
> Opposing to that, using record keys (primary and foreign keys) is good,
> because you define relationships at database design time, and database
> engine helps enforcing those relationships when entering data.
> 
> Further details or more concrete questions will allow being more specific.
> 
> Hope this clarifies a bit more.
> 
> Jordi Rambla
> Barcelona (Spain)
> 
> 
> 
> -----Mensaje original-----
> De: bio_bulletin_board-admin at bioinformatics.org
> [mailto:bio_bulletin_board-admin at bioinformatics.org] En nombre de
Svensson,
> B.A.T. (HKG)
> Enviado el: martes, 02 de marzo de 2004 11:46
> Para: 'bio_bulletin_board at bioinformatics.org'
> Asunto: RE: [BiO BB] RE: Normalization WAS: database design question
> 
> Thank u for you suggested readings, but I did seek an elaboration on
> why (high/er?) normalization should be regarded as a good design?
> 
> -----Original Message-----
> From: JRambla
> To: bio_bulletin_board at bioinformatics.org
> Sent: 2004-03-02 10:28
> Subject: RE: [BiO BB] RE: Normalization WAS: database design question
> 
> Hi all,
> 
> Normalization is a concept that comes from relational database theory,
> created by the recently deceased Dr.Edgar F. Codd, a mathematician at
> IBM. That theory is the base of all SQL-whatever world.
> 
> Normalization is a group of rules (5, if my memory is right) to apply to
> table design in order, basically, to eliminate redundancy on data. That
> redundancy will arise in the form of embarrassing, and sometimes hard to
> find, consistency problems on data stored in the database.
> 
> As was suggested, following those rules is a good starting point to
> design a database.
> 
> You can find a good introduction in
> 
> http://www.sequoia.be/consult/method/english.htm
> 
> Hope this helps,
> 
> Jordi Rambla
> Barcelona (Spain)
> 
> -----Mensaje original-----
> De: bio_bulletin_board-admin at bioinformatics.org
> [mailto:bio_bulletin_board-admin at bioinformatics.org] En nombre de
> Svensson,
> B.A.T. (HKG)
> Enviado el: martes, 02 de marzo de 2004 2:13
> Para: 'bio_bulletin_board at bioinformatics.org '
> Asunto: [BiO BB] RE: Normalization WAS: database design question
> 
> > Normalization is the process of designing a good data model.
> 
> Please, explain this statement.
> _______________________________________________
> BiO_Bulletin_Board maillist  -  BiO_Bulletin_Board at bioinformatics.org
> https://bioinformatics.org/mailman/listinfo/bio_bulletin_board
> _______________________________________________
> BiO_Bulletin_Board maillist  -  BiO_Bulletin_Board at bioinformatics.org
> https://bioinformatics.org/mailman/listinfo/bio_bulletin_board
> _______________________________________________
> BiO_Bulletin_Board maillist  -  BiO_Bulletin_Board at bioinformatics.org
> https://bioinformatics.org/mailman/listinfo/bio_bulletin_board
> _______________________________________________
> BiO_Bulletin_Board maillist  -  BiO_Bulletin_Board at bioinformatics.org
> https://bioinformatics.org/mailman/listinfo/bio_bulletin_board
_______________________________________________
BiO_Bulletin_Board maillist  -  BiO_Bulletin_Board at bioinformatics.org
https://bioinformatics.org/mailman/listinfo/bio_bulletin_board



More information about the BBB mailing list