An LSM Tree Augmented with B+ Tree on Nonvolatile Memory——论文泛读

TOS 2024 Paper 论文阅读笔记整理(持续更新)

问题

基于日志结构合并(LSM)树的键值存储,被广泛用于处理更新繁重的工作负载,因为LSM树将对存储设备的写入请求按顺序排列,以最大限度地提高存储性能。然而,这种仅追加的方法留下了许多频繁更新的键值对的过时副本,这些副本需要通过压缩操作定期清理。当系统负载适中时,压缩发生在后台。但在高系统负载下,它可能很快成为主要的性能瓶颈。

现有方法局限性

  • 在DRAM中执行尽可能多的原地更新,以过滤同一密钥上的多个更新。然而,扩展DRAM大小并不是一个具有成本效益的解决方案。

  • 在一定程度上放宽LSM树的仅附加特性,但会导致存储设备上随机写入的增加,最终降低写入吞吐量。

  • 利用NVM优化键值存储,但要么只减少压缩频率[33],要么只减少压缩时间[55],但不能同时优化两者。SLM-DB[32]采用了更全面的方法来解决压缩开销,但其对更大数据集的可扩展性受到限制。

本文方法

本文提出了LAB-DB,在字节可寻址非易失性存储器(NVM)上用一对B+树来扩充现有的LSM树,解决压缩瓶颈并进一步提高基于LSM树的键值存储的写入吞吐量。通过利用NVM上的B+树进行原位更新,节省空间同时减少了压缩频率和压缩时间,从而降低了写入的压缩开销和读取的存储访问次数。

根据YCSB基准测试对RocksDB上的LAB-DB进行的评估,LAB-DB在两种写密集型工作负载A和F上分别实现了94%和67%的加速,在读密集型YCSB工作负载B、C、D和E上也实现了43%的加速。这种性能提升伴随着较低的NVM成本,NVM的大小仅为整个数据集的0.6%。

总结

针对LSM树压缩的优化。本文提出了LAB-DB,在NVM上用一对B+树扩充现有的LSM树,利用NVM上的B+树进行原位更新,节省空间同时减少了压缩频率和压缩时间,从而降低了写入的压缩开销和读取的存储访问次数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

妙BOOK言

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值