This module aims to build upon the basic database skills acquired in Database Fundamentals. The student will learn more advanced database design and implementation techniques suitable to relational and non-relational databases; as well as further experience in the use of cloud-based databases.
Foundations of Advanced Database Concepts
Recap of relational/non-relational databases, normalization and data modelling; non-functional requirements related to databases and their trade-offs; CAP theorem and its implications.
Comparative Analysis of Database Models
Strengths, weaknesses, and common business use cases of relational/non-relational databases, polyglot persistence (i.e., integrating multiple database types), selecting the right database for a given problem.
Advanced Topics in Relational Databases
Advance joins, query optimization techniques, advanced SQL (triggers, functions, procedures), concurrency control and transactions (ACID), distributed relational databases and replication.
Advance Topics in Non-relational (NoSQL) Databases
Recap/overview of NoSQL database types (i.e., key-value stores, document stores, column-family databases, graph databases), data modelling techniques for NoSQL, concurrency control and transactions (BASE), scalability and partitioning in NoSQL Systems.
Distributed database systems
Sharding, replication, and consistency trade-offs, query execution in distributed environments, Database-as-a-Service (DBaaS) and cloud databases.
Security & Privacy in Databases
The CIA triad, data security best practices (e.g., encryption, access control), GDPR and its compliance in database design, backup and disaster recovery strategies.
Mix of traditional lectures, in-class group/individual activities, use of different types of resources (notes, examples, websites, tools, additional reading etc.) held on the VLE.
The above teaching practices incorporates Universal Design for Learning (UDL) principles, offering multiple methods of representation (including diagrams, walkthroughs, recorded content, and interactive exercises) to support diverse ways of accessing and processing information. Learners are also given flexibility in how they engage with learning tasks, with opportunities to express understanding through varied formats during class activities and group work (e.g., written, verbally, and/or visually, as well as asynchronously and synchronously, where appropriate).
| Module Content & Assessment | |
|---|---|
| Assessment Breakdown | % |
| Other Assessment(s) | 100 |