はじめに
シニアシステムズエンジニアの川合です。今回ご紹介するのは、ピュア・ストレージが誇る特長の 1 つである、高い削減率の重複排除と圧縮によるデータ削減方法です。
ピュア・ストレージのデータ削減技術は、ホスト上で実行される各種アプリケーションのパフォーマンスに影響を与えずに、さまざまなデータタイプを自動的に識別してデータの容量を削減します。これがどのようにして行われるのか、その仕組みを見ていきましょう。
5 種類のデータ削減技術
FlashArray のオペレーティング環境である Purity には、5 種類のデータ削減技術が実装されています。
①インラインパターン除去
②可変長ブロックによるインライン重複排除
③インライン圧縮
④ポストプロセスによるディープ削減
⑤メタデータを効率的にするコピー削減
図 2 に示すように、FlashArray にデータが書き込まれるタイミングでチェックサムを付与し、データの整合性を担保して NVRAM にコピーを行い、すぐさまホストにアクノリッジを送信するところから、データ削減が始まります。
①インラインパターン除去
データが NVRAM に入ると、ゼロを含む反復バイナリパターンを識別します。このプロセスでは、シンプロビジョニングと全てのパターンブロック除去を実施して、重複排除スキャナーや圧縮エンジンによる前段処理で NVRAM 容量を最適化します。
②可変長ブロックによるインライン重複排除
重複排除は、フラッシュに保存されているユニークなブロックのみを保証します。
まず、NVRAM のデータは低負荷なハッシュベースの重複排除プロセスによってスキャンされます。スキャンされたデータのハッシュ結果は、DRAM 上のハッシュテーブルに格納されている既存のデータと比較します。既存データと一致した場合は、NVRAM とフラッシュに格納されているブロックを確認し、バイナリレベルで比較検証を行ってから解放します。
新規データがあった場合は、512 バイト単位で重複セクターを検証します。個々のセクターの粒度で隣接セクターをチェックし、さらに多くのデータ重複がないかを確認することで、4 KB から最大 32 KB(64 セクター)の可変長ブロックサイズでインライン重複排除を行います。
他社製ストレージによくある固定長ブロックサイズの重複排除とは異なり、FlashArray は、システムの性能を低下させることなく、より細かな粒度で重複を排除することが可能です。読み取り時の I/O レンジが 4 KB から 32 KB の間であれば、Purity は 1 つの I/O として全て応答しますので、リアルな速さを実現します。
③インライン圧縮
NVRAM より重複排除済みのブロックデータをスキャンして、LZO 圧縮アルゴリズムにて得られる削減レベルを決定し、中容量から大容量の識別されたデータをインライン圧縮します。
圧縮節約量が小さいデータ、または圧縮が不可能とみなされたデータは、このステップでの圧縮処理をスキップします。
④ポストプロセスによるディープ削減
圧縮処理後、3 階層からなるデータ保護方式の RAID-3D セグメントを作成して、フラッシュにデータを格納します。
フラッシュに格納されたデータは、Purity オペレーティング環境の FlashCare 機能により、システムレベルで、保管データの整合性確認および自動修復処理、ガベージコレクション(GC)、ウェアレベリング処理をバックグラウンドで実施します。
GC の実行後、RAID パリティとチェックサムの整合性を検証し、さらに深いデータ削減を行います。LZ4 や Zstd などの圧縮アルゴリズムの中から、初回圧縮時の分析結果をもとに、データ種別に応じた最適なアルゴリズムを自動判別し、GC によって再配置されたデータに対してより深い圧縮処理を行います。
図 3 は、お客様の実環境下で計測した、重複排除と圧縮のデータ削減効果の実績値です。
- 圧縮の効果はおおよそ 2 倍から 4 倍程度
- 全体のストレージの削減量が 10:1 (90 %)以下では圧縮の効果が高い
- 重複排除の効果が高いのは主に 仮想デスクトップ(VDI)環境(10:1 以上)
全体のデータ削減量(xT) = 圧縮(xC)x 重複排除(xD) - データベース、仮想サーバー、VDI を含めた広いレンジのワークロードが対象(平均削減率 = 5:1)
⑤メタデータを効率的にするコピー削減
Purity では、プライマリデータ、スナップショット、コピー(クローン)の全てを筐体全体でグローバルに重複排除します。各ボリュームはメタデータのみを管理し、実データはユニークデータを参照します。スナップショットやクローンを作成してもメタデータの更新のみに留まり、データ容量は増えません。
この機能の多くは、技術パートナーとの API 統合を介して、仮想インフラや各種アプリケーションなどで有効的に作用します。
まとめ
ピュア・ストレージの FlashArray は、オールフラッシュに適した効果的な方法でデータ削減を行います。独自のソフトウェア技術により SSD をグローバルに管理して、ホストでのパフォーマンスに影響を与えず、効率よく健全に利用できるように設計されています。
データ削減効果の検証をご希望のお客様は、ぜひお問い合わせください。