1 个不稳定版本
0.1.0 | 2023年5月17日 |
---|
#2816 在 数据库接口
30KB
686 行
CheetahKV
Rust 的键值存储。
lib.rs
:
一个简单且高效的线程安全键值存储。
存储在块上进行分片。每个块都有自己的锁(读写),因此支持在多核 CPU 上的高并发访问。
高效的空间重用算法。每个数据包的大小是 2 的幂次方,用于在值更新和删除条目映射上进行原地重写,以重用空间。
let mut store_options = StoreOptions::new();
store_options.directory("dir_name".to_string()).chunks_count(100).chunks_prefix("prefix".to_string());
let store = Store::open(store_options).unwrap();
let key = "key".as_bytes();
let value = "value".as_bytes();
store.set(key, value, 0).unwrap();
let value_by_key = store.get(key).unwrap();
store.delete(key).unwrap();
依赖关系
~475–650KB
~11K SLoC