EPL446: Advanced Database Systems
by Demetris Zeinalipour
Department of Computer Science
University of Cyprus

Quick Links

CS Courses

EPL446 Syllabus Schedule Assignments Laboratory Links Books Colloquium T.A. Student Presentations


Instructor: Demetris Zeinalipour
(Email: dzeina@cs, Tel: 22-892755, Office Hours: Tue./Fri. 15:00-16:30, Room: B106, New Campus, UCY)

Type: Upper-division Undergraduate (Restricted-Elected Course for the General Direction in CS)
When: Tuesday/Friday, 09:00-10:30
Where: 01-202, Pure and Applied Sciences, New Campus, University of Cyprus (map)
Overview: The main objective of this undergraduate course is to provide an in-depth understanding of Database Management Systems. In particular, students will be exposed to the internal structures and algorithms of a relational database system. Students will get a deeper understanding by implementing components of  the Minibase database system in the C++ language. Minibase is a database management system intended for educational use that includes a parser, optimizer, buffer pool manager, storage mechanisms (heap files, secondary indexes based on B+ Trees), and a disk space management system. The course is organized in four parts: i) Storage and Indexing, ii) Query Optimization, iii) Transaction Management and iv) Advanced Topics (Distributed Databases and XML Data Management).

Outline: Introduction to Storage and Indexing, Storing Data: Disks and Files, Tree-based Indexing and Hash-based Indexing, Overview of Query Evaluation, External Sorting, Evaluating Relational Operators, Structure of a Typical Relational Query Optimizer, Overview of Transaction Management, Introduction to Concurrency Control (2PL, Serializability, Recoverability, Lock Conversions, Deadlocks), Concurrency Control with Locking, Dynamic Databases and the Phatom Problem, CC in B+trees, Multigranular locking, Concurrency Control without Locking (Optimistic, Timestamp, Multiversion), Introduction to Crash Recovery (ARIES, LOG, WAL, Checkpointing), Recovering from a System Crash (Analysis, Redo, Undo), Media Recovery, Distributed Databases (Architectures, Storage, Catalog Management and Query Processing) and XML Data Management (Models, Query Processing and XQuery)

Course Leaflet: Overview of CS446 (in greek)

Textbook: Database Management Systems: Paperback Edition, 3 Edition, Raghu Ramakrishnan and Johannes Gehrke, McGraw-Hill Publishers, Paper; 1065 pp, ISBN: 0-07-123057-2, 2003.
Laboratory: Wednesdays, 13:00-14:00, 01 #123
Teaching Assistant: Christoforos Panagiotou
(Email: panchris@cs, Tel: 22-893928, Office Hours: Wed./Fri. 12:00-13:00, Room: B176 (-02), New Campus, UCY)


  • One team of the 2011 undergraduate EPL446 course ranked 6th in the 2011 ACM SIGMOD Programming Contest (Topic: A Durable Main-Memory Index Using Flash). Congrats to George, Marios and Silouanos. All finalists were graduate students.
  • AS1 has been announced
  • Two teams of  2010 undegraduate EPL446 course ranked 9th and 10th in the 2010 ACM SIGMOD Programming Contest ! Topic: Distributed Query Engine) Congrats to both of the teams! Here are the top-10 teams All finalists were graduate students.
  • Welcome to EPL446 (Spring 2011)!

Important Notices

  • Check this section regularly for additions and changes.
  • The material will be finalized prior to each respective week.
  • To view all resources you need to logon to Moodle.


Copyright Department of Computer Science, University of Cyprus