18个版本
0.2.3 | 2023年1月1日 |
---|---|
0.2.1 | 2022年12月28日 |
0.2.0 | 2021年12月7日 |
0.1.14 | 2021年11月21日 |
0.1.7 | 2021年9月30日 |
在 编码 中排名 605
每月下载量 308
用于 3 个crate (2 个直接使用)
125KB
2K SLoC
typed-sled - 基于sled构建的数据库
sled 是一个高性能的嵌入式数据库,其API类似于一个 BTreeMap<[u8], [u8]>
.
typed-sled 基于sled构建,并提供一个类似 BTreeMap<K, V>
的API,其中K和V是用户定义的类型。
示例
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
struct SomeValue(u32);
// Creating a temporary sled database
let db = sled::Config::new().temporary(true).open().unwrap();
// The id is used by sled to identify which Tree in the database (db) to open
let tree = typed_sled::Tree::<String, SomeValue>::open(&db, "unique_id");
// insert and get, similar to std's BTreeMap
tree.insert(&"some_key".to_owned(), &SomeValue(10))?;
assert_eq!(tree.get(&"some_key".to_owned())?, Some(SomeValue(10)));
Ok(())
特性
提供多个特性以适应常见用例
依赖关系
~2–7.5MB
~134K SLoC