Monday 7 December 2020

Normalization: Pros and Cons and De-Normalization

 

Advantages of Normalization:

 

The database design refined through the process of normalization renders many advantages as compared to that without normalization. They are as follows.

 

  1. Simple, understandable grammar of attributes:

 

The attributes of the relations are grouped in such a way that their meaning and their relation with each other is a very clear, simple and unambiguous.

 

  1. Reduced  repetition of information:

 

The data redundancy is reduced which leads to many advantages of reducing the database updation anomalies namely insertion, updation and deletion anomalies.

 

  1. Dependency preservation:

 

As all the attributes which are fully functionally dependent on the primary key are grouped together in a relation, the system overhead for checking each database update is reduced.

 

  1.  Avoiding spurious tuples:

 

If the database is not properly normalized, the join operation on the relation may result in some unambiguous tuples or even loss of some information. This is strictly avoided here by creating primary key- foreign key relationship every time the relation is decomposed.

 

 

 Disadvantages of Normalization:

 

  1. The extreme decomposition of relation may result in violation of dependency preservation.
  2. Decomposition of the relation after certain stage increases overhead on the DBMS. The DBMS has to keep track of all the relations in the database. The primary key, foreign key, relations between them, calculations of the join operation, indices, etc.
  3. There is no consideration of null values in the whole process of normalization. The null values in relations create dangling tuple, which may or may not appear in a join.

 

 

De - Normalization:

 

·         Once a set of database structure or tables has been modified in analysis, a process of de-normalization occurs in design.

·         De-normalization is the process of structuring the set of tables so that its performance is most efficient in the production environment.

·         A normalized set of tables is in the most efficient configuration logically, while a de-normalized set of tables is in most efficient form physically.

·         There are several performance considerations that affect database design.

·         These include database table access or update frequency, table size, index requirement, and security requirements.

 

 

 

 

 

No comments:

Post a Comment