Activity #5: Research Normalization and Denormalization in Databases

use Hashnode
Step 1: Research Database Normalization
What is Normalization?
Normalization is the process to eliminate data redundancy and enhance data integrity in the table. Normalization also helps to organize the data in the database.
→ ability to organize data in a systematic manner, promoting data integrity, reducing redundancy, and enhancing overall system performance.
→ The normalization is important because it allows database to take up less disk space. It also help in increasing the performance. It improves the data integrity and consistency.
Normal Forms:
First Normal Form (1NF): It states that an attribute of a table cannot hold multiple values. It must hold only single-valued attribute.
Second Normal Form (2NF): In the second normal form, all non-key attributes are fully functional dependent on the primary key
Third Normal Form (3NF): If there is no transitive dependency for non-prime attributes, then the relation must be in third normal form.
Boyce-Codd Normal Form (BCNF): BCNF is the advance version of 3NF. It is stricter than 3NF.
Advantages of Normalization: The concepts of normalization, and the ability to put this theory into practice, are key to building and maintaining comprehensive databases which are both strong and impervious to data anomalies and redundancy.
Step 2: Research Denormalization
What is Denormalization?
Denormalization is a database optimization technique in which we add redundant data to one or more tables. This can help us avoid costly joins in a relational database. Note that denormalization does not mean ‘reversing normalization’ or ‘not to normalize’. It is an optimization technique that is applied after normalization.
→ Performance Improvement: By adding redundant data, denormalization reduces the need for complex joins, potentially improving query speed and read performance.
When to Use Denormalization:
→ The purpose of denormalization is to optimize data retrieval and improve performance, especially in scenarios where read operations significantly outnumber write operations. Unlike normalization, denormalization sacrifices some redundancy and data integrity in favor of faster query execution.
Step 3: Compare Normalization vs. Denormalization
Differences: The goal of normalization is to minimize data redundancy and dependency by organizing data into well-structured tables. Denormalization involves combining tables that have been normalized to improve query performance and simplify data retrieval.
Practical Examples: Normalization is used in OLTP system, which emphasizes on making the insert, delete and update anomalies faster. As against, Denormalization is used in OLAP system, which emphasizes on making the search and analysis faster.



