The process to alter the structure of a database is basically categorized into two ways one is Normalization and other is Denormalization.
The following are the important differences between Normalization and Denormalization.
Sr. No.
Key
Normalization
Denormalization
1
Implementation
Normalization is used to remove redundant data from the database and to store non-redundant and consistent data into it.
Denormalization is used to combine multiple table data into one so that it can be queried quickly.
2
Focus
Normalization mainly focuses on clearing the database from unused data and to reduce the data redundancy and inconsistency.
Denormalization on the other hand focus on to achieve the faster execution of the queries through introducing redundancy.
3
Number of Tables
During Normalization as data is reduced so a number of tables are deleted from the database hence tables are lesser in number.
On another hand during Denormalization data is integrated into the same database and hence a number of tables to store that data increases in number.
4
Memory consumption
Normalization uses optimized memory and hence faster in performance.
On the other hand, Denormalization introduces some sort of wastage of memory.
5
Data integrity
Normalization maintains data integrity i.e. any addition or deletion of data from the table will not create any mismatch in the relationship of the tables.
Denormalization does not maintain any data integrity.
6
Where to use
Normalization is generally used where number of insert/update/delete operations are performed and joins of those tables are not expensive.
On the other hand Denormalization is used where joins are expensive and frequent query is executed on the tables.