Advanced Databases

Office hours:
on demand (arranged via email)
Winter 2015/2016


The course provides an in-depth understanding of the techniques, algorithms, and data structures that are used in database systems. The focus of the course is on the relational data model and the following topics will be covered:

Course schedule and exam dates are available in PlusOnline. You may register or cancel the registration up to 48 hours before the exam. If you do not show up for a registered exam, you will be blocked for this exam according to the university regulations.



The lecture is mainly based on Chapter 14 (Transactions), Chapter 15 (Concurrency Control), Chapter 16 (Recovery Systems), and Chapter 26 (Advanced Transaction Processing) of the folloing book:

Silberschatz, Korth, Sudarshan.
Database System Concepts.
McGraw-Hill, 2011 (6th edition)

Multiple copies of the book are available in the textbook collection of the department library.


Topic Slides
Transactions [PPT]
Concurrency Control [PPT]
Recovery System [PPT]
Advanced Transaction Processing [PPT]


Please prepare for the lecture by reading the relevant sections in the textbook. The course is designed to be attended by students that have read the relevant contents in the textbook. During the lecture we will focus on examples, deepening discussions, and student questions.

Date Reading
2015-10-05 -
2015-10-12 Ch 14.6–14.8, Ch 15.1
2015-10-19 (Ch 15.1.3–15.1.5), Ch 15.2
2015-11-09 (Ch 15.1.4, 15.1.5, Ch 15.2)
2015-11-16 Ch 15.3–15.4
2015-11-23 Ch 15.5–15.7
2015-11-30 Ch 15.8–15.9
2015-12-14 Ch 16.1–16.3
2015-12-21 Ch 16.4–16.7
2016-01-11 Ch 16.9
2016-01-18 Ch 26.1–26.2
2016-01-25 Ch 26.3–26.6


The exam will we written. In the case of very few registrations for an exam date, the exam will be held as an oral exam. The students will be notified before the exam.

The exam dates will be announced on PlusOnline. Presumably there will be an exam (1) at the end of the semester, (2) before the summer break, and (3) in autumn.

How to prepare for the exam?

You may register or cancel the registration up to 48 hours before the exam. If you do not show up for a registered exam, you will be blocked for this exam according to the university regulations.


The Proseminar consists of two parts: exercises solved together during our meeting, and assignments worked out by the students outside the classes.

This semester we're trying piazza to manage the discussion outside our regular meetings. Please sign up and contribute: piazza signup link.

In class exercises

During our meetings we solve exercises which will help us better understand the details of the concepts introduced during the lecture. The exercises will be solved together, which will hopefully trigger a constructive discussion. If necessary, the exercises will be communicated before a meeting for the students to try it out.

Meetings Exercises
12.10.2015 Exercises 1
19.10.2015 Exercises 2
09.11.2015 Exercises 3
16.11.2015 Exercises 4
23.11.2015 Exercises 5
30.11.2015 Exercises 6
14.12.2015 Exercises 7
21.12.2015 Exercises 8
11.01.2016 Exercises 9
18.01.2016 Exercises 10


The purpose of the assignments is to understand the concepts from the practical point of view. We will split into several teams. Each team will work with a different DBMSs performing a number of tasks. After each assignment, we will collect the results from all the teams and compare. The goal is to find and understand similarities and differences between various DBMSs.

Style file for assignment templates: adb.cls

Link to the formatting guidelines (the style file is slightly modified for our purposes): link

Assignments Deadline Points Downloads
Assignment 1 19.10.2015 5 a1-template.tex
Assignment 2 09.11.2015 5 (+1 optional) a2-template.tex
Assignment 3 see description 4 (+1 optional) a3-template.tex
Assignment 4 22.01.2016 3 a4-template.tex
Assignment 5 12.02.2016 7 (+1 optional)  


The evaluation is based on the performance in all the assignments using the following table.

Points (with optional) Mark
22-24 1
19-21 2
16-18 3
13-15 4
0-12 5