This is a toy implementation of a log structured merge tree in Rust, similar to leveldb or rocksdb.
This library is licensed under the MIT license.
It allows fast writes, performs compactions in the background to speed up reads as much as possible, and includes a write-ahead log so it doesn't lose data. See src/example.rs
for an example of usage.
use rustlsm::{LsmTree, Options};
fn ... {
let mut tree = LsmTree::new(path, Options::default())?;
tree.set("foo", "bar")?;
// ...
assert_eq!(tree.get("foo")?, Some("bar"));
}
Written by Stu Glaser