Denormalization

[1][2] It is often motivated by performance or scalability in relational database software needing to carry out very large numbers of read operations.

This is done by creating rules in the database called constraints, that specify how the redundant copies of information must be kept synchronized, which may easily make the de-normalization procedure pointless.

Moreover, constraints introduce a trade-off, speeding up reads (SELECT in SQL) while slowing down writes (INSERT, UPDATE, and DELETE).

This means a denormalized database under heavy write load may offer worse performance than its functionally equivalent normalized counterpart.

With the exception of truly enormous systems, increased storage requirements is considered a relatively small problem in the 2020s.