Course Number & Title

CSU630 Database Internals (4 SH)

Course Description

Explores the internals of database management systems. Explains how database systems store data on disk. Studies how to improve query efficiency via indices such as the B+-tree, external hash indices and multi-dimensional indices. Describes how queries are executed internally and how thedatabase system performs query optimizations. Introduces concurrency control via locking. Hierarchical and key range locking are included. Describes how database systems can perform logging and recovery to avoid loss of data in case of system crashes.

Prerequisites:

CSU430.

Textbooks:

Database System Implementation by Hector Garcia-Molina, Jeffrey Ullman and Jennifer Widom, Prentice Hall publishers.

Topics Covered

Storage and Indexing Disk and File B+-tree Hash index multi-dimensional index Query Processing DBMS query execution plan Query optimization Joins External sort Concurrency and Recovery Lock tables Concurrency theory Hierarchical locks Key-range locks Redo/Undo Logging with CLRs (Compensation Log Records) Recovery

Course Outcomes

Upon completion of this course, a student should: Understand how the DBMS stores databases on disk. Know how index structures are used by the DBMS to improve query efficiency. Know how database queries are parsed and transformed and how costs are estimated by the query optimizer. Understand how the DBMS supports concurrent data access and crash recovery.

Measurement of Course Outcomes

Midterm and Final Exams Bi-weekly short pencil-and-paper quizzes Homeworks

Relation to Integrated Learning Models (ILM)

This course equips the students with knowledge of database kernels, e.g. how the database queries are actually executed. Such knowledge will ensure the students develop high-quality database applications.

Relation to Curriculum 2001 (Optional Section)