Syllabus:
UNIT I:
Introduction to Database System Concepts: Database-System Applications, Purpose of Database Systems, View of Data, Database Language, Database Design, Database Architecture, Database Users and Administrators.
Introduction to the Relation Models and Database Design using ER Model: Structure of Relational Databases, Database Schema, Keys, Schema Diagrams, Relational Query Languages, Relational Operations Overview of the Design Process, The Entity-Relationship Model, Constraints, Entity-Relationship Diagrams- Unary, Binary, ternary, Aggregation.
UNIT II:
Introduction to SQL: Overview of the SQL Query Language, SQL Data Definition, Basic Structure of SQL Queries, Additional Basic Operations, Set Operations, Aggregate Functions, Nested Sub queries.
Formal Relational Query Languages: The Relational Algebra, Tuple Relational Calculus.
UNIT III:
Relational Database Design: Features of Good Relational Designs, Atomic Domains and First Normal Form, Functional Dependencies, Closure set of Functional dependencies, Procedure for Computing F+, Boyce Codd Normal form, BCNF Decomposition Algorithm, Third Normal Form, Third Normal Form Decomposition Algorithm
Transactions: Transaction Concept, A Simple Transaction Model, Storage Structure, Transaction Atomicity and Durability, Serializability.
UNIT IV:
Concurrency Control: Lock-Based Protocols, Deadlock Handling, Multiple Granularity, Timestamp-Based Protocols, Validation-Based Protocols.
Recovery System: Failure Classification, Storage, Recovery and Atomicity, Recovery Algorithm, ARIES, Remote Backup Systems.
UNIT V:
File Organization: Fixed and variable length records, Sequential file organization, Data Dictionary, Buffer manager.
Indexing and Hashing: Basic Concepts, Ordered Indices, B+-Tree Index Files, B+-Tree Extensions, Multiple-Key Access, Static Hashing, Extendible Hashing, Comparison of Ordered Indexing and Hashing, Bitmap Indices.