Database Reference
In-Depth Information
CHAPTER 4
N ORMALIZING A D ATA M ODEL
Data normalization is probably one of the most talked-about aspects of
database modeling. Before building your data model, you must answer a
few questions about normalization. These questions include whether or
not to use the formal normalization forms, which of these forms to use, and
when to denormalize.
To explain normalization, we share a little bit of history and outline the
most commonly used normal forms. We don't dive very deeply into each
normal form; there are plenty of other texts that describe and examine
every detail of normalization. Instead, our purpose is to give you the tools
necessary to identify the current state of your data, set your goals, and nor-
malize (and denormalize) your data as needed.
What Is Normalization?
At its most basic level, normalization is the process of simplifying your data
into its most efficient form by eliminating redundant data. Understanding
the definition of the word efficient in relation to normalization is the key
concept. Efficiency, in this case, refers to reducing complexity from a log-
ical standpoint. Efficiency does not necessarily equal better performance,
nor does it necessarily equate to efficient query processing. This may seem
to contradict what you've heard about design, so first let's walk through the
concepts in normalization, and then we'll talk about some of the perform-
ance considerations.
Normal Forms
E. F. Codd, who was the IBM researcher credited with the creation and
evolution of the relational database, set forth a set of rules that define how
data should be organized in a relational database. Initially, he proposed
three sequential forms to classify data in a database: first normal form
81
 
 
Search WWH ::




Custom Search