Skip to main content
QUICK REVIEW

[论文解读] Separating Data via Block Invalidation Time Inference for Write Amplification Reduction in Log-Structured Storage

Qiuping Wang, Jinhong Li|arXiv (Cornell University)|Apr 26, 2021
Advanced Data Storage Technologies被引用 7
一句话总结

本文提出 SepBIT,一种新型的日志结构化存储数据放置方案,通过从倾斜的真实工作负载中推断块失效时间(BITs),降低写入放大(WA)。通过将用户写入块与GC重写块分离,并基于估计的BITs进行分组,SepBIT相比现有最先进方案将WA降低最多20.2%,I/O吞吐量提高20%,目前已在阿里云ESSD中部署。

ABSTRACT

Log-structured storage has been widely deployed in various domains of storage systems, yet its garbage collection incurs write amplification (WA) due to the rewrites of live data. We show that there exists an optimal data placement scheme that minimizes WA using the future knowledge of block invalidation time (BIT) of each written block, yet it is infeasible to realize in practice. We propose a novel data placement algorithm for reducing WA, SepBIT, that aims to infer the BITs of written blocks from storage workloads and separately place the blocks into groups with similar estimated BITs. We show via both mathematical and production trace analyses that SepBIT effectively infers the BITs by leveraging the write skewness property in practical storage workloads. Trace analysis and prototype experiments show that SepBIT reduces WA and improves I/O throughput, respectively, compared with state-of-the-art data placement schemes. SepBIT is currently deployed to support the log-structured block storage management at Alibaba Cloud.

研究动机与目标

  • 通过利用块失效时间(BITs)的未来知识,确定日志结构化存储中理论最小写入放大(WA)。
  • 通过设计一种可实用的数据放置方案,从真实世界存储工作负载中推断BITs,解决在实际系统中访问未来BITs的不切实际问题。
  • 通过细粒度分离用户写入块与GC重写块,并对具有相似估计BITs的块进行分组,降低日志结构化存储中的WA。
  • 评估在倾斜工作负载中BIT推断的有效性,并与现有数据放置策略相比,展示更优的WA降低与I/O性能。

提出的方法

  • 提出一种理想化的数据放置策略,假设可获得块失效时间(BITs)的完美未来知识,从而建立WA的理论下限。
  • 设计SepBIT,利用真实世界云存储追踪(阿里云与腾讯云)中观察到的最后一次用户写入时间和写入倾斜模式来推断BITs。
  • 将块分为两类主要类别:用户写入块与GC重写块,并对每组分别应用独立的BIT推断。
  • 估计用户写入块的寿命以及GC重写块的剩余寿命,以推断其BITs,从而实现具有相似BITs的块的细粒度分组。
  • 采用轻量级索引结构,内存开销低,用于跟踪块统计信息并支持高效的BIT推断。
  • 与现有段选择算法(如Greedy、Cost-Benefit)集成,并在通过ZenFS模拟分区存储的原型系统中评估性能。

实验结果

研究问题

  • RQ1如果已知未来块失效时间(BITs),日志结构化存储中可实现的理论最小写入放大(WA)是多少?
  • RQ2能否在不依赖未来知识的前提下,从真实世界存储工作负载中有效推断块失效时间(BITs)?
  • RQ3基于推断的BITs对块进行分离,与基于温度或粗粒度分离相比,在降低写入放大方面表现如何?
  • RQ4通过写入倾斜模式推断BITs,在生产规模工作负载中能在多大程度上提升WA降低与I/O吞吐量?
  • RQ5基于推断BITs的实用数据放置方案是否能在真实部署场景中超越现有最先进方案?

主要发现

  • 在阿里云追踪数据中,与Greedy段选择算法相比,SepBIT将整体写入放大(WA)降低了8.6–15.9%;与Cost-Benefit算法相比,降低了9.1–20.2%。
  • 在单个卷的WA方面,与仅分离用户写入块与GC重写块的基线相比,SepBIT将放大率降低了最多44.1%。
  • 在原型评估中,SepBIT的中位I/O吞吐量比第二好的数据放置方案高出20%,在第25和第50百分位数的吞吐量分别为556.1 MiB/s和859.4 MiB/s。
  • 第75百分位数吞吐量略低于某些基线,这是由于FIFO队列访问的开销所致,但高吞吐量卷中显著降低的WA抵消了这一影响。
  • 追踪分析证实,真实工作负载中的写入倾斜性使得BIT推断具有高准确性,验证了SepBIT设计的核心假设。
  • SepBIT目前已在阿里云增强型SSD(ESSD)中部署,证明了其在真实生产环境中的可行性与性能优势。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。