Database Fundamentals
Learn DBMS fundamentals: ER modelling, relational algebra, SQL, normalisation, transactions and ACID, concurrency control, recovery, indexing and CAP.
कोर्स शुरू करें →
आप क्या सीखेंगे
- Explain why DBMSs exist, the three-schema architecture and the main data models.
- Design conceptual models with ER diagrams and map them correctly to relational tables.
- Work with keys, integrity constraints, relational algebra and core SQL queries.
- Use functional dependencies to find keys and normalise relations to 3NF and BCNF.
- Explain transactions, ACID, serializability, isolation levels, locking, MVCC and crash recovery.
- Describe storage, B+ tree indexing, query processing, NoSQL trade-offs and distributed databases.
पाठ्यक्रम
What a Database System Is
- Why Databases Instead of Files
- Three-Schema Architecture and Data Independence
- Data Models
Entity-Relationship Modelling
- Entities, Attributes and Relationships
- Weak Entities, Specialisation and Aggregation
- Mapping ER Diagrams to Tables
The Relational Model and Relational Algebra
- Relations, Keys and Integrity Constraints
- Relational Algebra
- SQL Essentials for Fundamentals
Functional Dependencies and Normalisation
- Functional Dependencies, Closures and Keys
- Normal Forms: 1NF, 2NF, 3NF and BCNF
- Lossless Decomposition, Dependency Preservation and Denormalisation
Transactions and Isolation
- Transactions and ACID
- Schedules and Serializability
- Anomalies and Isolation Levels
Concurrency Control and Recovery
- Locking, Two-Phase Locking and Deadlocks
- Timestamps, Optimistic Control and MVCC
- Logging, Checkpoints and Crash Recovery
Storage, Indexing and Query Processing
- Pages, Files and the Buffer Pool
- Indexes: B+ Trees and Hashing
- Query Processing, Join Algorithms and EXPLAIN
Beyond a Single Relational Database and Revision
- NoSQL, CAP and BASE
- Replication, Partitioning and Distributed Transactions
- Practical Database Design Checklist
- Revision and Exam Questions