(57)【要約】【課題】整合性チェック実行時間をより確実に短縮することができる整合性チェック方法及び整合性チェックシステムを提供する。【解決手段】データを共同して格納する複数のディスク装置２と、複数のディスク装置２と接続されるディスクアレイ装置１と、を備え、ディスクアレイ装置１により複数のディスク装置２間の整合性をチェックする整合性チェック方法であって、ディスク装置２は、複数の論理ブロック２１に分割され、ディスクアレイ装置１に、データの更新が行われた論理ブロック２１について整合性チェックを行う整合性チェック部１３を備えた。【選択図】図１
2009075675.tif 000002
【特許請求の範囲】
【請求項１】
データを共同して格納する複数のディスク装置と、前記複数のディスク装置と接続される制御装置と、を備え、前記制御装置により前記複数のディスク装置間の整合性をチェックする整合性チェック方法であって、
前記ディスク装置は、複数の論理ブロックに分割され、
前記制御装置は、
データの更新が行われた前記論理ブロックについて整合性チェックを行う整合性チェック手段を備える整合性チェック方法。
【請求項２】
前記ディスク装置は、前記論理ブロック毎に、データが書き込まれた時間に関する更新時間情報を保持し、
前記整合性チェック手段は、
前記ディスク装置に保持された前記更新時間情報を参照して、データの更新が行われた前記論理ブロックを検索し、検索した前記論理ブロックについて整合性チェックを行う請求項１に記載の整合性チェック方法。
【請求項３】
前記制御装置は、
前記論理ブロック毎に前記更新時間情報を保持する保持手段と、
前記ディスク装置にデータを書き込むとともに、データを書き込んだ前記論理ブロックについて、前記ディスク装置に保持されている前記更新時間情報を更新する書込手段と、
を備え、
前記整合性チェック手段は、前記保持手段に保持されている前記更新時間情報と相違する前記更新時間情報を有する前記論理ブロックについて整合性チェックを行い、
前記制御装置は、
前記整合性チェック手段による整合性チェック後に、前記保持手段に保持されている前記更新時間情報を前記ディスク装置に保持されている前記更新時間情報と等しくなるように更新する更新手段を備える請求項２に記載の整合性チェック方法。
【請求項４】
前記整合性チェック手段は、定期的に、前記ディスク装置に保持されている前記更新時間情報と前記保持手段に保持されている前記更新時間情報とを比較して、データの更新が行われていない前記論理ブロックを検索し、検索した前記論理ブロックについて整合性チェックを行う請求項２又は３に記載の整合性チェック方法。
【請求項５】
前記更新時間情報は、前記論理ブロックに保持されているタイムスタンプである請求項２乃至４の何れか一項に記載の整合性チェック方法。
【請求項６】
前記ディスク装置は、ファイルシステムにより規定される容量を有する前記論理ブロックに分割され、
前記論理ブロックの容量は均一ではない請求項１乃至５の何れか一項に記載の整合性チェック方法。
【請求項７】
前記複数のディスク装置は、前記制御装置に対して並列に接続され、同一のデータを記憶する請求項１乃至６に何れか一項に記載の整合性チェック方法。
【請求項８】
データを共同して格納する複数のディスク装置と、前記複数のディスク装置間の整合性をチェックする制御装置と、を備える整合性チェックシステムであって、
前記ディスク装置は、複数の論理ブロックに分割され、
前記制御装置は、
データの更新が行われた前記論理ブロックについて整合性チェックを行う整合性チェック手段を備える整合性チェックシステム。
【請求項９】
前記ディスク装置は、前記論理ブロック毎に、データが書き込まれた時間に関する更新時間情報を保持し、
前記整合性チェック手段は、
前記ディスク装置に保持された前記更新時間情報を参照して、データの更新が行われた前記論理ブロックを検索し、検索した前記論理ブロックについて整合性チェックを行う請求項８に記載の整合性チェックシステム。
【請求項１０】
前記制御装置は、
前記論理ブロック毎に前記更新時間情報を保持する保持手段と、
前記ディスク装置にデータを書き込むとともに、データを書き込んだ前記論理ブロックについて前記ディスク装置に保持されている前記更新時間情報を更新する書込手段と、
を備え、
前記整合性チェック手段は、前記保持手段に保持されている前記更新時間情報と相違する前記更新時間情報を有する前記論理ブロックについて整合性チェックを行い、
前記制御装置は、
前記整合性チェック手段による整合性チェック後に、前記保持手段に保持されている前記更新時間情報を前記ディスク装置に保持されている前記更新時間情報と等しくなるように更新する更新手段を備える請求項９に記載の整合性チェックシステム。
【請求項１１】
前記整合性チェック手段は、定期的に、前記ディスク装置に保持されている前記更新時間情報と前記保持手段に保持されている前記更新時間情報とを比較して、データの更新が行われていない前記論理ブロックを検索し、検索した前記論理ブロックについて整合性チェックを行う請求項９又は１０に記載の整合性チェックシステム。
【請求項１２】
前記更新時間情報は、前記論理ブロックに保持されているタイムスタンプである請求項９乃至１１の何れか一項に記載の整合性チェックシステム。
【請求項１３】
前記ディスク装置は、ファイルシステムにより規定される容量を有する前記論理ブロックに分割され、
前記論理ブロックの容量は均一ではない請求項８乃至１２の何れか一項に記載の整合性チェックシステム。
【請求項１４】
前記複数のディスク装置は、前記制御装置に対して並列に接続され、同一のデータを記憶する請求項８乃至１３に何れか一項に記載の整合性チェックシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、整合性チェック方法及び整合性チェックシステムに関し、特に、ＲＡＩＤを構成するディスク装置間の整合性チェック方法及び整合性チェックシステムに関する。
【背景技術】
【０００２】
近年、コンピュータシステムに備えられるディスク装置が大容量化している。そして、大容量のディスク装置が故障すると、大量のデータを喪失することになる。そこで、複数のディスク装置を並列に接続してＲＡＩＤ（Redundant Arrays of Inexpensive Disks）を構成することにより、データ喪失の防止が図られている。
【０００３】
例えば、特許文献１では、少なくとも２台のディスク装置に同一のデータを記憶させ、１台のディスク装置が故障しても、残りの１台のディスク装置に記憶されたデータにより復旧を行っている。このように構成されたＲＡＩＤの方式をミラーリング方式と呼ぶ。ミラーリング方式では、ディスク装置を複数のブロックに分割し、ブロック毎にデータを記憶させる。そして、２台のディスク装置間の整合性を保つため、整合性チェックを行っている。具体的には、２台のディスク装置間で、ブロック毎にデータの不一致があるか否かをチェックすることにより、整合性チェックを行っている。
【０００４】
しかし、２台のディスク装置全体について整合性をチェックするため、整合性チェック実行時間がディスク装置の大容量化により増加してしまう。また、整合性チェック実行中は、コンピュータシステムにかかる負荷が高くなるため、ユーザの操作性が悪化してしまう可能性がある。そのため、整合性チェック実行時間の短縮が求められている。
【０００５】
そこで、特許文献２では、データを記憶しているエリアのみを整合性チェックすることにより、整合性チェック実行時間の短縮を図っている。具体的には、特許文献２では、複数のディスク装置に１つのデータを分散して記憶させるとともに、１台のディスク装置に、パリティデータを記憶させている。このように構成されたＲＡＩＤの方式をストライピング方式と呼ぶ。また、これら複数のディスク装置を複数のエリアに分割し、各エリアにストライプ番号を割りふっている。さらに、データを書き込んだエリアのストライプ番号を格納するストライプ登録バッファを備えている。そして、ストライプ登録バッファに格納されているストライプ番号に対応するエリアに対して、パリティデータに基づく整合性チェックを行うことにより、整合性チェック実行時間の短縮を図っている。
【特許文献１】特開平０９−２５９０４７号公報
【特許文献２】特開２００１−１００９３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献２では、書き込まれたデータ量が膨大だと、整合性チェック実行時間の短縮の効果が薄れてしまう。
【０００７】
本発明は、整合性チェック実行時間をより確実に短縮することができる整合性チェック方法及び整合性チェックシステムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１の態様にかかる整合性チェック方法は、データを共同して格納する複数のディスク装置と、前記複数のディスク装置と接続される制御装置と、を備え、前記制御装置により前記複数のディスク装置間の整合性をチェックする整合性チェック方法であって、前記ディスク装置は、複数の論理ブロックに分割され、前記制御装置は、データの更新が行われた前記論理ブロックについて整合性チェックを行う整合性チェック手段を備える。
【０００９】
また、本発明の第２の態様にかかる整合性チェックシステムは、データを共同して格納する複数のディスク装置と、前記複数のディスク装置間の整合性をチェックする制御装置と、を備える整合性チェックシステムであって、前記ディスク装置は、複数の論理ブロックに分割され、前記制御装置は、データの更新が行われた前記論理ブロックについて整合性チェックを行う整合性チェック手段を備える。
【発明の効果】
【００１０】
本発明により、整合性チェック実行時間をより確実に短縮することができる。
【発明を実施するための最良の形態】
【００１１】
以下に、本発明を適用可能な実施例を説明する。なお、本発明は、以下の実施例に限定されるものではない。
【００１２】
本発明の実施例にかかる整合性チェックシステム１００について、図１、図２を参照しながら説明する。整合性チェックシステム１００は、図１に示すように、ディスクアレイ装置１（制御装置）、複数のディスク装置２等を有している。なお、ディスク装置２が備えられる数は、図に限定されるものではなく、任意である。
複数のディスク装置２は、データを共同して格納する。また、ディスクアレイ装置１は、複数のディスク装置２間のデータの整合性をチェックする整合性チェック部１３（整合性チェック手段）を有している。
具体的には、ディスク装置２は、図１に示すように、複数の論理ブロック２１に分割されている。そして、本実施例にかかる整合性チェック部１３は、データの更新が行われた論理ブロック２１のみについて整合性チェックを行う。これにより、整合性チェック実行時間を短縮することができる。
【００１３】
また、図２に示すように、本実施例にかかる整合性チェックシステム１００は、さらに、ホストコンピュータ（以下、「ホスト」と称する。）３を有している。ホスト３は、ディスクアレイ装置１を介して複数のディスク装置２と接続されている。また、ホスト３は、ファイルシステム３１を有している。そして、ホスト３は、ファイルシステム３１を実行することにより、ディスクアレイ装置１を制御して、ディスク装置２へのデータ書込みや、複数のディスク装置２間のデータ整合性チェックを実行させる。
【００１４】
また、複数のディスク装置２は、ディスクアレイ装置１に対して並列に接続されている。そして、複数のディスク装置２は、同一のデータを記憶する。即ち、複数のディスク装置２は、ミラーリング方式のＲＡＩＤ（Redundant Arrays of Inexpensive Disks）を構成する。
具体的には、ディスク装置２は、ファイルシステム３１に規定される容量を有する論理ブロック２１に分割されている。なお、論理ブロック２１の容量は、均一でなくてもよい。
ディスク装置２の構造の一例を図３に示す。図３に示すように、複数のディスク装置２は、それぞれ、ｎ個（ｎは整数）の論理ブロック２１に分割されている。また、論理ブロック２１には、１〜ｎの論理ブロック番号１１１が付されている。そして、複数のディスク装置２において、同一の論理ブロック番号１１１を有する論理ブロック２１の容量は等しい。また、複数のディスク装置２において、同一の論理ブロック番号１１１を有する論理ブロック２１は、同一のデータを記憶する。
【００１５】
また、ディスク装置２は、論理ブロック２１毎に、データが書き込まれた時間に関する更新時間情報を保持している。ここで、更新時間情報は、データの更新が行われた年月日及び時刻に関する情報を含む。具体的には、ディスク装置２において、論理ブロック２１は、当該論理ブロック２１にデータが書き込まれた時間を示すタイムスタンプ１１２（更新時間情報）を保持している。例えば、論理ブロック２１は、当該論理ブロック２１の管理領域（図示省略）に当該タイムスタンプ１１２を保持している。なお、ディスク装置２の管理領域（図示省略）に、論理ブロック２１毎にタイムスタンプ１１２を一括して保持してもよい。
【００１６】
また、図２に示すように、ディスクアレイ装置１は、さらに、タイムスタンプ保持部１１（保持手段）、書込部１２（書込手段）、更新部１４（更新手段）を有している。
【００１７】
タイムスタンプ保持部１１は、論理ブロック２１毎に、タイムスタンプ１１２を保持している。タイムスタンプ保持部１１のデータ構造の一例を図４に示す。図４に示すように、タイムスタンプ保持部１１は、論理ブロック番号１１１とタイムスタンプ１１２とを対応付けて保持している。
ここで、論理ブロック番号１１１は、ディスク装置２における論理ブロック２１のアドレスとしての役割を果たす情報である。そして、論理ブロック番号１１１を指定することにより、ディスク装置２内の論理ブロック２１を指定することができる。また、論理ブロック番号１１１の代わりに、論理ブロック２１のアドレス情報が、タイムスタンプ保持部１１に保持されてもよい。
【００１８】
書込部１２は、ディスク装置２の論理ブロック２１にデータを書き込む。また、書込み部１２は、データを書き込んだ論理ブロック２１について、ディスク装置２に保持されているタイムスタンプ１１２を更新する。換言すれば、書込部１２は、ディスク装置２の論理ブロック２１にデータを書き込むとともに、当該論理ブロック２１に保持されているタイムスタンプ１１２を更新する。
【００１９】
整合性チェック部１３は、ディスク装置２に保持されたタイムスタンプ１１２を参照して、データの更新が行われた論理ブロック２１を検索し、検索した論理ブロック２１について整合性チェックを行う。
具体的には、整合性チェック部１３は、ディスク装置２の論理ブロック２１に保持されているタイムスタンプ１１２と、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２とを比較して、相違するタイムスタンプ１１２があるか否かを検索する。そして、相違するタイムスタンプ１１２を有する論理ブロック２１について、ディスク装置２間の整合性チェックを行う。
より具体的には、整合性チェック部１３は、タイムスタンプ保持部１１に保持している論理ブロック番号１１１に基づいてディスク装置２内を検索することにより、論理ブロック２１を順次指定し、論理ブロック２１に保持されているタイムスタンプ１１２を参照する。そして、整合性チェック部１３は、参照したタイムスタンプ１１２の中に、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２と相違するものがあるか否かを検出する。
【００２０】
ここで、整合性チェック部１３は、複数のディスク装置２間で、対応する論理ブロック２１に記憶されたデータを比較することにより、整合性チェックを行う。そして、比較の結果、対応する論理ブロック２１間において、記憶されているデータの相違が検出された場合には、正しいデータを記憶している論理ブロック２１に基づいて、対応する論理ブロック２１を更新する。例えば、最も新しいデータを記憶している論理ブロック２１に基づいて、対応する論理ブロック２１を更新する。
【００２１】
また、整合性チェック部１３は、定期的に、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２と、論理ブロック２１に保持されているタイムスタンプ１１２とを比較して、データの更新が行われていない論理ブロック２１を検索する。そして、整合性チェック部１３は、検索した論理ブロック２１について整合性チェックを行う。
具体的には、整合性チェック部１３は、例えば、１月に１度とか、半月に１度とかの頻度で、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２と同一のタイムスタンプ１１２を有する論理ブロック２１を検索する。そして、整合性チェック部１３は、複数のディスク装置２間において、検索した論理ブロック２１に記憶されているデータに相違があるか否かをチェックする。
【００２２】
更新部１４は、整合性チェック部１３による整合性チェック後に、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２を、ディスク装置２の論理ブロック２１に保持されているタイムスタンプ１１２と等しくなるように更新する。これにより、次回の整合性チェックまでにデータが更新された論理ブロック２１のタイムスタンプ１１２のみがタイムスタンプ保持部１１に保持されているタイムスタンプ１１２と異なることとなる。そして、次回の整合性チェックでは、前回の整合性チェック後に更新された論理ブロック２１のみについて整合性チェックが行われることとなる。従って、整合性チェックを行う範囲を必要最小限に抑えることができる。
【００２３】
次に、本発明にかかる整合性チェックシステム１００におけるデータの更新が行われた論理ブロック２１に対して整合性をチェックする整合性チェック方法について図５に示すフローチャートを参照しながら説明する。
まず、整合性チェック部１３は、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２と、論理ブロック２１に保持されているタイムスタンプ１１２とを比較して、データが更新された論理ブロック２１があるか否かを判断する（ステップＳ１）。
【００２４】
ステップＳ１において、整合性チェック部１３が、データが更新された論理ブロック２１がないと判断した場合には（ステップＳ１；Ｎｏ）、本処理を終了する。
ステップＳ１において、整合性チェック部１３が、データが更新された論理ブロック２１があると判断した場合には（ステップＳ１；Ｙｅｓ）、整合性チェック部１３は、データが更新された論理ブロック２１について整合性チェックを行う（ステップＳ２）。
【００２５】
次に、更新部１４は、整合性チェックを行った論理ブロック２１について、タイムスタンプ保持部１１のタイムスタンプ１１２を、当該論理ブロック２１に保持されているタイムスタンプ１１２と等しくなるように更新する（ステップＳ３）。
【００２６】
次に、本発明にかかる整合性チェックシステム１００におけるデータの更新が行われていない論理ブロックに対して整合性をチェックする整合性チェック方法について図６に示すフローチャートを参照しながら説明する。
まず、整合性チェック部１３は、前回、データが更新されていない論理ブロック２１について整合性チェックを行ってから所定期間（例えば、１ヶ月や半年等）が経過したかを判断する（ステップＳ１０１）。
【００２７】
ステップＳ１０１において、整合性チェック部１３が、所定期間経過していないと判断した場合（ステップＳ１０１；Ｎｏ）、スタートに戻る。
ステップＳ１０１において、整合性チェック部１３が、所定期間経過したと判断した場合（ステップＳ１０１；Ｙｅｓ）、整合性チェック部１３は、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２と、論理ブロック２１に保持されているタイムスタンプ１１２とを比較して、データが更新されていない論理ブロック２１を検出し、検出した論理ブロック２１について整合性チェックを行う（ステップＳ１０２）。
【００２８】
以上に説明した本発明の実施例にかかる整合性チェックシステム１００及び整合性チェック方法によれば、複数のディスク装置２によりデータが共同して格納され、ディスクアレイ装置１により複数のディスク装置２間の整合性がチェックされ、ディスク装置２は、複数の論理ブロック２１に分割され、ディスクアレイ装置１において、整合性チェック部１３により、データの更新が行われた論理ブロック２１について整合性チェックが行われる。
これにより、整合性チェックをディスク装置２全体について行う場合に比べて、整合性チェック実行時間を短縮することができる。また、データの更新が行われた論理ブロック２１について整合性チェックを行うので、データが記憶されている領域全てについて整合性チェックを行う場合に比べて、整合性チェック実行時間を短縮することができる。特に、整合性チェック実行時間は更新された論理ブロック２１のデータ容量に依存するので、ディスク装置２に記憶されているデータ容量が膨大となっても、整合性チェック実行時間が膨大となることはない。従って、整合性チェック実行時間をより確実に短縮することができる。
【００２９】
また、ディスク装置２は、論理ブロック２１毎に、データが書き込まれた時間を示すタイムスタンプ１１２を保持し、整合性チェック部１３は、ディスク装置２に保持されたタイムスタンプ１１２を参照して、データの更新が行われた論理ブロック２１を検索し、検索した論理ブロック２１について整合性チェックを行う。
【００３０】
具体的には、ディスクアレイ装置１において、タイムスタンプ保持部１１により、論理ブロック２１毎にタイムスタンプ１１２が保持され、書込部１２により、ディスク装置２にデータが書き込まれるとともに、データを書き込んだ論理ブロック２１についてディスク装置２に保持されているタイムスタンプ１１２が更新され、整合性チェック部１３は、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２と相違するタイムスタンプ１１２を有する論理ブロック２１について整合性チェックを行い、更新部１４により、整合性チェック部１３による整合性チェック後に、タイムスタンプ保持部１１に保持されているタイムスタンプ１１２が、ディスク装置２に保持されているタイムスタンプ１１２と等しくなるように更新される。
これにより、タイムスタンプ１１２を用いて、論理ブロック２１の更新の管理を行うので、通常のログデータを用いて更新管理を行う場合におけるログデータの破壊のリスクがない。従って、整合性チェック実行時間をさらに確実に短縮することができる。
【００３１】
また、整合性チェック部１３は、定期的に、ディスク装置２に保持されているタイムスタンプ１１２とタイムスタンプ保持部１１に保持されているタイムスタンプ１１２とを比較して、データの更新が行われていない論理ブロック２１を検索し、検索した論理ブロック２１について整合性チェックを行う。
これにより、定期的に、データの更新が行われていない論理ブロック２１に対しても、整合性チェックを行うことができ、データ破壊などを修復することができる。また、この場合であっても、ディスク装置２全体に対して整合性チェックを行う場合に比べて、整合性チェック実行時間を短縮することができる。
【００３２】
また、ディスク装置２は、ファイルシステム３１により規定される容量を有する論理ブロック２１に分割され、論理ブロック２１の容量は均一ではない。
このように、ディスク装置２の分割を行った場合であっても、タイムスタンプ１１２により各論理ブロック２１の更新管理を行うので、ログデータにより更新管理を行う場合に比べて、更新管理のために保持するデータ量を低減することができる。
【００３３】
また、複数のディスク装置２は、ディスクアレイ装置１に対して並列に接続され、同一のデータを記憶する。
これにより、ストライピング方式のＲＡＩＤなどで必要となるパリティデータを用いずにディスク装置２の整合性の管理を行うことができる。
【００３４】
なお、本実施例では、ミラーリング方式のＲＡＩＤを構成するディスク装置２の整合性チェックについて例示したが、本発明は、ミラーリング方式以外のＲＡＩＤにも適用可能である。
【図面の簡単な説明】
【００３５】
【図１】本発明にかかる整合性チェックシステムの構成の一例を示す図である。
【図２】本発明の実施例にかかる整合性チェックシステムの構成を示す図である。
【図３】本発明の実施例にかかるディスク装置の構成を示す図である。
【図４】本発明の実施例にかかるタイムスタンプ保持部のデータ構成の一例を示す表である。
【図５】本発明の実施例にかかるデータの更新が行われた論理ブロックに対して整合性をチェックする整合性チェック方法を示すフローチャートである。
【図６】本発明の実施例にかかるデータの更新が行われていない論理ブロックに対して整合性をチェックする整合性チェック方法を示すフローチャートである。
【符号の説明】
【００３６】
１  ディスクアレイ装置（制御装置）
１１  タイムスタンプ保持部（保持手段）
１１２  タイムスタンプ（更新時間情報）
１２  書込部（書込手段）
１３  整合性チェック部（整合性チェック手段）
１４  更新部（更新手段）
２  ディスク装置
２１  論理ブロック
３１  ファイルシステム
１００  整合性チェックシステム
【図１】
2009075675.tif 000003
【図２】
2009075675.tif 000004
【図３】
2009075675.tif 000005
【図４】
2009075675.tif 000006
【図５】
2009075675.tif 000007
【図６】
2009075675.tif 000008