FlashCopy マッピング
マッピングは、ソース・ボリュームとターゲット・ボリュームの間の関係を定義します。
FlashCopy® 機能は、開始時にボリュームのインスタント・コピーを作成します。 ボリュームのインスタント・コピーを作成するには、まず最初にソース・ボリューム (コピーされるディスク) とターゲット・ボリューム (コピーを受け取るディスク) の間のマッピングを作成する必要があります。ソース・ボリュームとターゲット・ボリュームは同じサイズでなければなりません。
マッピングは、システム内の任意の 2 つのボリューム間で作成することができます。 これらのボリュームは、同じ入出力グループまたはプール内にある必要はありません。 FlashCopy 操作が開始されるとき、ソース・ボリュームのチェックポイントが作成されます。 操作の開始時点ではデータはコピーされません。 その代わりに、チェックポイントは、 ソース・ボリュームのどの部分もコピーされていないことを示すビットマップを作成します。 ビットマップ内の各ビットは、ソース・ボリュームの 1 つの領域を表します。各領域はグレーン と呼ばれます。
FlashCopy 操作が開始した後、ソース・ボリュームへの読み取り操作は続行して行われます。新しいデータがソースまたはターゲット・ボリュームに書き込まれる場合には、ソース上の既存のデータは、新しいデータがソースまたはターゲット・ボリュームに書き込まれる前に、ターゲット・ボリュームにコピーされます。ビットマップは更新されて、ソース・ボリュームのグレーンがコピーされたというマークが付けられ、後でそのグレーンに書き込み操作が行われたときにデータを再度コピーしないようにします。
ターゲット・ボリュームの読み取り操作時に、グレーンがコピーされたかどうかを判別するためにビットマップが使用されます。グレーンがコピーされていると、ターゲット・ボリュームからデータが読み取られます。グレーンがコピーされていないと、ソース・ボリュームからデータが読み取られます。
差分 FlashCopy マッピング
差分 FlashCopy では、初期マッピングでソース・ボリュームにあるすべてのデータをターゲット・ボリュームにコピーします。 これに続く FlashCopy マッピングでは、図 1 に示すように、初回の FlashCopy マッピング後に変更されたデータのみがコピーされます。このプロセスにより、独立した FlashCopy イメージの再作成に要する時間が短縮されます。 FlashCopy マッピングを作成するときに、 FlashCopy マッピングを「差分のみ」として定義することができます。

FlashCopy のパートナー・マッピング
既存の差分 FlashCopy マッピングをミラーリングするマッピングを作成することができます。 ペアになったマッピングはパートナー と呼ばれます。1 つのマッピングは、パートナーを 1 つしか持てません。 例えば、2 つのマッピング (ボリューム A から ボリューム B へのマッピング 0、 およびボリューム B からボリューム A へのマッピング 1) があるボリューム A とボリューム B がある場合、マッピング 0 とマッピング 1 はパートナーです。
差分 FlashCopy マッピングは、 変更の記録の場合のメタデータを共有します。 したがって、ミラーリングされたペア (協力関係) の一方のマッピングが差分である場合、 他方のマッピングは自動的に差分になり、削除されるまで差分のままになります。
カスケードされた FlashCopy マッピング
カスケード FlashCopy 機能では、図 2 に示すように、FlashCopy ターゲット・ ボリュームを別の FlashCopy マッピングのソース・ボリュームにすることができます。

カスケードに存在できるマッピングは、最大 256 です。 カスケード・マッピングと複数のターゲット・マッピングが使用される場合、最大 256 のマッピングのツリーが作成されます。
マルチターゲット FlashCopy マッピング
単一のソース・ボリュームから最大 256 のターゲット・ボリュームをコピーできます。 ソース・ボリュームとターゲット・ボリューム間の関係はそれぞれ、固有のマッピングによって管理され、1 つのボリュームが最大 256 のマッピングでソース・ボリュームになることができます。
1 つのソースからのマッピングは、それぞれ独立して開始し、終了することができます。 同じソースからの複数のマッピングが (コピー中状態または停止中状態で) アクティブな場合、それらのマッピング間には依存関係が存在します。
もう 1 つの例として、ボリューム A が属するマッピングがターゲット・ボリューム B が属するマッピングに依存する場合、ターゲット・ボリューム A はターゲット・ボリューム B に依存します。 ソース・ボリュームから最も新しく開始されたマッピングのターゲット・ボリュームは、作成されるソースのコピーが完全な状態になるまで (進行状況が 100% になるまで) ソース・ボリュームに依存します。
消去率、コピー率、および自動削除
消去率を使用すると、マッピングが停止中状態にある時間を最小限に抑えることができます。 マッピングが完了しなかった場合、ターゲット・ボリュームは、マッピングが停止する間オフラインになります。 ターゲット・ボリュームは、マッピングの再開まではオフライン状態を続けます。
マッピングを作成する場合にもコピー率を指定できます。 マッピングがコピー中状態の場合は、コピー率はバックグラウンド・コピー処理に与えられる優先順位を決定します。 マッピングを削除しても、依然ターゲット・ボリュームからアクセスできるようにするために、ソース・ボリューム全体のコピーが必要な場合は、ソース・ボリューム上にあるデータすべてをターゲット・ボリュームにコピーする必要があります。
消去率およびコピー率のデフォルト値は、ともに 50 です。
コピー率がゼロより大きい場合、マッピングが開始されると、未変更のデータがターゲット・ボリュームにコピーされます。データがコピーされたことを示すためにビットマップが更新されます。 しばらくすると (その長さは、コピー率によって決定された優先順位と、ボリュームのサイズによって異なります)、ボリューム全体がターゲットにコピーされます。 マッピングは idle_or_copied 状態に戻るので、いつでもマッピングを再開してターゲットに新規コピーを作成できます。
マッピングがコピー中状態の間は、コピー率をゼロにし、消去率をゼロ以外の値に設定して、マッピングが停止中状態にある時間を最小限に抑えることができます。
マルチターゲット・マッピングを使用する場合、ソース・データがすべてターゲットにコピーされた (進行状況表示が 100% になった) 後でも、マッピングがコピー中状態のままになることがあります。 この状態は、以前に開始されて同じソース・ディスクを使用していたマッピングが、まだ 100% コピー済みになっていない場合に起こります。
コピー率がゼロの場合は、ソース上で変更されたデータのみがターゲットにコピーされます。 ソースですべてのエクステントが上書きされない限り、ターゲットには、ソース全体のコピーは決して入りません。 ソースの一時コピーが必要なときは、このコピー率を使用できます。
マッピングは、任意の時点で停止できます。ただし、ターゲット・ボリュームにソース・ボリュームの完全なコピーが既に入っていない限り、マッピングが停止すると、ターゲットは不整合になり、ターゲット・ボリュームはオフラインになります。ターゲット・ボリュームは、マッピングの再開まではオフライン状態を続けます。
autodelete 属性を設定することもできます。 この属性がオンに設定されると、マッピングが idle_or_copied 状態に達し、進行状況が 100% になると、マッピングが自動的に削除されます。
FlashCopy マッピングの状態
- ソースとターゲットのボリュームは、両者間にマッピングが存在していても、
独立したボリュームとして動作します。 読み取りと書き込みのキャッシングは、ソースとターゲットの両方のボリュームで実行できます。
差分によるマッピングで、バックグラウンド・コピーが完了している場合、マッピングが記録するのは、ソース・ボリュームとターゲット・ボリューム間の差分のみです。 マッピングの割り当て先である入出力グループ内の両方のノードへの接続が失われると、ソース・ボリュームおよびターゲット・ボリュームはオフラインになります。
- コピーが進行中です。 読み取りと書き込みのキャッシングは、ソース・ボリュームとターゲット・ボリュームで実行できます。
- マッピングを開始する準備ができています。 ターゲット・ボリュームはオンラインですが、アクセスできません。 ターゲット・ボリュームは読み取りキャッシングまたは書き込みキャッシングを実行できません。 読み取りキャッシングおよび書き込みキャッシングは、ハードウェア・エラーとして SCSI フロントエンドで失敗します。 差分によるマッピングで、前のマッピングが完了している場合、マッピングが記録するのは、ソース・ボリュームとターゲット・ボリューム間の差分のみです。 マッピングの割り当て先である入出力グループ内の両方のノードへの接続が失われると、ソース・ボリュームおよびターゲット・ボリュームはオフラインになります。
- ターゲット・ボリュームはオンラインですが、アクセス不能です。 ターゲット・ボリュームは読み取りキャッシングまたは書き込みキャッシングを実行できません。 読み取りキャッシングおよび書き込みキャッシングは、ハードウェア・エラーとして SCSI フロントエンドで失敗します。 キャッシュから、ソース・ボリュームに対するすべての変更された書き込みデータがフラッシュされます。 ターゲット・ボリュームの読み取りまたは書き込みデータは、キャッシュから廃棄される。 差分によるマッピングで、前のマッピングが完了している場合、マッピングが記録するのは、ソース・ボリュームとターゲット・ボリューム間の差分のみです。 マッピングの割り当て先である入出力グループ内の両方のノードへの接続が失われると、ソース・ボリュームおよびターゲット・ボリュームはオフラインになります。
- ユーザーが停止コマンドを出したか、入出力エラーが発生したために、マッピングが停止しました。 ターゲット・ボリュームはオフラインで、そのデータは失われました。 ターゲット・ボリュームにアクセスするには、このマッピングを再開するか、削除する必要があります。 ソース・ボリュームはアクセス可能であり、読み取りおよび書き込みのキャッシュは使用できます。 差分によるマッピングの場合、マッピングは、ソース・ボリュームへの書き込み操作を記録します。 マッピングの割り当て先である入出力グループ内の両方のノードへの接続が失われると、ソース・ボリュームおよびターゲット・ボリュームはオフラインになります。
- マッピングは別のマッピングへデータをコピー中です。
- マッピングは開始されましたが、完了しませんでした。 メタデータへのアクセスが失われたため、ソース・ボリュームとターゲット・ボリュームは両方ともオフラインになります。 メタデータのアクセスが回復すると、マッピングはコピー中状態または停止中状態に戻り、ソース・ボリュームとターゲット・ボリュームはオンラインに戻ります。 バックグラウンド・コピー・プロセスが再開されます。 中断前にデータがフラッシュされておらず、ソース・ボリュームまたはターゲット・ボリュームに書き込まれていた場合、そのデータはマッピングが中断状態を脱するまでキャッシュに入れられています。
整合性グループを使用しない場合、システムではマッピングを独立したエンティティーとして扱うことができます。この場合、マッピングはスタンドアロン・マッピングとして認識されます。このような方法で構成されたマッピングでは、prestartfcmap コマンドと startfcmap コマンドの代わりに prestartfcconsistgrp コマンドと startfcconsistgrp コマンドを使用します。
FlashCopy のマッピング修復
マッピングは、状態が idle_copied、stopped、または copying の別のアクティブ・マッピングのソース・ボリュームであるターゲット・ボリュームを使用して開始できます。 マッピングが copying 状態の場合、startfcmap コマンドと prestartfcmap コマンドに restore パラメーターが必要です。FlashCopy ソース・ボリュームの内容の復元は、 同じ FlashCopy マッピングまたは 別の FlashCopy マッピングのターゲットを使用して、 マッピングが活動停止になるのを待たずに、また、 その他の FlashCopy ターゲット・ボリュームの内容を失わずに、行うことができます。
Veritas Volume Manager
FlashCopy ターゲット・ボリュームの場合、ターゲット・ボリュームがソース・ボリュームの正確なイメージになる可能性があるマッピング状態では、 システムによって照会データに 1 つのビットが設定されます。このビットを設定すると、Veritas Volume Manager は、 ソースとターゲットのボリュームを区別できるようになり、 その両方へ独立したアクセスができるようになります。