データ重複排除の概要

はじめに



ビジネス継続性の分野では、最新のITインフラストラクチャでのデータの急速な成長に関連するさまざまな問題があります。 私の意見では、2つの主なものを区別できます。









  1. 大量のデータを保存する場所を計画する方法
  2. このデータをバックアップする方法


実際、大規模な組織でのテラバイトデータの年間成長は、今日の非常に現実的なシナリオです。 しかし、効率的なストレージとバックアップはどうでしょうか? 結局のところ、1日の最大時間は24時間であり、バックアップウィンドウは無期限に拡大することはできません(データ自体とは異なります)。 今日は、重複排除がこの問題の深刻度を下げるのにどのように役立つかについてお話したいと思います。













重複排除



大まかに言って、重複排除には主に2つのタイプがあります。











通常、使用される粒度の細かい重複排除スキームほど、ストレージスペースの節約量が大きくなります。









SISとは この方法の本質は単純です。たとえば、まったく同じファイルが2つある場合、そのうちの1つは別のファイルにリンクされます。 このようなメカニズムは、メールサーバー(Exchangeなど)およびデータベースで正常に機能します。 たとえば、1人の企業のメールユーザーが添付ファイル付きのメールを複数の受信者に送信する場合、このファイルはExchangeデータベースに1回だけ保存されます。









いいね! ただし、ファイルが完全に同一になるまでのみです。 同一のファイルの1つがバイト単位でも変更されると、別の変更されたコピーが作成され、重複排除の効率が低下します。









ブロック重複排除は、ディスクに書き込まれたデータブロックのレベルで機能し、使用されるハッシュ関数のIDまたは一意性を評価します。 重複排除システムは、保存されているすべてのデータブロックのハッシュテーブルを保存します。 重複排除システムは、異なるブロックに一致するハッシュを見つけるとすぐに、ブロックを単一のインスタンスおよびその一連のリンクとして保存することを提案します。 異なるコンピューターからのデータブロックを比較することもできます(グローバル重複排除)。重複排除データの多くは同じオペレーティングシステムの異なるコンピューターのディスクに保存できるため、重複排除の効率がさらに向上します。 ブロックサイズを縮小し、ブロックの再現性を最大化することにより、最大の効率が達成されることに注意してください。 これに関連して、ブロック重複排除には2つの方法があります。 定数 (事前定義)と可変 (特定のデータに対して動的に選択)の長さです。









重複排除アプリケーション



重複排除が可能な製品開発者のほとんどは、バックアップ市場に集中しています。 さらに、時間の経過とともに、バックアップには元のデータ自体の2〜3倍のスペースが必要になる場合があります。 したがって、ファイルの重複排除はバックアップ製品で長い間使用されてきましたが、特定の条件下では十分ではない場合があります。 ブロック重複排除を追加すると、ストレージの使用率が大幅に向上し、システムのフォールトトレランスの実現が容易になります。









重複排除を使用する別の方法は、本番システムのサーバーで重複排除を使用することです。 これは、OS自体、追加のソフトウェア、またはデータストレージ機器(SHD)を使用して実行できます。 これには、たとえばWindows 2008など、注意が必要です。データを重複排除できると位置付けられているOSはSISのみを実行します。 同時に、ストレージシステムはブロックレベルで重複排除を行うことができ、ユーザーのファイルシステムを拡張された(元の)形式で表示し、重複排除に関連するすべての詳細を隠します。 ストレージに4 GBのデータがあり、それらは最大2 GBまで重複排除されていると仮定します。 つまり、ユーザーがこのようなストレージにアクセスすると、4 GBのデータが表示され、バックアップに配置されるのはまさにそのようなボリュームになります。









関心の低下と高い期待



節約されたディスク領域の割合は、「バックアップファイルのサイズを95%削減する」といえば簡単に操作できる最も重要な領域です。 ただし、この比率の計算に使用されるアルゴリズムは、特定の状況に完全に関連するわけではありません。 考慮すべき最初の変数はファイルタイプです。 ZIP、CAB、JPG、MP3、AVIなどの形式はすでに圧縮されたデータであり、非圧縮データよりも重複排除係数が低くなります。 同様に重要なのは、重複排除のためのデータ変更の頻度とアーカイブされたデータの量です。 ファイルサーバー上の既存のデータを重複排除する製品を使用する場合、心配する必要はありません。 ただし、重複排除がバックアップシステムの一部として使用されている場合は、次の質問に答える必要があります。











重複排除は、特別な計算機を使用してオンラインで簡単に計算できますが、この方法では、特定の状況でそれがどうなるか想像できません。 ご覧のとおり、パーセンテージは多くの要因に依存し、理論的には95%に達しますが、実際には数パーセントにしか達することができません。









時間は私たちのすべてです



バックアップシステムの重複排除といえば、実行速度を知ることが重要です。 重複排除には主に3つのタイプがあります。











最初のタイプ:データソース側の重複排除


ソースデータがあるデバイス自体で実行されます。 バックアップ用にマークされたデータはブロックに分割され、それらのハッシュが計算されます。 ここには3つの潜在的な問題があります。







  1. 最初の問題は、ソースマシンのリソース関係していることです。 したがって、十分なプロセッサリソースとRAMリソースがあることを確認する必要があります。 すでにロードされているメールサーバーで重複排除を行う合理的な理由はありません。 もちろん、一部のメーカーは意思決定の容易さについて話しますが、これはソース環境のパフォーマンスが影響を受けるという事実を否定するものではなく、これは容認できない場合があります。
  2. 2番目の問題は、ハッシュテーブルを格納する方が良い場所ですか? ハッシュテーブルを同じソースサーバーまたはネットワーク上の集中サーバーに配置できます(グローバル重複排除を使用する場合はこれを行う必要があります)が、 このソリューションはネットワークに追加の負荷を作成します
  3. 短所にもかかわらず、ソース重複排除は、たとえば、インフラストラクチャに複数のサーバーがある小規模なITインフラストラクチャを持つ企業で使用する権利があり、グローバル重複排除を使用することは非合理的です。


ターゲット(または後処理)重複排除


すべてのコンピューターからのデータが単一のバックアップリポジトリに送信されるとします。 データが到着すると、リポジトリはこのデータのブロックを含むハッシュテーブルを作成できます。 この方法の最初の利点は、大量のデータであり、データプールが大きいほど、ハッシュテーブルが大きくなるため、同一のブロックが見つかる可能性が高くなります。 2番目の利点は、プロセス全体が生産的なネットワークの外側で行われることです。









ただし、このオプションはすべての問題を解決するわけではありません。 考慮すべき点がいくつかあります。





  1. 1つ目は、空き領域への依存です。 広範なインフラストラクチャがある場合、必要なスペースのサイズは非常に大きくなる可能性があります。
  2. また、ターゲット重複排除の2番目の欠点は、リポジトリのディスクサブシステムの厳密さです 。 通常、データは、ブロックに分割する前にリポジトリディスクに書き込まれる必要があります。その後、ハッシュと重複排除のプロセスが開始されます。 これにより、ディスクサブシステムがアーキテクチャのボトルネックになります。
  3. 3番目の欠点は、 各ハッシュ関数にハッシュ衝突の可能性があること 、つまり2つの異なるブロックに対して同じハッシュが計算される状況です。 これにより、元のデータが破損します。 これを防ぐには、衝突の可能性を最小限に抑えるハッシュアルゴリズムを選択する必要があります。これにより、計算能力がさらに必要になります。 通常、これは問題ではありません。ターゲットの重複排除では、この負荷を処理できるハードウェアが使用されるためです。 現代のハッシュ関数のハッシュ衝突の確率はかなり小さいと言わなければなりません。
  4. 4番目の潜在的な欠点は、「生産」からのデータの全量が 、ネットワークと生産システム自体に大きな負荷をかけることなく、ネットワーク介して送信されなければならないことです。 これは、システムに夜間またはその他の混雑していない時間を使用するか、このトラフィックを別のネットワークに分離することで解決できます(中規模および大規模企業では一般的です)。


トランジット重複排除


トランジット重複排除は、ソースからターゲットへのデータ転送中に発生するプロセスとして説明されます。 この用語は少しわかりにくいです。 データは、実際には「通信中」に重複排除されません。 実際、これは、ターゲットデバイスのRAMで収集されたデータがディスクへの書き込み操作の前にそこで重複排除されることを意味します。 これにより、方程式からドライブの検索時間が推測されます。 トランジットの重複排除は、ターゲットの重複排除の最良の形態と見なされる場合があります。 ハッシュプロセスのオフロードに加えて、データのグローバルビューのすべての利点がありますが、I / Oディスクが遅いという欠点の1つではありません。









ただし、それでも多くのネットワークトラフィックと潜在的なハッシュ衝突が発生します。 この方法では、リストされているすべての中で最大のコンピューティングリソース(プロセッサとメモリ)が必要です。









まとめ



重複排除テクノロジーは、ストレージシステムの購入コストを削減するのに役立ちます。 重複排除のタイプを慎重に選択します。 最終的に、重複排除により、企業は成長するデータを保存するコストを徐々に増やすことができます。









便利な資料



[1] オリジナル記事(英語)

[2] Veeamブログ記事: Windows Server 2012とVeeam Backup&Replicationで信じられないほどの重複排除結果を得る方法!

[3]ビデオ: MS Windows Server 2012およびVeeam Backup&Replication 6.5での重複排除のベストプラクティス

[4] Veeam Backup&Replicationの組み込みの圧縮と重複排除












All Articles