cask 0.4.0

A fast key-value store backed by a log-structured hash table
Documentation

Cask

A fast key-value store written in Rust. The underlying storage system is a log-structured hash table which is inspired by bitcask.

Build Status Crates.io License

API Documentation


WARNING: ⚠️ Please do not trust any valuable data to this yet. ⚠️

Installation

Use the crates.io repository, add this to your Cargo.toml along with the rest of your dependencies:

[dependencies]
cask = "0.4.0"

Then, use Cask in your crate:

extern crate cask;
use cask::Cask;

Usage

The basic usage of the library is shown below:

let cask = Cask::open("test.db", false);

let key = "hello";
let value = "world";

cask.put(key, value);
cask.get(key);
cask.delete(key);

TODO

  • Merge files during compaction
  • Configurable compaction triggers and thresholds
  • Proper error handling
  • Add tests
  • Benchmark

License

cask is licensed under the MIT license. See LICENSE for details.