Denormalization
A denormalization is the intentional reintroduction of redundancy into a database schema that has been previously normalized. It is not a failure of design but a deliberate optimization: by precomputing joins and duplicating data, denormalization trades storage space and update complexity for read performance.
The choice to denormalize is a choice about system topology. Normalized schemas minimize write amplification and guarantee consistency by storing each fact exactly once. Denormalized schemas maximize read throughput by colocating related data, eliminating the network and computation costs of reconstruction. In read-heavy, write-rare systems — data warehouses, content caches, analytics platforms — denormalization is often the only viable architecture. In write-heavy systems, it is a source of update anomalies that propagate silently until they become catastrophic.
See also: SQL, Normalization, Database, Data warehouse