This is Northwestern University EECS 339 course project. The project is a simple implementation of database system.
In the lab assignments I wrote a basic database management system called SimpleDB.
For lab1, my work focused on implementing the core modules required to access stored data on disk;
For lab2, I implemented a B+ tree index for efficient lookups and range scans.My work was mainly to implement searching, splitting pages, redistributing tuples between pages, and merging pages.
For lab3, I implemented a query optimizer on top of SimpleDB. The main tasks included implementing a selectivity estimation framework and a cost-based optimizer.