[論文レビュー] Flashield: a Key-value Cache that Minimizes Writes to Flash
Flashieldは、頻繁にアクセスされ安定したオブジェクトがフラッシュに移動しても安全であると予測するためのDRAMを用いた動的フィルタとしてのハイブリッドキー値キャッシュである。軽量なSVMベースの機械学習を用いて、書き込みアンプリフィケーションを中央値0.5×にまで低減し、最新のシステムが2.5×以上を示す中で、ヒットレートやスループットを損なわず優れた性能を発揮する。
As its price per bit drops, SSD is increasingly becoming the default storage medium for cloud application databases. However, it has not become the preferred storage medium for key-value caches, even though SSD offers more than 10x lower price per bit and sufficient performance compared to DRAM. This is because key-value caches need to frequently insert, update and evict small objects. This causes excessive writes and erasures on flash storage, since flash only supports writes and erasures of large chunks of data. These excessive writes and erasures significantly shorten the lifetime of flash, rendering it impractical to use for key-value caches. We present Flashield, a hybrid key-value cache that uses DRAM as a "filter" to minimize writes to SSD. Flashield performs light-weight machine learning profiling to predict which objects are likely to be read frequently before getting updated; these objects, which are prime candidates to be stored on SSD, are written to SSD in large chunks sequentially. In order to efficiently utilize the cache's available memory, we design a novel in-memory index for the variable-sized objects stored on flash that requires only 4 bytes per object in DRAM. We describe Flashield's design and implementation and, we evaluate it on a real-world cache trace. Compared to state-of-the-art systems that suffer a write amplification of 2.5x or more, Flashield maintains a median write amplification of 0.5x without any loss of hit rate or throughput.
研究の動機と目的
- SSDベースのキー値キャッシュにおける高い書き込みアンプリフィケーションという深刻な課題に対処し、ビット単価が低い反面、SSDの寿命が短くなる問題を解決する。
- 頻繁な小規模な更新やホットオブジェクトの除外によって過剰な書き込みを引き起こす既存のSSDキャッシュの限界を克服する。
- DRAMをフィルタリングレイヤーとして活用し、非理想的なオブジェクトがフラッシュに書き込まれるのを防ぐハイブリッドキャシングシステムを設計する。
- オブジェクトが安定的かつ頻繁にアクセスされることを証明した後にのみフラッシュへの書き込みを遅延させることで、キャッシュレベルの書き込みアンプリフィケーション(CLWA)を最小限に抑える。
- 可変サイズのデータを対象とした、1オブジェクトあたり4バイト未満のメモリ使用量を実現する新しいインメモリインデックスを設計し、メモリ効率を高める。
提案手法
- 着信オブジェクトを一時的にDRAMでフィルタリングし、アクセスパターンが観測されるまでSSDへの配置を遅延させる。
- リアルタイムのアクセス統計に基づいてトレーニングされた、アプリケーション固有の軽量なサポートベクターマシン(SVM)分類器を適用し、頻繁に読み込まれる可能性が高いオブジェクトを予測する。
- 時間経過にわたる均一なサンプリングによりアクセス統計を収集し、最小限のオーバーヘッドで将来のアクセス可能性を推定する。
- 安定的かつ頻繁にアクセスされることが予測されるオブジェクトのみをフラッシュに移動させ、SSDへの書き込み回数を削減する。
- フラッシュに格納された可変サイズのオブジェクトを対象とした、1オブジェクトあたりわずか4バイトのメモリ使用量で実現する新しいインメモリインデックスを実装する。
- デバイスレベルの書き込みアンプリフィケーション(DLWA)を低減するため、フラッシュへの順方向で大容量のブロック書き込みを活用し、ランダム書き込みやガーベージコレクションのオーバーヘッドを回避する。
実験結果
リサーチクエスチョン
- RQ1DRAMベースのフィルタリング機構は、性能を劣化させることなく、SSDベースのキー値キャッシュにおける書き込みアンプリフィケーションを顕著に低減できるか?
- RQ2オブジェクトのアクセスパターンを機械学習で予測することは、SSDに格納するのに適した安定的かつ頻繁にアクセスされるオブジェクトを特定するのにどの程度効果的か?
- RQ3可変サイズのオブジェクトを扱うハイブリッドキャッシュにおいて、DRAM使用量を最小限に抑えつつ効率的な検索を可能にする最適なインメモリインデックス構造は何か?
- RQ4実際のワークロードにおいて、オブジェクトのアクセスパターンが確認された後にのみSSDへの書き込みを遅延させることで、書き込みアンプリフィケーションはどの程度低減できるか?
- RQ5フラッシュハードウェアやFTLを変更せずに、DRAMに近いレベルのSSD耐久性を達成できるか?
主な発見
- Flashieldは、最新のシステムが2.5×以上を示す中で、中央値の書き込みアンプリフィケーションを0.5×まで低減し、SSDの寿命を顕著に延長した。
- システムは、既存のSSDベースのキャッシュと同等のヒットレートとスループットを維持しており、書き込み削減が性能に悪影響を及えないことを実証した。
- 軽量なSVMベースの予測モデルは、最小限のランタイムオーバーヘッドで安定的かつ頻繁にアクセスされるオブジェクトを効果的に特定した。
- 新規のインメモリインデックスは、平均で1オブジェクトあたり4バイトの使用量に抑えられ、フィルタリングおよびキャッシュ用途におけるDRAMの効率的使用を可能にした。
- オブジェクトが安定的であることが証明された後にのみフラッシュへの書き込みを遅延させることで、Flashieldは不要な再書き込みを回避し、キャッシュレベルの書き込みアンプリフィケーション(CLWA)を低減した。
- 同等容量のDRAMオンリーキャッシュと比較して、システムは10倍のコスト削減を達成し、電力消費量は低く抑えられ、遅延は同等であった。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。