【手続補正書】
【提出日】平成18年2月22日(2006.2.22)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
上述のように、データベースを完全停止させないでVOLの複製を実現する技術が重要である。ここでいう完全停止をさせないこととは、システム障害があった場合でも業務上支障のない範囲の短時間に回復することを意図しており、システム利用者からシステムが停止しているというように見えないことをいう。このような技術として、特開2002-41368号に開示される技術のようなディスク内のデータをディスク装置内で複製（レプリカ）を実行するものがあり、これをVOLに適用したVOLレプリカという技術がある。このVOLレプリカには、データ複製元である正VOLとデータ複製先である副VOLとからなる一対のVOLを対象としたペア構成とペア分割という二つの手段からなる。ペア構成は、正／副VOLのPVIDとVOL情報とを含む全てのデータとを一致（同期）させることにより、正VOLの複製である副VOLを高速に生成する手段である。従って、ペア構成の状態では、正／副VOLのPVIDが一致した状態にあり、一つのVOLとして上位のコンピュータシステムに見える機能を提供する。一方、ペア分割は、ペア構成による同期を解除し、ペア構成となっている一対のVOLのうち、副VOLのPVIDを正VOLとは違うPVIDに書き換える手段である。これにより、ペア構成時に上位のコンピュータシステムに対して一つに見えた一対のVOLを分割し、正VOLと副VOLとの別々のVOLとして見える機能を提供する。これらの二つの手段により、正VOLの複製を高速に生成し、複製した副VOLをコンピュータシステムから操作することができる機能が提供される。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
待機系は副VOLの変更が行われたことを通知されると、副VOL状態の変更を反映する処理を行う。例えば、VOLレプリカでペア分割が行われた場合には、取得済みの副VOLの物理名を用いて、新たに設定された副VOLのPVIDの取得を行い、さらに、このPVIDを用いて副VOLの情報を取得する。これにより、変更後の副VOL情報が反映され、待機系が副VOLのアクセスを行うことができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
ディスク300は、ボリューム管理部310と、VOLレプリカの対象となる正VOL320と副VOL330とを含み、前記正／副VOL（320、330）は、そのVOLの認識にPVID（321、331）と、VOLのアクセスに必要なVOL情報（322、332）とを含む。
前記ボリューム管理部310は、VOLレプリカを実行し、前記正VOL320と副VOL330のPVID（321、331）とVOL情報（322、332）とを変更する機能を有する。
現用系コンピュータ100は、OS130とクラスタプログラム120、ディスク管理プログラム150、アプリケーション110、及び、VOLレプリカ定義ファイル160、VOLレプリカ状態ファイル140を含む。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
前記監視部124は、前記アプリケーション110を監視することで自系の障害とMRCF（複製作成処理）の実行を検知する機能と、前記通信部123を介し待機系のクラスタプログラム220の通信部223と通信することで自系状態を通知する機能と他系状態の障害及びVOLレプリカの状態を検知する機能とを有する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００３８
【補正方法】変更
【補正の内容】
【００３８】
まず、前記前処理は図4、図5で共通する処理であり、また現用系と待機系コンピュータでも共通する処理を行う。前記前処理は第一にVOLレプリカ定義の読み込み0401を行う。これは、現用系コンピュータ100上のクラスタプログラム130がVOLレプリカ定義ファイル160を読み込む処理を表す。この定義ファイルから、VOLレプリカの対象となる副VOLの物理名を取得する（副VOL物理名取得処理0402）。ここまでで前処理が終了し、現用系100は副VOL変更が行われるまで本実施例が適用されていない場合と同様の処理を実行し、通常現用状態0403になる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
次に、現用系100で前記系切替部125が前記待機系の認識通知(矢印0581左向き)を受信すると、前記ディスク管理プログラム130に処理を戻し、副VOL変更を伴う処理を実施する（VOLレプリカ実施0405）。この処理は、OS130あるいはOS上のディスク管理情報バッファ131を介して、ディスク装置300上のボリューム管理部310に処理が渡される。前記管理部310は、副VOLの制御権を獲得し、以降の処理を実行する。まず、図5のペア構成0541の場合、前記管理部310は副VOL330のPVID331を正VOL330のPVID321と同じ値に変更し、処理が終了する（矢印0582）。一方、図4のペア分割の場合は、前記管理部310が前記ペア構成0541により正VOLのPVID321と同じ値になっている前記副VOLのPVID331の値をユニークな別の値へと、また副VOLのVOL情報332もペア構成を行われる前の値から変更し、処理が終了する（矢印0482）。 
以上がStage Xの処理であり、これによって現用系で副VOL変更処理を実施されることを待機系に通知することができる効果をもたらす。これは、待機系がこの副VOL変更完了を認識する前に現用系に障害が発生した場合に、前記変更処理が実施されたかどうかを待機系が認識できるようという効果をもたらし、これによって障害発生後に引き継ぐべき処理を認識することができるようになる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
前記副VOL獲得処理0426の後、副VOLのPVID取得処理0427が行われる。前記PVID取得処理0427では、前記系切替部225が前記前処理0422で取得した前記副VOL物理名を用い、ディスク管理プログラム250を実行する。前記プログラム250は OS上のディスク管理情報バッファ231を介さず、ディスク装置300上の前記ボリューム管理部310を直接呼び出し（矢印0486左向き）、前記管理部310は副VOL330のPVID331を読み出し（副VOL PVID取得0444）、返す（矢印0486右向き）。これにより、前記系切替部225は前記副VOLのPVID331を得る（副VOL PVID取得処理0427）。この時、前記ディスク管理プログラム250は、前記処理0427で取得した副VOLのPVID331をディスク管理情報バッファ231に格納する。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００４７
【補正方法】変更
【補正の内容】
【００４７】
前記副VOL PVID取得処理0427の後、副VOL情報取得処理0428が行われる。前記VOL情報取得処理0428では、前記系切替部225が前記PVID取得処理0427で取得した副VOLのPVID331を用い、ディスク管理プログラム250を実行する。前記プログラム250は、前記処理0427同様の処理の流れで前記管理部310を呼び、副VOLのVOL情報332を取得する（矢印0487、副VOL情報取得処理0445）。この時も前記処理0427と同様に、前記ディスク管理プログラム250は取得された前記副VOL情報332をディスク管理情報バッファ231に格納する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
前記処理0428の完了後、前記副VOL獲得処理0426と同じ処理の流れで、前記系
切替部225は副VOLの解放処理を行う（副VOL解放処理0429、0446、矢印0488）。
一方、ペア構成の場合（図5）、副VOL320は変更され、正VOL310と併せて一つのVOLとして現用系100／待機系200から見なされる状態にある。そのため、待機系200がディスク管理情報バッファ上に格納している副VOLのPVID331、VOL情報332により、存在しない変更前の副VOLにアクセスしエラーを発生することを消去する必要がある。従って、現用系100は副VOL変更完了通知処理0506により待機系200に副VOL変更完了を通知する（矢印0582）。ここで前記処理0506、通知（矢印0582）、及び待機系の副VOL変更完了認識処理0525は、前記処理0407、通知（矢印0484）、処理0425と同等の処理が行われ、待機系200上の系切替部225に副VOLが変更されたことが認識される。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００４９
【補正方法】変更
【補正の内容】
【００４９】
副VOL変更を認識した前記系切替部225は、ディスク管理プログラム250を介して、副VOL情報の反映処理である副VOL情報削除処理0526を実行する。前記処理0526では、前記プログラム250がディスク管理情報バッファ231に対して処理を行い、前記バッファ231上に格納されたペア分割状態における副VOLのPVID331及びVOL情報332を消去する。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００５３
【補正方法】変更
【補正の内容】
【００５３】
Stage Yの後、Stage Zが実行される。待機系200は前記処理0429の後、反映完了通知0430を実行し、現用系200の系切替部225は、実行を通知した時と同様のパスを通じて、待機系100上の系切替部125に対して副VOL情報が待機系に反映されたことを通知する（矢印0489右向き）。待機系200は、前記通知を現用系が受信したことを確認して前記処理0430を終了する。 
ここで、前記処理0410において、正／副VOL間で、PVIDやVOL情報以外の、データが一致していない場合がある。これは以下の理由による。正／副VOLのデータは一致していたペア分割（副VOL変更処理0401）の後、前記処理0410が実行されるまでに、正VOLの運用が継続され、その結果、正VOLが更新されている場合があるためである。ここで、正／副VOLの一致が必要である場合には、副VOL変更処理0401から前記処理0410までの間、正VOLの更新を一時的に制限することや、制限を行わない場合には、前記処理0410において、正／副VOLの運用を開始する前に、正／副VOLの同期化を行うこともある。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
一方、前記通知（矢印0489）を受けた現用系の系切替部125は、待機系で副VOL情報が反映されたことを認識し（反映完了認識処理0408）、ディスク管理プログラム150を介して、副VOLの制御権の獲得を行う（副VOL獲得0409）。以上で、Stage Zが完了し、現用系は通常運用状態0410に移行し、正／副VOL両方の運用を開始し、待機系は通常待機状態0431に移行する。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００５７
【補正方法】変更
【補正の内容】
【００５７】
図6は、現用／待機系コンピュータが実行する前記前処理を詳細に表したフローチャートである。前処理では、現用系／待機系で同様の処理が行われるため、以下では現用系について説明する。
まず、VOLレプリカ定義ファイルの有無を確認する処理0601を行い、VOLレプリカ定義ファイル160にアクセスする（矢印0681）。存在しない場合は、VOLレプリカ処理が実行されないので、特に何の処理を行う必要がなく、前処理を終了する。
一方、存在する場合は、前記ファイル160を読み込み（処理0602、矢印0682）、VOLレプリカの対象となる副VOLの物理名の取得処理0603を行う。ここで、前記処理0602が前記処理0401に、前記処理0603が前記処理0402に対応する。
さらに、VOLレプリカ状態ファイル140よりVOLレプリカ状態を読み込み、VOLレプリカ状態フラグ122に格納する（処理0604、矢印0683）。これは次の理由による。VOLレプリカを実施中にクラスタプログラムを再起動した場合に、待機系に副VOL情報を反映する必要があるかを認識するためである。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００５８
【補正方法】変更
【補正の内容】
【００５８】
以上で、前処理は終了し、通常現用状態0403に移行する（図7、７A）。
図7は、従来のクラスタプログラムによる障害監視／系切替処理に対して、VOLレプリカ／副VOL情報一貫性保証処理との関係を示すフローチャートである。図4、図5では、現用系の通常運用状態（処理0410、0508）と待機系の通常待機状態（処理0431、0528）の処理に対応している。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００６３
【補正方法】変更
【補正の内容】
【００６３】
次に、待機系200上のクラスタプログラム220はまず前記処理0701同様の自系状態のチェックを行い（処理0721、矢印0784）、自系が正常であるかを判断する（
処理0722）。前記処理0722で、自系が異常である場合には、前記クラスタプログ
ラム220上の系切替部225は監視処理を停止し、終了する（処理0723）。一方、自
系が正常である場合は、前記系切替部225は前記通信0781によって現用系100と通信を行う（処理0724）。続いて、前記クラスタプログラム220は副VOL情報反映が必要であるかの判断を行う（処理0725）。副VOL情報反映が必要である場合は、前記クラスタプログラム220は障害回復時の副VOL反映処理（図12、12B）を実行する。必要でない場合は、前記系切替部225は前記通信0781で得た現用系100の状態により、系切替が必要かを判断する（処理0726）。系切替が発生した場合は、前記クラスタプログラム220はアプリケーション210に通知を行い（矢印0785）、現用系へと切り替わる（処理0727）。さらに前記クラスタプログラム220は現用系の監視処理（図7、7A）の実行を行う。一方、系切替が必要でない場合は、前記クラスタプログラム220は前記通信0781で得た現用系でのVOLレプリカの実行の有無により、現用系100でVOLレプリカが実行されるかを判断する（処理0728）。実行される場合には、前記クラスタプログラム220はVOLレプリカ実行処理（図8、8B）を実行し、必要が無い場合は、再び前記処理0721へと戻り処理を継続する。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００６５
【補正方法】変更
【補正の内容】
【００６５】
図8で、現用系100はVOLレプリカを実行する前に、副VOL変更開始を待機系へ通知し（処理0801、矢印0881）、待機系200はこの通知を受信する（処理0821）。
待機系200は前記処理082の後、VOLレプリカ処理が実施中であることを示す状態フラグB1を設定し（処理0822）、副VOL状態反映処理（図9、9B）を実行する。ここで、前記フラグ設定処理0822は、系切替部225がVOLレプリカ状態フラグ222を、VOLレプリカファイル240に格納する処理（矢印0884）を含む。以降の説明でフラグ設定処理では特に明記しない場合でも、前記0884と同様の格納処理が行われる。
一方、現用系100は前記処理0801の後、前記クラスタプログラム120はVOLレプリカ実行開始を示す状態フラグA1を設定し（処理0802）、VOLレプリカを実行する（処理0803）。前記VOLレプリカ処理0803が終了すると、前記クラスタプログラム120は実行完了を示す状態フラグA2を設定し（処理0804、矢印0883）、副VOL状態反映処理（図9、9A）を実行する。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００６７
【補正方法】変更
【補正の内容】
【００６７】
図9で、現用系100のクラスタプログラム120はまず、VOLレプリカ処理でペア分割が行われたかを判断する（処理0901）。このVOLレプリカ処理は前記0803または後述する処理1104で実施されるものである。この前記処理0901は次のような理由による。なぜなら、ペア分割時は、待機系が副VOLへのアクセスを行うため、副VOLの解放を行う必要があり、一方、ペア再構成時は、副VOLの解放が必要でないため、副VOLの運用を現用系で開始できるためである。従って、ペア分割時、前記クラスタプログラム120は副VOLの解放（処理0902）を行う。その後、 前記クラスタプログラム120は待機系に副VOL変更完了を通知し（処理0903、矢印0981）、現用系は、待機系200が副VOL状態反映処理を実行中であることを示す状態フラグA3を設定した（処理0904）後、副VOL運用再開処理（図10、10A）を実行する。一方、待機系200上のクラスタプログラム220は、前記通信0981を受信すると（処理0921）、副VOL変更反映処理の実行開始を示す状態フラグB2を設定する（処理0922）。
その後、前記処理0901同様にペア分割が行われたかを判断する（処理0923）。これは次のような理由による。なぜなら、ペア分割時は待機系が副VOLへのアクセスを行うためロック制御を行う必要があり、一方、ペア構成時は副VOL情報を削除するだけで副VOLへのアクセスは不要であるからである。従って、ペア分割時、クラスタプログラム220は副VOLのPVIDを取得（処理0925）後、副VOLロックを獲得する（処理0926）。そして、副VOL情報の取得し（処理0927）、副VOLロックの解放を行う（処理0928）。一方、ペア再構成時、前記クラスタプログラム120は副VOLのPVIDを含む副VOL情報の削除を行う（処理0924）。これにより、それぞれの場合において待機系200への副VOL情報の反映が完了する。その後、反映完了を示す状態フラグB3を設定し（処理0929）、副VOL運用再開処理（図10、10B）を実行する。
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】００７７
【補正方法】変更
【補正の内容】
【００７７】
まず、現用系100／待機系200のクラスタプログラム120、220はそれぞれ自系の状態フラグを他系に送信し、お互いの状態を認識する（処理1201、1221、矢印1281）。これは次のような理由による。待機系の状態フラグによって待機系の副VOL状態反映処理がすでに反映されているか（待機系状態フラグが0またはA2またはA3またはB3）を判断するためと、待機系で副VOL状態反映が必要な場合に現用系の状態フラグによって待機系が前記Stage X（現用系状態フラグがA1またはB1）を実行する必要がある場合を判断するためであり、待機系の副VOL引継ぎ処理（Stage Y）を実行する場合のうち、現用系が副VOL状態を反映処理中の待機系が系切替した状態であり、副VOL状態の引継ぎが必要である（現用系状態フラグがB2）場合は処理が異なるからである。
【手続補正１９】
【補正対象書類名】図面
【補正対象項目名】図１
【補正方法】変更
【補正の内容】
【図１】
2004272318.tif 000001
【手続補正２０】
【補正対象書類名】図面
【補正対象項目名】図２
【補正方法】変更
【補正の内容】
【図２】
2004272318.tif 000002
【手続補正２１】
【補正対象書類名】図面
【補正対象項目名】図４
【補正方法】変更
【補正の内容】
【図４】
2004272318.tif 000003
【手続補正２２】
【補正対象書類名】図面
【補正対象項目名】図５
【補正方法】変更
【補正の内容】
【図５】
2004272318.tif 000004
【手続補正２３】
【補正対象書類名】図面
【補正対象項目名】図７
【補正方法】変更
【補正の内容】
【図７】
2004272318.tif 000005
【手続補正２４】
【補正対象書類名】図面
【補正対象項目名】図１１
【補正方法】変更
【補正の内容】
【図１１】
2004272318.tif 000006