レプリケーションにはどのようなメリットがあり、どのような欠点があるのか。スナップショットとは何が違うのか。バックアップは不要になるのか。同期/非同期レプリケーションの真価を検討する。
バックアップ、スナップショット、クローン、レプリケーションはいずれもデータ保護に役立つ手段だ。前編(Computer Weekly日本語版 6月17日号掲載)では、スナップショットについて詳しく解説した。
今回は、特にストレージアレイ間のレプリケーションを取り上げる。重要なのは、他のデータ保護手法との比較の中でレプリケーションを定義し、その長所と短所を示すことだ。
IT業界では、ある技術が厳密にどのようなもので、何を行うかという点が明確にされないことがあまりにも多い。重要なのは何を行うかだ。それは、さまざまな技術がどのように機能するかで各技術の組み合わせ方が決まるからだ。
レプリケーションは、基本的にはストレージのクローンを作成する方法だ。つまりドライブ、ボリューム、論理ユニット番号(LUN)などのレプリカを作成する。ほとんどの場合、正確なコピーを用意するのが目標だ。レプリカはある瞬間のコピーになることもあれば、最終結果のコピーになることもある。
クローンやレプリカとスナップショットが異なるのは、スナップショットはほとんどの場合、構造を変える何らかのプロセスが実行された後でなければ使えるレプリカにならない点にある。つまりスナップショットは、ドライブやボリュームのオリジナルコピーと、それに対する更新で構成される。場合によっては削除されたブロックもその構成に含まれる。過去のある時点の正確なコピーを作成するためには、削除されたブロックを再度組み込まなければならないからだ。
スナップショットは、再構築とロールバックを迅速に行えるようにすることが目的だ。だが、ソースメディアの代わりとして使えるコピーが存在するわけではない。これに対して、使えるコピーとして機能するのがクローンやレプリカだ。
最もシンプルなクローン/レプリカは、開発者が何らかのテストクエリを実行するデータベースを必要とする場合に作られる。運用環境のデータベースの正確なクローンを作成することで、テストに必要なデータを得ることができる。このクローンは、それが作成された時点のデータベースの正確なレプリカだ。レプリカの作成以降にオリジナルのデータベースに加えられた変更は、このクローンには反映されない。
使える有効なクローンを作成するという点で対極にあるのが同期レプリケーションだ。同期レプリケーションは、2つ以上のストレージにできる限りほぼ同時にデータを書き込むことで、臨機応変にフェイルオーバーできるコピーを用意する。
これは明らかにコストと技術的な複雑さの点で高くつき、制約も伴う。だが、レプリケーションを話題にする場合はこの同期レプリケーションを意味することが多い。
レプリケーションはバックアップの代わりになるだろうか。前編でも少し触れたように、端的に言えば代わりにはならない。バックアップとレプリケーションは(恐らくスナップショットも)、相互に補完し合う関係だ。
レプリケーションはほぼ連続的に行う可能性があり、リアルタイムに近いコピーを作成する。そのため、破損したファイルやマルウェアに感染したファイルのレプリカも作成する恐れがある。この場合、ロールバックするバージョンが必要になる。
それをスナップショットから取り出すことは可能だ。だがそれには基盤となるバックアップが必要だ。レプリケーションはコストが高くつくことが多いため、全データをバックアップし、同時に一部の特定のデータセットだけレプリケーションする場合もある。
同期レプリケーションは、プライマリーサイトのキャッシュにデータがヒットするや否や、そのデータをセカンダリーサイトに書き込む。セカンダリーサイトがデータを受け取ると、プライマリーサイトのストレージと変更を指示したホストに確認応答を送信する。可能な限りほぼ同時に複数のコピーを書き込むのが同期レプリケーション手法だ。
同期レプリケーションの多くは、ハイエンドブロックストレージアレイの保護に使われる。
非同期レプリケーションは、プライマリーサイトにデータが書き込まれた時点でホストに確認応答を送信する。次に、その書き込みがセカンダリーサイトに送られ、セカンダリーサイトはその書き込みについての確認応答をプライマリーサイトに返す。
非同期レプリケーションはiSCSIストレージやNASなど、広範なストレージ製品で利用されている。
遠距離レプリケーションでは100マイル(約160キロ)ごとに約1ミリ秒の遅延が発生する。そのため、往復距離が数百マイルを超すことを推奨しないサプライヤーが多い。
こうした違いにより、同期レプリケーションの方がアプリケーションのパフォーマンスへの影響が大きくなる。同期レプリケーションは次の入出力(I/O)を実行する前に確認応答が必要になる。非同期レプリケーションではローカルで確認応答が行われるため、次の変更を実行できる。ただしデータの移動は遅れる。当然、2つのデータセットに差異がある時間が長くなる。
実際のレプリケーション戦略では、同期レプリケーションと非同期レプリケーションを併用することが多い。REDOログなど、アプリケーションの最も重要な要素に同期レプリケーションを利用し、復旧の可能性はあっても重要性が低いデータには非同期レプリケーションを利用する。これらにスナップショットを加えることもできる。だが、いずれの方法でも基盤となる定期バックアップが必要になる。
今回は、ストレージアレイでの同期レプリケーションと非同期レプリケーションの違いを主に取り上げた。
レプリケーションには他の形式も存在する。例えば、次のような形式だ。
個別のアプリケーション、データベース、サーバ全体などのサーバ間レプリケーション
ハイパーバイザーレベルで管理され、個別の仮想マシンや仮想ストレージなどの要素で構成されるレプリケーション
1つ以上のクラウドをターゲットにするレプリケーションや、クラウド間のレプリケーション
データを複数の遠隔地に保存するレプリケーション。それぞれの距離は非常に遠くなる場合がある。災害復旧や可用性向上などが目的になる。このような遠距離レプリケーションは同期されないものが多い。
Copyright © ITmedia, Inc. All Rights Reserved.
ハロウィーンの口コミ数はエイプリルフールやバレンタインを超える マーケ視点で押さえておくべきことは?
ホットリンクは、SNSの投稿データから、ハロウィーンに関する口コミを調査した。
なぜ料理の失敗写真がパッケージに? クノールが展開する「ジレニアル世代」向けキャンペーンの真意
調味料ブランドのKnorr(クノール)は季節限定のホリデーマーケティングキャンペーン「#E...
業界トップランナーが語る「イベントDX」 リアルもオンラインも、もっと変われる
コロナ禍を経て、イベントの在り方は大きく変わった。データを駆使してイベントの体験価...