NetApp Tech OnTap
     

NetAppストレージのデータ圧縮機能

柔軟なITの実現に重要なのは効率性です。ストレージ効率化技術を刷新するリーダー企業として、NetAppはSnapshot™と関連テクノロジ、シンプロビジョニング、FlexClone®、プライマリストレージの重複排除など、多くの革新的で最新の効率化技術をお客様に提供できるよう力を尽くしてきました。

言うまでもなく、データ圧縮テクノロジはずっと以前から使用されています。ただし、大規模なストレージシステムに関しては、特にパフォーマンスへの影響の面で従来から重大な課題があります。最近まで、テープドライブやVTLなどのデバイスに対する圧縮機能は、ほぼ例外なく専用のハードウェアを使用して提供されており、コストと複雑性を増大させる要因になっていました。NetAppが新たに開発した方法では、ソフトウェアを使用して透過的なインラインデータ圧縮機能を提供し、同時にコンピューティング・リソースへの影響も軽減します。この方法により、既存のNetApp®ストレージシステムをData ONTAP 8.0.1以降にアップグレードすれば、Data ONTAP®を通じて追加コストなしで圧縮機能をご利用いただけるようになりました。

この記事では、NetAppのデータ圧縮機能の概要と仕組みを説明するとともに、いくつかの一般的なユースケースと、それぞれについて計測したスペース削減量を紹介します。また、データ圧縮機能を他のNetAppテクノロジと併用する方法について説明し、お客様の成功を支援するため、どのようにNetAppがこの新機能を展開しているかを確認します。

NetAppのデータ圧縮機能について

NetAppのデータ圧縮機能は、透過的なインラインデータ圧縮を実行するソフトウェアベースのソリューションで、Data ONTAP 8.0.1に組み込まれた無償オプションとして提供されます。NetAppのデータ圧縮機能の使用に、アプリケーションの変更は一切必要ありません。

NetAppのデータ圧縮機能を使用すると、プライマリ、セカンダリ、アーカイブの各ストレージ上にあるフレキシブルボリューム(FlexVol®)内のデータを圧縮し、ストレージシステム上でデータを保存するのに必要となる物理的な容量を減らすことができます。通常のファイル、仮想ローカルディスク、LUNの圧縮が可能です。以降のファイルに関しての説明は、仮想ローカルディスクとLUNにも当てはまります。

NetAppのデータ圧縮機能で圧縮を実行する場合、ファイル全体を単一の連続したバイトストリームとしては扱いません。こうした圧縮方法では、ファイルの一部を少しだけ読み取るような要求に応える際、ディスクからファイル全体を読み取り、解凍してから読み取り要求に応答する必要があるため、極端にコストがかかります。ファイルサイズが大きくなると、この処理は特に困難になります。NetAppのデータ圧縮では、このような問題を回避するため、連続した複数のブロックを小容量のグループに分け、1回の処理につき1つのグループを圧縮します。これは、NetAppのデータ圧縮機能の効率性向上を実現している重要な設計要素です。読み取り要求を受け取った際は、ファイル全体ではなく、小容量のブロックグループを読み取って解凍すれば済みます。この方法を使用すると、読み取り処理が最適化され、より幅広いサイズのファイルの圧縮に対応できるようになります。

NetAppの圧縮アルゴリズムでは、ファイルが32 KBのデータ領域に分割され、この領域が圧縮グループと呼ばれます。各圧縮グループには、1つのファイルのデータのみが含まれます。

データの書き込み:書き込み要求は、圧縮グループレベルで処理されます。グループが形成されると、データをメモリ内に保持したままテストが実行され、対象のデータが圧縮可能であるかどうかが判断されます。圧縮できない場合、データはそのままディスクに送信されます。テストでデータが圧縮可能と判断された場合のみ、そのグループ全体が圧縮されます。この方法によって、スペースの削減量が最適化され、同時にリソースのオーバーヘッドが最小化されます。

データを圧縮すると、ディスクに書き込まれるブロック数が少なくなるため、圧縮後の各書き込み処理に要する書き込みI / O数は減少します。これにはディスクの占有量を低減するだけでなく、ディスクへの書き込み要求の完了に要する時間を短縮する効果もあり、バックアップの実行時間も大幅に短縮されます。

圧縮処理を実行する前には、圧縮グループの圧縮率がテストされる。その後はテスト結果に応じ、圧縮した、または圧縮されていない圧縮グループがディスクに書き込まれる

図1)圧縮処理を実行する前には、圧縮グループの圧縮率がテストされる。その後はテスト結果に応じ、圧縮した、または圧縮されていない圧縮グループがディスクに書き込まれる

データの読み取り:圧縮されたデータの読み取り要求を受け取った場合、Data ONTAPはファイル全体ではなく、要求されたデータを含む圧縮グループのみを読み取ります。こうすることで、要求への応答に要するI / O量を最小化し、オーバーヘッドをごくわずかに抑えることができます。

圧縮のパフォーマンス

NetAppのデータ圧縮機能は、単独で使用またはNetAppの重複排除機能と併用することにより、最適なストレージ削減量を達成できるように設計されています。NetAppの重複排除は、最も都合の良い時間に実行されるようにスケジュールを設定できるのに対し、NetAppのデータ圧縮はインライン処理として、データをディスクに書き込む際に実行されます。この2つの機能を同じボリューム上で同時に有効化すると、最初にデータを圧縮してから重複排除が実行されます。重複排除を実行するためにデータを解凍する必要はありません。この処理では単純に、重複した圧縮済みまたは未圧縮のブロックがデータボリュームから削除されます。

データ圧縮機能では高い圧縮効率を実現するため、Data ONTAPの内部的な特性を活用しています。NetAppのデータ圧縮はパフォーマンスへの影響を最小限に抑えますが、完全に解消することはできません。使用の際は、データ圧縮を実行するのに必要なリソースが許容量であるかどうか、ワークロードを評価する必要があります。実際の影響は、次のようなさまざまな要素に応じて変化する可能性があります。

  • アプリケーションの種類
  • データセットの圧縮率
  • データのアクセスパターン(シーケンシャルアクセスとランダムアクセス、I / Oのサイズとパターンなど)
  • ファイルの平均サイズ
  • 変更割合
  • システム上で圧縮が有効化されているボリューム数
  • ハードウェアのプラットフォーム(システムに搭載されたCPUとメモリの量)
  • システム上の負荷
  • ディスクの種類と速度
  • アグリゲートを構成するスピンドル数

お客様の実装を最適化するため、サイジングなどの作業に役立てていただけるよう、NetAppでは各種のベストプラクティスをご用意しています。目的の用途にデータ圧縮を適用できるかどうかを判断するには、さまざまな要素が関係するため、実際の環境でテストするのが最も良い方法です。以降では、さまざまなアプリケーション・データセットを使用して計測したスペース削減率と、いくつかの標準的なユースケースを紹介します。

データ圧縮と重複排除によるスペース削減率

NetAppのデータ圧縮では、インラインで圧縮を実行することにより、ただちにスペース削減効果が実現されます。NetAppの重複排除は定期的に(ポストプロセスとして)実行され、累積的なスペース削減効果を提供します。圧縮と重複排除は併用可能ですが、注意していただきたいのは、併用によって達成される削減量が、各テクノロジをデータセットに個別に適用した場合の削減量の合計と必ずしも同じにはならない点です。

データの種類によっては、圧縮を実行しても重複排除単独の場合と削減量が変わらない場合もあれば、その逆のケースもあります。一方で、圧縮と重複排除を組み合わせて両方実行することにより、最大限のストレージ削減効果が得られるケースもあります。次の表に、こうした点に関する具体例を示します。

表1)さまざまな種類のデータで最大のスペース削減効果を得る組み合わせ

データセットの種類 アプリケーション 最大の削減
効果を得る
組み合わせ
標準的な
スペース削減量
ホームディレクトリ 圧縮と重複排除の両方 65%
仮想サーバとデスクトップ 重複排除のみ 70%
データベース 圧縮のみ 65%
Eメール Exchange 2003 / 2007 圧縮のみ 35%
Exchange 2010 圧縮と重複排除の両方 40%
エンジニアリング
データ
ソフトウェア開発 圧縮と重複排除の両方 75%
地震データ 圧縮のみ 75%

この削減例は標準的な場合を表し、すべてのデータセットで一定なわけではありません。達成される削減効果を評価するには、実際のデータでテストする必要があります。NetAppはいつでも評価プロセスをご支援します。

標準的なユースケース

すでに述べたように、圧縮機能は著しいストレージ削減効果をもたらす場合がある一方で、ある程度のパフォーマンス低下を伴います。圧縮機能の利用がお客様のストレージ環境で本当に妥当かどうかを判断するため、この2点を一緒に評価することが重要です。

データベースのバックアップ(一般的なバックアップも同様)は、データ圧縮の候補として非常に適しています。多くの場合、データベースはきわめて容量が大きく、バックアップストレージに関して多くのユーザのパフォーマンスが多少低下する代わりに、65%を超える容量を削減できます。

もう1つのユースケースとしてはファイルサービスが挙げられます。システムの約半分が、50%圧縮可能なデータセットによって使用されている状態で、ファイルサービス・ワークロードを使用してテストした結果、スループットの低下は10%しかありませんでした。ファイルへの応答時間が2ミリ秒のファイルサービス環境の場合、これは時間にしてわずか0.2ミリ秒の増加で、応答時間が2.2ミリ秒に延びます。スペース削減率が65%であることを考えれば、このわずかなパフォーマンスの低下は許容範囲ではないでしょうか。データのレプリケーションにNetAppのVolume SnapMirror®テクノロジを使用し、ネットワーク帯域幅とセカンダリストレージ上のスペース使用量を減らすことにより、こうした削減率はさらに拡大します (この場合、セカンダリストレージにはプライマリストレージで圧縮済みのデータが複製されるため、それ以上の処理は必要ありません)。このシナリオでは、次の効果が得られます。

  • プライマリストレージのストレージ容量を65%削減
  • レプリケーションのためにネットワークを介して転送されるデータ量を65%削減
  • レプリケーション時間を65%短縮
  • セカンダリストレージのストレージ容量を65%削減

圧縮機能の使用に適したユースケースはほかにもたくさんあります。環境に最適なユースケースを判断する際に役立つよう、NetAppはさまざまなツールとガイドブックをご用意しています。

データ圧縮機能と他のNetAppテクノロジの併用

これまで見てきたように、NetAppのデータ圧縮は、NetAppの重複排除と補完し合う形で機能します。以降では、データ圧縮を、よく使用される他のいくつかのNetAppテクノロジと併用する場合について説明します。

Volume SnapMirror:Volume SnapMirrorは物理ブロックレベルで動作し、ソースボリューム上で重複排除と圧縮のいずれか、または両方が有効化されている場合、重複排除と圧縮によるスペース削減量はいずれもミラーリング先のデスティネーション・ボリュームでも維持されます。そのため、レプリケーションの間に必要となるネットワーク帯域幅の量だけでなく、SnapMirror転送の完了までの所要時間も大幅に削減されます。次に、留意すべき一般的なガイドラインをいくつか紹介します。

  • ソースシステムとデスティネーション・システムではいずれも、同じリリースのData ONTAPを使用する
  • 圧縮と重複排除はソースシステム上でのみ管理され、デスティネーション・システムのフレキシブルボリュームには、効率化の属性とストレージ削減効果が継承される
  • 共有ブロックは1回しか転送されないため、重複排除ではネットワーク帯域幅も削減される
  • 圧縮は転送処理全体を通じて維持されるため、転送されるデータの量が削減される結果、ネットワーク帯域幅の使用量が減少する
  • データはすでにNetAppのデータ圧縮機能によって圧縮されているため、SnapMirrorリンクの圧縮機能を使用する必要はない

ネットワーク帯域幅とSnapMirror転送時間の削減量は、スペース削減量と直接的に比例します。たとえば、ディスク容量が50%削減されると、SnapMirror転送の時間も50%短縮し、ネットワーク経由で転送する必要のあるデータ量も50%減少します。

Qtree SnapMirrorとSnapVault®:qtree SnapMirrorとSnapVaultはいずれも、論理ブロックレベルで動作し、ソース・ストレージ・システムとデスティネーション・ストレージ・システムでは独立して重複排除やデータ圧縮が実行されます。そのため、ソースデータで圧縮または重複排除が行われていなくても、qtree SnapMirrorやSnapVaultのバックアップに対して圧縮または重複排除を実行できます。

クローニング:NetApp FlexCloneテクノロジを使用すると、ファイルやデータボリュームの仮想コピーを瞬時に作成できます。こうしたコピーの作成に新たなストレージスペースは必要なく、クローンに変更を加えた場合にのみスペースが消費されます。FlexCloneは重複排除と圧縮の両方をサポートします。

NetAppのデータ圧縮機能を使用するための準備

NetAppのデータ圧縮機能は、Data ONTAP 8.0.1以降を実行しているすべてのNetApp FASシステムとVシリーズシステムで動作します。データ圧縮はボリュームレベルで有効化されます。これは、この機能を有効化するボリュームを選択できるということです。ボリュームに含まれるデータを圧縮できないことがわかっている場合は、そのボリュームで圧縮機能を有効にする必要はありません(むしろ有効化しない方が適切です)。ボリュームの最大サイズは16 TBで、Data ONTAP 8の新機能である、64ビットアグリゲート内に含まれている必要があります (Data ONTAP 8の詳細については、今月号のTech OnTapに掲載されている関連記事をご覧ください)。

データ圧縮機能の使用を開始するには、使用するストレージシステム上に無償ライセンスをインストールし、選択したボリュームで圧縮機能を有効化すれば済みます。これですべての作業は完了です。

早期採用に向けたデータ圧縮利用促進プログラム数年前に重複排除機能をリリースしたときと同様に、NetAppではデータ圧縮テクノロジの早期利用プログラムを提供しています。圧縮機能のライセンスを希望されるお客様には、NetAppがお客様の環境を評価し、ベストプラクティスに基づいたご提案をさせていただきます。

まとめ

NetAppのデータ圧縮機能は、ストレージ効率化に関して有用な機能をData ONTAPに追加するというNetAppの従来の方針を継承し、追加コストなしでお客様に提供されます。対象のデータセットが圧縮可能な場合、このテクノロジはストレージ要件を大幅に削減する効果があり、NetAppの重複排除を始めとした他のNetAppテクノロジとの併用も可能です。

他のNetApp Storage Efficiencyテクノロジと組み合わせて使用すれば、圧縮機能の能力と可能性は大きな効果をもたらします。複数の効率化テクノロジや機能を包括的なポートフォリオから選択することで、テクノロジとビジネスニーズとのバランスを柔軟で効果的に管理できます。

NetAppコミュニティ
 データ圧縮に関するご意見をお寄せください。

ご質問、意見交換、情報提供は、NetAppのコミュニティサイトまでお願いいたします。

Sandra Moulton

Sandra Moulton
テクニカル・マーケティング・エンジニア
NetApp

SandraがNetAppの一員となったのはちょうど1年前のことです。以来、主にStorage Efficiencyだけに取り組み、特に重複排除とデータ圧縮を専門としています。また、こうした重要なテクノロジに関し、各種のホワイトペーパー、ベスト・プラクティス・ガイド、リファレンス・アーキテクチャの作成も担当しています。Sandraは20年を超える業界経験の持ち主で、シリコンバレーの他の有力企業各社でも同様の業務に従事してきました。

 
関連情報
 
TRUSTe
お問い合わせ  |  購入方法  |  フィードバック  |  採用情報  |  登録  |  プライバシーポリシー  |  © 2010 NetApp