NOC:Fundamentals of Database Systems


Lecture 1 - Introduction to Databases


Lecture 2 - Relational Data Model


Lecture 3 - Relational Algebra Basic Operators


Lecture 4 - Relational Algebra Composition of Operators


Lecture 5 - Relational Algebra Additional Operators


Lecture 6 - Relational Algebra Extended Relational Algebra


Lecture 7 - Relational Algebra: Database Modifications


Lecture 8 - SQL: Introduction and Data Definition


Lecture 9 - SQL: Basic Queries


Lecture 10 - SQL: Advanced Queries


Lecture 11 - SQL: Updates, Joins, Views and Triggers


Lecture 12 - Normalization Theory: Motivation


Lecture 13 - Normalization Theory: 1 NF and 2NF


Lecture 14 - Normalization Theory: 3NF


Lecture 15 - Normalization Theory: BCNF


Lecture 16 - Normalization Theory: MVD


Lecture 17 - Physical Design


Lecture 18 - Database Indexing: Hashing


Lecture 19 - Database Indexing: Tree-based Indexing


Lecture 20 - Query Processing: Selection


Lecture 21 - Query Processing: Sorting


Lecture 22 - Query Processing: Nested-Loop joins and Merge join


Lecture 23 - Query Processing: Hash join and other Operations


Lecture 24 - Query Optimization: Equivalent Expressions and Simple Equivalance Rules


Lecture 25 - Query Optimization: Complex Equivalence Rules


Lecture 26 - Query Optimization: Join Order


Lecture 27 - Query Optimization: Heuristics and Sizes


Lecture 28 - Database Transactions: Properties and Failures


Lecture 29 - Database Transactions: States and Systems


Lecture 30 - Recovery Systems: Deferred Database Modification


Lecture 31 - Recovery Systems: Immediate Database Modification.


Lecture 32 - Recovery Systems: Checkpointing and Shadow Paging


Lecture 33 - Schedules: Introduction


Lecture 34 - Schedules: Conflict Serializability


Lecture 35 - Schedules: View Serializability


Lecture 36 - Schedules: Result Equivalence and Testing for Serializability


Lecture 37 - Schedules: Recoverability


Lecture 38 - Concurrency Control: Locks


Lecture 39 - Concurrency Control: Two-phase Locking Protocol


Lecture 40 - Concurrency Control: Timestamp Ordering Protocol


Lecture 41 - Concurrency Control: Validation-based Protocol


Lecture 42 - Concurrency Control: Multiple Granularity for Locks


Lecture 43 - Concurrency Control: Deadlock Prevention and Deadlock Detection


Lecture 44 - Concurrency Control: Deadlock Recovery and Update Operations


Lecture 45 - NoSQL: Introduction and Properties


Lecture 46 - NoSQL: Columnar Families


Lecture 47 - NoSQL: Different NoSQL Systems


Lecture 48 - Big Data