Database Design   «Prev  Next»

Lesson 7 The relational database management system
Objective What are the functions of an RDBMS?

Relational Database Management System

A database management system (DBMS) is the software layer that sits between:
  1. the physical database files on disk, and
  2. the people and applications that need to store, retrieve, and protect data.
A DBMS is responsible for controlling how data is stored, how it is located, and how it is changed safely. Most DBMS products include three core building blocks:
  1. Database engine (kernel code): manages memory, storage, caching, and low-level I/O.
  2. Metadata repository (data dictionary): stores definitions of tables, columns, keys, constraints, indexes, and privileges.
  3. Query language: allows users and applications to define structures and interact with data.

A relational database management system (RDBMS) is a DBMS that implements the relational model. In an RDBMS, the query language is typically SQL, used for both:
  1. DDL (Data Definition Language): defining tables, keys, constraints, indexes, and views.
  2. DML (Data Manipulation Language): inserting, updating, deleting, and querying rows.

What functions does an RDBMS provide?

Modern RDBMS products (Oracle, SQL Server, PostgreSQL, MySQL, and others) provide a consistent set of functions. The images below illustrate a practical workflow: create structures, access data, change data, protect data, and support reporting.

The SQL component in an RDBMS creates the relational database and its structures.
1) Define database structures (SQL / DDL).
The RDBMS uses SQL to create the database schema: tables, columns, primary keys, foreign keys, constraints, indexes, and views. These definitions are stored in the data dictionary so the engine can enforce rules consistently.

The SQL in a RDBMS allows access to data in a variety of ways
2) Retrieve and combine data (SQL / queries).
The RDBMS provides set-based querying (SELECT) and join processing so users can answer questions that span multiple tables. Internally, the query optimizer chooses an efficient plan using indexes, statistics, and join strategies.

The SQL in a RDBMS provides the means to make changes to database records
3) Change data safely (SQL / DML + transactions).
The RDBMS supports INSERT, UPDATE, and DELETE and wraps these changes in transactions. Transactions preserve correctness through ACID behavior (atomicity, consistency, isolation, durability), using logging and recovery to keep the database consistent even after failures.

Has built-in security, as well as utilities to perform routine databse backups
4) Security, backup, and recovery.
An RDBMS authenticates users, authorizes actions (roles/privileges), and can audit access. It also includes backup and recovery utilities so data can be restored after user error, corruption, or hardware/software failure.

A feature rich RDBMS provides tools to generate invoices, payroll checks, financial reports, and other userful documents.
5) Support applications, reporting, and administration.
RDBMS products commonly ship with tools for administrators and developers (management consoles, import/export utilities, performance monitoring, job scheduling, and reporting integrations). These tools do not replace SQL; they build on it.

Key RDBMS functions you should remember

When you are asked “What are the functions of an RDBMS?”, a strong, practical answer includes the following capabilities:
  1. Data storage and organization: store data in tables with defined datatypes and constraints.
  2. Query processing and optimization: parse SQL and execute it efficiently using indexes and statistics.
  3. Transaction management: commit/rollback and ACID reliability using logging and recovery.
  4. Concurrency control: support many users at once without corrupting data (locks/MVCC).
  5. Integrity enforcement: primary keys, foreign keys, UNIQUE, NOT NULL, and CHECK constraints.
  6. Security: authentication, authorization, and (often) auditing and encryption features.
  7. Backup and recovery: restore data to a consistent point in time after failures or mistakes.
  8. Metadata management: maintain a data dictionary that describes the schema and its rules.
  9. Data abstraction: allow users to work with logical structures while the engine manages physical storage details.

Data abstraction and application flexibility

One reason relational systems replaced earlier hierarchical and network systems is that they improved data abstraction and data independence. Applications can issue high-level SQL queries without hard-coding physical record navigation. As requirements change, the database can often be reorganized (indexes, storage layout, partitions, new views) with minimal impact on how users query the data.

This is why SQL and the RDBMS engine are treated as the “core” of most database applications: they provide a stable contract between evolving storage and evolving business questions.

RDBMS - Exercise

Before moving on to the next lesson, click the Exercise link below to check your knowledge of the functions of an RDBMS.
RDBMS - Exercise

[1]Data abstraction: The practice of presenting a simplified logical view of data while the DBMS manages the underlying physical storage and access methods.
[2]Data independence: The ability to change the database design at one level (physical or logical) without requiring changes at the next higher level that users and applications depend on.

SEMrush Software 7 SEMrush Banner 7