您现在的位置是:首页 > 文章详情

RocksDB 7.0.0 已发布,Facebook 开发的 k-v 存储系统

日期:2022-03-14点击:573

RocksDB 7.0.0 现已发布,RocksDB 是一个来自 Facebook 的可嵌入的支持持久化的 key-value 存储系统,也可作为 C/S 模式下的存储数据库,基于 LevelDB 构建。 

RocksDB 7.0.0

Bug修复

  • 修复了当启用 memtable Bloom 过滤器 (memtable_prefix_bloom_size_ratio > 0) 时,批量 MultiGet 可能返回由 DeleteRange 删除的键的旧值的主要错误。
  • 修复了更多 EventListener::OnTableFileCreated 调用的情况,状态为 OK,file_size==0,且没有保留 SST 文件。
  • 修复了DB::GetMergeOperands().
  • 修复并发事务提交和 memtable 切换导致的 2PC 写提交事务的数据丢失问题(#9571)。
  • 修复了 NUM_INDEX_AND_FILTER_BLOCKS_READ_PER_LEVELNUM_DATA_BLOCKS_READ_PER_LEVEL  NUM_SST_READ_PER_LEVEL 统计信息,每个级别的每个 MultiGet 批次报告一次。

性能改进

  • 减少了构建在线 LSM 树一致性检查所使用的文件位置哈希表的开销,这可以提高某些工作负载的性能(参见#9351)。
  • 切换到使用排序std::vector而不是std::map存储 blob 文件的元数据对象,可以提高某些工作负载的性能,尤其是当 blob 文件的数量很大时。
  • DisableManualCompaction() 不必等待计划的手动压缩在线程池中执行以取消作业。

行为改变

  • 禁止 DBOptions.use_direct_io_for_flush_and_compaction == true  DBOptions.writable_file_max_buffer_size == 0 的组合,这种组合会导致 WritableFileWriter::Append() 永远循环,在直接 IO 中没有多大意义。
  • ReadOptions::total_order_seek不再影响 DB::Get(),这种交互已经过时,因为 RocksDB 已经能够检测当前的前缀提取器是否与用于生成表文件的前缀提取器兼容。

新特性

  • 引入了BlockBasedTableOptions::detect_filter_construct_corruption在 Bloom Filter (format_version >= 5) 和 Ribbon Filter 构建期间检测损坏的选项。
  • 改进了 SstDumpTool 以从表属性中读取比较器,并使用它来读取 SST 文件。
  • 扩展了信息日志中的列族统计信息,还会记录 blob 文件中的垃圾总量和 blob 文件空间放大系数,还通过rocksdb.blob-stats DB 属性公开了 blob 文件空间放大器。
  • 在 ch 中引入 APIrocksdb_create_dir_if_missing,调用底层文件系统的 CreateDirIfMissing API 来创建目录。
  • 添加了最后一级和非最后一级读取统计信息:LAST_LEVEL_READ_*  NON_LAST_LEVEL_READ_*
  • 实验性:在 FSRandomAccessFile 中添加对新 API ReadAsync 的支持,以异步读取数据,并在 FileSystem 中添加 Poll API 以检查请求的读取请求是否已完成。ReadAsync 采用回调函数。轮询 API 检查读取 IO 请求的完成情况,并应调用回调函数来指示读取请求的完成。

RocksDB 7.0.1

  • 修复使用 DisableManualCompaction 取消手动压缩时的竞争条件,DB close 也可以取消手动压缩线程。
  • 修复了 DBImpl::ResumeImpl() 和等待恢复完成的线程之间的 versions_ 数据竞争
  • 修复了由刷新、传入写入和拍摄快照之间的竞争导致的错误,对使用这些竞争条件创建的快照查询可能会返回不正确的结果,例如重新显示已删除的数据。

7.0.0 版本还有海量公共 API 更改,详情查看更新公告:https://github.com/facebook/rocksdb/releases/tag/v7.0.1

原文链接:https://www.oschina.net/news/186502/rocksdb-7-0-0-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章