A relational database is a formally described set of tables from which data can be accessed or reassembled in many different ways without having to reorganize the database tables. The standard user and application programming interface (API) for a relational database is Structured Query Language (SQL). SQL statements are used both for interactive queries to get information from a relational database and to collect data for reports.
Relational databases use Structured Query Language (SQL) and can manage a variety of transaction-oriented applications. They present the data in tabular form (that is, as a collection of tables with each table consisting of a set of columns and rows) and provide relational operators to manipulate the data in tabular form.
- Relational databases work with structured data.
- They support ACID transactional consistency and support “joins”.
- They come with built-in data integrity and a great ecosystem.
- Relationships in this system have restrictions.
- There is unlimited indexing. Strong SQL.
The main advantages of relational databases are that they allow users to easily classify and store data that can then be queried and filtered to extract specific information for reporting. Relational databases are also easy to extend and do not depend on physical organization.
- Relational databases don’t scale horizontally very well (concurrency and data size), only vertically (unless you use sharding).
- The data is normalized, which means there are many combinations, which affects speed.
- They have trouble working with semi-structured data.