Back to course

Introduction to DBMS and Database Types

Database Fundamentals: From Zero to Hero

Lesson 3: Introduction to DBMS and Database Types

What is a DBMS?

A Database Management System (DBMS) is software that acts as an interface between the user (or application) and the database itself. It allows you to define, create, maintain, and control access to the data.

  • Definition (Fr): Système de Gestion de Bases de Données (SGBD).

Key Roles of a DBMS:

  1. Storage Management: Organizing and storing data efficiently on disk.
  2. Security: Managing user permissions and access control.
  3. Concurrency Control: Allowing multiple users to access and modify data safely at the same time.
  4. Backup and Recovery: Protecting data from system failures.

Main Categories of Databases

1. Relational Databases (SQL - Structured Query Language)

  • Core Concept: Data is organized into structured tables (relations) with predefined schemas, linked by relationships.
  • Focus: Data integrity, consistency, and complex querying.
  • Key Players (RDBMS): PostgreSQL, MySQL, SQL Server, Oracle.

2. Non-Relational Databases (NoSQL - Not Only SQL)

  • Core Concept: Developed to handle massive amounts of unstructured or rapidly changing data that doesn't fit the rigid table structure.
  • Focus: Scalability, flexibility, and high availability.
  • Common Types:
    • Document Databases: MongoDB, Couchbase (stores data in JSON-like documents).
    • Key-Value Stores: Redis, DynamoDB (stores simple key-value pairs).
    • Graph Databases: Neo4j (stores highly connected data, relationships are paramount).

Focus of this Course: We will focus heavily on Relational Databases (RDBMS) as they form the fundamental backbone of structured data management and are crucial for understanding data integrity.