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
ひとこと要約

本稿では、歪んだ実世界のワークロードからブロック無効化時間(BIT)を推定することで、ライトアンプリフィケーション(WA)を低減する、新しいデータ配置方式であるSepBITを提案する。ユーザーが書き込んだブロックとGCが再書き込みしたブロックを分離し、推定されたBITに基づいてグループ化することで、最先端の方式と比較して最大20.2%低いWAと20%高いI/Oスルーレットを達成し、現在アリババクラウドの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.

研究の動機と目的

  • 将来のブロック無効化時間(BIT)の知識を前提として、ログ構造ストレージにおける理論的最小WAを特定すること。
  • 実システムでは将来のBITにアクセスできないという現実的でない制約を克服するため、実世界のストレージワークロードからBITを推定する実用的なデータ配置方式を設計すること。
  • ユーザーが書き込んだブロックとGCが再書き込みしたブロックを細かく分離し、類似した推定BITを持つブロックをグループ化することで、ログ構造ストレージにおけるWAを低減すること。
  • 歪んだワークロードにおけるBIT推定の有効性を評価し、既存のデータ配置戦略と比較して優れたWA低減とI/Oパフォーマンスを示すこと。

提案手法

  • 将来のブロック無効化時間(BIT)の完全な知識を仮定した理想化されたデータ配置戦略を提案し、WAの理論的下限を確立する。
  • 実世界のクラウドストレージトレース(アリババクラウドおよびテンセントクラウド)から観察された最後のユーザー書き込み時刻と書き込みの偏りパターンを用いて、BITを推定する。
  • ブロックを2つの主要なカテゴリに分類する:ユーザーが書き込んだブロックとGCが再書き込みしたブロックで、それぞれに対して独立したBIT推定を実施する。
  • ユーザーが書き込んだブロックの寿命とGCが再書き込みしたブロックの残存寿命を推定してBITを推定し、類似したBITを持つブロックの細かいグループ化を可能にする。
  • メモリオーバーヘッドが小さい軽量なインデックス構造を採用し、ブロック統計の追跡と効率的なBIT推定を支援する。
  • 既存のセグメント選択アルゴリズム(例:グリーディ、コストベネフィット)と統合し、ZenFSを用いたゾーニングストレージをエミュレートするプロトタイプシステムでパフォーマンスを評価する。

実験結果

リサーチクエスチョン

  • RQ1将来のブロック無効化時間(BIT)が分かっている場合、ログ構造ストレージで達成可能な理論的最小WAは何か?
  • RQ2将来の知識がなくても、実世界のストレージワークロードからブロック無効化時間(BIT)を効果的に推定できるか?
  • RQ3推定されたBITに基づいてブロックを分離することは、温度ベースまたは粗い分離と比較して、WA低減にどの程度効果的か?
  • RQ4書き込みの偏りを用いたBIT推定は、生産規模のワークロードにおいてWA低減とI/Oスルーレット向上にどの程度寄与するか?
  • RQ5推定されたBITに基づく実用的なデータ配置方式は、実世界の導入環境において、既存の最先端方式を上回る性能を示せるか?

主な発見

  • アリババクラウドのトレースにおいて、SepBITはグリーディセグメント選択アルゴリズムと比較して8.6–15.9%、コストベネフィットアルゴリズムと比較して9.1–20.2%のWA低減を達成した。
  • ボリューム単位のWAにおいて、ユーザーが書き込んだブロックとGCが再書き込みしたブロックを分離するだけのベースラインと比較して、SepBITは最大44.1%のアンプリフィケーション低減を実現した。
  • プロトタイプ評価では、SepBITは2番目に優れたデータ配置方式と比較して中央値のI/Oスルーレットを20%高く達成し、25百分位数では556.1 MiB/s、50百分位数では859.4 MiB/sのスルーレットを記録した。
  • 75百分位数のスルーレットは、FIFOキューのアクセスオーバーヘッドのため、一部のベースラインよりわずかに低かったが、高スルーレットボリュームでは顕著なWA低減が見られた。
  • トレース解析により、実世界のワークロードにおける書き込みの偏りが正確なBIT推定を可能にすることを確認し、SepBIT設計の根幹となる仮定を裏付けた。
  • SepBITは現在、アリババクラウドのエナジーレーテッドSSD(ESSD)で運用されており、生産環境における実用性とパフォーマンスメリットを実証した。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。