Denormalization is a strategy used on a previously-normalized database to increase performance. In computing, denormalization is the process of trying to improve the read performance of a database, at the expense of losing some write performance, by adding redundant copies of data or by grouping data.
Denormalization is a strategy used on a previously-normalized database to increase performance. The idea behind it is to add redundant data where we think it will help us the most. We can use extra attributes in an existing table, add new tables, or even create instances of existing tables
5. Introduction
❑ Result of normalization is Designed:
structurally consistent with Minimal redundancy.
❑ However Sometimes: normalized database
does not provide maximum processing efficiency.
❑ At this point we move toward:
👉De Normalization
55
7. Definition:-
▰ De normalization is a process of combine two
relation into one new relation.
▰ DE normalization is the process of taking a normalized database and
modifying table structures to allow controlled redundancy for
increased database performance .
▰ It sometimes claimed to make the database
easier to understand.
7
8. When and Why to De Normaize
8
1. Is the system’s performance unacceptable with fully
normalized data?
2. If the performance is unacceptable, will de
normalizing make it acceptable?
3. If you de normalize to clear those bottlenecks, will
the system and its data still be reliable?
Why
9. When…
▰ Speed up retrievals.
▰ A strict performance is required.
▰ It is not heavily updated.
- So, De normalize only when there is a very clear
advantage to doing
9
12. Adding Redundant Columns.
▰ Adding redundant columns eliminates joins for
many queries. The problems with this solution
are that it:
• Requires maintenance of new column. All
changes must be made to two tables, and
possibly to many rows in one of the tables.
• Requires more disk space, since au_lname is
duplicated.
12
14. Combining Tables
▰ • If most users need to see the full set of joined data
from two tables, collapsing the two tables into one
can improve performance by eliminating the join.
▰
• For example, users frequently need to see the author name, author
ID, and the blurbs copy data at the same time. The solution is to
collapse the two tables into one. The data from the two tables
must be in a one-to-one relationship to collapse tables.
14
17. Adding Derived Columns.
▰ • Adding derived columns can help eliminate
joins and reduce the time needed to produce
aggregate values.
• The example shows both benefits. Frequent
joins are needed between the titleauthor and
titles tables to provide the total advance for a
particular book title.
17
22. Advantages
22
✓ Minimizing the need for joins.
✓ Reducing the number of foreign keys in
relations.
✓ Reducing the number of relations.
✓ Precomputing derived data.
23. Disadvantages
X May speed up retrievals but can slow down updates.
X Always application-specific and needs to be reevaluated
in the application changes.
X Can increase the size of relations.
X May simplify implementation in some cases but
may make it more complex in other.
X reduce flexibility
23
25. Summary
o DE normalization aids the process of adding redundancy to the database to
improve performance .
o DE normalize can be done with tables or columns.
o Require acknowledges of how data is being used .
o There are costs of DE normalization reduces the “integrity” of the design ,always
slow DML (data manipulation language) , need more memory space to store
redundant data and required additional
programming to maintain the DE normalized data
25