Relational Databases
Relational databases or structured databases store information in tables using columns and rows. They are the ability to link information between tables using relationships.
Every piece of software will eventually require to collect and store data. Databases are essential for every application, without them applications would not be as useful as they are. Users expect to enter data and access it at a later time, some times that information would get aggregated to present meaningful data to the user. Businesses also rely on data to make decisions and drive growth. Just like there a different programming languages, cloud providers, etc we also have multiple flavors of databases each solving different problems.
Interested article on the history of databases can be found here A Timeline of Database History & Database Management
See this post about Document Databases
Relational databases or structured databases store information in tables using columns and rows. They are the ability to link information between tables using relationships. The language used to access the data in these type of databases is called Structured Query Language (SQL).
In this post we will go over some of the most popular relational databases (RDB).
According to DB-Engines these are the most popular relational databases as of the end of 2023.
MySQL Open-Source (Oracle)
PostgreSQL Open-Source
Relational Database table structure:
Entities in relational database are organized in tabled, tables have columns which store a piece of the entity. The data in any particular column is the same type (strings, integer, decimal, etc). Each row in the table is consider a record. For instance in the “Customer” table, you might find columns such as “First Name”, “Last Name”, “Date of Birth”, etc. Information someone might want to know about a customer. Each row in the table represents one customer.
Normalized data:
In order to avoid data redundancy, relational databases would organize data into tables, for instance, a database would have a “Customer” and “Address” table. These tables would store two independent entities, in order to match a customer with an address a database would have a mapping table between the customer and address. This table would create the relationship, linking the customer identifier and the address identifier. As you can see in the image below, John and Jane Doe are married and they live in the same address, having the customer and address entities independent allows the database to avoid replication of “2nd St”, John and Jane map to the same record.