typed-sled - a database build on top of sled
sled is a high-performance embedded database with an API that is similar to a BTreeMap<[u8], [u8]>.
typed-sled builds on top of sled and offers an API that is similar to a BTreeMap<K, V>, where K and V are user defined types.
Example
use ;
;
// Creating a temporary sled database
let db = new.temporary.open.unwrap;
// The id is used by sled to identify which Tree in the database (db) to open
let tree = open;
// insert and get, similar to std's BTreeMap
tree.insert?;
assert_eq!;
Ok
features
Multiple features for common use cases are available:
- Search engine for searching through a tree's keys and values by using tantivy.
- Automatic key generation.
- Custom (de)serialization. By default bincode is used for (de)serialization, however custom (de)serializers are supported, making zero-copy or lazy (de)serialization possible.
- Converting one typed Tree to another typed Tree with different key and value types.