一个键值存储SNKV项目,比较巧妙的借用了成熟项目SQLite 的存储引擎。

一个键值存储SNKV项目,比较巧妙的借用了成熟项目SQLite 的存储引擎。
github.com/hash-anu/snkv

SNKV 是一个轻量级、符合 ACID 标准的嵌入式键值存储库。它直接构建在 SQLite 经过实战检验的 B-Tree 存储引擎之上,但通过设计完全绕过了 SQL 解析层、查询规划器等,仅对外暴露纯粹的 KV 接口。它提供 C 语言的单头文件集成方案以及 Python 绑定。

它解决了在只需要简单键值对存储时,标准 SQLite 带来的 SQL 解析和执行引擎的额外性能开销问题。通过剔除不必要的 SQL 层,SNKV 在保留 SQLite 底层极其可靠的事务处理和崩溃恢复能力的同时,显著降低了读写路径的 CPU 消耗,特别适合资源受限的嵌入式环境或对随机读取、扫描性能有更高要求的场景。

分类