Study abroad in Edinburgh

Course finder

<< return to browsing

Semester 2

Advanced Database Systems (INFR11199)

Subject

Informatics

College

SCE

Credits

20

Normal Year Taken

4

Delivery Session Year

2023/2024

Pre-requisites

Same as above.

Course Summary

Database management systems are at the core of computer applications that need to store, manipulate, and query data. This course takes a deep dive into how modern database systems function internally, from studying their high-level design to understanding the underlying data structures and algorithms used for efficient data processing. The course covers a range of data management techniques from both commercial systems and cutting-edge research literature, enabling students to apply these techniques to other fields of computer science.The covered topics include database architecture, storage manager, data models (row, columnar), indexing (tree-based, hash tables), transaction processing (ACID, concurrency control), crash recovery, parallel architectures (multi-core, distributed), and large-scale data processing systems. These topics will be valuable to students who plan to work in the data science industry but also to students who want to do research in the area of data management. The programming component of this course will allow students to develop first-hand experience working with database systems that goes beyond writing SQL queries.

Course Description

Lectures will cover roughly the following topics:- Database systems architectures, row stores and column stores, OLTP vs. OLAP, in-memory database systems- Storage: secondary-storage devices- Indexing: tree-based and hash-based techniques, multi-dimensional indexing, learning indices from data- Query evaluation: theory of query evaluation, sorting and join processing, selection, projection, aggregation- Query optimisation: cardinality estimation, cost-based query optimisation, dynamic programming, rule-based optimisation- Transaction management: ACID properties, concurrency control, locking and multi-version protocols, crash recovery- Distributed database systems: parallel query evaluation, distributed transaction processing- Big data and NoSQL systems

Assessment Information

Written Exam 50%, Coursework 50%, Practical Exam 0%

Additional Assessment Information

50% exam40% coursework10% course engagementThe coursework will consist of at least one programming assignment.

view the timetable and further details for this course

Disclaimer

All course information obtained from this visiting student course finder should be regarded as provisional. We cannot guarantee that places will be available for any particular course. For more information, please see the visiting student disclaimer:

Visiting student disclaimer