Decomposing Relations
The principal goal of normalization is to eliminate update anomalies. By decomposing your relations into normalized forms, you can eliminate the vast majority of update anomalies.
Advocates of dimensional modeling argue against the method of decomposition because normalization tends to produce many relations. This is an implementation issue, not a logical design issue, and it originates in the inability of most vendor database products to make reasonably high-performing joins.
When you design enterprise database schemas using the dimensional model (see “Dimensional Modeling, Star, and Snowflake Schemas” on page 137), you create only a few fact relations with a composite primary key that is not free of transitive dependencies (see “Functional, Transitive, and Multivalued Dependencies” on page 82), and smaller satellite relations called dimensions that contain detailed data about the fact relation.
An enterprise schema design using the dimensional model (see “Dimensional Modeling, Star, and Snowflake Schemas” on page 137) creates only a few fact relations with a composite primary key that is not free of transitive dependencies (see “Functional, Transitive, and Multivalued Dependencies” on page 82), and smaller satellite relations called dimensions that contain detailed data about the fact relation.