[論文レビュー] Closing the B-tree vs. LSM-tree Write Amplification Gap on Modern Storage Hardware with Built-in Transparent Compression
本稿では、現代のストレージデバイスに組み込まれたハードウェアベースの透過的圧縮を活用して、Bツリーのライトアンプリフィケーションを10倍以上削減する3つの新規Bツリー設計技術—決定的ページシャロウイング、局所的ページ変更ログ記録、スパースリドゥログ記録—を提案する。このアプローチにより、BツリーはRocksDBのようなLSMツリーと同等またはそれ以上のライトパフォーマンスとストレージ効率を達成できる。
This paper studies the design of B-tree that can take full advantage of modern storage hardware with built-in transparent compression. Recent years have witnessed significant interest in applying log-structured merge tree (LSM-tree) as an alternative to B-tree. The current consensus is that, compared with B-tree, LSM-tree has distinct advantages in terms of storage space efficiency and write amplification. This paper argues that one should revisit this belief upon the arrival of storage hardware with built-in transparent compression. Advanced storage appliances~(e.g., all-flash array) and emerging computational storage drives perform hardware-based lossless data compression, transparent to OS and user applications. Beyond straightforwardly reducing the physical storage cost difference between B-tree and LSM-tree, such modern storage hardware brings new opportunities to innovate B-tree implementation in order to largely reduce its write amplification. As the first step to explore the potential, this paper presents three simple design techniques (i.e., deterministic page shadowing, localized page modification logging, and sparse redo logging) that can leverage such modern storage hardware to significantly reduce the B-tree write amplification. We implemented these design techniques and carried out experiments on a commercial storage drive with built-in transparent compression. The results show that the proposed design techniques can reduce the B-tree write amplification by over 10x. Compared with RocksDB (a popular key-value store built upon LSM-tree), the implemented B-tree can achieve similar or even smaller write amplification and physical storage space usage.
研究の動機と目的
- 現代のストレージハードウェアにおける透過的圧縮を活用することで、LSMツリーがBツリーのライトアンプリフィケーションにおいて優位であるという事実を再評価すること。
- 長年にわたり広く信じられてきた、LSMツリーがBツリーのライトアンプリフィケーションおよびストレージ効率において本質的に優れているという考えを是正すること。
- 物理的ストレージコストを負担せずに、透過的圧縮を実行するストレージデバイス上でスパースデータ構造を効率的に使用する方法を探ること。
- 原子性と耐久性を維持しつつ、ライトアンプリフィケーションを低減するBツリー技術の設計と実装を行うこと。
提案手法
- 決定的ページシャロウイングを用いてページ更新を特定することで、追加の物理的書き込みなしに原子性を保証する。
- 局所的ページ変更ログ記録を実装し、部分的ページ更新によって生じるライトアンプリフィケーションを低減する。更新されたデータセグメントのみを書き込む。
- スパースリドゥログ記録を適用し、非ゼロまたは変更されたデータブロックのみを書き込むことで、ログ記録のオーバーヘッドを最小限に抑える。これにより、ストレージデバイスのスパースデータ圧縮機能を活用する。
- ストレージデバイスの透過的圧縮機能を活用し、データ構造を意図的にスパース化しても物理的ストレージコストを低く維持する。
- 3つの技術を統合したBツリー実装を構築し、組み込み圧縮機能を備えた商用ストレージドライブ上で評価する。
- 圧縮後の物理的ストレージ書き込み量に基づいてライトアンプリフィケーションを測定する。
実験結果
リサーチクエスチョン
- RQ1組み込み透過的圧縮を備えたストレージハードウェア上で動作するBツリーが、LSMツリーと同等のライトアンプリフィケーションを達成できるか?
- RQ2データ管理システムは、物理的ストレージコストを負担せずに、現代のストレージデバイス上のデータ構造のスパarsityをどのように活用できるか?
- RQ3ハードウェアベースの圧縮とスパースデータ表現を活用することで、Bツリーのライトアンプリフィケーションを低減するための設計技術は何か?
- RQ4透過的圧縮を前提とした環境下で、BツリーはRocksDBのようなLSMツリー基盤システムをどれほど上回るか、あるいは同等に達するか、ライトスループットとストレージ効率の面でどうなるか?
- RQ5決定的ページシャロウイング、局所的変更ログ記録、スパースリドゥログ記録の組み合わせが、Bツリーのライトアンプリフィケーションを顕著に低減できるか?
主な発見
- 提案された設計技術により、組み込み透過的圧縮を備えた商用ストレージドライブ上でのBツリーのライトアンプリフィケーションが10倍以上削減された。
- スパースリドゥログ記録を適用しなくても、128Bレコードの150GBデータセットにおいて、BツリーはRocksDBよりも19%高いライトスループットを達成した。
- BツリーはWiredTigerおよびベースラインBツリー実装と比較して、約2.1倍高いライトスループットを達成した。
- ライトアンプリフィケーションの結果は、測定されたランダムライト速度性能と強く相関しており、最適化の有効性が裏付けられた。
- Bツリー実装はRocksDBと同等またはそれ以上の物理的ストレージ使用効率を達成し、ライトアンプリフィケーションおよび空間効率の面でLSMツリーとの差を埋めた。
- 結果から、Bツリーは現代のストレージハードウェアにおける透過的圧縮を適切に活用することで、ライト集約的ワークロードにおいてLSMツリーと競合可能であると示唆された。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。