Advanced Databases

Semester 2

Lecturer: Stratis Viglas
Informatics Forum, IF 5.11
Tel: +44 (0) 131 650 5183

Monday, 11:10-12:00, Seminar Room G.15, Medical School, Teviot
Thursday, 11:10-12:00, Lecture Theatre 3, 7 Bristo Square

Office hours:
Monday, Thursday, 12:00-13:00, IF 5.11.
(Though you can always send e-mail or drop by if you have questions.)



It is recommended that undergraduate students have taken the Database Systems course. Postgraduate students are recommended to have taken an equivalent course to Database Systems during their undergraduate degree. If you have not taken Database Systems or an equivalent course and still want to enroll in Advanced Databases please contact the instructor to obtain consent.


Watch this space for any announcements concerning the course.

Lecture Slides

The entire set of slides for the course can be found below:

Lecture Schedule

Lecture number Covered material Additional notes
1 Overview, introduction to query evaluation
2 Introduction to relational databases, indexing
3 B+trees, extendible hashing
4 Extendible and linear hashing
5 R-trees
6 External mergesort
7 External mergesort (cont.), physical plans Graefe's paper on query evaluation in relational databases.
8 Execution models
9 Nested loops join, sort-merge join
10 Sort-merge join, hash joins Original System-R paper
11 Query optimisation
12 Histograms and dynamic programming
13 Dynamic programming (cont.), query optimisation wrap-up
14 Transaction processing
15 General locking algorithms, B+-tree locking
16 ARIES recovery algorithm
17 Parallel database systems Last lecture


During the course we will be mainly dealing with database implementation issues and database technology in general. The material will cover storage structures, query evaluation and execution, query optimisation, concurrency control, transaction processing, recovery, and parallel databases.

Reading List

Raghu Ramakrishnan and Johannes Gehrke, Database Management Systems. (Third Edition) McGraw-Hill 2003.

Note that this is not required text; it is merely recommended. You should be fine with the slides used during the lectures alone, along with any handouts.


Both assignments will be available in due course.

Marks and feedback for both assignments will be returned two weeks after submission.


In the context of the course, we will be using an experimental relational database system, written in Java, called attica.

Attica can be found at this location. Visit the page to obtain the software and installation instructions.

Home : Teaching : Courses 

Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK
Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail:
Please contact our webadmin with any comments or corrections. Logging and Cookies
Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh