Uses old Rust 2015
|0.1.0||May 13, 2021|
#308 in Database implementations
This is a Rust implementation of Bitcask, a persistent key-value store for when the keyspace fits in memory. This is not a distributed datastore, but can be used as a building block for one.
This crate hasn't been stress-tested. While it should be good enough for experimentation, we make no guarantees around data durability.
$ mkdir /tmp/bitrust_data $ cargo run -- --configfile ./example_configs/no-automerge.toml --loglevel debug > put foo bar > get foo Ok(Some("bar")) > put baz spam > put lala baba > put baz egg > lst lala foo baz > get baz Ok(Some("egg")) > quit $ less /tmp/bitrust_data/bitrust.log
You can view the logs in a separate window by tailing
bitrust.log in the
$ tail -f /tmp/bitrust_data/bitrust.log
Data directory contents
- Data files are stored as
Nis an integer starting at 0.
.activefilecontains the name of the current "active" log file (i.e., the one taking writes). All other datafiles are immutable.
bitrust.logcontains logs. Level of logging is controlled by the