Denormalization in SQL Server
What is Denormalization ?
The intentional introduce of
redundancy in a table in order to improve performance is called
Denormalization. Denormalization is a technique to move from higher to lower
normal forms of database modeling in order to speed up database access. Denormalization
is usually done to decrease the time required to execute complex queries.
Drawbacks of a normalized database are mostly in performance. In a normalized
database, more joins are required to gather all the information from multiple
entities, as data is divided and stored in multiple entities rather than in one
large table. Queries that have a lot of complex joins will require more CPU
usage and will adversely affect performance. Sometimes, it is good to
denormalize parts of the database.
Examples of design changes to denormalize the database and improve
If you have calculated the total
cost of each order placed as the cost of the product plus a tax of 10% of the
product cost, the query to calculate the total cost sales as follows:
sum((cost*qty)+(0.10*cost*qty)) from orders
join products on
If there are thousands of rows,
the server will take a lot of time to process the query and return the results
as there is a join and computation involved.
To find the total sales write