文件名称:AgateDB 是一个用纯 Rust 编写的可嵌入、持久且快速的键值 (KV) 数据库
文件大小:63KB
文件格式:ZIP
更新时间:2024-07-18 12:50:28
agatedb
玛瑙数据库AgateDB 是一个用纯 Rust 编写的可嵌入、持久且快速的键值 (KV) 数据库。它被设计为TiKV项目的实验引擎,并将专门为 TiKV 带来积极的优化。项目状态AgateDB 还在早期重开发中,可以在GitHub 项目查看开发进度。整个计划是先将獾移植到 Rust 中,然后再移植在unistore 中所做的优化。AgateDB 正在开发分支上积极开发。目前,它可以用作 MVCC 的键值存储。它实现了獾管理模式的大部分功能。为什么不是X?X是一个伟大的项目!该项目的动机是最终将我们为在 TiKV 中进行单存储所做的优化。Unistore 基于獾,所以我们从獾开始。我们使用 Rust 是因为它可以带来开箱即用的内存安全,这在快速开发过程中很重要。TiKV 也是用 Rust 编写的,因此它们之间的集成会更容易,例如支持 async/await、共享全局线程池等。
【文件预览】:
agatedb-master
----Cargo.toml(761B)
----proto()
--------Cargo.toml(205B)
--------src()
--------build.rs(99B)
----.github()
--------workflows()
----src()
--------opt.rs(680B)
--------ops()
--------entry.rs(2KB)
--------error.rs(1KB)
--------table.rs(17KB)
--------db()
--------bloom.rs(4KB)
--------wal.rs(13KB)
--------levels.rs(83B)
--------util.rs(2KB)
--------db.rs(3KB)
--------value.rs(5KB)
--------table()
--------levels()
--------memtable.rs(3KB)
--------ops.rs(43B)
--------lib.rs(553B)
--------iterator_trait.rs(426B)
--------checksum.rs(5KB)
--------format.rs(1KB)
--------iterator.rs(654B)
----scripts()
--------gen.cmd(65B)
----LICENSE(11KB)
----skiplist()
--------Cargo.toml(370B)
--------src()
--------tests()
--------benches()
----README.md(1KB)
----Makefile(453B)
----.gitignore(325B)
----benches()
--------common.rs(207B)
--------bench_table.rs(4KB)
--------bench_common.rs(682B)