Covers advanced concepts of database systems, including relational and extended ER models, new database technologies, query optimization, NoSQL, and big data processing techniques.
Students should understand new developments in database technology, evaluate the impact of emerging database standards, apply database theory to practical implementations, and develop advanced applications using MapReduce and Hadoop.
Entity Relationship Model Revised, Subclasses, Superclasses, and Inheritance, Specialization and Generalization, Constraints and Characteristics, Union Types, Aggregation, Relational Model Revised, Converting ER and EER Model to Relational Model, SQL and Advanced Features, File Structures, Hashing, and Indexing
Object Database Concepts, Object Database Extensions to SQL, ODMG Object Model and Object Definition Language (ODL), Object Database Conceptual Design, Object Query Language (OQL), Language Binding in the ODMG Standard
Concept of Query Processing, Query Trees and Heuristics for Query Optimization, Choice of Query Execution Plans, Cost-Based Optimization
Distributed Database Concepts and Advantages, Data Fragmentation, Replication, and Allocation Techniques, Types of Distributed Database Systems and Architectures, Introduction to NOSQL Systems, CAP Theorem, Document-based, Key-value, Column-based, and Graph-based Systems, BigData, MapReduce, Hadoop
Implement concepts from each unit during lab sessions and submit a mini project at the end of the course.