Module overview
This module builds on the first year Data Management module to give students a deeper and broader view of the issues involved in database management systems, some of the most complex software in common use.
Aims and Objectives
Learning Outcomes
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- The issues involved in developing database management software
- The internals of a database management system
- The variety of available DBMS types and the circumstances in which they are appropriate
Subject Specific Practical Skills
Having successfully completed this module you will be able to:
- Select an appropriate DBMS for an application
- Implement components of a DBMS
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Choose appropriate approaches for data storage and access
- Identify issues arising from concurrent or distributed processing and select appropriate approaches to mitigate those isues
- Demonstrate how a DBMS processes, optimises and executes a query
Syllabus
DBMS Internals
Relational Algebra
Data
- Types of data, including spatial and temporal
Data Storage
- The memory hierarchy
- Fields, records and blocks
- The Five Minute Rule
- Row stores vs. column stores
Access Structures
- Indexes
- B-Trees
- Hash tables
- Multidimensional Access Structures: grid file, partitioned hash, kd-tree, quad-tree, Rtree, UB-tree, bitmap indexes
Query Processing
- Physical plan operators: one-pass algorithms, nested-loop joins, two-pass algorithms
- Query optimisation: algebraic laws, cost estimation, cost- based plan selection
Transaction Processing
- Chained transactions, nested transactions
- Savepoints
- Compensating transactions
- Concurrency
Parallel Databases
- Partitioning techniques
- Types of parallelism: intraquery, interquery, intraoperation, interoperation
Distributed Databases
Message Queues
Stream Processing
Retrieval
Data Warehouses and OLAP
Non-Relational Databases
- Hierarchical, network, object-oriented, object-relational, XML
NoSQL
Learning and Teaching
Type | Hours |
---|---|
Revision | 10 |
Follow-up work | 18 |
Completion of assessment task | 37.5 |
Wider reading or practice | 30.5 |
Lecture | 36 |
Preparation for scheduled sessions | 18 |
Total study time | 150 |
Resources & Reading list
Textbooks
Elmasri, R. and Navathe, S.B., (2004). Fundamentals of Database Systems. Addison Wesley.
Garcia-Molina, H., Ullman, J.D. and Widom J. (2009). Database Systems: The Complete Book. Pearson.
Assessment
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Final Assessment | 75% |
Continuous Assessment | 25% |
Referral
This is how we’ll assess you if you don’t meet the criteria to pass this module.
Method | Percentage contribution |
---|---|
Set Task | 100% |
Repeat
An internal repeat is where you take all of your modules again, including any you passed. An external repeat is where you only re-take the modules you failed.
Method | Percentage contribution |
---|---|
Set Task | 100% |
Repeat Information
Repeat type: Internal & External