Skip to main content
Skip header

Physical Implementation of Database Systems

* Exchange students do not have to consider this information when selecting suitable courses for an exchange stay.

Course Unit Code460-4097/01
Number of ECTS Credits Allocated4 ECTS credits
Type of Course Unit *Choice-compulsory type A
Level of Course Unit *Second Cycle
Year of Study *Second Year
Semester when the Course Unit is deliveredWinter Semester
Mode of DeliveryFace-to-face
Language of InstructionCzech
Prerequisites and Co-Requisites Course succeeds to compulsory courses of previous semester
Name of Lecturer(s)Personal IDName
KRA28prof. Ing. Michal Krátký, Ph.D.
Summary
The content of the first part includes physical database design, design and implementation of the data layer, and testing of the data layer. During practices, students design and implement a simple information system from the data and functional analysis, implementation of the data layer to testing of the data layer. In the second part of semester, some extended database technologies such as date warehouses, business intelligence, spatial DBMS, full-text options of DBMS, XML DBMS, and distributed DBMS. During practices, student utilize an extended database technology in their project.
Learning Outcomes of the Course Unit
A student knows up-to-date methodologies, methods, and tools for information system development, especially physical database design and testing of the data layer, and he is able to apply these knowledges during a real implementation of information systems. Moreover, he can describe some extended database technologies such as date warehouses, business intelligence, spatial DBMS, full-text options of DBMS, XML DBMS, and distributed DBMS.
Course Contents
1. Hardware: CPU, CPU caches, memory
2. Hardware: disk, sequential vs random accessing
3. Paged data structures: array, hash table
4. Paged data structures: B-tree, R-tree
5. Main-memory data structures vs paged data structures
6. Bulk-loading data vs insert-by-insert
7. Concurency and data structures
8. Concurency and data structures II
9. Concurency control
10. Concurency control II
11. Concurency control III
12. Transaction Processing
13. Transaction Processing II

Practices:
1. Implementation of the cache buffer.
2. Implementation of the cache buffer.
3. Implementation of a paged data structure (B-tree, hash table, array, R-tree, bitmap index).
4. Implementation of a paged data structure: insert.
5. Implementation of a paged data structure: find.
6. Implementation of a paged data structure: range query.
7. Implementation of a paged data structure: bulk load insert.
8. Performance testing.
9. Implementation of a shared cache buffer, page locking.
10. Query parallelization.
11. Query parallelization: testing.
12. Implementation of a log file and recovery.
13. Implementation of a log file and recovery.
Recommended or Required Reading
Required Reading:
[1] S. S. Lightstone, T. J. Teorey (Author), T. Nadeau: Physical Database Design, 1st Edition. Morgan Kaufmann; 4th edition (April 4, 2007).
[1] S. S. Lightstone, T. J. Teorey (Author), T. Nadeau: Physical Database Design, 1st Edition. Morgan Kaufmann; 4th edition (April 4, 2007).
[2] M. Krátký, R. Bača: Databázové systémy, Učební text pro databázové předměty na Katedře informatiky, VŠB-TU Ostrava. Dostupné na dbedu.cs.vsb.cz, 2014.

Recommended Reading:
[1] H. Garcia-Molina, J. D. Ullman, J. Widom: Database Systems: The Complete Book (2nd Edition). Prentice Hall; 2 edition (June 15, 2008).
[1] Jaroslav Pokorný: Dotazovací jazyky. Univerzita Karlova v Praze. 2002.
Planned learning activities and teaching methods
Lectures, Tutorials
Assesment methods and criteria
Task TitleTask TypeMaximum Number of Points
(Act. for Subtasks)
Minimum Number of Points for Task Passing
Credit and ExaminationCredit and Examination100 (100)51
        CreditCredit45 20
        ExaminationExamination55 6