Database Management Systems (DBMS) - Notes
Unit 1: Introduction to DBMS
• Definition of Database and DBMS
• Advantages: Control redundancy, Data sharing, Integrity, Security, Recovery
• Disadvantages: Cost, Complexity, Performance overhead
• Three-level Architecture: Internal, Conceptual, External
• Schemas vs Instances, Data Models, ER Model, Keys, Cardinalities
Unit 2: Relational Model & Normalization
• Relational Model: Relation (Table), Tuple (Row), Attribute (Column)
• Keys: Primary, Candidate, Superkey, Foreign
• Constraints: Entity, Referential, Domain
• Functional Dependencies (FDs)
• Normalization: 1NF, 2NF, 3NF, BCNF (with examples)
Unit 3: SQL & Relational Algebra
• Relational Algebra operators: Selection, Projection, Union, Join
• SQL Sub-languages: DDL, DML, DCL, TCL
• SQL Syntax Examples: CREATE, INSERT, UPDATE, DELETE, SELECT
• Aggregate functions: COUNT, SUM, AVG, MIN, MAX
• GROUP BY, HAVING, Subqueries, Views, Indexes, Constraints
Unit 4: Transactions & Concurrency Control
• Transaction: Definition, ACID properties
• Transaction states: Active, Committed, Aborted
• Schedules: Serial, Non-serial, Serializability
• Concurrency control: Locking, Two-phase locking, Deadlocks, Timestamp ordering
Unit 5: Recovery, Storage & Indexing
• Recovery: Transaction failure, System crash, Media failure
• Techniques: Log-based, Checkpoints, Shadow paging
• Storage structures: Heap, Sorted, Clustered
• Indexing: B-Tree, B+ Tree, Dense vs Sparse, Hashing
Unit 6: Advanced Topics
• Distributed Databases
• NoSQL: Key-value, Document, Graph
• Data Warehousing & OLAP
• Big Data, Query Optimization