PA152 Efficient Use of Database Systems

Faculty of Informatics
Spring 2024
Extent and Intensity
2/0/1. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: z (credit).
Taught in person.
doc. RNDr. Vlastislav Dohnal, Ph.D. (lecturer)
RNDr. Petra Budíková, Ph.D. (assistant)
RNDr. Miriama Jánošová (assistant)
Mgr. David Procházka (assistant)
Guaranteed by
doc. RNDr. Vlastislav Dohnal, Ph.D.
Department of Machine Learning and Data Processing – Faculty of Informatics
Supplier department: Department of Machine Learning and Data Processing – Faculty of Informatics
Wed 14:00–15:50 D3
Knowledge of problems in the extent of course PB154 Database Systems or course PB168 Database and Information Systems.
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 50 fields of study the course is directly associated with, display
Course objectives
The aim of the course is to become familiar with the capabilities of database systems and their efficient use, namely, ways of optimizing query performance.
Learning outcomes
Students will be able to:
- understand the principles of relational database systems;
- analyze the performance of query processing;
- optimize processed queries both by rewriting them and by creating indexes and applying other techniques;
- Explain principles of logging and recovery from failure;
- Design basic replication strategies to achieve high availability;
- Understand the performance benefits of NewSQL systems and their principles.
  • Introduction
  • Data storage: performance properties of secondary storage. Searching: index structures, sequential files, trees, hashing, multidimensional indexes.
  • Query execution: evaluation plan, algebraic laws, cost estimation. Algorithms implementing operators: sorting and joining relations, and their cooperation during query execution (pipelining).
  • Query optimization: contribution of indexes, referential integrity, materialized views, table partitioning.
  • Database optimization: relational schema tuning, index optimization, database monitoring tools.
  • Transaction management: properties and their implementation, concurrency control, scheduling, data and index locking, logging, and recovery from failures.
  • Database security: access rights, data security, attacks.
  • Spatial databases: indexes, operators.
  • NewSQL databases.
Teaching methods
Lectures and home assignments.
Assessment methods
Completing home assignments and the written exam. The evaluation includes both the score obtained from homework and the written exam. The written exam includes open questions of two difficulties - easy (few-word answers) and advanced (an elaborate answer).
Language of instruction
Follow-Up Courses
Further Comments
Study Materials
The course is taught annually.
The course is also listed under the following terms Autumn 2002, Autumn 2003, Autumn 2004, Autumn 2005, Autumn 2006, Autumn 2007, Autumn 2008, Spring 2010, Spring 2011, Spring 2012, Spring 2013, Spring 2014, Spring 2015, Spring 2016, Spring 2017, Spring 2018, Spring 2019, Spring 2020, Spring 2021, Spring 2022, Spring 2023.
  • Enrolment Statistics (recent)
  • Permalink: