Skip to content

Latest commit

 

History

History
15 lines (8 loc) · 802 Bytes

README.md

File metadata and controls

15 lines (8 loc) · 802 Bytes

key-value-store

A C key-value database implemented from scratch. The database is structured a two-level LSM-tree where each level is structured as a B tree for faster reads. Bloom filters are employed on each level of the LSM-tree for probabilities queries on whether a key is present (set membership). An LRU cache is also maintained in memory to speed up access to frequently searched pages.

Please find a writeup for this project here.

To compile code run: make

To run executable run: make run

To remove executable run: make clean

The unittests for all tests will be located in tests/tests run it by executing ./tests/tests

The project was developed in a private repo, so commit histories will not be available.