ABSTRACT

This chapter discusses database denormalization. The denormalization process may involve recombining separate normalized tables or creating duplicate data within tables to eliminate table joins when satisfying queries. Some may think of this as just the opposite of what we spent the entire previous chapter doing. So why did we normalize the database in the first place? Well, the answer to that question is that we should always normalize our database first to reap the benefits of a normalized model, primarily, that of data integrity. You should never start out with the thought in mind that you will denormalize your data. Denormalization should only be done on a case-by-case basis, for example, when the performance of a particular query is unacceptable due to the large number of table joins that must occur to satisfy the query.