Chapter 5. Daring to Design
And so I come to another one of those things where I have to ponder how much to assume you already know. "To normalize, or not to normalize — THAT is the question!" Okay, the real question is one of whether or not you already understand the most basic tenets of relational database design yet. Since you come to this book with a degree of experience already, I'm going to take an approach that assumes you've heard of it, know it's important, and even grasp the basics of it. I'm going to assume you need the information filled in for you rather than that you are starting from scratch.
With the exception of perhaps three or four chapters, this book has an Online Transaction Processing, or OLTP, flare to the examples. Don't get me wrong; I will point out, from time to time, some of the differences between OLTP and its more analysis-oriented cousin Online Analytical Processing (OLAP). My point is that you will, in most of the examples, be seeing a table design that is optimized for the most common kind of database — OLTP. Thus, the table examples will typically have a database layout that is, for the most part, normalized to what is called the third normal form.
What is "normal form"? We'll start off by taking a very short look at that and then will move quickly onto more advanced concepts. For the moment though, just say that it means your data has been broken out into a logical, nonrepetitive format that can easily be reassembled into the whole. In addition to ...