Database Management Systems

A comprehensive introduction to database design, management, and application development using the relational model and SQL.

This course provided a thorough grounding in the principles and practices of modern database management systems. Starting with the theoretical foundations of the relational model, we quickly moved into practical application with a deep dive into SQL, covering everything from basic queries to advanced topics. A key focus was on robust database design, for which we studied functional dependencies and normalization in detail. The course also covered the internal workings of a DBMS, including storage management, indexing, transaction processing, and query optimization, giving a complete end-to-end understanding of how databases function.


Instructor

Prof. Partha Pratim Das, Department of Computer Science and Engineering, IIT Kharagpur


Course Schedule & Topics

The course is structured over 12 weeks, covering the lifecycle of database design, implementation, and management.

Week(s) Primary Focus Key Topics Covered
1 Course Introduction Overview of database systems, their architecture, and evolution.
2 Relational Model & Basic SQL Core concepts of the relational model and fundamental SQL SELECT, INSERT, UPDATE, DELETE commands.
3 Advanced SQL Intermediate and advanced SQL including joins, subqueries, aggregation, and views.
4 Database Design Theory Relational query languages (like Relational Algebra) and principles of Entity-Relationship (ER) modeling.
5-6 Normalization Functional dependencies and the process of normalization (1NF, 2NF, 3NF, BCNF) to reduce redundancy.
7 Application Development Techniques for connecting applications to databases using various programming interfaces.
8 Storage Management Understanding how data is physically organized in files, blocks, and records on storage media.
9 Indexing & Hashing Data structures and algorithms (B-Trees, Hashing) used to speed up data retrieval.
10 Transaction Management ACID properties, concurrency control mechanisms, and ensuring data integrity during simultaneous access.
11 Backup & Recovery Strategies and algorithms for database backup and recovery from system failures.
12 Query Optimization How a DBMS processes and optimizes query execution plans; course conclusion.

Material used