personal solution for the 2022fall cmu15445
This repository contains my personal solutions for the assignments of the CMU 15-445/645 Database Systems course. The solutions are provided for educational purposes and to facilitate discussion and learning among peers taking the course.
CMU 15-445/645 is an introduction to database systems. The course covers various topics including storage and indexing, query execution and optimization, transaction management, and more.
The assignments in this course are designed to provide hands-on experience with the implementation of core database system components.
- Objective: Implement a buffer pool manager that handles page fetching and eviction.
- Key Concepts: LRU caching, page replacement, concurrency control.
- Objective: Build a B+ tree index that supports range queries and updates.
- Key Concepts: Tree data structures, index locking, key insertion and deletion.
- Objective: Develop query execution operators like
SELECT
,JOIN
, andAGGREGATE
. - Key Concepts: Query planning, operator trees, iterator model.
- Objective: Implement concurrency control mechanisms to handle transaction isolation.
- Key Concepts: Locking protocols, deadlock prevention, multi-version concurrency control.
The solutions are organized by assignment. To run a specific assignment's tests, navigate to the assignment directory and follow the instructions provided in the corresponding README.
cd assignment1
make test