Normalization vs Denormalization

Trade-offs.

Normalisation strengths

Normalisation is the default for transactional systems. One fact, one row, one place to update; the schema enforces consistency that application code cannot.

Denormalisation strengths

Denormalisation is what makes reads fast. Pre-join the data once at write time; trade write complexity for read simplicity. The right choice for read-dominated workloads.

When to choose which

Default to normalised; denormalise the hot read paths once measured. Pure denormalised is reserved for analytics warehouses where reads dominate writes by 1000x.

Hybrid patterns

Hybrid patterns get the consistency of normalisation and the read speed of denormalisation. ETL or CDC maintains the read-optimised view; eventual consistency is the trade.