Table of Contents
Introduction to DBMS
Introduction : Basic concepts, Advantages of a DBMS over file-processing systems, Data abstraction, Database languages, Data models : Introduction to hierarchical, Network, ER, and Object Relational Model, Data independence, Components of a DBMS and overall structure of a DBMS, Multi-user DBMS architecture, System catalogs.
Data Modeling : Basic concepts, Entity, Attributes, Relationships, Constraints, Keys, E-R and EER diagrams : Components of E-R model, Conventions, Converting E-R diagram into tables, EER Model components, converting EER diagram into tables.
Relational Model : Basic concepts, Attributes and domains, Codd's rules, Relational integrity : Domain, Entity, Referential integrities, Enterprise constraints, Views, Schema diagram.
Relational Algebra and SQL
Relational Query Languages : Relational algebra. Introduction to SQL : Characteristics and advantages, SQL data types and literals, DDL, DML, SQL operators, Tables : Creating, Modifying, Deleting, Views : Creating, Dropping, Updating using views, Indexes, Nulls. SQL DML Queries : SELECT Query and clauses, Set operations, Predicates and joins, Set membership, Tuple variables, Set comparison, Ordering of tuples, Aggregate functions, Nested queries, Database modification using SQL insert, Update and Delete queries, Concept of stored procedures, Cursors, Triggers, Assertions, Roles and privileges programmatic SQL : Embedded SQL, Dynamic SQL.
Relational Database Design
Purpose of normalization, Data redundancy and update anomalies, Functional dependencies : Basic concepts, Closure of set of functional dependencies, Closure of attribute set, Canonical cover, Decomposition : Lossless join decomposition and dependency preservation, The process of normalization : 1NF, 2NF, 3NF, BCNF, 4NF, 5NF.
File Systems and Query Processing
File organization, Organization of records in files, Indices, Static and dynamic hashing, B-trees and B+ trees. Introduction to Query Processing : Overview, Measures of query cost, Selection and join operations, Evaluation of expressions, Introduction to query optimization, Estimation, Transformation of relational expressions.
Transaction Management
Basic concept of a transaction, Properties of transactions, Concept of schedule, Serial schedule, Serializability: Conflict and view, Cascaded aborts, Recoverable and non-recoverable schedules, Concurrency control: Need, Locking methods, Deadlocks, Timestamping methods, Optimistic techniques, Multi-version concurrency control, Different crash recovery methods such as shadow-paging and log-based recovery : Deferred and Immediate, Checkpoints.
Object-Oriented Databases and Database Architectures
Need of OODBMS, Storing objects in relational database, Introduction to OO data models, Persistent programming languages, Pointer swizzling techniques : Database Architectures : Centralized and client-server architectures, 2-tier and 3-tier architecture, Introduction to distributed database systems. Introduction to data mining using association rules, Introduction to data warehousing and its components.