TL;DR. Normalization (3NF) stores each fact once, eliminating update anomalies but requiring joins at read time. Denormalization duplicates data so reads avoid joins, at the cost of write ...