This course provides an introduction to the
principles of
database system
implementation. Its main objective is to teach the
basic
concepts and
algorithms that are
commonly used in the construction of the
main DBMS core
components (storage manager, query manager, transaction
manager).
Students completing the course should be able to:
- better understand the
impact of internal
implementation
choices (page, buffer, file
manager, B+-tree and Hash indices, external sort and join
algorithms, etc.) on the
DBMS performance
- adopt a principled approach to
database tuning
problems by choosing the appropriate
internal
system parameters (S/W configurations, data
structures, query planning) in order to make it run faster for
specific application needs
- acquire an appreciation of the
strengths and
weaknesses of
commercial (ORACLE,
DB2, Sybase, SQLServer) and
public domain
(MySQL, Postgres) database systems