The term Normalization is a process by which we can efficiently organize the data in a database. It associates relationship between individual tables according to policy designed both to care for the data and to create the database more flexible by eliminating redundancy and inconsistent dependency.
In other words, Database normalization is a process by which a presented database is tailored to bring its component tables into compliance with a sequence of progressive standard forms. It is an organized way of ensuring that a database construction is appropriate for general purpose querying and also includes the functions of insertion, deletion and updating.
Edgar Frank Codd was the person who introduced the process of database normalization firstly in his paper called A Relational Model of Data for Large Shared Data Banks. The two main objective of database normalization is eliminating redundant data and ensuring data dependencies make sense and make sure that every non-key column in every table is directly reliant on the key and the whole key.
Redundant data or unnecessary data will take more and more space in the database and later, creates the maintenance problem in the database. If data that exists in more than one place must be changed because it wastes disk space and the data must be changed in exactly the same way in all locations of the table.