PebblesDB 项目推荐
项目基础介绍和主要编程语言
PebblesDB 是一个基于 FLSM(Fragmented Log-Structured Merge Tree)数据结构的写优化键值存储系统。该项目由德克萨斯大学奥斯汀分校(UTSA)实验室开发,主要使用 C++ 编程语言编写。PebblesDB 是 HyperLevelDB 和 LevelDB 的改进版本,旨在提供更高的写入吞吐量和更低的写入放大,同时不牺牲读取吞吐量。
项目核心功能
PebblesDB 的核心功能包括:
- 写优化:通过 FLSM 数据结构,PebblesDB 显著提高了写入吞吐量,减少了写入放大。
- 读优化:尽管 FLSM 结构增加了读取和查找的延迟,但 PebblesDB 通过使用 sstable 级别的布隆过滤器,有效减少了磁盘读取次数。
- 查找优化:PebblesDB 支持并行查找和强制压缩,以应对查找操作的性能挑战。
- API 兼容性:PebblesDB 与 HyperLevelDB 和 LevelDB 的 API 兼容,可以作为这些存储系统的直接替代品。
项目最近更新的功能
PebblesDB 在最近更新中引入了以下功能:
- CMake 构建系统支持:增加了对 CMake 构建系统的支持,简化了项目的构建过程。
- JNI 包装器和 YCSB 基准测试支持:添加了 Java Native Interface (JNI) 包装器,并支持运行 YCSB 基准测试,方便用户在 Java 环境中使用 PebblesDB。
- 布隆过滤器的内存使用统计:改进了对布隆过滤器内存使用的统计,帮助用户更好地理解和优化内存使用情况。
通过这些更新,PebblesDB 不仅提升了自身的功能和性能,还增强了与 Java 生态系统的兼容性,使其在更广泛的场景中得到应用。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



