What is Relational Database?
Also known as: RDBMS
A relational database organizes data into tables with rows and columns, using SQL for queries, enforcing a rigid schema, and supporting joins and ACID transactions.
A relational database is a type of database that stores and provides access to data points that are related to one another. It is based on the relational model introduced by E.F. Codd in 1970. Data is organized into tables (relations) consisting of rows (tuples) and columns (attributes). Each table has a primary key that uniquely identifies each row. Relationships between tables are established through foreign keys, allowing data to be joined across tables using SQL (Structured Query Language).
The relational model enforces a rigid schema, meaning the structure of data (tables, columns, data types) is defined in advance. This ensures data integrity and consistency. Relational databases support ACID (Atomicity, Consistency, Isolation, Durability) transactions, which guarantee reliable processing of database operations. They are optimized for complex queries involving multiple tables and aggregations, making them suitable for applications requiring strong data consistency, such as financial systems and enterprise resource planning.
Relational databases have been the dominant data storage technology for decades, with implementations like MySQL, PostgreSQL, Oracle Database, and Microsoft SQL Server. They contrast with NoSQL databases, which often relax schema constraints or transactional guarantees for scalability or flexibility. However, relational databases remain essential for structured data where relationships and integrity are critical.
Key facts
- Data stored in tables with rows and columns.
- Uses SQL for defining and manipulating data.
- Enforces a rigid schema defined upfront.
- Supports ACID transactions for reliability.
- Enables data relationships via foreign keys and joins.
How it works in practice
Related terms
References
More in Databases
ACID
ACID (Atomicity, Consistency, Isolation, Durability) is a set of properties guaranteeing reliable database transaction processing, ensuring data integrity despite concurrent access or failures.
B-Tree Index
A B-Tree index is a self-balancing tree data structure that maintains sorted data for efficient insertion, deletion, and range queries in database systems.
BASE
BASE is a design philosophy for distributed databases that prioritizes availability and partition tolerance over immediate consistency, making it a looser alternative to ACID in NoSQL systems.
CAP Theorem
CAP theorem states that a distributed data system cannot simultaneously provide consistency, availability, and partition tolerance; it can only guarantee two of the three.
Connection Pool
A managed cache of database connections that applications reuse rather than opening and closing a connection for each query, reducing latency and server load.
Failover
Failover is the process of automatically or manually promoting a replica database to primary when the active node fails, ensuring continued availability.
Foreign Key
A column or set of columns in a database table whose values must match a primary key in another table, ensuring referential integrity between the two tables.
Hash Index
A data structure that maps keys to storage locations using a hash function, providing constant-time equality lookups but no ordered or range scans.
Materialized View
A database object that stores the precomputed result of a query as a table, refreshed periodically or on demand to improve read performance and reduce computational overhead.
NoSQL
NoSQL is a family of non-relational database systems designed for flexible schemas, horizontal scaling, and high-throughput data access that traditional SQL databases cannot easily provide.