Overview of RDBMS – Storage and File Structures, Indexing and Hashing – Indexing Structures – Single and Multi-level indexes. Query Processing Optimization and Database Tuning: – Algorithms for Query Processing and Optimization- Physical Database Design and Tuning.
Intermediate and Advanced SQL – Embedded SQL Dynamic SQL, Functions and Procedural Constructs, Recursive Queries, Advanced SQL Features.
Transactions Processing and Concurrency Control – Transaction Concept, Transaction model, Storage Structure, Transaction Atomicity and Durability, Transaction Isolation, Serializability. Object Relational Data Models – Complex Data Types, Inheritance, Nesting and Unnesting. NoSQL Databases – NoSQL Data Models, Comparisons of various NoSQL Databases. CAP Theorem, Storage Layout, Query models. Key-Value Stores. Document-databases – Apache CouchDB, MongoDB. Column Oriented Databases – Google’s Big Table, Cassandra.
Advanced Application Development – Connecting to MongoDB with Python, MongoDB query Language, Updating/Deleting documents in collection, MongoDB query operators. MongoDB and Python patterns – Using Indexes with MongoDB, GeoSpatial Indexing, Upserts in MongoDB. Document database with Web frameworks.