PITTSBURGH --:--
0720 X 0450 Y
← All projects

SimpleDB

Database coursework · teaching framework · 2023

BufferPool page slots, from the sourceProduct preview

A Java database course project with query operators, a buffer pool, page locks, and transaction handling. The code makes the storage work behind a query visible.

Coursework built on a teaching framework. The repository includes tests; they have not been rerun for this page.

View repository
Implementation notes

The buffer pool sits between queries and disk.

BufferPool retrieves a page from its cache or reads it from the underlying file. When the configured pool is full, it evicts a page before admitting another. Page IDs and transaction permissions are explicit inputs.

Commit and abort take different paths.

The implementation acquires locks before returning pages. A commit flushes the transaction's dirty pages; an abort restores its pages from disk. Both paths then release the transaction's locks.

Coursework with concrete implementation details.

This repository includes a teaching framework and tests for operators, pages, writes, and deadlocks. It is a course implementation. The test suite has not been rerun for this case study, so no passing-test or throughput figure is attached.

Years
2023
Type
Coursework
Context
Database coursework · teaching framework
Stack
Java, Page storage, Query operators, Transactions, JUnit