3 ms·
Database Design: How Table Normalization Can Improve Performance
- edw519 18y agoI dunno. Performance is comprised of many factors, I'm not so sure that table normalization is one of them. Table normalization is meant to improve data integrity, not performance. In many cases where reads outnumber writes, backing off 4th normal form and even 3rd normal form by replicating data can significantly improve performance. Author does mention this as "semi-normalization".
- DenisM 18y agoNormalization/denormalization is like creating/dropping indexes - it changes physical data layout without changing data model. Either one of the four can and does in some circumstances increase or hinder performance. For exmample: if you drop all indexes, queries that depend on it become slow. If you create an index on every column it will take longer for optimizer to consider all possible strategies, and it will take longer to maintain indexes. If you copletely denormalize your data you may see increased read performance since there will be less need to do joins. Or you may see decreased read performance because now your data tkaes more space on disk and you do more IO. So, yes normalization/denormalizarion is a valid performance optimization technique. It also happens to carry with it the risk of violating data integrity which must be guarded against.