Joe Celko's Data and Databases: Concepts in Practice

Chapter 23: Denormalization

Chapter 23: Denormalization
Overview
Denormalization is the process of taking a database in some normal form and reducing it to a database in a weaker normal form. This is done deliberately, and we will shortly discuss the goals of such a process. Don?t confuse this with failure to design the database in a stronger normal form; that is called ?bad design,? and it is not a process so much as an error.
There are many database experts, particularly the more academic ones, who feel that any talk of denormalizing a database is like race car driving?a great way to mangle or kill yourself even if you know what you are doing. However, always prone to play the devil?s advocate, I will defend the practice and give you some high-speed driving tips.
23.1 Criteria for Denormalization
There is only one reason for denormalizing a database and that is performance. But there are several criteria for making this decision.
First, it is not always clear that you need to denormalize a database just because the current schema has bad performance. You might need to redesign the schema because your data model is wrong, and the bad performance is due to trying to make it do tasks for which it was not designed.
As an aside, one of the advantages of the NIAM and ORM family of database design methods is that they can produce several different candidate schemas that meet the specifications and are normalized. The database designer is then free...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Data Warehousing Software
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.