(57)【特許請求の範囲】
【請求項１】
上位装置から書き込みデータを受け取る上位接続手段と、
復旧データを生成しディスク媒体に書き込むためのリビルドを制御するリビルド制御手段と、
前記上位接続手段から受け取った書き込みデータをディスク媒体に書き込むように前記ディスク媒体を含む複数のディスク装置に指示し、前記リビルド制御手段からの制御に基づいて生成される復旧データの少なくとも一部を前記ディスク装置毎に備えるライトキャッシュに書き込むように前記ライトキャッシュを含む前記ディスク装置に指示するディスク制御手段と
を含むディスクアレイ制御装置。
【請求項２】
前記ディスク制御手段が、
前記上位接続手段からの指示を基に、前記ディスク媒体への書き込みを指示し、
前記リビルド制御手段からの指示を基に、前記ライトキャッシュへの書き込みを指示する
請求項１に記載のディスクアレイ制御装置。
【請求項３】
前記ディスク制御手段が、
前記上位接続手段からの書き込み命令を基に、前記ディスク媒体への書き込みを指示し、
前記リビルド制御手段からの書き込み命令を基に、前記ライトキャッシュへの書き込みを指示する
請求項１に記載のディスクアレイ制御装置。
【請求項４】
前記ディスク媒体に書き込むか、前記ライトキャッシュに書き込むかを制御するキャッシュ制御手段を含み、
前記ディスク制御手段が、
前記キャッシュ制御手段の制御を基に、前記ディスク媒体への書き込み、又は、前記ライトキャッシュへの書き込みを指示する
請求項１に記載のディスクアレイ制御装置。
【請求項５】
前記上位装置からのアクセスがない場合、前記ディスク制御手段は、前記復旧データの少なくとも一部を前記ディスク媒体に書き込む請求項１乃至４のいずれか１項に記載のディスクアレイ制御装置。
【請求項６】
データ保存するディスク媒体と、
前記ディスク媒体に保存するデータを一時記憶するライトキャッシュと
を含む複数のディスク装置と、
上位装置から書き込みデータを受け取る上位接続手段と、
復旧データを生成しディスク媒体に書き込むためのリビルドを制御するリビルド制御手段と、
前記上位接続手段から受け取った書き込みデータをディスク媒体に書き込むように前記複数のディスク装置に指示し、前記リビルド制御手段からの制御に基づいて生成される復旧データの少なくとも一部を前記ディスク装置毎に備えるライトキャッシュに書き込むように前記ディスク装置に指示するディスク制御手段と
を含むディスクアレイ制御装置と
を含むディスクアレイ装置。
【請求項７】
上位装置から書き込みデータを受け取り、前記上位装置からの書き込みデータをディスク媒体に書き込むように前記ディスク媒体を含む複数のディスク装置に指示し、
復旧データを生成し、前記復旧データの少なくとも一部を前記ディスク装置毎に備えるライトキャッシュに書き込むように前記ライトキャッシュを含む前記ディスク装置に指示する
ディスクアレイ制御方法。
【請求項８】
上位装置から書き込みデータを受け取る処理と、
前記上位装置からの書き込みデータをディスク媒体に書き込むように前記ディスク媒体を含む複数のディスク装置に指示し処理と、
復旧データを生成する処理と、
前記復旧データの少なくとも一部を前記ディスク装置毎に備えるライトキャッシュに書き込むように前記ライトキャッシュを含む前記ディスク装置に指示する処理と
をコンピュータに実行させるディスクアレイ制御装置のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイ制御に関し、特に、データの復旧に関する。
【背景技術】
【０００２】
コンピュータやネットワークで構成された情報処理システムは、処理のデータとして、データ単位当たり容量（例えば、ファイル容量）が大きいものから小さいものまで、多くの種類の扱いが必要である。しかし、データを記憶するディスク装置（ディスクドライブ）の物理的な容量は、固定である。そのため、ディスク装置ごとにデータを保存及び管理すると、ディスク装置に使用できない領域が、発生する。
【０００３】
また、情報処理システムで用いられるデータは、年々増加している。そのため、多くのディスク装置をディスク装置単位で管理すると、無駄な領域が多くなる。
【０００４】
また、ディスク装置を使用するコンピュータなどの上位装置は、管理すべきディスク装置に数が膨大となり、管理が煩雑で、管理のための処理が多くなる。
【０００５】
そこで、ディスク装置の容量に制限されない大容量の記憶手段として、ディスクアレイ装置が用いられている。（例えば、特許文献１参照。）ディスクアレイ装置は、複数のディスク装置を含み、上位装置に対し、論理的なディスク装置としてデータを読み書きする。上位装置は、管理に必要な容量と数の論理的なディスク装置を、ディスクアレイ装置を用いて利用できる。
【０００６】
ディスクアレイ装置は、データを記憶再生する複数のディスク装置と、上位装置との接続とディスク装置を制御するディスクアレイ制御装置（ディスクアレイ・コントローラ）とを含む。
【０００７】
さらに、特許文献１に記載のディスクアレイ装置は、データの信頼性を確保するため、データに冗長性を持たせたレイド（RAID：Redundant Arrays of Inexpensive Disks 又は Redundant Arrays of Independent Disks）を利用する。レイドを実現するため、ディスクアレイ制御装置は、レイド構成の管理など、ディスク装置を管理する。また、ディスクアレイ制御装置は、冗長性確保のためのデータの作成、及び、冗長性を確保するためのデータの記録や再生を管理する。
【０００８】
特許文献１に記載のレイドを用いたディスクアレイ装置は、データの冗長性を確保するため、複数台のディスク装置でレイドを構成する。なお、レイドを構成するすべてのディスク装置が正常に動作している状態を、以下、「正常状態」と言う。正常状態は、レイドに基づくデータの冗長性を確保できるため、「冗長性がある状態」と言うこともある。
【０００９】
レイドを用いるディスクアレイ装置は、レイドに含まれる１台又は複数台のディスク装置が使用不能（例えば、故障）となっても、データを読み書きできる。ただし、ディスクアレイ装置は、使用不能となったディスク装置を、使用可能なディスク装置と交換するため、アレイ構成から論理的又は物理的（電気的）に切り離す。このように、レイド構成に使用できないディスク装置を含んだ状態、又は、使用できないディスク装置を切り離した状態を、「縮退状態」と言う。また、縮退状態は、データの冗長性を確保できないため、「冗長性がない状態」と言うこともある。
【００１０】
切り離されたディスク装置は、所定の交換作業で取り外され、正常なディスク装置がディスクアレイ装置に設置される。ディスク装置を交換後、ディスクアレイ制御装置は、縮退状態で動作していたディスク装置のデータを基に、交換したディスク装置のデータを復旧（リビルド）する。交換したディスク装置のデータがすべて復旧すると、ディスクアレイ装置は、通常状態つまり冗長性がある状態に復帰する。
【００１１】
このリビルドにおいて、ディスクアレイ制御装置は、縮退状態で動作していたディスク装置から、所定の単位のデータを読み出し、そのデータを基に冗長性を確保するためのデータを算出し、交換後のディスク装置に書き込む。ディスクアレイ制御装置は、この動作を繰り返し、交換後のディスク装置に記憶されるべき全データを復元する。
【００１２】
ただし、上記のリビルド中でも、ディスクアレイ装置は、上位装置からのデータの読み書き命令を処理する必要がある。つまり、リビルド中のディスクアレイ装置は、リビルドの読み書き動作と、上位装置からの読み書き動作との両方を行う。そのため、リビルド中のディスクアレイ装置は、リビルドの処理の時間の分、上位装置からの処理に対する応答などの処理性能が低下する。
【００１３】
特に、近年のディスク装置の容量は、著しく増加している。そのため、交換後のディスク装置のデータを復旧するためのリビルドに必要な時間が、増加している。つまり、性能低下となるリビルドの影響が、増大している。
【００１４】
ディスク装置には、性能向上のため、キャッシュを備えるものがある。
【００１５】
そこで、特許文献１に記載のディスクアレイ装置は、データの書き込みにおいて、書き込みデータを、ディスク媒体にデータを書き込まず、ライトキャッシュに書き込み、性能の向上を図ることができる。
【００１６】
より具体的に説明すると、特許文献１に記載のディスクアレイ装置は、上位装置から受け取った書き込みデータを、ディスク装置のライトキャッシュに書き込んだ時点で、上位装置に書き込みの終了を通知する。
【００１７】
上位装置は、ディスクアレイ装置からの終了の通知を受けると、書き込み処理が終了したと判断し、次の処理（例えば、書き込みデータのクリアや次の命令発行）を行う。
【００１８】
なお、ライトキャッシュに書き込みデータが書き込まれたディスク装置は、ライトキャッシュに書き込まれたデータを、所定のタイミング（例えば、アクセスが一定時間ないとき）や上位装置の指示に基づき、ディスク媒体に書き込む。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特開２０１０−００９４４２
【発明の概要】
【発明が解決しようとする課題】
【００２０】
キャッシュに用いられる半導体メモリは、給電が止まると、データを消失する。
【００２１】
そのため、急な停電などの電気的トラブルが発生した場合、上述した特許文献１に記載のディスクアレイ装置は、ディスク装置のライトキャッシュに保存されたデータの中でディスク媒体に書き込みが完了していないデータが、消失する。
【００２２】
リビルドのための書き込みデータは、消失しても、縮退状態で動作したディスク装置のデータを基に再度生成できる。
【００２３】
しかし、上位装置からの書き込みデータは、上位装置に書き込みの完了を通知しているため、データの消失となる。
【００２４】
つまり、特許文献１に記載の装置は、リビルド中の性能低下を防ぐためにライトキャッシュを用いると、上位装置からの書き込みデータを保障できないという問題点があった。
【００２５】
本発明の目的は、上述の課題である、リビルド時の性能低下を防ぐためにライトキャッシュを用いると、上位装置からの書き込みデータが保障できない問題点を解決したディスクアレイ装置のディスクアレイ制御装置、ディスクアレイ装置、及びディスクアレイ制御方法を提供することにある。
【課題を解決するための手段】
【００２６】
本発明のディスクアレイ制御装置は、上位装置から書き込みデータを受け取る上位接続手段と、復旧データを生成しディスク媒体に書き込むためのリビルドを制御するリビルド制御手段と、前記上位接続手段から受け取った書き込みデータをディスク媒体に書き込み、前記リビルド制御手段からの制御に基づいて生成される復旧データの少なくとも一部をライトキャッシュに書き込むディスク制御手段とを含む。
【００２７】
本発明のディスクアレイ装置は、データ保存するディスク媒体と、前記ディスク媒体に保存するデータを一時記憶するライトキャッシュとを含む複数のディスク装置と、上位装置から書き込みデータを受け取る上位接続手段と、復旧データを生成しディスク媒体に書き込むためのリビルドを制御するリビルド制御手段と、前記上位接続手段から受け取った書き込みデータをディスク媒体に書き込み、前記リビルド制御手段からの制御に基づいて生成される復旧データの少なくとも一部をライトキャッシュに書き込むディスク制御手段とを含むディスクアレイ制御装置とを含む。
【００２８】
本発明のディスクアレイ制御方法は、上位装置から書き込みデータを受け取り、前記上位装置からの書き込みデータをディスク媒体に書き込み、復旧データを生成し、前記復旧データの少なくとも一部をライトキャッシュに書き込む。
【００２９】
本発明のディスクアレイ制御装置のプログラムは、上位装置から書き込みデータを受け取る処理と、前記上位装置からの書き込みデータをディスク媒体に書き込む処理と、復旧データを生成する処理と、前記復旧データの少なくとも一部をライトキャッシュに書き込む処理とをコンピュータに実行させる。
【発明の効果】
【００３０】
本発明によれば、リビルド中の性能低下を防ぎながら、上位装置からの書き込みデータを保障できる。
【図面の簡単な説明】
【００３１】
【図１】図１は、本発明における第１の実施形態に係るディスクアレイ制御装置の構成の一例を示すブロック図である。
【図２】図２は、第１の実施の形態に係るディスクアレイ装置の構成の一例を示すブロック図である。
【図３】図３は、第１の実施形態に係るリビルドの動作の一例を示すフローチャートである。
【図４】図４は、第１の実施形態の別の構成の一例を示すブロック図である。
【図５】図５は、第１の実施形態の第２の変形例の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００３２】
次に、本発明の実施形態について図面を参照して説明する。
【００３３】
（第１の実施形態）
図１は、第１の実施形態に係るディスクアレイ制御装置１０の構成の一例を示すブロック図である。
【００３４】
まず、ディスクアレイ制御装置１０の構成について説明する。
【００３５】
ディスクアレイ制御装置１０は、上位接続部１１０と、ディスク制御部１２０と、リビルド制御部１３０とを含む。
【００３６】
上位接続部１１０は、図示しない上位装置から書き込み命令（ライト命令）と書き込みデータを受け取り、ディスク制御部１２０に送る。また、上位接続部１１０は、上位装置から読み出し命令（リード命令）を受け取りディスク制御部１２０に渡し、読み出しデータをディスク制御部１２０から受け取り、上位装置に送る。
【００３７】
ディスク制御部１２０は、図示しないディスク装置へのデータの書き込み及び読み出しを制御する。さらに、ディスク制御部１２０は、ディスク装置へのデータの書き込みにおいて、ディスク装置に、ライトキャッシュへの書き込み、又は、ディスク媒体への書き込みを指示する。
【００３８】
リビルド制御部１３０は、リビルドを制御する。例えば、リビルド制御部１３０は、ディスク制御部１２０を制御して、リビルドにおける、復旧のためのデータの読み出し、復旧データの作成、及び、復旧データの書き込みを指示又は命令する。
【００３９】
より具体的に説明すると、リビルド制御部１３０は、ディスク制御部１２０に次を動作させる。
【００４０】
１）リビルドの対象となるデータを復旧元のディスク装置（縮退状態で動作していたディスク装置）から読み出す。
【００４１】
２）読み出したデータを基に冗長性を確保するための復旧データ（リビルドのための書き込みデータとも言う。）を作成する。
【００４２】
３）交換後のディスク装置に復旧データを書き込む。
【００４３】
なお、リビルドにおいて、リビルド制御部１３０がディスク制御装置１２０に送る指示は、ディスク制御部１２０の機能に合わせた指示となる。
【００４４】
例えば、ディスク制御部１２０が、ディスク装置への書き込み、又は、読み出しなど簡単な動作を行う場合、リビルド制御部１３０は、ディスク制御部１２０に、上記の「１）−３）」の動作を順番に指示する。
【００４５】
一方、ディスク制御部１２０がリビルドの一連の動作を一つの命令で実行可能な場合、リビルド制御部１３０は、ディスク制御部１２０にその命令（例えば、リビルド命令）を送る。
【００４６】
なお、復旧データを書き込む動作において、ディスク制御部１２０は、ディスク装置の書き込み状態を一致させるため、縮退状態で動作していたディスク装置にデータを書き込んでも良い。この場合、縮退状態で動作していたディスク装置へ書き込むデータは、読み出したデータと同じデータである。そのため、以下、縮退状態で動作していたディスク装置からデータを読み出し、復旧データを加えてディスク装置に書き込む（書き戻す）動作をまとめて「無修正書き込み」と言い、無修正書き込みを指示する命令を「無修正書き込み命令」と言う。（上記のリビルド命令は、無修正書き込み命令でも良い。）
次に、ディスクアレイ制御装置１０の動作について説明する。
【００４７】
上位接続部１１０は、上位装置から書き込み命令と書き込みデータを受け取ると、書き込み命令と書き込みデータをディスク制御部１２０に送る。ディスク制御部１２０は、ディスク装置に、書き込みデータの書き込みを指示する。ただし、上位接続部１１０から書き込みデータを受けた場合、ディスク制御部１２０は、ディスク装置に、ディスク媒体への書き込みを指示する。
【００４８】
一方、リビルド制御部１３０から復旧のための無修正書き込み命令を受け取ると、ディスク制御部１２０は、縮退状態で動作していたディスク装置からデータを読み出し、復旧データを作成し、交換後のディスク装置（及び、縮退状態の動作していたディスク装置）にデータを書き込む。ただし、リビルド制御部１３０からの指示に基づくデータの書き込みの場合、ディスク制御部１２０は、ディスク装置に、ライトキャッシュへの書き込みを指示する。
【００４９】
このように、ディスクアレイ制御装置１０は、上位装置からの書き込みデータをディスクに書き込み、リビルドのための書き込みデータをライトキャッシュに書き込む。
【００５０】
上位装置からの書き込みデータは、ディスク媒体に保存されてから、上位装置に終了が通知される。また、既に、交換後のディスク装置が稼動中である。そのため、上位装置からの書き込みデータは、冗長性が確保された状態でディスク装置に書き込まれる。したがって、書き込み済みが上位装置に返されたデータは、電気的な障害が発生しても、保障されている。
【００５１】
一方、リビルドのための書き込みデータは、ライトキャッシュに書き込まれる。そのため、リビルドの処理は、上位装置からの処理と比較し、短い時間で終了する。つまり、リビルドの処理の性能への影響は、削減される。
【００５２】
なお、ここまでの説明では、ディスク制御部１２０は、書き込みデータの送付元（上位接続部１１０）及び指示元（リビルド制御部１３０）に基づき書き込み先を判定した。しかし、本実施形態は、これに限る必要はない。
【００５３】
例えば、ディスク制御部１２０への書き込み命令が、ライトキャッシュへの書き込みとディスク媒体への書き込みとの指示する制御フラグを備えてもよい。この場合、上位接続部１１０は、ディスク媒体への書き込みフラグを設定して、ディスク制御部１２０に書き込み命令を送る。リビルド制御部１３０は、ライトキャッシュへの書き込みフラグを設定して、ディスク制御部１２０に書き込み命令を送る。
【００５４】
あるいは、ディスク制御部１２０は、ライトキャッシュへの書き込み命令と、ディスク媒体への書き込み命令とを備えても良い。この場合、上位接続部１１０は、ディスク媒体への書き込み命令を用い、リビルド制御部１３０は、ライトキャッシュへの書き込み命令を用いる。
【００５５】
次に、本実施形態のリビルド動作について、図面を参照して、より詳細に説明する。
【００５６】
図２は、本実施形態に係るディスクアレイ制御装置１０を含むディスクアレイ装置３０の構成の一例を示すブロック図である。図２において図１と同様の構成には同じ番号を付し、詳細な説明は省略する。
【００５７】
ディスクアレイ装置３０は、ディスクアレイ制御装置１０とディスク装置２０ａ−２０ｃとを含む。
【００５８】
ディスクアレイ制御装置１０は図１と同様のため、構成の詳細な説明は省略する。
【００５９】
ディスク装置２０ａ−２０ｃは、ディスクアレイ制御装置１０に制御されてデータを記録及び再生する。
【００６０】
ディスク装置２０ａ−２０ｃは、書き込みデータを一時保存するライトキャッシュ２１０ａ−２１０ｃと、データを長期的に保存するディスク媒体２２０ａ−２２０ｃとを含む。なお、以下、ディスク装置２０ａ−２０ｃをまとめて、ディスク装置２０と、ライトキャッシュ２１０ａ−２１０ｃをまとめてライトキャッシュ２１０と、ディスク媒体２２０ａ−２２０ｃをまとめてディスク媒体２２０と言う。
【００６１】
また、図２においてディスク装置２０を３台としたのは、一例である。本実施形態のディスクアレイ装置３０は、３台未満のディスク装置２０を備えても良く、３台を超えるディスク装置２０を備えても良い。
【００６２】
ライトキャッシュ２１０は、ディスク装置２０への書き込みデータを一時保存する。ライトキャッシュ２１０への書き込みを指示された場合、ディスク装置２０は、ライトキャッシュ２１０にデータの書き込みが終了した時点で書き込み終了をディスクアレイ制御装置１０に返す。
【００６３】
ディスク媒体２２０は、例えば、磁気ディスクのように、実際にデータを半永久的に保存する記憶媒体である。ディスク媒体２２０への書き込みを指示された場合、ディスク装置２０は、受け取ったデータを、すべてディスク媒体２２０に書き込んでから、書き込み終了をディスクアレイ制御装置１０に返す。なお、ディスク装置２０は、ディスク媒体２２０に書き込む指示を受けた場合、書き込みデータを直接ディスク媒体２２０に書き込んでも良い。あるいは、通信路の輻輳を削減するため、ディスク装置２０は、ライトキャッシュ２１０で書き込みデータを受け取り、受け取ったライトキャッシュ２１０のデータをディスク媒体２２０に書き込んでもよい。
【００６４】
次に、ディスクアレイ装置３０の動作について説明する。
【００６５】
ディスクアレイ制御装置１０のディスク制御部１２０は、図１のディスク制御部１２０と同様に、上位接続部１１０が受け取った上位装置からの書き込みデータを、ディスク装置２０のディスク媒体２２０に書き込む。
【００６６】
一方、ディスク制御部１２０は、リビルド制御部１３０に指示されたリビルドのための書き込みデータを、ディスク装置２０のライトキャッシュ２１０に書き込む。
【００６７】
なお、ディスクアレイ装置３０の他の動作は、一般的はディスクアレイ装置と同様の動作のため、詳細な動作の説明を省略する。
【００６８】
次に、図３を参照して、本実施形態に特有のリビルド動作についてさらに説明する。
【００６９】
図３は、リビルドにおけるディスクアレイ装置３０の動作の一例のフローチャートである。
【００７０】
ディスクアレイ装置３０において、交換したディスク装置２０は、ディスク装置２０ａ−２０ｃのいずれでも良いが、本説明では、ディスク装置２０ｃを交換したディスク装置として説明する。また、ディスク制御部１２０は、リビルド命令に基づいて動作するとして説明する。
【００７１】
なお、既に説明したとおり、リビルド中でもディスク制御部１２０は、上位装置からの書き込み命令のデータをディスク媒体２２０に書き込む。
【００７２】
まず、リビルド制御部１３０は、ディスク装置２０ｃの交換を検出すると、リビルドを開始する（ステップＳ３０１）。本実施形態におけるリビルド制御部１３０がディスク装置の交換を知る手段は、特に制限はない。例えば、リビルド制御部１３０は、ディスクアレイ装置３０の図示しない保守装置から通知を受けてもよく、ディスク制御部１２０のディスク装置２０の監視処理から交換の通知を受けても良い。
【００７３】
リビルド制御部１３０は、リビルドで復旧するデータ範囲を確認する（ステップＳ３０２）。リビルド制御部１３０が復旧するデータ範囲の確認手段は、特に制限はない。例えば、リビルド制御部１３０は、復旧するデータ範囲、つまり、ディスク装置２０ａ及び２０ｂの使用範囲を、ディスク制御部１２０から取得しても良い。あるいは、リビルド制御部１３０は、ディスク制御部１２０を介して、ディスク装置２０ｃの仕様を取得し、ディスク装置２０ｃの全域に対してリビルドしても良い。
【００７４】
リビルド制御部１３０は、未復旧の範囲の最初のアドレスから所定の範囲について、ディスク制御部１２０にデータの修復を指示する（ステップＳ３０３）。ステップＳ３０３において、既に説明したとおり、リビルド制御部１３０は、ディスク制御部１２０に無修正書き込みを指示する。ただし、リビルド制御部１３０は、ライトキャッシュ２１０への書き込みを指示する。
【００７５】
ディスク制御部１２０は、縮退状態で動作していたディスク装置から、指示されたリビルドの範囲のデータを読み出し、復旧データを作成し、交換後のディスク装置のライトキャッシュに書き込む（ステップＳ３０４）。具体的には、ディスク制御部１２０は、ディスク装置２０ａ及び２０ｂからデータを読み出し、復旧データを作成し、ディスク装置２０ｃのライトキャッシュ２１０ｃに復旧データを書き込む。なお、ディスク制御部１２０は、ライトキャッシュ２１０における書き込みの状態を合わせるため、ディスク装置２０ａ及びディスク装置２０ｂのライトキャッシュ２１０ａ及びライトキャッシュ２１０ｂにデータを書き込んでも良い。
【００７６】
ディスク制御部１２０でのライトキャッシュ２１０への書き込みが終了すると、リビルド制御部１３０は、復旧範囲が終了したか否かを判定する（ステップＳ３０５）。
【００７７】
終了していない場合（ステップＳ３０５でNO）、リビルド制御部１３０は、ステップＳ３０２に戻り、次のリビルド範囲を処理する。
【００７８】
復旧範囲が終了した場合（ステップＳ３０５でYES）、リビルド制御部１３０は、リビルドを終了する。
【００７９】
このような動作に基づき、本実施形態のディスクアレイ制御装置１０は、リビルドでの性能低下を防ぎながら、上位装置からのデータを保障できる。
【００８０】
その理由は、次のとおりである。
【００８１】
ディスクアレイ制御装置１０のディスク制御部１２０は、上位接続部１１０から受け取った書き込み命令のデータを、ディスク装置２０のディスク媒体２２０へ書き込む。つまり、上位装置からの書き込み命令のデータは、ディスク媒体２２０に保存された後、上位装置に書き込み終了を返す。そのため、上位装置からの書き込みデータは、データの信頼性が確保される。また、ディスク制御部１２０は、リビルド制御部１３０から指示されたリビルドのための書き込みデータを、ディスク装置２０のライトキャッシュ２１０に書き込む。そのため、ディスクアレイ制御装置１０は、リビルド動作に基づく性能の低下を削減できる。
【００８２】
なお、本実施形態のディスクアレイ制御装置１０の構成は、図１の構成に限るわけではない。ディスクアレイ制御装置１０は、図１の１つの構成を複数の構成に分けて実現しても良く、複数の構成を１つの構成で実現しても良い。
【００８３】
図４の第１の実施形態の別の構成のディスクアレイ制御装置４０の一例を示すブロック図である。
【００８４】
ディスクアレイ制御装置４０は、ＣＰＵ（Central Processing Unit）１４０と、メモリ１５０と、ＮＩＣ（Network Interface Card）１６０と、ＮＩＣ１６５と、バス１７０とを含む。
【００８５】
ＣＰＵ１４０は、メモリ１５０が記憶しているプログラムを基に、ＮＩＣ１６０を介して上位装置とデータや命令の送受信し、ＮＩＣ１６５を介してディスク装置２０とデータの送受信し、図１に示すディスクアレイ制御装置１０の各構成の動作を行う。
【００８６】
メモリ１５０は、ＣＰＵ１４０が動作するプログラムを保持し、作業用のデータの一時保存としても動作する。メモリ１５０は、例えば、ＲＯＭ(Read Only Memory)やＲＡＭ（Random Access Memory）、磁気ディスク装置、ＳＳＤ（Solid State Drive）など一般的な記憶手段を用いればよいため、詳細な説明は省略する。
【００８７】
ＮＩＣ１６０は、ＣＰＵ１４０と上位装置とのデータのやり取りを仲介する。ＮＩＣ１６５は、ＣＰＵ１４０とディスク装置２０とのデータやり取りを仲介する。ＮＩＣ１６０及び１６５は、一般的なネットワーク接続に用いられる接続装置や部品でよいため、詳細な説明は省略する。
【００８８】
バス１７０は、各構成を接続するための一般的な接続バスである。そのため、バス１７０の詳細な説明は省略する。
【００８９】
このように構成されたディスクアレイ制御装置４０は、ディスクアレイ制御装置１０の各構成の動作を実現しているため、ディスクアレイ制御装置１０と同様の効果を実現できる。
【００９０】
また、ディスクアレイ制御装置４０は、コンピュータで読み書きできる記憶媒体１８０に保存されているプログラムを、図示しない記憶媒体読み取り部を用いて読み取り、読み取ったプログラムに基づいて動作しても良い。
【００９１】
（変形例１）
本実施形態のディスクアレイ制御装置１０は、リビルドのための書き込みデータをすべてライトキャッシュ２１０に書き込んだ。しかし、本実施形態は、これに限る必要はない。例えば、ディスクアレイ制御装置１０は、リビルドでの復旧データの書き込みにおいて、データ管理情報など重要性が高い一部のデータを、ディスク媒体２２０に書き込んでもよい。
【００９２】
あるいは、上位装置からアクセスを受けていない場合、ディスクアレイ制御装置１０のディスク制御部１２０は、リビルドでの復旧データを、ディスク媒体２２０へ書き込んでもよい。この場合、ディスク制御部１２０は、上位接続部１１０のアクセス状態を監視し、上位装置からのアクセスを受け付けていないことを判別する機能を有する。
【００９３】
変形例１においても、ディスクアレイ制御装置１０と同様の効果を得られる。
【００９４】
その理由は、次のとおりである。
【００９５】
データ管理情報の量は、リビルドのための書き込みデータの全体の量に対して、小さな比率である。そのため、データ管理情報をディスク媒体２２０に保存しても、性能低下の影響は小さいためである。
【００９６】
また、上位装置からアクセスを受けていない場合、ディスク媒体２２０への書き込み処理の時間は、上位装置へのアクセスに影響と与えないためである。
【００９７】
（変形例２）
本実施形態のディスクアレイ制御装置１０は、上位接続部１１０及びリビルド制御部１３０が、ディスク装置２０への書き込みを制御する。あるいは、ディスクアレイ制御装置１０は、ディスク制御部１２０が、ディスク装置２０への書き込みを制御する。しかし、本実施形態のディスクアレイ制御装置１０は、ディスク装置２０への書き込みの制御を別構成としても良い。
【００９８】
図５は、変形例２の構成の一例を示すブロック図である。
【００９９】
図５において図１と同様の構成には同じ番号を付し、詳細な説明を省略する。
【０１００】
ディスクアレイ制御装置５０は、上位接続部１１０と、ディスク制御部１２０と、リビルド制御部１３０と、キャッシュ制御部１９０とを含む。
【０１０１】
ディスクアレイ制御装置５０のキャッシュ制御部１９０は、ディスク装置２０へのデータの書き込みにおいて、ライトキャッシュ２１０へ書き込むか、ディスク媒体２２０へ書き込むかの指示を、各構成に送る。
【０１０２】
そして、キャッシュ制御部１９０から指示を受けた上位接続部１１０及びリビルド制御部１３０が、ディスク制御部１２０に、書き込みデータを、ディスク装置２０のライトキャッシュ２１０又はディスク媒体２２０に書き込むかを指示する。
【０１０３】
あるいは、キャッシュ制御部１９０から指示を受けたディスク制御部１２０が、書き込みデータを、指示に従い、ディスク装置２０のライトキャッシュ２１０又はディスク媒体２２０に書き込む。
【０１０４】
上位接続部１１０、ディスク制御部１２０、及び、リビルド制御部１３０の上記以外の動作は、ディスクアレイ制御装置１０と同様である。
【０１０５】
より詳細に説明すると、次のようになる。
【０１０６】
キャッシュ制御部１９０は、上位接続部１１０に、ディスク媒体２２０への書き込みを指示する。指示を受けた、上位接続部１１０は、ディスク制御部１２０に書き込みを指示するときに、ディスク媒体２２０への書き込みを指示する。
【０１０７】
キャッシュ制御部１９０は、リビルド制御部１３０にライトキャッシュ２１０への書き込みを指示する。指示を受けた、リビルド制御部１３０は、ディスク制御部１２０にリビルドを指示するときに、ライトキャッシュ２１０への書き込みを指示する。なお、キャッシュ制御部１９０は、上位接続部１１０の状態を監視し、上位装置からアクセスがない場合、リビルド制御部１３０に、ディスク媒体２２０への書き込みを指示してもよい。この結果、ディスク制御部１２０は、リビルド制御部１３０から書き込みを指示された復旧データの少なくとも一部をディスク媒体２２０に書き込む。ただし、この場合でも、キャッシュ制御部１９０は、上位装置からのアクセスを検出すると、リビルド制御部１３０に、ライトキャッシュ２１０への書き込みを指示する。
【０１０８】
あるいは、キャッシュ制御部１９０は、ディスク制御部１２０に、上位接続部１１０からの書き込みデータをディスク媒体２２０へ書き込み、リビルド制御部１３０からの書き込みデータをライトキャッシュ２１０へ書き込むように指示してもよい。この場合、ディスク制御部１２０は、上位接続部１１０からの書き込みデータをディスク媒体２２０に書き込み、リビルド制御部１３０から指示された書き込みデータをライトキャッシュ２１０に書き込む。
【０１０９】
このように、ディスクアレイ制御装置５０は、ディスクアレイ制御装置１０と同様に動作する。
【０１１０】
変形例２のディスクアレイ制御装置５０は、ディスクアレイ制御装置１０と同様の効果を得られる。
【０１１１】
その理由は、ディスクアレイ制御装置５０は、キャッシュ制御部１９０からの指示を基に図１に示したディスクアレイ制御装置１０と同様に動作できるためである。
【０１１２】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０１１３】
１０    ディスクアレイ制御装置
２０    ディスク装置
３０    ディスクアレイ装置
４０    ディスクアレイ制御装置
５０    ディスクアレイ制御装置
１１０    上位接続部
１２０    ディスク制御部
１３０    リビルド制御部
１４０    ＣＰＵ
１５０    メモリ
１６０    ＮＩＣ
１６５    ＮＩＣ
１７０    バス
１８０    記憶媒体
１９０    キャッシュ制御部
２１０    ライトキャッシュ
２２０    ディスク媒体
【図１】
0005643238.tif 000002
【図２】
0005643238.tif 000003
【図３】
0005643238.tif 000004
【図４】
0005643238.tif 000005
【図５】
0005643238.tif 000006