This repository documents my structured learning of Database Management Systems (DBMS) with a strong emphasis on fundamentals, system thinking, and real-world relevance.
The notes are designed to bridge the gap between theoretical concepts (like data modeling and normalization) and practical industry usage (how databases are actually designed, queried, and optimized in production systems). Instead of rote definitions, the focus is on why concepts exist, how they are applied, and what trade-offs they introduce.
These notes are:
- Written with interviews and real systems in mind
- Organized for long-term reference, not short-term exams
- Suitable for beginners, yet deep enough for technical discussions
This repository also reflects my progression toward backend, data, and system-oriented roles, and is continuously expanded as my understanding grows.
The notes in this repository follow a deliberate learning path:
Data Basics
↓
Entity–Relationship (ER) Modeling
↓
Relational Model & Schema Design
↓
Keys, Constraints & Integrity
↓
Normalization & Design Trade-offs
↓
SQL (Queries, Joins, Subqueries)
↓
Indexing & Query Optimization
↓
Transactions, ACID & Concurrency
↓
Storage, Data Centers & System Internals
↓
Interview Patterns & Real-World Scenarios
Each section builds on the previous one to develop clear mental models, not just surface-level knowledge.
I’m a student focused on data structures, databases, and system fundamentals, with an interest in building scalable, data-driven applications. This repository serves as both my learning archive and a public knowledge base for anyone aiming to strengthen their DBMS foundations.