(57)【要約】  ミラー・ボリューム内の不一致を検出するための装置、システム、および方法が開示される。受信モジュールは１次記憶システムからの開始標識を受信する。開始標識は２次記憶システム内のトラック上で変更すべき第１のブロックの開始位置を含む。第１のブロックは１次記憶システム内の変更済みレコードの同一位置の第１のブロックに対応する。１次記憶システムおよび２次記憶システム上のトラックはそれぞれ不正規カウント・キー・データ（「ＣＫＤ」）トラックを含む。比較モジュールは、開始標識によって示された第１のブロック位置をトラック・メタデータ内にリストされたブロック位置と比較する。トラック・メタデータは２次記憶システムの不正規ＣＫＤトラック上のユーザ・レコードを記述する。警報モジュールは、第１のブロックが２次記憶システム上のあるレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生する。【選択図】  図１
2010510564.tif 000002
【特許請求の範囲】
【請求項１】
ミラー・ボリューム内の不一致を検出するための装置であって、
１次記憶システムからの開始標識を２次記憶システムで受信するように構成された受信モジュールであって、前記開始標識が前記２次記憶システム内のデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含み、前記２次記憶システムの前記第１のブロックが前記１次記憶システム内のデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応し、前記１次記憶システムおよび前記２次記憶システム上の前記トラックがそれぞれ不正規カウント・キー・データ（「ＣＫＤ」）トラックを含む、受信モジュールと、
前記開始標識によって示された前記第１のブロックの位置をトラック・メタデータ内にリストされたブロック位置と比較するように構成された比較モジュールであって、前記トラック・メタデータが前記２次記憶システムの前記不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する、比較モジュールと、
前記トラック・メタデータ内に示される、前記開始標識によって示された前記第１のブロックが前記２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生するように構成された警報モジュールと、
を含む前記装置。
【請求項２】
前記受信モジュールがさらに前記１次記憶システムからブロック標識を受信し、前記ブロック標識が変更すべき前記２次記憶システム上の同一位置のブロックに対応する前記１次記憶システムの前記少なくとも１つの変更済みレコードによって占有されたブロックの量を含み、
前記比較モジュールがさらに、前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべきブロックを、前記トラック・メタデータ内にリストされたブロック位置と比較し、
前記警報モジュールがさらに、前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべき前記ブロックのうちの終了ブロックが、前記トラック・メタデータ内に示される、前記２次記憶システム上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生する、請求項１記載の装置。
【請求項３】
前記開始標識および前記ブロック標識がビットマップを含む、請求項２記載の装置。
【請求項４】
前記ブロック標識によって示される前記ブロックの量がさらに、前記変更済みレコードが非順次である場合に、前記２次記憶システムにコピーすべき前記１次記憶システム上の複数の変更済みレコードに関するブロック位置に対応する前記２次記憶システムの前記データ記憶装置の前記トラック上の非連続ブロックの位置および量を表す、請求項２または３記載の装置。
【請求項５】
前記警報モジュールが前記変更済みレコードに対応する受信された開始標識に関する警報を発生しなかったことに応答して、前記１次記憶システム上の前記少なくとも１つの変更済みレコードを前記２次記憶システム上の同一位置にコピーするように構成されたコピー・モジュールをさらに含む、請求項１、２、３、または４記載の装置。
【請求項６】
１つのブロックが、１つのセクタ、複数セクタのクラスタ、複数バイトのグループ、および複数ビットのグループのうちの１つを含む、請求項１ないし５のいずれかに記載の装置。
【請求項７】
前記トラック・メタデータがキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）を含む、請求項１ないし６のいずれかに記載の装置。
【請求項８】
前記警報モジュールによって発生された警報に応答して、前記２次記憶システム内の前記データ記憶装置へのレコードのコピーを停止するように構成されたコピー停止モジュールをさらに含む、請求項１ないし７のいずれかに記載の装置。
【請求項９】
前記警報に応答して前記１次記憶システムに通知を送信するように構成された通知モジュールであって、前記通知が前記２次記憶システムへのレコードの送信を停止するためのメッセージを含む通知モジュールをさらに含む、請求項１ないし８のいずれかに記載の装置。
【請求項１０】
前記２次記憶システムが、前記１次記憶システムのデータ記憶装置上のデータのミラー・コピーを保管するように構成される、請求項１ないし９のいずれかに記載の装置。
【請求項１１】
ミラー・ボリューム内の不一致を検出するためのシステムであって、
コンピュータ・ネットワークと、
不正規カウント・キー・データ（「ＣＫＤ」）トラックによって構成された少なくとも１つのデータ記憶装置を有する１次記憶システムと、
前記コンピュータ・ネットワークにより前記１次記憶システムと通信状態にある２次記憶システムであって、前記１次記憶システムのデータ記憶装置上のデータのミラー・コピーを保管するように構成され、不正規ＣＫＤトラックによって構成された少なくとも１つのデータ記憶装置を含む２次記憶システムとを含み、前記２次記憶システムが、
前記１次記憶システムからの開始標識を前記２次記憶システムで受信するように構成された受信モジュールであって、前記開始標識が前記２次記憶システム内の不正規ＣＫＤトラックを有するデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含み、前記２次記憶システムの前記第１のブロックが前記１次記憶システム内の不正規ＣＫＤトラックを有するデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応する、受信モジュールと、
前記開始標識によって示された前記第１のブロックの位置をトラック・メタデータ内にリストされたブロック位置と比較するように構成された比較モジュールであって、前記トラック・メタデータが前記２次記憶システムの前記不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する、比較モジュールと、
前記トラック・メタデータ内に示される、前記開始標識によって示された前記第１のブロックが前記２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生するように構成された警報モジュールと、
を含む、前記システム。
【請求項１２】
前記受信モジュールがさらに前記１次記憶システムからブロック標識を受信し、前記ブロック標識が変更すべき前記２次記憶システム上の同一位置のブロックに対応する前記１次記憶システムの前記少なくとも１つの変更済みレコードによって占有されたブロックの量を含み、
前記比較モジュールがさらに、前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべきブロックを、前記トラック・メタデータ内にリストされたブロック位置と比較し、
前記警報モジュールがさらに、前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべき前記ブロックのうちの終了ブロックが、前記トラック・メタデータ内に示される、前記２次記憶システム上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生する、請求項１１記載のシステム。
【請求項１３】
前記１次記憶システムおよび前記２次記憶システムがピアツーピア・リモート・コピー（「ＰＰＲＣ」）システムの一部である、請求項１１または１２記載のシステム。
【請求項１４】
ミラー・ボリューム内の不一致を検出するための方法であって、
１次記憶システムからの開始標識を２次記憶システムで受信するステップであって、前記開始標識が前記２次記憶システム内のデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含み、前記２次記憶システムの前記第１のブロックが前記１次記憶システム内のデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応し、前記１次記憶システムおよび前記２次記憶システム上の前記トラックがそれぞれ不正規カウント・キー・データ（「ＣＫＤ」）トラックを含む前記受信するステップと、
前記開始標識によって示された前記第１のブロックの位置をトラック・メタデータ内にリストされたブロック位置と比較するステップであって、前記トラック・メタデータが前記２次記憶システムの前記不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述するステップと、
前記トラック・メタデータ内に示される、前記開始標識によって示された前記第１のブロックが前記２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生するステップと、
を含む前記方法。
【請求項１５】
前記１次記憶システムからブロック標識を受信するステップであって、前記ブロック標識が変更すべき前記２次記憶システム上の同一位置のブロックに対応する前記１次記憶システムの前記少なくとも１つの変更済みレコードによって占有されたブロックの量を含む前記受信するステップと、
前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべきブロックを、前記トラック・メタデータ内にリストされたブロック位置と比較するステップと、
前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべき前記ブロックのうちの終了ブロックが、前記トラック・メタデータ内に示される、前記２次記憶システム上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生するステップと、
をさらに含む、請求項１４記載の方法。
【請求項１６】
前記開始標識および前記ブロック標識がビットマップを含む、請求項１５記載の方法。
【請求項１７】
前記ブロック標識によって示される前記ブロックの量がさらに、前記変更済みレコードが非順次である場合に、前記２次記憶システムにコピーすべき前記１次記憶システム上の複数の変更済みレコードに関するブロック位置に対応する前記２次記憶システムの前記データ記憶装置の前記トラック上の非連続ブロックの位置および量を表す、請求項１５または１６記載の方法。
【請求項１８】
前記変更済みレコードに対応する受信された開始標識に関する警報が発生されなかったことに応答して、前記１次記憶システム上の前記少なくとも１つの変更済みレコードを前記２次記憶システム上の同一位置にコピーするステップ
をさらに含む、請求項１４、１５、１６、または１７記載の方法。
【請求項１９】
１つのブロックが、１つのセクタ、複数セクタのクラスタ、複数バイトのグループ、および複数ビットのグループのうちの１つを含む、請求項１４ないし１８のいずれかに記載の方法。
【請求項２０】
前記トラック・メタデータがキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）を含む、請求項１４ないし１９のいずれかに記載の方法。
【請求項２１】
発生された警報に応答して、前記２次記憶システム内の前記データ記憶装置へのレコードのコピーを停止するステップ
をさらに含む、請求項１４ないし２０のいずれかに記載の方法。
【請求項２２】
前記警報に応答して前記１次記憶システムに通知を送信するステップであって、前記通知が前記２次記憶システムへのレコードの送信を停止するためのメッセージを含むステップ
をさらに含む、請求項１４ないし２１のいずれかに記載の方法。
【請求項２３】
前記２次記憶システムが、前記１次記憶システムのデータ記憶装置上のデータのミラー・コピーを保管するように構成される、請求項１４ないし２２のいずれかに記載の方法。
【請求項２４】
ミラー・ボリューム内の不一致を検出するためにプログラミングされたコンピュータ使用可能プログラム・コードを有するコンピュータ可読媒体を含むコンピュータ・プログラムであって、前記コンピュータ・プログラムの動作が、
１次記憶システムからのビットマップを２次記憶システムで受信するステップであって、前記ビットマップが前記１次記憶システム上の不正規カウント・キー・データ（「ＣＫＤ」）トラック上の少なくとも１つの変更済みレコードのセクタに相関するビットを含み、前記少なくとも１つの変更済みレコードが前記２次記憶システム上の対応する不正規ＣＫＤトラック上の同一位置にコピーする予定のものである前記受信するステップと、
前記ビットマップ内に示されたセクタ位置を、前記２次記憶システム上のキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）内にリストされた対応するセクタ位置と比較するステップと、
前記ビットマップ内に示される、前記少なくとも１つのレコードの開始セクタが、前記ＣＲＣＢ内に示される、前記２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するステップと、
を含む、前記コンピュータ・プログラム。
【請求項２５】
前記ビットマップ内に示される、前記少なくとも１つのレコードの終了セクタが、前記ＣＲＣＢ内に示される、前記２次記憶システム上のレコードの終了セクタに位置合わせしていないことに応答して、警報を発生するステップをさらに含む、請求項２４記載のコンピュータ・プログラム。
【請求項２６】
開始セクタからそのトラックの終わりまでのデータを消去する書き込みフォーマット・コマンドの一部として、不正規ＣＫＤトラック内の開始セクタ位置およびゼロを含むビットマップを受信するステップをさらに含み、前記ビットマップ内に示された前記セクタ位置を、前記ＣＲＣＢ内にリストされた対応するセクタ位置と比較する前記ステップが、前記開始セクタ位置を前記ＣＲＣＢ内の対応するセクタ位置と比較するステップを含み、警報を発生する前記ステップが、前記ＣＲＣＢ内に示される、前記開始セクタが前記２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するステップを含む、請求項２４または２５記載のコンピュータ・プログラム。
【請求項２７】
前記警報に応答してエラーを生成するステップをさらに含む、請求項２４、２５、または２６記載のコンピュータ・プログラム。
【請求項２８】
ミラー・ボリューム内の不一致を検出するための方法であって、
１次記憶システム上の不正規カウント・キー・データ（「ＣＫＤ」）トラック上の少なくとも１つのレコードによって占有されたセクタに相関するビットを含むビットマップを生成するステップであって、前記少なくとも１つのレコードが２次記憶システムの不正規ＣＫＤトラック上の同一位置にコピーする予定のものである前記生成するステップと、
前記ビットマップを前記２次記憶システムに送信するステップとを含み、
前記２次記憶システムが、前記ビットマップ内に示されたセクタ位置を、前記２次記憶システム上のキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）内にリストされた対応するセクタ位置と比較するように構成され、
さらに、前記ビットマップ内に示される、前記少なくとも１つのレコードの開始セクタが、前記ＣＲＣＢ内に示される、前記２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するように構成される、
前記方法。
【請求項２９】
前記２次記憶システムがさらに、前記ビットマップ内に示される、前記少なくとも１つのレコードの終了セクタが、前記ＣＲＣＢ内に示される、前記２次記憶システム上のレコードの終了セクタに位置合わせしていないことに応答して、警報を発生するように構成される、請求項２８記載の方法。
【請求項３０】
前記２次記憶システムから警報を受信したことに応答して、前記２次記憶システムへのレコードのコピーの送信を停止するステップをさらに含む、請求項２８または２９記載の方法。
【請求項３１】
コンピュータ上で実行されたときに請求項１４ないし２３または請求項２８ないし３０のいずれかに記載の方法を実行するように適合されたプログラム・コード手段を含む、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ミラー・ボリューム内の不一致を検出することに関し、詳細には、可変長レコードを有するカウント・キー・データ（「ＣＫＤ：count key data」）トラックを含むデータ記憶装置のミラー・ボリューム内の不一致を検出することに関する。
【背景技術】
【０００２】
多くの場合、機密データは、高度の信頼性を有するデータ記憶システムを必要とする。コンピューティング・システムは、ホストからのデータを保管するための１次システムと、１次記憶システムのデータのバックアップ・コピーを含む２次システムとを含む場合が多い。ミラー・ボリュームは、典型的には、１次ボリュームのデータと同一になる予定のデータのバックアップ・コピーを提供し、障害の場合に１次ボリュームの代わりに使用するか、またはバックアップ・データで１次ボリュームを最初期設定するためのデータのソースとして使用することができる。ピアツーピア・リモート・コピー（「ＰＰＲＣ：peer-to-peer remote copy」）は、典型的には、リモート・サイトの２次記憶ボリューム上のデータをミラーリングするために使用されるプロトコルである。ＩＢＭ（Ｒ）のＧｌｏｂａｌ  Ｍｉｒｒｏｒ、Ｇｌｏｂａｌ  Ｃｏｐｙ、およびＭｅｔｒｏ  Ｍｉｒｒｏｒの製品は、ピアツーピア・リモート・コピー・プロトコルの例である。（ＩＢＭは、米国、その他の国、またはその両方におけるインターナショナル・ビジネス・マシーンズ社の登録商標である。）
【０００３】
ＰＰＲＣまたはその他のミラー・ボリュームが初期設定されると、システムは、２次記憶システムがミラーリングすべき１次ボリュームの現行コピーを収容しているとシステム管理者が確信しているときに２次記憶システム上のデータの初期コピーの作成を迂回するオプションを含むことができる。２次記憶システム上のミラー・ボリュームが１次記憶システム上の１次ボリュームの完全なコピーである場合、システムが初期設定された後、ミラー・ボリュームは、更新が１次にコピーされた通りに更新を２次にコピーすることにより、最新状態を保持することができる。しかし、１次ボリュームの初期コピーを受信せずにミラー・ボリュームが初期設定され、ミラー・ボリュームが１次ボリュームの同一コピーではない場合、ミラー・ボリュームへの更新により、データ破損およびその他のシステム・エラーが発生する可能性がある。１つの更新は、１つまたは複数のファイルを含む場合もあれば、変更された１つまたは複数のファイルの一部分のみを含む場合もある。１つのファイルまたは更新は１つまたは複数のレコードを含むことができる。
【０００４】
破損データは、更新がミラー・ボリューム上のデータ・トラックにコピーされ、その更新がレコード境界に位置合わせしていない場合に、問題になる可能性がある。たとえば、コンピューティング・システムが可変長レコードを有するＣＫＤトラックを使用してフォーマットされたトラックを含み、１次ボリュームとミラー・ボリュームが同一ではない場合、１次ボリューム上の特定のレコードまたはレコード・グループへの更新は、ミラー・ボリューム上のレコードに位置合わせしない可能性がある。ミラー・ボリュームに更新をコピーすると、その更新によってコピーされたミラー・ボリューム上のレコードを破損する恐れがあり、エラーを引き起こす恐れがある。１次ボリュームおよびミラー・ボリューム上のデータの不一致によって引き起こされたエラーは、重大である可能性があり、２次システムが使用不能になるかまたはリブートすることを要求する可能性があり、高い信頼性を必要とするシステムでは非常に望ましくないものである。
【０００５】
ＩＢＭによるＴｏｔａｌＳｔｏｒａｇｅ（Ｒ）のＤＳ８０００（ＴＭ）シリーズ（モデル２１０７）、ＤＳ６０００（ＴＭ）シリーズ（モデル１７５０）、およびＥｎｔｅｒｐｒｉｓｅ  Ｓｔｏｒａｇｅ  Ｓｅｒｖｅｒ（ＴＭ）（「ＥＳＳ」）（モデル２１０５）記憶システムは、いずれも、可変長レコードを有するＣＫＤトラックを使用してフォーマットされた、ハード・ディスク・ドライブなどのデータ記憶装置を有するシステムの例である。ＩＢＭのＦｉｂｅｒ  Ｃｏｎｎｅｃｔｉｖｉｔｙ（「ＦＩＣＯＮ」（ＴＭ））およびＥｎｔｅｒｐｒｉｓｅ  Ｓｙｓｔｅｍ  Ｃｏｎｎｅｃｔｉｏｎ（「ＥＳＣＯＮ」（ＴＭ））プロトコルは、可変長レコードを有するＣＫＤトラックを使用するプロトコルの例である。ＩＢＭのシステムｚ（ＴＭ）およびシステム／３９０（Ｒ）コンピュータは、可変長レコードを有するＣＫＤトラックに対して対話するためにＦＩＣＯＮおよびＥＳＣＯＮプロトコルを使用するプロセッサの例である。ＣＫＤトラックを有するハード・ディスク・ドライブは、ＣＫＤトラックがユーザによって定義された長さのレコードを有する可能性があるという点で、現在、一般的に使用されている典型的な固定ブロック長トラックとは異なる。各レコードは、カウント・フィールドと、任意選択のキー・フィールドと、任意選択のデータ・フィールドとを含む。カウント・フィールドは、レコードのキー・フィールドおよびデータ・フィールドの長さに関する情報を含む。（ＴｏｔａｌＳｔｏｒａｇｅ、システムｚ、およびシステム／３９０は、米国、その他の国、またはその両方におけるインターナショナル・ビジネス・マシーンズ社の商標（ＴＭ）または登録商標（Ｒ）である。）
【０００６】
ＣＫＤトラックは、正規の場合もあれば、不正規の場合もある。正規トラックを有するディスクは、トラック上の各レコードについて同じ長さであるＣＫＤフィールドを有するレコードを含む。正規トラックは、特定のトラックに割り当てられたＣＫＤフィールド長を記述するＴｒａｃｋ  Ｆｏｒｍａｔ  Ｄｅｓｃｒｉｐｔｏｒ（「ＴＦＤ」）メタデータによって記述することができる。ＴＦＤメタデータは、トラック上の特定のレコードの位置を突き止めるために使用することができる。また、１次記憶システムおよび２次記憶システム上のデータ・フォーマットの不一致が存在するかどうかを判別するために、ＴＦＤを更新とともに送信し、２次データ・システム上のＴＦＤと比較することもできる。典型的には、１つのレコードは、整数個のセクタを占有する。
【０００７】
不正規トラックは、トラック上で可変長のＣＫＤフィールドを有するレコードを含む。たとえば、不正規ＣＫＤトラックは、６つのセクタからなる他のレコードに隣接する、４つのセクタからなる１つのレコードを含むことができる。不正規ＣＫＤトラック内の各レコードは異なる長さになる可能性があり、１つのＴＦＤは１つのキー・フィールド長と１つのデータ・フィールド長のみを記述するので、すべてのレコードを記述するには１つのＴＦＤでは不十分である。正規ＣＫＤトラックの場合、トラック上のすべてのキー・フィールドが同じ長さであり、トラック上のすべてのデータ・フィールドが同じ長さであるので、１つのＴＦＤで十分である。不正規ＣＫＤトラックの場合、各レコードのフィールド・サイズを記述するメタデータを使用して、レコード位置およびサイズを記述する。このメタデータは、不正規ＣＫＤトラックを有するディスクの各トラックのセクタ０にキャッシュ・レコード制御ブロック（「ＣＲＣＢ：cache record control block」）が置かれる形になる可能性がある。典型的には、レコード０は、固定長、通常は４８バイトであり、各トラックのセクタ０の一部分を占有する。ＣＲＣＢは、典型的には、セクタ０の未使用部分を占有するテーブルであり、トラック上の各レコードのキー・フィールドおよびデータ・フィールドの開始セクタおよびサイズなどの情報を含む。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ＣＲＣＢは、１次ボリューム上のレコードがミラー・ボリューム上のレコードに位置合わせしているかどうかを検出するために十分な情報を含む。しかし、ミラー・ボリュームを含む２次記憶システムに対して更新とともにＣＲＣＢを送信することは、ＣＲＣＢのサイズならびにＣＲＣＢの送信によって引き起こされる関連パフォーマンスの低下のために望ましくないことである。加えて、ＣＲＣＢを送信すると、たとえば、２次記憶システムがＣＲＣＢを予期しておらず、更新とともにＣＲＣＢを受信した場合に、互換性の問題を引き起こす可能性もある。
【課題を解決するための手段】
【０００９】
第１の態様によれば、ミラー・ボリューム内の不一致を検出するための装置が提供され、この装置は、１次記憶システムからの開始標識（start indicator）を２次記憶システムで受信するように構成された受信モジュールであって、開始標識が２次記憶システム内のデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含み、２次記憶システムの第１のブロックが１次記憶システム内のデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応し、１次記憶システムおよび２次記憶システム上のトラックがそれぞれ不正規カウント・キー・データ（「ＣＫＤ」）トラックを含む受信モジュールと、開始標識によって示された第１のブロック位置をトラック・メタデータ内にリストされたブロック位置と比較するように構成された比較モジュールであって、トラック・メタデータが２次記憶システムの不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する比較モジュールと、トラック・メタデータ内に示される、開始標識によって示された第１のブロックが２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生するように構成された警報モジュールとを含む。
【００１０】
好ましくは、不正規データ・トラックを有する１次記憶システムおよび２次記憶システムに関するデータ・ボリューム不一致を検出するための装置、システム、および方法が提供される。有利なことに、このような装置、システム、および方法は、好ましくは、１次記憶システムから２次記憶システムに送信された更新に含まれるレコードが、その更新が２次記憶システムにコピーされる位置にあるレコードと互換性があるかどうかを判別する効率的な手段を提供することになるであろう。
【００１１】
好ましくは、当技術分野の上述の短所の多くまたは全部を克服する、ミラー・ボリューム内の不一致を検出するための装置、システム、および方法が提供される。
【００１２】
ミラー・ボリューム内の不一致を検出するためのこの装置には、好ましくは、データ不一致を識別し、警報を発生するという必要なステップを機能的に実行するように構成された複数のモジュールが提供される。上記の諸実施形態におけるこれらのモジュールは、１次記憶システムからの開始標識を２次記憶システムで受信する受信モジュールを含む。開始標識は、好ましくは、２次記憶システム内のデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含む。２次記憶システムの第１のブロックは、好ましくは、１次記憶システム内のデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応する。１次記憶システムおよび２次記憶システム上のトラックはそれぞれ、好ましくは、不正規カウント・キー・データ（「ＣＫＤ」）トラックを含む。
【００１３】
この装置は、好ましくは、開始標識によって示された第１のブロック位置をトラック・メタデータ内にリストされたブロック位置と比較する比較モジュールであって、トラック・メタデータが、好ましくは、２次記憶システムの不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する比較モジュールを含む。この装置は、好ましくは、トラック・メタデータ内に示される、開始標識によって示された第１のブロックが２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生する警報モジュールを含む。
【００１４】
一実施形態では、受信モジュールは、１次記憶システムからブロック標識も受信する。この実施形態のブロック標識は、変更すべき２次記憶システム上の同一位置のブロックに対応する１次記憶システムの少なくとも１つの変更済みレコードによって占有されたブロックの量を含む。この実施形態では、比較モジュールはさらに、開始標識およびブロック標識によって示される、２次記憶システム上で変更すべきブロックを、トラック・メタデータ内にリストされたブロック位置と比較する。また、この実施形態では、警報モジュールはさらに、開始標識およびブロック標識によって示される、２次記憶システム上で変更すべきブロックのうちの終了ブロックが、トラック・メタデータ内に示される、２次記憶システム上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生する。
【００１５】
一実施形態では、開始標識およびブロック標識はビットマップに含まれる。他の実施形態では、ブロック標識によって示されるブロックの量はさらに、変更済みレコードが非順次である場合に、２次記憶システムにコピーすべき１次記憶システム上の複数の変更済みレコードに関するブロック位置に対応する２次記憶システムのデータ記憶装置のトラック上の非連続ブロックの位置および量を表す。他の実施形態では、警報モジュールが変更済みレコードに対応する受信された開始標識に関する警報を発生しなかったことに応答して、１次記憶システム上の少なくとも１つの変更済みレコードを２次記憶システム上の同一位置にコピーするためのコピー・モジュールが含まれる。
【００１６】
一実施形態では、１つのブロックは、１つのセクタ、複数セクタのクラスタ、複数バイトのグループ、または複数ビットのグループである。他の実施形態では、トラック・メタデータはキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）を含む。この装置はさらに、一実施形態では、警報モジュールによって発生された警報に応答して、２次記憶システム内のデータ記憶装置へのレコードのコピーを停止するコピー停止モジュールを含むように構成される。他の一実施形態では、この装置は、警報に応答して１次記憶システムに通知を送信する通知モジュールを含むように構成することができる。この通知は、２次記憶システムへのレコードの送信を停止するためのメッセージを含む。
【００１７】
ミラー・ボリューム内の不一致を検出するための本発明のシステムも提示される。このシステムは、好ましくは、コンピュータ・ネットワークと、不正規ＣＫＤトラックによって構成された少なくとも１つのデータ記憶装置を有する１次記憶システムと、コンピュータ・ネットワークにより１次記憶システムと通信状態にある２次記憶システムによって実施される。２次記憶システムは、好ましくは、１次記憶システムのデータ記憶装置上のデータのミラー・コピーを保管するように構成される。また、２次記憶システムは、好ましくは、不正規ＣＫＤトラックによって構成された少なくとも１つのデータ記憶装置も含む。
【００１８】
特に、２次記憶システムは、一実施形態では、１次記憶システムからの開始標識を２次記憶システムで受信する受信モジュールを含む。開始標識は、好ましくは、２次記憶システム内の不正規ＣＫＤトラックを有するデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含む。２次記憶システムの第１のブロックは、好ましくは、１次記憶システム内の不正規ＣＫＤトラックを有するデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応する。
【００１９】
２次システムは、好ましくは、開始標識によって示された第１のブロック位置をトラック・メタデータ内にリストされたブロック位置と比較する比較モジュールを含む。トラック・メタデータは、好ましくは、２次記憶システムの不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する。２次システムは、好ましくは、トラック・メタデータ内に示される、開始標識によって示された第１のブロックが２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生する警報モジュールを含む。
【００２０】
一実施形態では、受信モジュールは、１次記憶システムからブロック標識も受信する。この実施形態のブロック標識は、変更すべき２次記憶システム上の同一位置のブロックに対応する１次記憶システムの少なくとも１つの変更済みレコードによって占有されたブロックの量を含む。この実施形態では、比較モジュールはさらに、開始標識およびブロック標識によって示される、２次記憶システム上で変更すべきブロックを、トラック・メタデータ内にリストされたブロック位置と比較する。この実施形態では、警報モジュールはさらに、開始標識およびブロック標識によって示される、２次記憶システム上で変更すべきブロックのうちの終了ブロックが、トラック・メタデータ内に示される、２次記憶システム上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生する。一実施形態では、１次記憶システムおよび２次記憶システムは、ピアツーピア・リモート・コピー（「ＰＰＲＣ」）システムの一部である。
【００２１】
また、ミラー・ボリューム内の不一致を検出するための本発明の方法も提示される。開示された諸実施形態の方法は、実質的に、上記の装置およびシステムの動作に関して上記で提示された諸機能を実行するために必要なステップを含む。一実施形態では、この方法は、１次記憶システムからのビットマップを２次記憶システムで受信するステップを含む。ビットマップは、好ましくは、１次記憶システム上の不正規ＣＫＤトラック上の少なくとも１つの変更済みレコードのセクタに相関するビットを含む。この少なくとも１つの変更済みレコードは、好ましくは、２次記憶システム上の対応する不正規ＣＫＤトラック上の同一位置にコピーする予定のものである。
【００２２】
この方法は、好ましくは、ビットマップ内に示されたセクタ位置を、２次記憶システム上のＣＲＣＢ内にリストされた対応するセクタ位置と比較するステップを含む。この方法は、好ましくは、ビットマップ内に示される、少なくとも１つのレコードの開始セクタが、ＣＲＣＢ内に示される、２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するステップを含む。一実施形態では、この方法は、ビットマップ内に示される、少なくとも１つのレコードの終了セクタが、ＣＲＣＢ内に示される、２次記憶システム上のレコードの終了セクタに位置合わせしていないことに応答して、警報を発生するステップを含む。
【００２３】
一実施形態では、この方法は、開始セクタからそのトラックの終わりまでのデータを消去する書き込みフォーマット・コマンドの一部として、不正規ＣＫＤトラック内の開始セクタ位置およびゼロを含むビットマップを受信するステップを含む。また、ビットマップ内に示されたセクタ位置を、ＣＲＣＢ内にリストされた対応するセクタ位置と比較するステップは、好ましくは、開始セクタ位置をＣＲＣＢ内の対応するセクタ位置と比較するステップを含む。加えて、警報を発生するステップは、好ましくは、ＣＲＣＢ内に示される、開始セクタが２次記憶システム上のレコードの開始位置に位置合わせしていないことに応答して、警報を発生するステップを含む。他の実施形態では、この方法は、警報に応答してエラーを生成するステップを含む。
【００２４】
また、ミラー・ボリューム内の不一致を検出するための本発明の他の方法も提示される。開示された諸実施形態の方法は、実質的に、上記の装置およびシステムの動作に関して上記で提示された諸機能を実行するために必要なステップを含む。一実施形態では、この方法は、１次記憶システム上の不正規ＣＫＤトラック上の少なくとも１つのレコードによって占有されたセクタに相関するビットを含むビットマップを生成するステップを含む。この少なくとも１つのレコードは、この実施形態では、２次記憶システムの不正規ＣＫＤトラック上の同一位置にコピーする予定のものである。この方法は、好ましくは、ビットマップを２次記憶システムに送信するステップを含む。
【００２５】
２次記憶システムは、好ましくは、ビットマップ内に示されたセクタ位置を、２次記憶システム上のＣＲＣＢ内にリストされた対応するセクタ位置と比較し、ビットマップ内に示される、少なくとも１つのレコードの開始セクタが、ＣＲＣＢ内に示される、２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するように構成される。一実施形態では、２次システムは、ビットマップ内に示される、少なくとも１つのレコードの終了セクタが、ＣＲＣＢ内に示される、２次記憶システム上のレコードの終了セクタに位置合わせしていないことに応答して、警報を発生するように構成される。他の実施形態では、この方法は、２次記憶システムからレコード不一致通知を受信したことに応答して、２次記憶システムへのレコードのコピーの送信を停止するステップを含む。
【００２６】
本明細書全体を通して特徴、利点、または同様の言語に言及する場合、本発明によって実現可能な特徴および利点のすべてが本発明の任意の単一実施形態に存在しなければならないかまたは存在していることを意味するわけではない。むしろ、特徴および利点に言及する言語は、一実施形態に関連して記載した具体的な特徴、利点、または特性が本発明の少なくとも１つの実施形態に含まれることを意味するものと理解される。したがって、本明細書全体を通して特徴、利点、および同様の言語を考察する場合、同じ実施形態に言及する可能性があるが、必ずしも同じ実施形態に言及しているわけではない。
【００２７】
さらに、本発明の上記の特徴、利点、および特性は、任意の適切な方法で1つまたは複数の実施形態に組み合わせることができる。当業者であれば、特定の一実施形態の具体的な特徴または利点のうちの1つまたは複数がなくても、本発明を実施可能であることを認識するであろう。その他の事例では、本発明のすべての実施形態に存在できるわけではない追加の特徴および利点が特定の諸実施形態で認識することができる。
【００２８】
第２の態様によれば、ミラー・ボリューム内の不一致を検出するためのシステムが提供され、このシステムは、コンピュータ・ネットワークと、不正規カウント・キー・データ（「ＣＫＤ」）トラックによって構成された少なくとも１つのデータ記憶装置を含む１次記憶システムと、コンピュータ・ネットワークにより１次記憶システムと通信状態にある２次記憶システムとを含み、２次記憶システムは、１次記憶システムのデータ記憶装置上のデータのミラー・コピーを保管するように構成され、不正規ＣＫＤトラックによって構成された少なくとも１つのデータ記憶装置を含み、２次記憶システムは、１次記憶システムからの開始標識を２次記憶システムで受信するように構成された受信モジュールであって、開始標識が２次記憶システム内の不正規ＣＫＤトラックを有するデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含み、２次記憶システムの第１のブロックが１次記憶システム内の不正規ＣＫＤトラックを有するデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応する受信モジュールと、開始標識によって示された第１のブロック位置をトラック・メタデータ内にリストされたブロック位置と比較するように構成された比較モジュールであって、トラック・メタデータが２次記憶システムの不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する比較モジュールと、トラック・メタデータ内に示される、開始標識によって示された第１のブロックが２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生するように構成された警報モジュールとを含む。
【００２９】
第３の態様によれば、ミラー・ボリューム内の不一致を検出するためにプログラミングされたコンピュータ使用可能プログラム・コードを有するコンピュータ可読媒体を含むコンピュータ・プログラム（computerprogram product）が提供され、このコンピュータ・プログラムの動作は、１次記憶システムからのビットマップを２次記憶システムで受信するステップであって、ビットマップが１次記憶システム上の不正規カウント・キー・データ（「ＣＫＤ」）トラック上の少なくとも１つの変更済みレコードのセクタに相関するビットを含み、少なくとも１つの変更済みレコードが２次記憶システム上の対応する不正規ＣＫＤトラック上の同一位置にコピーする予定のものであるステップと、ビットマップ内に示されたセクタ位置を、２次記憶システム上のキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）内にリストされた対応するセクタ位置と比較するステップと、ビットマップ内に示される、少なくとも１つのレコードの開始セクタが、ＣＲＣＢ内に示される、２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するステップとを含む。
【００３０】
第４の態様によれば、ミラー・ボリューム内の不一致を検出するための方法が提供され、この方法は、１次記憶システム上の不正規カウント・キー・データ（「ＣＫＤ」）トラック上の少なくとも１つのレコードによって占有されたセクタに相関するビットを含むビットマップを生成するステップであって、少なくとも１つのレコードが２次記憶システムの不正規ＣＫＤトラック上の同一位置にコピーする予定のものであるステップと、ビットマップを２次記憶システムに送信するステップとを含み、２次記憶システムは、ビットマップ内に示されたセクタ位置を、２次記憶システム上のキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）内にリストされた対応するセクタ位置と比較し、ビットマップ内に示される、少なくとも１つのレコードの開始セクタが、ＣＲＣＢ内に示される、２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するように構成される。
【００３１】
本発明のこれらの特徴および利点は、以下の説明および特許請求の範囲からより完全に明らかになるか、または以下に示す本発明の実施によって学習することができる。
【００３２】
次に、一例としてのみ、添付図面に関連して、本発明の諸実施形態について説明する。
【図面の簡単な説明】
【００３３】
【図１】ミラー・ボリューム内のデータ不一致を検出するためのシステムの一実施形態を例示する概略ブロック図である。
【図２】ミラー・ボリューム内のデータ不一致を検出するための２次記憶システムに関連する装置の一実施形態を例示する概略ブロック図である。
【図３】ミラー・ボリューム内のデータ不一致を検出するための２次記憶システムに関連する装置の他の実施形態を例示する概略ブロック図である。
【図４】ミラー・ボリューム内のデータ不一致を検出するための１次記憶システムに関連する装置の一実施形態を例示する概略ブロック図である。
【図５】ミラー・ボリューム内のデータ不一致を検出するための２次記憶システムに関連する方法の一実施形態を例示する概略流れ図である。
【図６】ミラー・ボリューム内のデータ不一致を検出するための１次記憶システムに関連する方法の一実施形態を例示する概略流れ図である。
【図７】ミラー・ボリューム内のデータ不一致を検出するための２次記憶システムに関連する方法の特定の一実施形態を例示する概略流れ図である。
【図８】本発明の一実施形態により、１次記憶システムから送信されたコピー済みレコードおよび関連ビットマップと、２次記憶システムの対応するセクタおよび関連ＣＲＣＢの一例とを例示するブロック図である。
【図９】本発明の一実施形態により、１次記憶システムから送信されたコピー済みレコードおよび関連ビットマップと、２次記憶システムの対応するセクタおよび関連ＣＲＣＢの第２の例とを例示するブロック図である。
【発明を実施するための形態】
【００３４】
本明細書に記載された機能ユニットの多くは、それぞれの実装の独立性を詳細に強調するために、モジュールとして示されている。たとえば、モジュールは、論理チップ、トランジスタ、またはその他の個別コンポーネントなど、カスタムＶＬＳＩ回路またはゲート・アレイ、既製の半導体を含む、ハードウェア回路として実装することができる。また、モジュールは、フィールド・プログラマブル・ゲート・アレイ、プログラマブル・アレイ・ロジック、プログラマブル論理デバイスなどのプログラマブル・ハードウェア・デバイスに実装することもできる。
【００３５】
また、モジュールは、様々なタイプのプロセッサによって実行するためのソフトウェアに実装することもできる。たとえば、実行可能コードの識別されたモジュールは、たとえば、オブジェクト、プロシージャ、または関数として編成することができるコンピュータ命令からなる１つまたは複数の物理ブロックまたは論理ブロックを含むことができる。それにもかかわらず、識別されたモジュールの実行可能プログラムは、物理的に一緒に位置する必要はないが、論理的に一緒に結合されたときに、そのモジュールを含み、そのモジュールについて規定された目的を達成する、異なる位置に保管された異種命令を含むことができる。
【００３６】
実際に、実行可能コードのモジュールは、単一命令または多くの命令である可能性があり、複数の異なるコード・セグメント間、異なるプログラム間、および複数のメモリ・デバイス間に分散させることもできる。同様に、動作データは、モジュール内で識別し、本明細書に例示することができ、任意の適切な形で実施し、任意の適切なタイプのデータ構造内に編成することができる。動作データは、単一データ・セットとして収集するか、または異なる記憶装置間を含む異なる位置間に分散させることができ、少なくとも部分的には、単にシステムまたはネットワーク上の電子信号として存在することができる。
【００３７】
本明細書全体を通して「一実施形態」、「ある実施形態」、または同様の言語に言及する場合、その実施形態に関して記載された特定の特徴、構造、または特性が本発明の少なくとも１つの実施形態に含まれることを意味する。したがって、本明細書全体を通して「一実施形態では」、「ある実施形態では」、および同様の言語の表現が現れた場合、いずれも同じ実施形態に言及する可能性があるが、必ずしも同じ実施形態に言及しているわけではない。
【００３８】
信号伝送媒体に言及する場合、これは、信号を発生するか、信号を発生させるか、またはデジタル処理装置上で複数の機械可読命令からなるプログラムを実行させることができる任意の形を取ることができる。信号伝送媒体は、伝送線、コンパクト・ディスク、デジタル・ビデオ・ディスク、磁気テープ、ベルヌーイ・ドライブ、磁気ディスク、パンチ・カード、フラッシュ・メモリ、集積回路、またはその他のデジタル処理装置メモリ・デバイスによって実施することができる。
【００３９】
さらに、本発明の上記の特徴、構造、または特性は、任意の適切な方法で1つまたは複数の実施形態に組み合わせることができる。以下の説明では、本発明の諸実施形態を完全に理解するために、プログラミング、ソフトウェア・モジュール、ユーザ選択、ネットワーク・トランザクション、データベース照会、データベース構造、ハードウェア・モジュール、ハードウェア回路、ハードウェア・チップなどの例など、多数の具体的な詳細が提供される。しかし、当業者であれば、具体的な詳細のうちの１つまたは複数がないか、あるいはその他の方法、コンポーネント、材料などを使用しても、本発明を実施可能であることを認識するであろう。その他の事例では、本発明の諸態様を不明瞭にすることを回避するために、周知の構造、材料、または動作が示されないか、または詳細に記載されない。
【００４０】
本明細書に含まれる概略流れ図は、一般に、論理流れ図として示されている。このため、描写された順序および表示されたステップは、提示された方法の一実施形態を示すものである。機能、論理、または効果の点で、例示された方法の１つまたは複数のステップあるいはその一部分と同等であるその他のステップおよび方法を考案することもできる。さらに、使用されるフォーマットおよび記号は、その方法の論理ステップを説明するために提供されており、その方法の範囲を制限しないものと理解される。流れ図では様々な矢印タイプおよび線種を使用することができるが、それらは対応する方法の範囲を制限しないものと理解される。実際に、いくつかの矢印またはその他のコネクタを使用して、その方法の論理流れのみを示すこともできる。たとえば、ある矢印は、描写された方法の列挙されたステップ間の未指定の持続期間のうちの待機期間またはモニター期間を示すことができる。さらに、特定の方法が行われる順序は、示されている対応する諸ステップの順序を厳密に固守する場合もあれば、固守しない場合もある。
【００４１】
図１は、本発明の一実施形態により、ミラー・ボリューム内のデータ不一致を検出するためのシステム１００の一実施形態を描写している。このシステムは、ストレージ・エリア・ネットワーク１１０により、ミラー・ボリューム１０８を有する２次記憶システム１０６と通信状態にある、１次ボリューム１０４を有する１次記憶システム１０２を含む。１次記憶システム１０２は１次記憶コントローラ１１２を含み、２次記憶システム１０６は２次記憶コントローラ１１４を含む。１次ボリューム１０４は１つまたは複数のデータ記憶装置１１６を含み、ミラー・ボリューム１０８は１つまたは複数のデータ記憶装置１１８を含む。システム１００は、コンピュータ・ネットワーク１２８により、１次記憶コントローラ１１２と通信状態にある、ワークステーション１２０、ラップトップ・コンピュータ１２２、携帯情報端末（「ＰＤＡ」）１２４、または携帯電話１２６を含むことができる。システム１００のデバイスおよびコンポーネントについては以下に説明する。
【００４２】
ストレージ・エリア・ネットワーク（「ＳＡＮ」）１１０は、ローカル・エリア・ネットワーク（「ＬＡＮ」）、広域ネットワーク（「ＷＡＮ」）、光ファイバ・ネットワーク、インターネットなどを含むことができ、複数ネットワークの組み合わせを含むこともできる。ＳＡＮ１１０は、一実施形態では、同期接続を含み、何らかの形の書き込み動作について成功を登録する前に１次ボリューム１０４とミラー・ボリューム１０８に更新が保管される。他の実施形態では、ＳＡＮ１１０は、非同期接続を含み、更新は１次ボリューム１０４に保管され、その後、ミラー・ボリューム１０８にコピーされる。一実施形態では、ＳＡＮ１１０は、ホスト・デバイスと通信状態にあるコンピュータ・ネットワーク１２８とマージされる。当業者であれば、１次記憶システム１０２が２次記憶システム１０６に対して更新を伝達し送信するための他の方法を認識するであろう。
【００４３】
１次記憶システム１０２は、可変長レコードを含むＣＫＤトラックを有する１つまたは複数のデータ記憶装置１１６を含む１次ボリューム１０４を含む。典型的には、１つまたは複数のデータ記憶装置１１６が結合されて、１次論理ボリューム１０４を形成する。１次記憶システム１０２は任意の数の論理ボリュームを含むことができ、各論理ボリュームは１つまたは複数のデータ記憶装置１１６を含むことができる。一実施形態では、１次ボリューム１０４は単一データ記憶装置１１６ａを含む。他の実施形態では、１次記憶ボリューム１０４は２つ以上のデータ記憶装置１１６ａ、１１６ｂ、・・・１１６ｎを含む。さらに他の実施形態では、１次記憶ボリューム１０４は、新磁気ディスク制御機構（「ＲＡＩＤ：redundant array of inexpensive/independent disks」）として構成された２つ以上のデータ記憶装置１１６ａ、１１６ｂ、・・・１１６ｎを含む。１次記憶システム１０２の１次ボリューム１０４のデータ記憶装置１１６は、１次記憶コントローラ１１２またはその他のコンピュータの外部にある場合もあれば、内部にある場合もある。データ記憶装置１１６は、ＳＡＮ１１０によるかまたは他のコンピュータ・ネットワークにより１次記憶コントローラ１１２に接続することができる。内部データ記憶装置１１６は、シリアルＡＴＡバス、小型コンピュータ・システム・インターフェース（「ＳＣＳＩ」）などにより１次記憶コントローラ１１２に接続することができる。当業者であれば、更新を受信できる１次ボリューム１０４の他の構成を認識するであろう。
【００４４】
１次記憶システム１０２は、ホストからの更新を１次ボリューム１０４に保管する、１次記憶コントローラ１１２、サーバ、コンピュータなどを含む。典型的には、１次記憶コントローラ１１２は、コンピュータ・ネットワーク１２８によりホストから更新を受信する。ホストは、サーバ（図示せず）、ワークステーション１２０、ラップトップ・コンピュータ１２２、ＰＤＡ１２４、携帯電話１２６などにすることができる。典型的には、１次記憶コントローラ１１２は、２次記憶システム１０６の２次記憶コントローラ１１４と通信して、受信された更新をミラー・ボリューム１０８にコピーする。１次記憶コントローラ１１２は、データ・ムーバ、書き込みキャッシュ、ランダム・アクセス・メモリ（「ＲＡＭ」）の形の内部キャッシュ、または１次記憶システム１０２のデータを管理するためのその他のデバイスを含むことができる。当業者であれば、更新を受信し、１次ボリューム１０４に更新をコピーし、ミラー・ボリューム１０８に更新をコピーする、他の１次記憶コントローラ１１２の構成を認識するであろう。
【００４５】
２次記憶システム１０６は、可変長レコードを有するＣＫＤトラックを含む１つまたは複数のデータ記憶装置１１８を含む論理ボリュームとして構成されたミラー・ボリューム１０８を含む。ミラー・ボリューム１０８は、そのボリュームを形成する１つまたは複数のデータ記憶装置１１８により構成され、典型的には、１次ボリューム１０４の構成と一致する。また、２次記憶システム１０６は、他の論理ボリュームとして構成された他のデータ記憶装置１１８も含むことができる。２次記憶システム１０６は、１次記憶システム１０２から受信された更新をミラー・ボリューム１０８に保管するように構成された２次記憶コントローラ１１４、サーバ、コンピュータなどを含む。２次記憶コントローラ１１４は、データ・ムーバ、書き込みキャッシュ、ＲＡＭの形の内部キャッシュ、または２次記憶システム１０６のデータを管理するためのその他のデバイスを含むことができる。当業者であれば、更新を受信し、ミラー・ボリューム１０８に更新をコピーする、他の２次記憶コントローラ１１４の構成を認識するであろう。
【００４６】
図２は、本発明の一実施形態によりミラー・ボリューム１０８内のデータ不一致を検出するための２次記憶システム１０６に関連する装置２００の一実施形態を描写している。装置２００は、以下に記載する受信モジュール２０２と、比較モジュール２０４と、警報モジュール２０６とを含む、２次記憶システム１０６を含む。一実施形態では、受信モジュール２０２、比較モジュール２０４、および警報モジュール２０６は、２次記憶コントローラ１１４内に位置する。他の実施形態では、受信モジュール２０２、比較モジュール２０４、および警報モジュール２０６は、２次記憶システム１０６の一部ではないコンピュータ内に位置する。さらに他の実施形態では、装置２００のこれらのモジュール２０２、２０４、２０６またはモジュールの一部分は、２次記憶システム１０６内の様々な位置に保管される。当業者であれば、モジュール２０２、２０４、２０６が位置することができる他の位置を認識するであろう。
【００４７】
２次記憶システム１０６は、一実施形態では、１次記憶システム１０２からの開始標識を２次記憶システム１０６で受信する受信モジュール２０２を含む。開始標識は、典型的には、２次記憶システム１０６内のデータ記憶装置１１８ａのトラック上で変更すべき第１のブロックの位置の表示を含む。２次記憶システム１０６の第１のブロックは、１次記憶システム１０２内のデータ記憶装置１１６ａのトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応する。１次記憶システム１０２および２次記憶システム１０６上のトラックはそれぞれ、不正規ＣＫＤトラックを含む。
【００４８】
一実施形態では、受信モジュール２０２は、１次記憶システム１０２からブロック標識も受信する。このブロック標識は、変更すべき２次記憶システム１０６上の同一位置のブロックに対応する１次記憶システム１０２の少なくとも１つの変更済みレコードによって占有されたブロックの量を含む。一実施形態では、開始標識はビットマップ内の１つのビットである。他の実施形態では、開始標識はビットマップとは別に受信される。ブロック標識は、他の実施形態では、ビットマップ内の複数ビットによって表される。他の例では、ブロック標識は、１つまたは複数の整数、１つのテーブル、あるいはブロックの量を伝達可能なその他のデータ構造の形にすることができる。
【００４９】
好ましい一実施形態では、開始標識およびブロック標識はビットマップ内に含まれる。たとえば、ビットマップ内のビットが不正規ＣＫＤトラックのブロックを表す場合、特定のビットは、２次記憶システム１０６にコピーする予定になっている、１次記憶システム１０２の不正規ＣＫＤトラック上の１つまたは複数のレコードの位置を表すことができる。コピーすべきレコードの第１のブロックに対応するビットマップの第１のビットは、開始標識として働くことができる。２次記憶システム１０６にコピーすべき１つまたは複数のレコードによって占有されたセクタに対応するビットマップのビットは、ブロック標識として働くことができる。
【００５０】
開始標識およびブロック標識のビットマップまたはその他の形式は、２次記憶システム１０６にコピーする予定になっている、あるトラックの非連続レコードを表すことができる。たとえば、ビットマップは送信すべきレコードに対応しないブロックに関する「０（ゼロ）」を含むことができ、ビットマップ内の「１（イチ）」は２次記憶システム１０６にコピーすべきレコードのブロック位置を表すことができる。送信すべきレコードとしては、たとえば、レコード１およびレコード３を含むことができる。レコード２はレコード１とレコード３の間に位置することができる。送信すべきレコードを表すビットマップは、「１」のグループと、それに続く「０」のグループと、それに続く「１」のグループとを有することができる。「１」はレコード１およびレコード３によって占有された１次記憶システム１０２上のブロックを表すことができる。
【００５１】
典型的には、レコードはトラック上で連続的に番号が付けられるが、任意の都合の良い方法によって番号を付けることができる。加えて、典型的には、１つのレコードは、不正規ＣＫＤトラック上の複数ブロックまたは複数セクタからなる連続グループにまたがっている。好ましい一実施形態では、１つのブロックは１つのセクタであり、これらの用語は本明細書では区別なく使用される。しかし、他の諸実施形態では、１つのブロックは、複数セクタのグループ、複数バイトのグループ、複数ビットのグループなどにすることができる。開始標識は、トラック上でレコードが始まる場所を伝達するための任意の都合の良い方法にすることができる。同様に、ブロック標識は、１つまたは複数のレコードによって占有された標準単位の量を伝達する任意の度量法（measurement）にすることができる。当業者であれば、開始標識およびブロック標識がトラック内の任意の都合の良いグループを表すことができ、本明細書に記載された装置、システム、および方法がブロックまたはセクタの特定の一実施形態に限定されないことを認識するであろう。
【００５２】
変更済みレコードは、一般に、１次ボリューム１０４に保管するために１次記憶システム１０２で受信された更新の一部であり、ミラー・ボリューム１０８に対して同期的または非同期的に２次記憶システム１０６にコピーされる。更新は、新しいレコード、レコードの削除、または既存のレコードに対する変更である可能性がある。当業者であれば、変更済みレコードまたはレコードに対する変更を、１次ボリューム１０４のミラー・ボリューム１０８になる予定の２次記憶システム１０６からコピー、変更、または削除できる場合に、１次ボリューム１０４上の変更済みレコードのその他の形式を認識するであろう。
【００５３】
典型的には、ビットマップは、１次記憶システム１０２上の１つまたは複数の変更済みレコードによって占有されたセクタに相関するビットを含む。たとえば、ミラー・ボリューム１０８にコピーすべき変更済みレコードがあるトラック上のセクタ３〜７にまたがる場合、そのレコードに付随するビットマップは、ビット３〜７の「１」と、ビット０〜２ならびにビット８〜ｎの「０」とを有することになり、ｎはトラック上のセクタの数である。他の例では、あるグループの変更済みレコードがセクタ８〜２２にまたがる場合、そのレコードに付随するビットマップは、ビット８〜２２の１と、ビット０〜７および２３〜ｎの０とを有することになるであろう。さらに他の例では、ビットマップは、受信されたファイルに対応するビットの「０」と、ビットマップの他のビットの「１」とを含むように反転される。
【００５４】
一実施形態では、受信モジュール２０２は、開始標識とともに、単一の変更済みレコードまたは単一グループの変更済みレコードを受信する。他の実施形態では、受信モジュールは、対応するビットマップを受信することに加えて、そのレコード（複数も可）を受信する。他の実施形態では、受信モジュール２０２は、それぞれが対応するビットマップまたは開始／ブロック標識を有する、複数のレコードまたはレコード・グループを含む更新を受信する。一実施形態では、ビットマップは、２つ以上のトラックを表す複数ビットを含む。このビットマップはテーブルの形にすることができる。このテーブルは、ディスク上のトラックの一部分またはディスク上のトラックのすべてを含むことができる。他の実施形態では、受信モジュール２０２は、複数のトラック上のレコードに関する複数の開始標識およびブロック標識を受信する。当業者であれば、受信モジュール２０２によって受信可能な他のビットマップ、開始標識、ブロック標識、および対応するレコードを認識するであろう。
【００５５】
２次記憶システム１０６は、一実施形態では、開始標識によって示された第１のブロック位置をトラック・メタデータ内にリストされたブロック位置と比較する比較モジュール２０４を含む。トラック・メタデータは、２次記憶システム１０６の不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する。たとえば、受信された開始標識は、１次ボリューム１０４の変更済みレコードがブロック３から始まることを示すことができ、トラック・メタデータは、ミラー・ボリューム１０８上のレコードもブロック２から始まり、ブロック４に及ぶことを示すことができる。この場合、１次ボリューム１０４上の変更済みレコードは、ミラー・ボリューム１０８上のレコードに位置合わせしていない。
【００５６】
好ましい一実施形態では、トラック・メタデータは、２次記憶システム１０６上のキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）に含まれる。比較モジュール２０４は、他の実施形態では、ビットマップ内に示されたセクタ位置を、ＣＲＣＢ内にリストされた対応するセクタ位置と比較する。たとえば、１次ボリューム１０４上の変更済みレコードに対応する受信モジュール２０２によって受信されたビットマップは、変更済みレコードがセクタ３〜７を含むことを示すことができる。比較モジュール２０４は、そのビットマップを、レコードがコピーされる予定になっているトラックのＣＲＣＢと比較する。ＣＲＣＢは、たとえば、トラックのレコード１がセクタ１および２を占有し、レコード２がセクタ３〜７を占有し、レコード３がセクタ８〜１０を占有することを示すことができる。この場合、ＣＲＣＢと比較されたビットマップからの情報は、受信されたレコードの開始セクタおよび終了セクタがレコード２の開始セクタおよび終了セクタに位置合わせしていることを示す。
【００５７】
他の例では、ＣＲＣＢは、そのトラックのレコード１がセクタ１〜４を占有し、レコード２がセクタ５〜１０を占有することを示すことができる。この場合、ビットマップをＣＲＣＢと比較すると、受信されたレコードがレコード１の途中から始まり、レコード２の途中で終わることが明らかになる。受信されたレコードがそのトラックにコピーされた場合、ミラー・ボリューム１０８のレコード１および２を占有することになるであろう。
【００５８】
他の例では、受信モジュールは、１次ボリューム１０４上の非連続変更済みレコードを表すビットマップを受信する。たとえば、受信されたビットマップは、１つの変更済みレコードがセクタ３〜７を占有し、もう１つの変更済みレコードがセクタ８〜１０を占有することを示すことができる。そのビットマップによって表された１次ボリューム１０４の不正規ＣＫＤトラックに対応するＣＲＣＢは、対応するミラー・ボリューム１０８の不正規ＣＫＤトラック上のレコード１がセクタ２〜７を占有し、レコード２がセクタ８〜１２を占有することを示すことができる。この例では、比較モジュール２０４はそのビットマップとＣＲＣＢを比較し、１次ボリューム１０４上の両方の変更済みレコードの始まりがミラー・ボリューム１０８上のレコードに位置合わせしていない。一実施形態では、比較モジュール２０４は、ビットマップ内に示された第１のレコードのみをＣＲＣＢと比較する。他の実施形態では、比較モジュール２０４は、ビットマップ内に示された両方のレコードをＣＲＣＢと比較する。
【００５９】
比較モジュール２０４は、一実施形態では、開始標識およびブロック標識によって示される、２次記憶システム１０６上の変更すべきブロックを、トラック・メタデータ内にリストされたブロック位置と比較する。たとえば、比較モジュール２０４は、開始ブロックを決定するための開始標識と、オフセットとしてのブロック標識とを使用して、レコードまたはレコード・グループの終了ブロックを決定することができる。たとえば、１次ボリューム１０４上の変更済みレコードがブロック２から始まることを開始標識が示し、そのレコードが４つのブロックにまたがることをブロック標識が示す場合、比較モジュール２０４は、そのレコードの終了ブロックがブロック５であると決定することができる。ミラー・ボリューム１０８上のレコードがブロック３〜６にまたがることをトラック・メタデータが示す場合、１次ボリューム１０４からの変更済みレコードの終了ブロックはミラー・ボリューム１０８上のレコードの終了ブロックに位置合わせしていない。一実施形態では、比較モジュール２０４は、ビットマップ内の複数ビットを使用して、変更済みレコードの終了ブロックまたはセクタを決定する。
【００６０】
２次記憶システム１０６は、一実施形態では、トラック・メタデータ内に示される、開始標識によって示された第１のブロックが２次記憶システム１０６上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生する警報モジュール２０６を含む。上記でリストされた例では、開始標識が２次記憶システム１０６のミラー・ボリューム１０８上のレコードの開始ブロックに位置合わせしていない場合、警報モジュールが警報を発生する。レコードがブロック３から始まることを開始標識が示し、ミラー・ボリューム１０８上のレコードがブロック２〜４にまたがることをトラック・メタデータが示すという上記の例では、警報モジュール２０６は警報を発生することになるであろう。
【００６１】
他の実施形態では、警報モジュール２０６は、ビットマップ内に示される、１つまたは複数の変更され受信されたレコードの開始セクタが、ＣＲＣＢ内に示される、２次記憶システム１０６上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生する。受信されたレコードがセクタ３〜７を含むことをそのレコードとともに送信されたビットマップが示し、そのレコードがコピーされる予定になっているトラックのＣＲＣＢがレコード１がセクタ１〜４を占有することを示す上記の例では、警報モジュール２０６は、受信されたレコードがレコード１またはレコード２の始まりに対応しないことを認識し、警報を発生する。これに対して、ミラー・ボリューム１０８上のトラックのレコード１がセクタ１および２を占有し、レコード２がセクタ３から始まる場合、警報モジュール２０６は、受信されたレコードの開始セクタがレコード２の開始セクタに対応することを検出し、警報モジュール２０６は警報を発生しない。
【００６２】
一実施形態では、警報モジュール２０６は、開始標識およびブロック標識によって示される、２次記憶システム１０６上で変更すべきブロックのうちの終了ブロックが、トラック・メタデータ内に示される、２次記憶システム１０６上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生する。比較モジュール２０４が開始標識とブロック標識を使用して、変更済みレコードが１次ボリューム１０４のブロック５で終了すると決定し、ミラー・ボリューム１０８上のレコードがブロック３〜６にまたがることをトラック・メタデータが示す上記の例では、警報モジュール２０６は警報を発生することになるであろう。
【００６３】
一実施形態では、警報モジュール２０６は、ビットマップ内に示される、少なくとも１つのレコードの終了セクタが、ＣＲＣＢ内に示される、２次記憶システム１０６上のレコードの終了セクタに位置合わせしていないことに応答して、警報を発生する。受信されたレコードがセクタ３〜７を含むことをそのレコードとともに送信されたビットマップが示し、そのレコードがコピーされる予定になっているトラックのＣＲＣＢがレコード２がセクタ５〜１０を占有することを示す上記の例では、警報モジュール２０６は、受信されたレコードがレコード２の終わりに対応しないことを認識し、警報を発生する。これに対して、ミラー・ボリューム１０８上のトラックのレコード２がセクタ３から始まり、セクタ７で終了する場合、警報モジュール２０６は、受信されたレコードの終了セクタがレコード２の終了セクタに対応することを検出し、警報モジュール２０６は警報を発生しない。
【００６４】
典型的な書き込みコマンドまたは同様のコマンドの場合、警報モジュール２０６は、典型的には、１つの変更済みレコードまたはレコード・グループの始まりおよび終わりの位置合わせ不良について警報を発生することになるであろう。書き込みフォーマット・コマンドまたは同様のコマンドの場合、そのコマンドはミラー・ボリューム１０８上のレコードの長さを変更することができ、警報モジュール２０６は、典型的には、変更済みレコードの始まりの位置合わせ不良について警報を発生することになるであろう。典型的には、受信モジュール２０２は、開始標識およびブロック標識（またはビットマップ）とともに、書き込みコマンド、書き込みフォーマット・コマンド、または同様のコマンドに対応する命令またはその他のコンピュータ・コードを受信する。受信モジュール２０２は、一実施形態では、その変更済みレコードまたはレコード・グループなどの更新も受信することができる。受信モジュール２０２は、他の実施形態では、１つのレコードの一部分の形で更新を受信することもできる。
【００６５】
一実施形態では、受信モジュール２０２は、１つまたは複数の変更済みレコードがミラー・ボリューム１０８にコピーされ、その変更済みレコードがコピーされる予定になっている位置より上のブロックまたはセクタが書き込みフォーマット・コマンドによって消去されるように、書き込みフォーマット・コマンドを受信するか、または他のコマンドと組み合わせて書き込みフォーマット・コマンドを受信することができる。たとえば、変更済みレコードをセクタ３〜７にコピーし、セクタ１０から不正規ＣＫＤトラックの終わりまでを消去することができる。この場合、受信モジュール２０２は、変更済みレコードの始まりがセクタ３から始まることを伝達する開始標識とともに、変更済みレコードが５つのセクタを占有することを伝達するブロック標識を受信することができる。加えて、ブロック標識は、セクタ１０からそのトラックの終わりまでを消去する予定であることを伝達する。一実施形態では、開始標識およびブロック標識はビットマップの形にすることができ、書き込みフォーマット・コマンドは消去すべきセクタを伝達することができる。次に、警報モジュール２０６は、開始標識、ブロック標識、またはビットマップ、あるいはこれらの組み合わせと、比較モジュール２０４からの入力とに基づいて、警報が適切であるかどうかを判別することができる。当業者であれば、ブロックまたはセクタを消去するとともに適切な警報を発生するために、書き込みフォーマット・コマンドに併せてビットマップ、開始標識、またはブロック標識を使用するための他の方法を認識することになるであろう。
【００６６】
１次ボリューム１０４がミラー・ボリューム１０８とは異なる場合、１次ボリューム１０４の単一の変更済みレコードがミラー・ボリューム１０８の複数のレコードにまたがる可能性があり、変更済みレコードの始まりおよび終わりがスパン・レコード（spanned record）の始まりおよび終わりに位置合わせする可能性があることに留意されたい。また、１次ボリューム１０４上の１つの変更済みレコード・グループは、ミラー・ボリューム１０８上の異なるレコード・グループに位置合わせする可能性がある。このような場合、警報モジュール２０６は警報を発生しない可能性がある。しかし、典型的には、少数の変更済みレコードが警報を発生しない場合でも、受信モジュール２０２によって開始標識およびブロック標識（またはビットマップ）が受信される何らかの変更済みレコードに関する位置合わせ不良によって警報が発生されることになる。有利なことに、装置２００は、好ましくは、１次ボリューム１０４がミラー・ボリューム１０８と同一ではないことによって引き起こされた不一致レコードについて効率よく警報を発生する。
【００６７】
図３は、本発明の一実施形態により、ミラー・ボリューム１０８内のデータ不一致を検出するための２次記憶システム１０６に関連する装置３００の他の実施形態を描写している。装置３００は、図２に描写された装置２００に関して記載したモジュールと実質的に同様の受信モジュール２０２、比較モジュール２０４、および警報モジュール２０６を含む、２次記憶システム１０６を含む。また、２次記憶システム１０６は、一実施形態では、以下に記載するコピー停止モジュール３０２、コピー・モジュール３０４、および通知モジュール３０６も含む。
【００６８】
２次記憶システム１０６は、一実施形態では、警報モジュール２０６によって発生された警報に応答して、２次記憶システム１０６内のデータ記憶装置１１８へのレコードのコピーを停止するコピー停止モジュール３０２を含む。たとえば、警報モジュール２０６が不一致を検出し、警報を発生した場合、コピー停止モジュール３０２は、ミラー・ボリューム１０８への変更済みレコードのコピーを停止する。２次記憶システム１０６は、一実施形態では、１次記憶システム１０２から受信されたレコードを２次記憶システム１０６内のデータ記憶システム１１８にコピーするコピー・モジュール３０４を含む。たとえば、警報モジュール２０６が受信モジュール２０２によって受信された開始標識またはブロック標識に対応する変更済みレコードに関する不一致を検出しなかった場合、コピー・モジュール３０４は、変更済みレコードに付随する開始標識、ビットマップ、またはその他のメタデータによって指定された位置にあるミラー・ボリューム１０８に変更済みレコードをコピーする。コピー・モジュール３０４が変更済みレコードをコピーするミラー・ボリューム１０８上の位置は、典型的には、１次ボリューム１０４上の対応する位置に位置合わせする。
【００６９】
一実施形態では、２次記憶システム１０６は、警報モジュール２０６によって発生された警報に応答して１次記憶システム１０２に通知を送信する通知モジュール３０６を含む。通知モジュール３０６によって送信された通知は、２次記憶システム１０６へのレコードの送信を停止するためのメッセージを含む。一実施形態では、通知モジュール３０６は、１次記憶コントローラ１１２に通知を送信する。他の実施形態では、通知モジュール３０６は、ＰＰＲＣまたはその他のミラー・データ・プロセスを制御するサーバまたはその他のコンピュータに通知を送信する。
【００７０】
他の実施形態では、通知モジュール３０６はエラー・メッセージを発生する。エラー・メッセージは、２次記憶システム１０６内の２次記憶コントローラ１１４、データ・ムーバ、またはその他の装置に送信することができ、動作を停止するか、管理者に警報を出すか、装置を遮断するか、ミラー・ボリューム１０８に関するすべての読み取りコマンド、書き込みコマンド、コピー・コマンド、またはその他のコマンドを停止するなどのために、２次記憶コントローラ１１４またはその他の装置内でアクションを引き起こすことができる。当業者であれば、警報モジュール２０６からの警報によって発生される可能性のあるその他の通知およびエラーを認識することになるであろう。
【００７１】
図４は、本発明により、ミラー・ボリューム１０８内のデータ不一致を検出するための１次記憶システム１０２に関連する装置４００の一実施形態を描写している。装置４００は、一実施形態では、以下に記載するビットマップ・モジュール４０２および送信モジュール４０４を含む、１次記憶コントローラ１１２を含む。他の諸実施形態では、装置４００は、１次記憶システム１０２内の他の装置またはコンピュータ内あるいは１次記憶システム１０２と通信状態にあるコンピュータまたは装置内に含まれる。
【００７２】
１次記憶コントローラ１１２は、一実施形態では、２次記憶システム１０６にコピーされるかまたは書き込まれる予定の少なくとも１つの変更済みレコードについて１次記憶システム１０２上で占有されたセクタに相関するビットを含むビットマップを生成するビットマップ・モジュール４０２を含む。１次記憶システム１０２および２次記憶システム１０６はそれぞれ、不正規ＣＫＤトラックによって構成された少なくとも１つのデータ記憶装置を含む。典型的には、ビットマップ・モジュール４０２は、トラック内の各セクタごとに１つのビットを有するビットマップを生成する。他の実施形態では、ビットマップ・モジュール４０２は、各行が１つのトラックに対応し、各列が１つのトラックの１つのセクタに対応する、ビットマップ・テーブルを生成する。他の実施形態では、ビットマップ・モジュール４０２は、１次記憶システム１０２上の変更済みレコードに対応する開始標識およびブロック標識を生成する。
【００７３】
一実施形態では、ビットマップ・モジュール４０２は、ミラー・ボリューム１０８にコピーすべきレコードによって占有されたセクタに対応するビットのそれぞれに「１」を有し、ビットマップの他のすべてのビットについて「０」を有するビットマップを生成する。他の実施形態では、ビットマップ・モジュール４０２は、ミラー・ボリューム１０８にコピーすべきレコードによって占有されたセクタに対応するビットのそれぞれに「０」を有し、ビットマップの他のすべてのビットについて「１」を有するビットマップを生成する。他の実施形態では、ビットマップ・モジュール４０２は、メタデータを含むビットマップを生成する。メタデータは、トラック番号、シリンダ番号、ボリューム情報などを含むことができる。当業者であれば、レコードとともに送信され、１次ボリューム１０４上のレコードによって占有されたトラックのセクタを識別するために使用される可能性のあるビットマップをビットマップ・モジュール４０２が生成できる他の方法を認識することになるであろう。他の実施形態では、ビットマップ・モジュール４０２は、変更済みレコードの開始ブロックを示す開始標識を生成する。他の実施形態では、ビットマップ・モジュール４０２は、変更済みレコードによって占有されたブロックの数を示すブロック標識を生成する。
【００７４】
一実施形態では、１次記憶コントローラ１１２は、２次記憶システム１０６にビットマップを送信する送信モジュール４０４を含む。他の実施形態では、送信モジュール４０４は、対応する変更済みレコードのコピー、メタデータ、書き込みコマンド、書き込みフォーマット・コマンド、またはその他の情報をビットマップとともに送信する。２次記憶システム１０６の比較モジュール２０４は、ビットマップ内に示されたセクタ位置を、２次記憶システム１０６上のＣＲＣＢ内にリストされた対応するセクタ位置と比較する。他の実施形態では、比較モジュール４０４は、開始標識およびブロック標識をトラック・メタデータと比較する。
【００７５】
２次記憶システム１０６の警報モジュール２０６は、ビットマップ内に示されているように、変更済みレコードの開始セクタが、ＣＲＣＢ内に示されているように、２次記憶システム１０６上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生する。一実施形態では、警報モジュール２０６は、ビットマップ内に示される、少なくとも１つのレコードの終了セクタが、ＣＲＣＢ内に示される、２次記憶システム１０６上のレコードの終了セクタに位置合わせしていないことに応答して、警報を発生する。他の実施形態では、警報モジュール２０６は、トラック・メタデータ内に示される、開始標識によって示された第１のブロックが２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、あるいは、開始標識およびブロック標識によって示される、２次記憶システム１０６上で変更すべきブロックのうちの終了ブロックが、トラック・メタデータ内に示される、２次記憶システム１０６上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生する。他の実施形態では、１次記憶システム１０２は、２次記憶システム１０６内の通知モジュール３０６からレコード不一致通知を受信したことに応答して、２次記憶システム１０６へのレコードのコピーの送信を停止する。
【００７６】
図５は、本発明の一実施形態により、ミラー・ボリューム１０８内のデータ不一致を検出するための２次記憶システム１０６に関連する方法５００の一実施形態を例示する概略流れ図である。方法５００は５０２から始まり、受信モジュール２０２は５０４で、１次記憶システム１０２からのビットマップを２次記憶システム１０６で受信する。このビットマップは、変更済みレコードについて１次記憶システム１０２上で占有されたセクタに相関するビットを含む。１次記憶システム１０２および２次記憶システム１０６はそれぞれ、不正規ＣＫＤトラックによって構成された少なくとも１つのデータ記憶装置を含む。
【００７７】
比較モジュール２０４は５０６で、ビットマップ内に示されたセクタ位置を、２次記憶システム１０６上のＣＲＣＢ内にリストされた対応するセクタ位置と比較する。ＣＲＣＢは、１つまたは複数の変更済みレコードがコピーされるトラックを記述する。警報モジュール２０６は５０８で、ビットマップ内に示される、変更済みレコードの開始セクタが、ＣＲＣＢ内に示される、２次記憶システム１０６上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生し、方法５００は５１０で終了する。他の実施形態では、警報モジュール２０６は５０８で、ビットマップ内に示される、変更済みレコードの終了セクタが、ＣＲＣＢ内に示される、２次記憶システム上のレコードの終了セクタに位置合わせしていないことに応答して、警報を発生し、方法５００は５１０で終了する。
【００７８】
図６は、本発明の一実施形態により、ミラー・ボリューム１０８内のデータ不一致を検出するための１次記憶システム１０２に関連する方法６００の一実施形態を例示する概略流れ図である。方法６００は６０２から始まり、ビットマップ・モジュール４０２は６０４で、２次記憶システム１０６にコピーされる予定の少なくとも１つのレコードについて１次記憶システム１０２上で占有されたセクタに相関するビットを含むビットマップを生成する。他の実施形態では、ビットマップ・モジュール４０２は６０４で、開始標識またはブロック標識あるいはその両方を生成する。１次記憶システム１０２および２次記憶システム１０６はそれぞれ、不正規ＣＫＤトラックによって構成された少なくとも１つのデータ記憶装置を含む。送信モジュール４０４は６０６で、ビットマップまたは開始標識／ブロック標識を２次記憶システム１０６に送信し、方法６００は６０８で終了する。一実施形態では、送信モジュール４０４は６０６で、変更済みレコード（複数も可）のコピーも送信する。
【００７９】
図７は、本発明の一実施形態により、ミラー・ボリューム１０８内のデータ不一致を検出するための２次記憶システム１０６に関連する方法７００の特定の一実施形態を例示する概略流れ図である。方法７００は７０２から始まり、受信モジュール２０２は７０４で１次記憶システム１０２からビットマップを受信する。このビットマップは、１次記憶システム１０２上の変更済みレコードの占有セクタに対応する。また、受信モジュール２０２は７０４で、変更済みレコードを保管するよう、ミラー・ボリューム１０８および関連２次記憶コントローラ１１４に指示するコマンドも受信する。また、受信モジュール２０２は７０４で、１つまたは複数の変更済みレコードを受信することもできる。
【００８０】
比較モジュール２０４は７０６で、ビットマップ内に示されたセクタ位置を、変更済みレコードがコピーされる予定の２次記憶システム１０６のミラー・ボリューム１０８上のトラックに関連するＣＲＣＢ内にリストされた対応するセクタ位置と比較する。警報モジュール２０６は７０８で、ビットマップ内に示される、変更済みレコードの開始セクタが２次記憶システム１０６のミラー・ボリューム１０８内のレコードの開始セクタに位置合わせしているかどうかを判別する。開始セクタが位置合わせしていないと警報モジュール２０６が７０８で判別した場合、警報モジュール２０６は７１０で警報を発生し、方法７００は７１８で終了する。
【００８１】
開始セクタが位置合わせしていると警報モジュール２０６が７０８で判別した場合、警報モジュール２０６は７１２で、受信モジュール２０２によって受信され、受信されたビットマップおよびレコード（複数も可）に関連するコマンドが書き込みフォーマット・コマンドまたは同様のコマンドであるかどうかを判別する。受信されたコマンドが書き込みフォーマット・コマンドまたは同様のコマンドであると警報モジュール２０６が７１２で判別した場合、コピー・モジュール３０４は７１６で、レコード（複数も可）を２次記憶システム１０６のミラー・ボリューム１０８に保管し、方法７００は７１８で終了する。書き込みフォーマット・コマンドが受信されたレコードに関連する場合、書き込みフォーマット・コマンドは、終了セクタが位置合わせしているかどうかをチェックする必要がないように、ミラー・ボリューム１０８上の関連レコード（複数も可）のサイズを変更することができる。
【００８２】
受信モジュール２０２によって受信されたコマンドが書き込みフォーマット・コマンドではないと警報モジュール２０６が７１２で判別した場合、警報モジュール２０６は７１４で、ビットマップ内に示される、変更済みレコード（複数も可）の終了セクタが２次記憶システム１０６のミラー・ボリューム１０８内のレコードの終了セクタに位置合わせしているかどうかを判別する。セクタが位置合わせしていると警報モジュール２０６が７１４で判別した場合、コピー・モジュール３０４は７１６でレコード（複数も可）を保管し、方法７００は７１８で終了する。終了セクタが位置合わせしていないと警報モジュール２０６が７１４で判別した場合、警報モジュール２０６は７１０で警報を発生し、方法７００は７１８で終了する。方法７００は、ビットマップの代わりに開始標識およびブロック標識を使用するか、セクタの代わりにブロックを使用するか、あるいはその両方を使用して、実施することもできることに留意されたい。
【００８３】
図８は、本発明の一実施形態により、１次記憶システム１０２から送信されたコピー済みレコードおよび関連ビットマップと、２次記憶システム１０６の対応するセクタおよび関連ＣＲＣＢの一例とを例示するブロック図である。１次記憶システム１０２の１次ボリューム１０４からの１次トラック８０２は、レコード８０６によって占有されたセクタ８０４に分割された状態で示されている。セクタが示されているが、当業者であれば、複数セクタのグループ、複数バイトのグループなど、他のブロックを使用してトラックを分割できることを理解するであろう。１次トラック８０２は、可変長レコード８０６を有する不正規ＣＫＤトラックを描写するためのものである。レコード０  ８０８は、典型的には、セクタ０から始まり、単一セクタを占有する。レコード０は、典型的には、４８バイトであり、セクタ０に常駐する。セクタ０は、ＣＲＣＢを保管するために使用できるもののうちの未使用部分を含む。レコード１  ８１０は、セクタ１および２を占有している状態で描写されている。レコード２  ８１２は、セクタ３〜６を占有している状態で描写されており、ミラー・ボリューム１０８にコピーすべきレコードとして指定されている。レコード３  ８１４は、セクタ７〜１０を占有している状態で描写されている。ミラー・ボリューム１０８にコピーされるレコード２  ８１２に対応するビットマップ８１６が示されている。ビットマップ８１６は、レコード２  ８１２によって１次ボリューム１０４上で占有されたセクタに対応するビット３〜６以外のすべてのビットについてゼロを有する。
【００８４】
例１は、２次記憶システム１０６のミラー・ボリューム１０８の一部であるデータ記憶装置１１８上に含まれる２次トラック８１８を描写している。２次トラック８１８は不正規ＣＫＤトラックである。２次トラック８１８は、レコード８２２を含むセクタ８２０に分割されている。レコード０  ８２４は部分セクタ０を占有する。セクタ０の未使用部分は、２次トラック８１８に関するＣＲＣＢを保管するために使用される。レコード１  ８２６はセクタ１〜３を占有し、レコード２  ８２８はセクタ４〜８を占有し、レコード３  ８３０はセクタ９および１０を占有する。ビットマップ８１６とともに受信モジュール２０２によって受信された１次トラック８０２からのレコード２  ８１２は、レコード２  ８１２がコピーされる予定のセクタ３〜６の上に示されている。２次トラック８１８に関するＣＲＣＢ８３２はテーブルの形で描写されている。ＣＲＣＢ８３２は、不正規ＣＫＤトラック内のレコードに関するレコード位置およびフィールド・サイズを示す任意のフォーマットにすることができる。ＣＲＣＢ８３２は、レコード１  ８２６からｎ番目のレコード８３４まで順番にレコードを含む。レコード０  ８２４は、典型的には、セクタ０のみを占有するので含まれない。ＣＲＣＢ８３２は、開始セクタ８３６、キー・フィールド・サイズ８３８、およびデータ・フィールド・サイズ８４０を含む。便宜上、２次トラック８１８のレコードはキー・フィールドをまったく含まず、データ・フィールド・サイズ８４０はセクタの数として描写されている。レコード１〜３  ８２６、８２８、８３０は含まれ、２次トラック８１８の例証に対応する。
【００８５】
受信モジュール２０２が１次記憶システム１０２からビットマップ８１６を受信すると、比較モジュール２０４はビットマップ８１６をＣＲＣＢ８３２と比較する。例１では、変更済みレコード２  ８１２は、レコード１  ８２６の途中である２次トラック８１８のセクタ３から始まる。変更済みレコード２  ８１２の終わりは、２次トラック８１８のレコード２  ８２８の途中であるセクタ６にある。変更済みレコード２  ８１２が書き込みフォーマット・コマンドの一部としてコピーされる予定である場合、変更済みレコード２  ８１２の始まりにより、警報モジュール２０６が警報を発生することになるであろう。変更済みレコード２  ８１２が書き込みコマンドまたは同様のコマンドの一部としてコピーされる予定である場合、変更済みレコード２  ８１２の始まりおよび終わりにより、警報モジュール２０６が警報を発生することになるであろう。
【００８６】
図９は、本発明の一実施形態により、１次記憶システム１０２から送信されたコピー済みレコードおよび関連ビットマップと、２次記憶システム１０６の対応するセクタおよび関連ＣＲＣＢのもう１つの例とを例示するブロック図である。例２は、図８に例示されているものと同じであるレコード２  ８１２および関連ビットマップ８１６を含む。例２は、レコード９０６によって占有されたセクタ９０４に分割された異なる２次トラック９０２を含む。この場合も、レコード０  ９０８はセクタ０を占有する。レコード１  ９１０はセクタ１および２を占有し、レコード２  ９１２はセクタ３および４を占有し、レコード３  ９１４はセクタ５および６を占有し、レコード４  ９１６はセクタ７〜１０を占有する。２次トラック９０２に関する対応するＣＲＣＢ９１８が示されており、これはレコード１  ９１０からトラック内の最後のレコードであるレコードｎ  ９２０までを含む。ＣＲＣＢ９１８は、レコード１〜４  ９１０、９１２、９１４、９１６に関する項目を描写しており、開始セクタ９２２、キー・フィールド・サイズ９２４、およびデータ・フィールド・サイズ９２６を示している。この場合も、レコードのキー・フィールド・サイズ９２４はゼロであり、データ・フィールド・サイズ９２６は占有されたセクタの数として示されている。
【００８７】
例２では、変更済みレコード２  ８１２の始まりはセクタ３にあり、２次トラック９０２のレコード２  ９１２の始まりに位置合わせしている。加えて、変更済みレコード２  ８１２の終わりはセクタ６にあり、２次トラック９０２のレコード３  ９１４の終わりに位置合わせしている。この例では、受信されたビットマップ８１６と２次トラック９０２のＣＲＣＢ９１８を比較しても、警報を発生しないであろう。しかし、例２は、典型的には、１次ボリューム１０４とミラー・ボリューム１０８との不一致の場合に非常に頻繁に発生するわけではなく、１次記憶システム１０２から送信された他のレコードは警報を発生する可能性があるであろう。
【００８８】
有利なことに、１次ボリューム１０４と対応するミラー・ボリューム１０８のデータ間の不一致を検出するための方法が提供され、ボリューム１０４、１０８は可変長レコードを有する不正規ＣＫＤトラックを含む。本発明は、好ましい一実施形態によれば、ＣＲＣＢの送信など、不一致を検出するための他に可能な方法より効率的である。有利なことに、本発明によって発生された警報は、１次ボリュームの正確なコピーではないミラー・ボリューム１０８へのコピーを停止するために使用することができ、データ破損ならびに時間のかかる重大なエラーを防止することができる。
【００８９】
本発明は、その精神または本質的な特徴から逸脱せずに他の具体的な形で実施することができる。上記の諸実施形態は、すべての点において、制限的なものではなく、例示的なものと見なすべきである。したがって、本発明の範囲は、上記の説明ではなく、特許請求の範囲によって示される。特許請求の範囲と同等の意味および範囲に該当するすべての変更は、その範囲内に包含すべきものである。
【図１】
2010510564.tif 000003
【図２】
2010510564.tif 000004
【図３】
2010510564.tif 000005
【図４】
2010510564.tif 000006
【図５】
2010510564.tif 000007
【図６】
2010510564.tif 000008
【図７】
2010510564.tif 000009
【図８】
2010510564.tif 000010
【図９】
2010510564.tif 000011
【手続補正書】
【提出日】平成21年6月15日(2009.6.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ミラー・ボリューム内の不一致を検出するための装置であって、
１次記憶システムからの開始標識を２次記憶システムで受信するように構成された受信モジュールであって、前記開始標識が前記２次記憶システム内のデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含む、前記受信モジュールと、
前記開始標識によって示された前記第１のブロックの位置をトラック・メタデータ内にリストされたブロック位置と比較するように構成された比較モジュールと、
前記トラック・メタデータ内に示される、前記開始標識によって示された前記第１のブロックが前記２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生するように構成された警報モジュールと、
を含み、
前記２次記憶システムの前記第１のブロックが前記１次記憶システム内のデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応し、
前記１次記憶システムおよび前記２次記憶システム上の前記トラックがそれぞれ不正規カウント・キー・データ（「ＣＫＤ」）トラックを含み、
前記トラック・メタデータが前記２次記憶システムの前記不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する、
前記装置。
【請求項２】
前記受信モジュールがさらに前記１次記憶システムからブロック標識を受信し、前記ブロック標識が変更すべき前記２次記憶システム上の同一位置のブロックに対応する前記１次記憶システムの前記少なくとも１つの変更済みレコードによって占有されたブロックの量を含み、
前記比較モジュールがさらに、前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべきブロックを、前記トラック・メタデータ内にリストされたブロック位置と比較し、
前記警報モジュールがさらに、前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべき前記ブロックのうちの終了ブロックが、前記トラック・メタデータ内に示される、前記２次記憶システム上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生する、請求項１記載の装置。
【請求項３】
前記開始標識および前記ブロック標識がビットマップを含む、請求項２記載の装置。
【請求項４】
前記ブロック標識によって示される前記ブロックの量がさらに、前記変更済みレコードが非順次である場合に、前記２次記憶システムにコピーすべき前記１次記憶システム上の複数の変更済みレコードに関するブロック位置に対応する前記２次記憶システムの前記データ記憶装置の前記トラック上の非連続ブロックの位置および量を表す、請求項２または３記載の装置。
【請求項５】
前記警報モジュールが前記変更済みレコードに対応する受信された開始標識に関する警報を発生しなかったことに応答して、前記１次記憶システム上の前記少なくとも１つの変更済みレコードを前記２次記憶システム上の同一位置にコピーするように構成されたコピー・モジュールをさらに含む、請求項１、２、３、または４記載の装置。
【請求項６】
１つのブロックが、１つのセクタ、複数セクタのクラスタ、複数バイトのグループ、および複数ビットのグループのうちの１つを含む、請求項１ないし５のいずれかに記載の装置。
【請求項７】
前記トラック・メタデータがキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）を含む、請求項１ないし６のいずれかに記載の装置。
【請求項８】
前記警報モジュールによって発生された警報に応答して、前記２次記憶システム内の前記データ記憶装置へのレコードのコピーを停止するように構成されたコピー停止モジュールをさらに含む、請求項１ないし７のいずれかに記載の装置。
【請求項９】
前記警報に応答して前記１次記憶システムに通知を送信するように構成された通知モジュールであって、前記通知が前記２次記憶システムへのレコードの送信を停止するためのメッセージを含む通知モジュールをさらに含む、請求項１ないし８のいずれかに記載の装置。
【請求項１０】
前記２次記憶システムが、前記１次記憶システムのデータ記憶装置上のデータのミラー・コピーを保管するように構成される、請求項１ないし９のいずれかに記載の装置。
【請求項１１】
ミラー・ボリューム内の不一致を検出するためのシステムであって、
コンピュータ・ネットワークと、
不正規カウント・キー・データ（「ＣＫＤ」）トラックによって構成された少なくとも１つのデータ記憶装置を有する１次記憶システムと、
前記コンピュータ・ネットワークにより前記１次記憶システムと通信状態にある２次記憶システムであって、前記１次記憶システムのデータ記憶装置上のデータのミラー・コピーを保管するように構成され、不正規ＣＫＤトラックによって構成された少なくとも１つのデータ記憶装置を含む２次記憶システムとを含み、
前記２次記憶システムが、
前記１次記憶システムからの開始標識を前記２次記憶システムで受信するように構成された受信モジュールであって、前記開始標識が前記２次記憶システム内の不正規ＣＫＤトラックを有するデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含む、前記受信モジュールと、
前記開始標識によって示された前記第１のブロックの位置をトラック・メタデータ内にリストされたブロック位置と比較するように構成された比較モジュールと、
前記トラック・メタデータ内に示される、前記開始標識によって示された前記第１のブロックが前記２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生するように構成された警報モジュールと、
を含み、
前記２次記憶システムの前記第１のブロックが前記１次記憶システム内の不正規ＣＫＤトラックを有するデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応し、
前記トラック・メタデータが前記２次記憶システムの前記不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する、
前記システム。
【請求項１２】
前記受信モジュールがさらに前記１次記憶システムからブロック標識を受信し、前記ブロック標識が変更すべき前記２次記憶システム上の同一位置のブロックに対応する前記１次記憶システムの前記少なくとも１つの変更済みレコードによって占有されたブロックの量を含み、
前記比較モジュールがさらに、前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべきブロックを、前記トラック・メタデータ内にリストされたブロック位置と比較し、
前記警報モジュールがさらに、前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべき前記ブロックのうちの終了ブロックが、前記トラック・メタデータ内に示される、前記２次記憶システム上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生する、請求項１１記載のシステム。
【請求項１３】
前記１次記憶システムおよび前記２次記憶システムがピアツーピア・リモート・コピー（「ＰＰＲＣ」）システムの一部である、請求項１１または１２記載のシステム。
【請求項１４】
ミラー・ボリューム内の不一致を検出するための方法であって、
１次記憶システムからの開始標識を２次記憶システムで受信するステップであって、前記開始標識が前記２次記憶システム内のデータ記憶装置のトラック上で変更すべき第１のブロックの位置の表示を含む、前記受信するステップと、
前記開始標識によって示された前記第１のブロックの位置をトラック・メタデータ内にリストされたブロック位置と比較するステップと、
前記トラック・メタデータ内に示される、前記開始標識によって示された前記第１のブロックが前記２次記憶システム上のレコードの開始ブロックに位置合わせしていないことに応答して、警報を発生するステップと、
を含み、
前記２次記憶システムの前記第１のブロックが前記１次記憶システム内のデータ記憶装置のトラック上の少なくとも１つの変更済みレコードの同一位置の第１のブロックに対応し、
前記１次記憶システムおよび前記２次記憶システム上の前記トラックがそれぞれ不正規カウント・キー・データ（「ＣＫＤ」）トラックを含み、
前記トラック・メタデータが前記２次記憶システムの前記不正規ＣＫＤトラック上のユーザ・レコードの長さおよび位置を記述する、
前記方法。
【請求項１５】
前記１次記憶システムからブロック標識を受信するステップであって、前記ブロック標識が変更すべき前記２次記憶システム上の同一位置のブロックに対応する前記１次記憶システムの前記少なくとも１つの変更済みレコードによって占有されたブロックの量を含む前記受信するステップと、
前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべきブロックを、前記トラック・メタデータ内にリストされたブロック位置と比較するステップと、
前記開始標識および前記ブロック標識によって示される、前記２次記憶システム上で変更すべき前記ブロックのうちの終了ブロックが、前記トラック・メタデータ内に示される、前記２次記憶システム上のレコードの終了ブロックに位置合わせしていないことに応答して、警報を発生するステップと、
をさらに含む、請求項１４記載の方法。
【請求項１６】
前記変更済みレコードに対応する受信された開始標識に関する警報が発生されなかったことに応答して、前記１次記憶システム上の前記少なくとも１つの変更済みレコードを前記２次記憶システム上の同一位置にコピーするステップをさらに含む、請求項１４、または１５記載の方法。
【請求項１７】
発生された警報に応答して、前記２次記憶システム内の前記データ記憶装置へのレコードのコピーを停止するステップをさらに含む、請求項１４ないし１６のいずれかに記載の方法。
【請求項１８】
前記警報に応答して前記１次記憶システムに通知を送信するステップであって、前記通知が前記２次記憶システムへのレコードの送信を停止するためのメッセージを含むステップをさらに含む、請求項１４ないし１７のいずれかに記載の方法。
【請求項１９】
ミラー・ボリューム内の不一致を検出するためのコンピュータ・プログラムであって、
コンピュータに、
１次記憶システムからのビットマップを２次記憶システムで受信するステップであって、前記ビットマップが前記１次記憶システム上の不正規カウント・キー・データ（「ＣＫＤ」）トラック上の少なくとも１つの変更済みレコードのセクタに相関するビットを含み、前記少なくとも１つの変更済みレコードが前記２次記憶システム上の対応する不正規ＣＫＤトラック上の同一位置にコピーする予定のものである前記受信するステップと、
前記ビットマップ内に示されたセクタ位置を、前記２次記憶システム上のキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）内にリストされた対応するセクタ位置と比較するステップと、
前記ビットマップ内に示される、前記少なくとも１つのレコードの開始セクタが、前記ＣＲＣＢ内に示される、前記２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するステップと、
を実行させる、前記コンピュータ・プログラム。
【請求項２０】
ミラー・ボリューム内の不一致を検出するための方法であって、
１次記憶システム上の不正規カウント・キー・データ（「ＣＫＤ」）トラック上の少なくとも１つのレコードによって占有されたセクタに相関するビットを含むビットマップを生成するステップであって、前記少なくとも１つのレコードが２次記憶システムの不正規ＣＫＤトラック上の同一位置にコピーする予定のものである前記生成するステップと、
前記ビットマップを前記２次記憶システムに送信するステップとを含み、
前記２次記憶システムが、前記ビットマップ内に示されたセクタ位置を、前記２次記憶システム上のキャッシュ・レコード制御ブロック（「ＣＲＣＢ」）内にリストされた対応するセクタ位置と比較するように構成され、
さらに、前記ビットマップ内に示される、前記少なくとも１つのレコードの開始セクタが、前記ＣＲＣＢ内に示される、前記２次記憶システム上のレコードの開始セクタに位置合わせしていないことに応答して、警報を発生するように構成される、
前記方法。
【国際調査報告】
2010510564.tif 000012
2010510564.tif 000013
2010510564.tif 000014