MCA-108
Advanced Database Management Systems
Where the relational model runs out — query optimisation, NoSQL and MongoDB, object-oriented and XML storage, and distributed databases.
- Semester
- Semester 2
- Credits
- 4
- Scheme
- 3 lectures + 1 tutorial a week
- Contact hours
- 42 across four units
- Category
- Core Elective - I
What the paper is
Advanced Database Management Systems picks up exactly where MCA-107 stopped and asks the question that paper never had to: what do you do when one relational server on one machine is no longer the answer? Each unit is a different escape route — a better query plan, a different data model, or more machines.
Unit II is the one that has changed the syllabus most in recent years. CouchDB is used as the teaching vehicle for document stores and MongoDB as the practical one, and the material is genuinely hands-on: creating a database, nesting documents, defining views and reducing with a function.
The paper carries four credits with a tutorial hour, and it is paired in the scheme with the Core Elective I lab. Query optimisation in particular is worth doing rather than reading, because cost estimation only becomes concrete once you have seen two plans for the same query differ by an order of magnitude.
What to concentrate on
- Normalisation goes further here than in MCA-107 — 4NF and 5NF are in Unit I and were not before. Make sure you can distinguish a multi-valued dependency from a functional one before the exam, because that distinction is the whole of 4NF.
- Query optimisation is asked as transformation: given a relational algebra expression, produce an equivalent cheaper one and justify it. Learn the standard equivalences (push selections down, push projections down, reorder joins) as a checklist.
- Unit IV's commit protocols — two-phase and three-phase commit — are the most examinable part of the distributed material, and they reappear almost unchanged in Distributed Systems in semester 3.
Syllabus, unit by unit
Summarised from the approved scheme. Hours are the contact hours the scheme allots, which is a fair guide to where the marks sit.
Unit I · Relational databases revisited and query optimisation
10 hours- Integrity constraints revisited, ER and extended ER diagrams
- Comparison of DBMS, RDBMS, OODBMS, and distributed versus centralised databases
- Functional dependency and normalisation through 1NF, 2NF, 3NF, BCNF, 4NF and 5NF
- Query processing: relational algebra, measures of query cost, selection, sorting, join and other operations
- Transformation of relational expressions, indexing and query optimisation
Unit II · NoSQL databases and big data
10 hours- Defining NoSQL databases, their functions and categories
- CouchDB: creating a database and storing data, nesting data, retrieving and querying, defining views, reducing data with a reduce function
- Overview of other NoSQL databases, particularly MongoDB
- Introduction to big data and its applications
Unit III · Object-oriented databases and XML
10 hours- Overview of the object-oriented paradigm and OODBMS architectural approaches
- Object identity, procedures and encapsulation, the object-oriented data model
- Inheritance, type hierarchies, type extents and persistent programming languages
- OODBMS storage issues, comparison of OODBMS and object-relational DBMS
- XML: structure of XML data, storage and applications
Unit IV · Distributed databases and advanced models
12 hours- Distributed databases: features, DDBMS architectures, homogeneous and heterogeneous databases
- Distributed data storage and transactions, commit protocols, availability
- Concurrency control and recovery in distributed databases, distributed query processing and transformation
- Advanced transaction processing: real-time, long-duration and nested transactions
- Overview of multimedia, deductive, semantic, spatial, mobile and web databases
How it is examined
- Question 1 is compulsory, covers the whole syllabus, and is made of objective or short-answer questions. It carries 12 marks.
- The rest of the paper is four units matching the four above. Each unit sets two questions and you attempt one, so there are four more answers at 12 marks each.
- Examiners are asked to map every question to a course outcome using Bloom's taxonomy, which is why questions are phrased as “apply”, “analyse” or “evaluate” rather than only “explain”.
The pass mark is 40 out of 100 in every paper.
Learning objectives
- Expertise in EER concepts, normalisation, query processing and optimisation, and transaction processing
- Knowledge of NoSQL databases and their applications, and the structure and storage of XML data
- Fundamentals of big data, client-server architecture and emerging data models including multimedia and web databases
- Knowledge of object-oriented databases, concurrency control and recovery in distributed databases
Assumed beforehand
- Database Management Systems
- Basics of object-oriented concepts
- Working knowledge of SQL and PL/SQL
Paired in the scheme with MCA-168 Lab based on Core Elective I.
Books it is taught from
- TB1Elmasri, Navathe, Somayajulu and Gupta, “Fundamentals of Database Systems”, Pearson Education, 7th edition, 2016
- TB2Silberschatz, Korth and Sudarshan, “Database System Concepts”, McGraw Hill, 7th edition, 2019
- TB3R. Ramakrishnan, “Database Management Systems”, McGraw Hill International, 3rd edition, 1998
- TB4Banker et al., “MongoDB in Action”, Manning, 2nd edition, 2016
Notes for MCA-108
Lecture notes, question papers and assignments filed against MCA-108 are in the library. Everything there has been checked by a moderator before it appears, and an account is free — new ones are approved by hand, which is what keeps the shelf clean.