Storing data in relational models is not new. The RDBMS(Relational Database Management System) has been in vogue for decades, especially for web-based enterprise applications. The rapid increase in distributed and cloud computing, and changing expectations of data users in data storage and management, paved the way to the two most popular open source databases- MySQL and MongoDB.
For nearly 40 years, Relational Database Management Systems (RDBMS) have been known as the go-to option for the storage of information in databases, mainly for personal data, financial information, manufacturing records and more. The relational model for database management uses table format for storing data, which makes it different than the standard data management model. The popularity of RDBMS can be attributed to the increase in mission-critical applications over time which require a robust management system.
When developing the schema of a relational database, one of the most important aspect to be taken into account is to ensure that the duplication is minimized. This is done for 2 purposes:
- Reducing the amount of storage needed to store the data.
- Avoiding unnecessary data conflicts that may creep in because of multiple copies of the same data getting stored.
Normalization in DBMS
Database Normalization is a technique that helps in designing the schema of the database in an optimal manner so as to ensure the above points. The core idea of database normalization is to divide the tables into smaller subtables and store pointers to data rather than replicating it. For a better understanding of what we just said, here is a simple Normalization example:
MySQL is one of the most widely used databases across the world. It is free and is open-source as well. Developed in C/C++, MySQL is one of the most popular database choices.
The database was started by a Swedish company “MySQL AB” in 1995. MySQL AB was later acquired by Sun Microsystems in 2008. Later, Sun Microsystems was acquired by Oracle in 2010. Since then, MySQL is maintained and managed by Oracle.