Master the theory and practice of database systems — from relational fundamentals and SQL to indexing, transactions, normalization, and distributed databases. You'll gain the skills to design, query, optimize, and manage databases in real-world applications.
§ SYLLABUS
- 01What Is a Database & Why DBMS?
Understand what databases are, why we need dedicated management systems instead of flat files, and the core responsibilities a DBMS handles — data integrity, concurrent access, crash recovery, and security.
- 02Data Models Overview
Survey the major data models — relational, document, key-value, graph, and columnar — and understand when each is appropriate and what trade-offs they make.
- 03The Relational Model
Learn how data is organized into relations (tables), tuples (rows), and attributes (columns), and understand concepts like domains, keys, and relational integrity constraints.
- 04Entity-Relationship (ER) Modeling
Design databases visually using ER diagrams — entities, attributes, relationships, cardinality, and participation constraints — before translating them into tables.
- 01SQL Fundamentals — DDL & DML
Write CREATE, INSERT, UPDATE, DELETE, and SELECT statements. Understand the difference between data definition and data manipulation, and how schemas are declared.
- 02Joins, Subqueries & Set Operations
Combine data from multiple tables using INNER, LEFT, RIGHT, FULL joins, correlated and non-correlated subqueries, and UNION/INTERSECT/EXCEPT operations.
- 03Aggregation, Grouping & Window Functions
Summarize data with GROUP BY, HAVING, and aggregate functions (COUNT, SUM, AVG), then go beyond with window functions like ROW_NUMBER, RANK, and running totals.
- 04Views, CTEs & Derived Tables
Create reusable query abstractions with views and common table expressions (CTEs), and understand when to use each for readability, maintainability, and performance.
- 01Functional Dependencies
Understand how one set of attributes uniquely determines another, and how functional dependencies form the theoretical foundation for normalization.
- 02Normal Forms (1NF through BCNF)
Walk through each normal form — 1NF, 2NF, 3NF, and BCNF — understanding what anomalies each eliminates and how to decompose relations without losing information.
- 03Denormalization & Practical Trade-offs
Learn when and why to intentionally violate normal forms for performance, and understand the read-vs-write trade-off in real production systems.
- 01How Databases Store Data on Disk
Understand pages, buffer pools, heap files, and how the storage engine bridges the gap between fast in-memory operations and durable on-disk persistence.
- 02B-Tree & B+ Tree Indexes
Learn how B+ trees organize data for fast lookups, range scans, and ordered access, and why they are the default index structure in most relational databases.
- 03Hash Indexes
Understand how hash-based indexing provides O(1) point lookups and why it trades away range query support — good for equality-only access patterns.
- 04Query Execution & Optimization
Follow a SQL query through parsing, planning, and execution. Understand cost-based optimization, join algorithms (nested loop, hash, merge), and how to read EXPLAIN plans.
- 01ACID Properties
Understand the four guarantees every transaction system provides — Atomicity, Consistency, Isolation, Durability — and what breaks when any one of them is violated.
- 02Concurrency Control & Locking
Learn how databases allow multiple transactions to run simultaneously using locks (shared, exclusive), two-phase locking, and deadlock detection/prevention.
- 03Isolation Levels & Anomalies
Understand Read Uncommitted, Read Committed, Repeatable Read, and Serializable isolation levels, and the anomalies each permits — dirty reads, non-repeatable reads, and phantoms.
- 04Multi-Version Concurrency Control (MVCC)
Learn how modern databases like PostgreSQL avoid locking readers by maintaining multiple versions of each row, enabling high-concurrency read-write workloads.
- 05Write-Ahead Logging & Crash Recovery
Understand how WAL ensures durability by writing changes to a log before applying them, and how the database recovers to a consistent state after a crash.
- 01Stored Procedures & Triggers
Understand server-side programming with stored procedures and automatic event-driven logic with triggers — their use cases, benefits, and the maintenance trade-offs.
- 02Advanced Constraints & Referential Integrity
Go beyond primary and foreign keys to CHECK constraints, UNIQUE constraints, cascading actions, and deferrable constraints for maintaining complex data invariants.
- 03Relational Algebra
Learn the formal mathematical operations — select, project, join, union, difference, rename — that underlie SQL and query optimization.
- 01Replication — Leader, Multi-Leader & Leaderless
Understand how databases copy data across machines for fault tolerance and read scaling, and the consistency trade-offs each replication topology introduces.
- 02Partitioning & Sharding
Learn how large datasets are split across multiple nodes using range, hash, or directory-based partitioning, and the challenges of cross-partition queries.
- 03CAP Theorem & Consistency Models
Understand the fundamental impossibility result for distributed systems and the spectrum of consistency models from linearizability to eventual consistency.
- 04NoSQL Databases — Document, Key-Value, Graph
Explore non-relational databases like MongoDB, Redis, and Neo4j — their data models, query patterns, and when they outperform relational systems.