Explain the main performance, reliability, and scale challenges in data management systems.
Describe query processing and transactional mechanisms in database management systems.
Apply data management solutions that combine, compose, and configure data management mechanisms.
Assess the behavior of data management systems.
Program
Introduction: Anatomy of a database management system; characterization of target applications; identification of the main performance, reliability and scaling challenges.
Execution of queries: physical representation of data; relational operators and iterators; redundancy with indexes and views; planning and optimization of queries.
Transactional isolation and recovery: concurrency anomalies; locking and multi-version resolution; performance characteristics and optimization strategies; atomicity vs. durability; logging and checkpointing methods; backups.
Case studies: benchmarks (e.g. TPC-C and TPC-H); PostgreSQL system.
Bibliography
H. Garcia-Molina, J. Ullman and J. Widom. Database Systems: The Complete Book. Prentice-Hall, 2006 (2nd Edition).
J. Gray and A. Reuter. Transaction processing: Concepts and techniques. Morgan-Kaufmann, 1993.
M. Tamer Özsu, P. Valduriez. Principles of Distributed Database System. Springer, 2020. (4th Edition).
PostgreSQL 16.3 Documentation. The PostgreSQL Global Development Group, 2024.