/bitcask

Primary LanguageOCaml

Bitcask

THIS IS UNFINISHED! Keep your expectations low. It may not work

Overview

This is a simple implementation of the Bitcask storage system in OCaml. Bitcask is a key/value store that provides fast and predictable performance with a straightforward design.

Features

  • Key/Value Store: Store and retrieve key-value pairs efficiently.
  • Append-Only File: Data is appended to a write-ahead log file for durability.
  • In-Memory Hash Table: Fast in-memory access for frequently accessed keys.
  • Merge Process: Periodically compact and merge data files to manage space efficiently.

Installation

  1. Clone the repository:
git clone https://github.com/hnrbs/bitcask.git
cd bitcask
  1. Install opam dependencies:
opam install . --deps-only  
  1. Build and run it:
dune exec ./bin/main.exe

References

License

This project is licensed under the MIT License.