Tiyaze Resource Hub — v1.0
Lesson 06 ~30 min read

Intro to Database Management Systems

A database is data. A DBMS is the engine that manages it. Understanding what a DBMS does — and what the major systems are — gives you the context to choose the right tool and communicate clearly with any technical team.

What is a DBMS?

A Database Management System (DBMS) is the software layer that sits between users/applications and the raw data on disk. You don't interact with the data directly — you interact with the DBMS, and it handles storage, retrieval, security, and reliability for you.

Think of the DBMS as the operating system for your data. Just as Windows manages files on your hard drive, a DBMS manages records in a database — hiding all the low-level complexity from the people and applications that need the data.

Database
The actual stored data — tables, records, indexes, relationships. This is what you care about.
DBMS
The software engine that manages the database — MySQL, PostgreSQL, SQLite. Handles storage, queries, security, backups.
Database System
The complete environment: the DBMS + the database(s) it manages + the applications and users that access them.

What a DBMS Does

The responsibilities of a DBMS span from parsing your SQL query all the way down to writing bytes to disk. Here is the core job list.

Data Definition
Lets you define the structure of your database — create tables, define columns and data types, set constraints. The DDL (Data Definition Language) part of SQL handles this.
Data Manipulation
Provides INSERT, UPDATE, DELETE, SELECT — the operations to create, read, update, and delete records. The DML (Data Manipulation Language) part of SQL.
Query Processing
Parses SQL, builds an execution plan, optimises the query (choosing the fastest approach), and executes it. The query optimiser is one of the most complex parts of a DBMS.
Transaction Management
Ensures ACID properties. Manages concurrent users, prevents conflicts, rolls back failed transactions, and maintains a write-ahead log for crash recovery.
Access Control
Manages users, roles, and permissions. Determines who can read, write, or delete which tables. A finance user might read the salaries table; a junior developer cannot.
Backup & Recovery
Tools for taking snapshots of the database and restoring from them. Essential for disaster recovery and meeting data retention requirements.

The Major DBMS Systems

There are hundreds of database systems in existence. These are the ones you are most likely to encounter as a developer.

MySQL
The world's most widely deployed open-source relational DBMS. Powers WordPress, Facebook (historically), and millions of web applications. Fast, reliable, easy to learn. Free to use.
PostgreSQL
The most advanced open-source RDBMS. Excellent standards compliance, rich data types (JSON, arrays, geometric data), and powerful extensions. Preferred for complex applications.
SQLite
A serverless, file-based database — the entire database is a single .db file. No installation required. Used in mobile apps (Android, iOS), browsers, and as a development tool.
Microsoft SQL Server
Enterprise relational DBMS from Microsoft. Common in corporate and government environments. Excellent tooling (SSMS), tight integration with .NET and Azure.
Oracle Database
The dominant enterprise DBMS for large-scale, high-criticality systems — banking, telecoms, ERP. Extremely powerful and extremely expensive.
MongoDB
The most popular document (NoSQL) database. JSON-style documents, flexible schema, easy horizontal scaling. Popular for web APIs and content-heavy applications.

The Three-Level Architecture

ANSI/SPARC defined a three-level architecture for database systems that separates concerns and allows each level to change independently.

ANSI/SPARC three-level architecture
EXTERNAL LEVEL  ← What users/apps see
  User A sees: student names and grades only
  User B sees: full student records + financials
  App sees: only the tables it needs
         ↓  Views and permissions filter access

CONCEPTUAL LEVEL  ← The logical design
  All tables, columns, relationships, constraints
  The full schema — the blueprint of the database
  Independent of how data is physically stored
         ↓  DBMS maps logical to physical

PHYSICAL LEVEL  ← How data is stored on disk
  Pages, blocks, indexes, file locations
  Completely managed by the DBMS
  Can change (e.g. move to faster storage)
  without changing the conceptual or external level
// Knowledge Check
You're building a mobile app and need a lightweight database that requires no installation and stores the entire database in a single file. Which DBMS is most appropriate?