(57)【要約】【課題】論理ユニットの連結時のディスク制御装置間の通信量を削減し、かつディスク装置に対する効率良い負荷管理手段を実現する。【解決手段】論理ユニットの連結指示を受け論理ユニットを担当するコントローラモジュールが変更されたのち、ＲＡＩＤグループを担当するコントローラモジュールが１台のときには、アクセス対象のディスク装置に対してアクセス数による負荷管理を行う（Ｓ２４）。ＲＡＩＤグループを担当するコントローラモジュールが複数存在するときには、アクセス対象のディスク装置に対してレスポンス時間の負荷管理を行う（Ｓ２５）。【選択図】図５
2008192020.tif 000002
【特許請求の範囲】
【請求項１】
複数のディスク装置と複数のディスク制御装置とからなるＲＡＩＤ制御装置であって、
論理ユニットのキャッシュデータを記憶するキャッシュメモリと、
異なるディスク装置に存在する複数の前記論理ユニットの連結が行われたとき、移行元ディスク制御装置のキャッシュメモリに格納されているキャッシュデータのディスク装置への書き戻しを行わずに、連結された前記複数の論理ユニットのアクセスを１つのディスク制御装置が担当するように担当の切り換えを行う制御手段を備えるＲＡＩＤ制御装置。
【請求項２】
前記制御手段は、担当する前記論理ユニットに対するアクセス要求があったときに、前記論理ユニットのキャッシュデータが移行済みか否かを判定し、前記キャッシュデータが移行されていないときには、移行元ディスク制御装置から前記論理ユニットのキャッシュデータを取得するキャッシュデータ取得手段を有する請求項１記載のＲＡＩＤ制御装置。
【請求項３】
前記制御手段は、連結された前記論理ユニットが存在する前記ディスク装置のアクセスを担当するディスク制御装置が複数存在するか否かを判定する判定手段と、前記ディスク制御装置が複数存在すると判定された場合に、書き込みまたは読み出し要求に対する前記ディスク装置の応答時間を算出し、前記応答時間に基づいて前記ディスク装置の負荷管理を行う負荷管理手段を有する請求項１記載のＲＡＩＤ制御装置。
【請求項４】
前記制御手段は、連結対象の前記論理ユニットが存在する前記ディスク装置のアクセスを担当する前記ディスク制御装置が複数存在するか否かを判定する判定手段と、前記ディスク制御装置が複数存在すると判定された場合に、書き込みまたは読み出し要求に対する前記ディスク装置の応答時間を算出し、前記応答時間に基づいて前記ディスク装置の負荷管理を行い、前記ディスク装置のアクセスを担当する前記ディスク制御装置が１台と判定された場合には、前記ディスク装置に対する書き込みまたは読み出しのアクセス数に基づいて前記ディスク装置の負荷管理を行う負荷管理手段を有する請求項１記載のＲＡＩＤ制御装置。
【請求項５】
複数のディスク装置と複数のディスク制御装置とからなるＲＡＩＤ制御装置の制御方法であって、
異なるディスク装置に存在する複数の論理ユニットの連結が行われたとき、移行元ディスク制御装置のキャッシュメモリに格納されているキャッシュデータのディスク装置への書き戻しを行わずに、連結された前記複数の論理ユニットのアクセスを１つのディスク制御装置が担当するように担当の切り換えを行うＲＡＩＤ制御装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＲＡＩＤ制御装置とその制御方法に関する。
【背景技術】
【０００２】
ディスクアレイシステムは、複数のディスク装置と１または複数のディスク制御装置から構成されている。複数のディスク制御装置を有するシステムでは、各ディスク制御装置がアクセスを担当するディスク装置が予め決められているシステムがある。
【０００３】
論理ユニット（ＬＵ）の容量を動的に拡張する機能としてＬＵ連結機能がある。ＬＵ連結機能は単純にＬＵ同士を連結するだけではなく、ストライプごとに別の物理ディスクへ割り当てるストライプ連結を行うこともできる。
【０００４】
図８は、従来のＲＡＩＤ装置４１のストライプ連結時の動作説明図である。ＲＡＩＤ装置４１は、複数のディスク装置４２，４３と、それぞれのディスク装置４２、４３のアクセスを担当するコントローラモジュールＣＭ０、ＣＭ１とからなる。コントローラモジュールＣＭ０、ＣＭ１は、それぞれキャッシュメモリ４４、４５を有する。
【０００５】
コントローラモジュールＣＭ０はＲＡＩＤグループ０のディスク装置４２のアクセスを担当し、コントローラモジュールＣＭ１は、ＲＡＩＤグループ１のディスク装置４３のアクセスを担当する。コントローラモジュールＣＭ０のキャッシュメモリ４４には、例えば、論理ユニット番号ＬＵＮ０、ＬＵＮ１、ＬＵＮ２の論理ユニットのキャッシュデータが格納され、コントローラモジュールＣＭ１のキャッシュメモリ４５には、論理ユニット番号ＬＵＮ３、ＬＵＮ４、ＬＵＮ５の論理ユニットのキャッシュデータが格納される。
【０００６】
ＬＵ連結が行われ、論理ユニット番号ＬＵＮ０、ＬＵＮ１、ＬＵＮ３、ＬＵＮ４の論理ユニットでストライプ連結ボリュームが構成された後、図示しないホストコンピュータからその連結ボリュームに対してＩ／Ｏ要求があった場合には、ストライプＳ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６、Ｓ７、Ｓ８の順でアクセスが行われる。このとき、各論理ユニットのキャッシュデータは担当するコントローラモジュールＣＭ０またはＣＭ１のキャッシュメモリ４４または４５に格納されているので、連結ボリュームへのＩ／Ｏ処理時には、それぞれのＲＡＩＤグループの担当コントローラモジュール同士で頻繁に通信を行う必要がある。この通信のオーバーヘッドによりストライプ連結ボリュームへのアクセス性能、特にキャッシュヒット時のアクセス性能が著しく低下してしまうという問題点があった。
【０００７】
特許文献１には、複数のホストまたは複数のポートを有するホストと接続する記憶サブシステムにおいて、正常動作時のオーバーヘッドの低下を防止し、かつ障害時の予備系への切り換え処理時間を短縮する技術について記載されている。
【０００８】
特許文献２には、コントローラがディスク装置に作成される論理ユニットの構成情報を管理する構成管理手段を有し、その構成管理手段が論理ユニットの構成情報を書き換えることで任意の論理ユニットを別のコントローラに引き継ぐことが記載されている。
【０００９】
特許文献３には、制御コントローラ間でＬＵ制御を引き継ぐ際に、制御コントローラ内に保存されているキャッシュデータをイメージとしてディスク装置に書き戻すことで、データの書き戻し時間及びキャッシュメモリへの復元時間の短縮を図ることが記載されている。
【００１０】
特許文献１の発明は、データの移行中にホストコンピュータからのＩ／Ｏ要求やディスクアクセスといった、メモリアクセスを伴う処理をすべて中断する必要があるため、データ移行が行われている間はホストコンピュータからのディスク装置に対するアクセスを受け付けることができない問題点がある。
【００１１】
特許文献２の発明は、論理ユニットを引き継ぐ際に、引き継ぎ元のコントローラのキャッシュデータをディスク装置に書き戻し、Ｗｒｉｔｅ Ｔｈｒｏｕｇｈモードに設定した上でコントローラの切り換えを行う必要があり、データの書き戻しを行っている間はホストコンピュータのディスク装置に対するアクセスを受け付けることができないという問題点がある。
【００１２】
特許文献３の発明は、イメージデータを用いてディスク装置への書き戻し時間並びにキャッシュメモリへのリストア時間の短縮を図っているが、ディスク装置への書き戻し期間及びリストア期間は、ホストコンピュータからのディスク装置に対するアクセスを受け付けることができない点では同じである。
【００１３】
また、上記の特許文献１〜３には、ストライプ連結時のコントローラ間の通信を減らすことについての記載は無い。
【特許文献１】特開平１１−３１２０５８号公報
【特許文献２】特開２００３−１６２３７７号公報
【特許文献２】特開２００３−１６７６７８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明の課題は、論理ユニットの連結時のディスク制御装置間の通信量を削減し、かつディスク装置に対する効率良い負荷管理を実現することである。
【課題を解決するための手段】
【００１５】
本発明は、複数のディスク装置と複数のディスク制御装置とからなるＲＡＩＤ制御装置であって、論理ユニットのキャッシュデータを記憶するキャッシュメモリと、異なるディスク装置に存在する複数の前記論理ユニットの連結が行われたとき、移行元ディスク制御装置のキャッシュメモリに格納されているキャッシュデータのディスク装置への書き戻しを行わずに、連結された前記複数の論理ユニットのアクセスを１つのディスク制御装置が担当するように担当の切り換えを行う制御手段を備える。
【００１６】
この発明によれば、異なるディスク装置に存在する論理ユニットの連結が行われた場合に、ディスク制御装置間の通信量を減らし、論理ユニットの連結を行ったディスク装置に対するアクセス要求が待たされるのを改善できる。
【００１７】
上記の発明のＲＡＩＤ制御装置において、前記制御手段は、担当する前記論理ユニットに対するアクセス要求があったときに、前記論理ユニットのキャッシュデータが移行済みか否かを判定し、前記キャッシュデータが移行されていないときには、移行元ディスク制御装置から前記論理ユニットのキャッシュデータを取得するキャッシュデータ取得手段を有する。
【００１８】
このように構成することで、論理ユニットの連結時にキャッシュデータをディスク装置に書き戻す必要が無くなるので、その間ホストからのディスク装置に対するアクセス要求を待たせることが無くなる。
【００１９】
上記の発明のＲＡＩＤ制御装置において、前記制御手段は、連結対象の前記論理ユニッ
トが存在する前記ディスク装置のアクセスを担当するディスク制御装置が複数存在するか否かを判定する判定手段と、前記ディスク制御装置が複数存在すると判定された場合に、書き込みまたは読み出し要求に対する前記ディスク装置の応答時間を算出し、前記応答時間に基づいて前記ディスク装置の負荷管理を行う負荷管理手段を有する。
【００２０】
このように構成することで、１つのディスク装置のアクセスを複数のディスク制御装置が担当する場合に、ディスク装置の負荷管理を適正に行うことができる。
上記の発明のＲＡＩＤ制御装置において、前記制御手段は、連結対象の前記論理ユニットが存在する前記ディスク装置のアクセスを担当する前記ディスク制御装置が複数存在するか否かを判定する判定手段と、前記ディスク制御装置が複数存在すると判定された場合に、書き込みまたは読み出し要求に対する前記ディスク装置の応答時間を算出し、前記応答時間に基づいて前記ディスク装置の負荷管理を行い、前記ディスク装置のアクセスを担当する前記ディスク制御装置が１台と判定された場合には、前記ディスク装置に対する書き込みまたは読み出しのアクセス数に基づいて前記ディスク装置の負荷管理を行う負荷管理手段を有する。
【００２１】
このように構成することで、１台のディスク装置のアクセスを複数のディスク制御装置が担当する場合、あるいは１台のディスク制御装置が担当する場合に、ディスク装置の負荷管理を適正に行うことができる。
【００２２】
上記の発明のＲＡＩＤ制御装置において、前記制御手段は、移行元ディスク制御装置から移行される論理ユニットに関する管理情報を取得する管理情報取得手段と、前記論理ユニットに対するアクセス要求が発生したとき、前記管理情報を参照してキャッシュヒットか、キャッシュミスかを判定する判定手段を有する。
【００２３】
このように構成することで、論理ユニットの連結時にキャッシュデータの移行を行わなくとも、移行した論理ユニットのキャッシュヒットの有無を判定できる。
上記の発明のＲＡＩＤ制御装置において、前記制御手段は、前記論理ユニットと、前記論理ユニットが存在する前記ディスク装置を示す情報と、前記論理ユニットのアクセスを担当する前記ディスク制御装置を示す情報とを対応付けた構成情報を取得する取得手段を有する。
【００２４】
このように構成することで、構成情報を参照して同じディスク装置のアクセスを担当する他のディスク制御装置が存在するか否かを判定することができる。
上記の発明のＲＡＩＤ制御装置において、前記複数のディスク制御装置の内のマスターディスク制御装置は、論理ユニットの連結が指示された場合に、連結対象の前記論理ユニットと、前記論理ユニットが存在する前記ディスク装置を示す情報と、前記論理ユニットのアクセスを担当する前記ディスク制御装置を示す情報とを対応付けた構成情報を作成する作成手段と、作成した構成情報を各ディスク制御装置に配信する配信手段を有する。
【００２５】
このように構成することで、各ディスク制御装置は、マスターディスク制御装置が作成する構成情報に基づいて担当するディスク装置の負荷管理を行うことができる。
【発明の効果】
【００２６】
本発明によれば、論理ユニット連結時のディスク制御装置間の通信を削減できる。また、論理ユニットの連結時にディスク制御装置のディスク装置に対する効率良い負荷管理を実現することができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の好適な実施の形態について図面を参照して説明する。図１は、実施の形
態のＲＡＩＤ装置（ＲＡＩＤ制御装置に対応する）１１の構成を示す図である。
図１において、ＲＡＩＤ装置１１は、ＲＡＩＤグループ０のディスク装置１２を管理をするコントローラモジュールＣＭ０（ディスク制御装置に対応する）と、ＲＡＩＤグループ１のディスク装置１３を管理するコントローラモジュールＣＭ１とを有する。コントローラモジュールＣＭ０は、キャッシュデータを記憶するキャッシュメモリ１４を有し、コントローラモジュールＣＭ１は、キャッシュデータを記憶するキャッシュメモリ１５を有する。
【００２８】
ホストコンピュータ１６からの読み出し要求を受信すると、アクセス先のディスク装置を担当するコントローラモジュールＣＭ０（またはＣＭ１）が、該当するデータがキャッシュメモリ１４（または１５）に存在するか否かを判定し、データが存在しない場合には、ディスク装置１２（または１３）からデータを読み出してキャッシュメモリ１４（または１５）に書き込む。また、ホストコンピュータ１６から書き込み要求を受信した場合には、受信したデータを一旦キャッシュメモリ１４（または１５）に書き込み、その後該当するディスク装置１２（または１３）にそのデータを書き込む。また、Ｗｒｉｔｅ Ｔｈｒｏｕｇｈモードにおいては、受信したデータをキャッシュメモリ１４（または１５）とディスク装置１２（または１３）に同時に書き込む。
【００２９】
コントローラモジュールＣＭ０のキャッシュメモリ１４には、アクセスを担当するディスク装置１２の論理ユニット番号ＬＵＮ０、ＬＵＮ１、ＬＵＮ３の各論理ユニットのキャッシュデータが格納される。また、コントローラモジュールＣＭ１のキャッシュメモリ１５には、アクセスを担当するディスク装置１３の論理ユニット番号ＬＵＮ３、ＬＵＮ４、ＬＵＮ５の各論理ユニットのキャッシュデータが格納される。
【００３０】
次に、ストライプ連結ボリュームの作成時にディスク装置の管理を担当するコントローラモジュールを切り換える場合の処理動作を、図２〜図４を参照して説明する。
図２は、ストライプ連結処理のフローチャートである。ユーザ（ホストコンピュータ）からの論理ユニット連結（ＬＵ連結）指示を受信すると（図２、Ｓ１１）、連結指示を受けたマスターコントローラモジュール（複数のコントローラモジュールの内の特定のコントローラモジュール）がＬＵ連結後の構成情報を作成する（Ｓ１２）。構成情報とは、後述するが、論理ユニットを特定する論理ユニット番号、論理ユニットを担当するコントローラモジュールを示す情報、論理ユニットが存在するＲＡＩＤグループを示す情報からなる。
【００３１】
次に、マスターコントローラモジュールが自分を含めた全てのコントローラモジュールにＬＵ連結後の構成情報を配信する（Ｓ１３）。
次に、各コントローラモジュールは構成情報を参照して、自分が担当していた論理ユニットが他のコントローラモジュールに移行したか否かを判定する（Ｓ１４）。
【００３２】
自分が担当していた論理ユニットが他のコントローラモジュールに移行した場合には（Ｓ１４、ＹＥＳ）、ステップＳ１５に進み、移行する論理ユニットのキャッシュデータの管理情報のみを移行先のコントローラモジュールに転送する。自分が担当する論理ユニットが他のコントローラモジュールに移行していない場合には、そこで処理を終了する。
【００３３】
次に、ユーザからのＩ／Ｏ要求を受け付けながら移行対象の論理ユニットのキャッシュデータを移行先のコントローラモジュールに移行する（Ｓ１６）。
上記のようにＬＵ連結時点では移行対象の論理ユニットのキャッシュデータのディスク装置への書き戻しは行わず、管理情報のみを移行先のコントローラモジュールに移行させ、ホストコンピュータからＩ／Ｏ要求があったとき（または他のＩ／Ｏ要求の処理が行われている間に）、移行対象の論理ユニットのキャッシュデータを移行先に転送している。
これにより、ＬＵ連結時に、移行元のコントローラモジュールのキャッシュデータをディスク装置に書き戻す必要がないので、その間ホストコンピュータからのＩ／Ｏ要求が待たされるのを回避できる。
【００３４】
ここで、各コントローラモジュールＣＭ０、ＣＭ１に保持される構成情報の一例を、図３を参照して説明する。
図３（Ａ）は、ＬＵ連結前の構成情報２１ａを示し、図３（Ｂ）は、ＬＵ連結後の構成情報２１ｂを示している。
【００３５】
構成情報２１ａ、２１ｂは、論理ユニット番号と、論理ユニットのアクセスを担当するコントローラモジュールを示す情報（ＣＭ０、ＣＭ１）と、ディスク装置が属するＲＡＩＤグループを示す情報（ＲＡＩＤグループ０，ＲＡＩＤグループ１）を１組とする複数の情報で構成されている。これらの構成情報２１ａ、２１ｂは、マスターコントローラモジュール（例えば、ＣＭ０）により作成され、作成された構成情報が各コントローラモジュールに配信される。コントローラモジュールＣＭ０、ＣＭ１は構成情報２１ａまたは２１ｂを参照して自分が担当する論理ユニットと、その論理ユニットが存在するＲＡＩＤグループを識別することができる。
【００３６】
ＬＵ連結前の構成情報２１ａは、図３（Ａ）に示すように、論理ユニット番号ＬＵＮ０、ＬＵＮ１、ＬＵＮ２と、それらの論理ユニットを管理するコントローラモジュールを示す情報「ＣＭ０」と、ＲＡＩＤグループを示す情報「０」が対応付けられている。また、論理ユニット番号ＬＵＮ３、ＬＵＮ４、ＬＵＮ５と、それらの論理ユニットを管理するコントローラモジュールを示す情報「ＣＭ１」と、ＲＡＩＤグループを示す情報「１」が対応付けられている。
【００３７】
上記の構成情報２１ａから、ＬＵ連結前は、論理ユニット番号ＬＵＮ０〜ＬＵＮ２の論理ユニットのアクセスはコントローラモジュールＣＭ０が担当し、論理ユニット番号ＬＵＮ３〜ＬＵＮ５の論理ユニットのアクセスはコントローラモジュールＣＭ１が担当することが分かる。また、論理ユニット番号ＬＵＮ０〜ＬＵＮ２の論理ユニットはＲＡＩＤグループ０に属し、論理ユニット番号ＬＵＮ３〜ＬＵＮ５の論理ユニットはＲＡＩＤグループ１に属することが分かる。
【００３８】
ＬＵ連結が実行されると、マスターコントローラモジュールが、図３（Ｂ）に示すＬＵ連結後の構成情報２１ｂを作成する。
ＬＵ連結後の構成情報２１ｂは、論理ユニット番号ＬＵＮ０〜ＬＵＮ２と、それらの論理ユニットを管理するコントローラモジュールを指す情報「ＣＭ０」と、ＲＡＩＤグループを示す情報「０」が対応付けられている。また、論理ユニット番号ＬＵＮ３〜ＬＵＮ４と、それらの論理ユニットを管理するコントローラモジュールを指す情報「ＣＭ０」と、ＲＡＩＤグループを示す情報「１」が対応付けられている。また、論理ユニット番号ＬＵＮ５と、その論理ユニットを管理するコントローラモジュールを示す情報「ＣＭ１」と、ＲＡＩＤグループを示す情報「１」が対応付けられている。
【００３９】
上記の構成情報２１ｂから、ＬＵ連結後は、論理ユニット番号ＬＵＮ０〜ＬＵＮ４の論理ユニットのアクセスはコントローラモジュールＣＭ０が担当し、論理ユニット番号ＬＵＮ５の論理ユニットのアクセスはコントローラモジュールＣＭ１が担当することが分かる。また、論理ユニット番号ＬＵＮ０〜２の論理ユニットはＲＡＩＤグループ０に属し、論理ユニット番号ＬＵＮ３〜５の論理ユニットはＲＡＩＤグループ１に属することが分かる。
【００４０】
なお、ＬＵ連結の結果、ＲＡＩＤグループ１の論理ユニット番号ＬＵＮ３、ＬＵＮ４の
論理ユニットのアクセスはコントローラモジュールＣＭ０が担当することになるので、ＲＡＩＤグループ１のディスク装置１３は、本来の担当であるコントローラモジュールＣＭ１と、論理ユニットの移行先であるコントローラモジュールＣＭ０の複数（２台）のコントローラモジュールによりアクセスされることになる。
【００４１】
図４は、ストライプ連結ボリューム作成時の担当コントローラモジュールの移行の説明図である。
今、ＬＵ連結が行われ、ＲＡＩＤグループ０に属するディスク装置１２の論理ユニット番号ＬＵＮ０の論理ユニットのストライプＳ１、Ｓ３と、論理ユニット番号ＬＵＮ１のストライプＳ５、Ｓ７と、ＲＡＩＤグループ１に属するディスク装置１３の論理ユニット番号ＬＵＮ３のストライプＳ２、Ｓ４と、論理ユニット番号ＬＵＮ４のストライプＳ６、Ｓ８が連結されたものとする。
【００４２】
ストライプ連結が行われると、マスターコントローラモジュールＣＭ０が、論理ユニット番号ＬＵＮ３とＬＵＮ４の論理ユニットの担当が、コントローラモジュールＣＭ１からコントローラモジュールＣＭ０に変更されたことを各コントローラモジュールに通知する。この通知は、例えば、図３（Ｂ）に示すＬＵ連結後の構成情報２１ｂを各コントローラモジュールに配信することで行う。各コントローラモジュールへの通知は構成情報を配信する方法に限らず、移行元及び移行先のコントローラモジュールに直接担当する論理ユニット番号等を通知する方法でも良い。
【００４３】
論理ユニット番号ＬＵＮ３、ＬＵＮ４の論理ユニットの担当がコントローラモジュールＣＭ０に移行されると、それ以降は、コントローラモジュールＣＭ０が、それらの論理ユニットのキャッシュデータを取得し、そのキャッシュデータを自分のキャッシュメモリ１４に保存する。
【００４４】
次に、ＬＵ連結後の負荷管理処理について図５のフローチャートを参照して説明する。
各コントローラモジュールは、担当するＲＡＩＤグループに対するＷｒｉｔｅコマンド要求が発生しことを検出すると（図５、Ｓ２１）、構成情報２１（ＬＵ連結前の構成情報２１ａとＬＵ連結後の構成情報２１ｂを総称して構成情報２１と呼ぶ）を参照してアクセス対象のＲＡＩＤグループを担当するコントローラモジュールが複数存在するか否かをチェックする（Ｓ２２）。そして、そのチェック結果に基づいて担当するコントローラモジュールが複数存在するか否かを判別する（Ｓ２３）。
【００４５】
アクセス対象のＲＡＩＤグループを担当するコントローラモジュールが１台のときには（Ｓ２３、ＮＯ）、ステップＳ２４に進み、アクセス対象のディスク装置に対してアクセス数による負荷管理を行う。これは、そのＲＡＩＤグループを担当するコントローラモジュールが１台の場合には、他のコントローラモジュールからのアクセスを考慮する必要が無いので、担当するコントローラモジュールがアクセス数により一元的に負荷管理することができるからである。
【００４６】
担当するコントローラモジュールが複数存在する場合には（Ｓ２３、ＹＥＳ）、ステップＳ２５に進み、レスポンス時間の負荷管理を行うためにコマンド発行時の開始時刻Ｔ１を記録する。
【００４７】
次に、アクセス対象のＲＡＩＤグループのディスク装置に対してＷｒｉｔｅコマンドを発行する（Ｓ２６）。そして、アクセス対象のＲＡＩＤグループのコマンド応答時の終了時刻Ｔ２を記録し、時刻Ｔ１とＴ２の差分Ｔ３を算出する（Ｓ２７）。
【００４８】
次に、応答時間Ｔ３が閾値ｔより大きいか否かを判定する（Ｓ２８）。応答時間Ｔ３が
閾値ｔより小さいときには（Ｓ２８、ＮＯ）、ステップＳ２９に進み、キューに登録されている（積まれている）要求を一定数取り出して実行する。ホストコンピュータからの書き込みまたは読み出し要求はキューに順に登録され、一定時間以上経過した要求は登録順に実行される。
【００４９】
応答時間Ｔ３が閾値ｔより大きいときには（Ｓ２８、ＹＥＳ）、アクセス対象のＲＡＩＤグループに対する負荷が大きい場合であるので、ステップＳ３０に進み、アクセス対象のＲＡＩＤグループに対する以降の要求を一定数キューに登録する。
【００５０】
上述した負荷管理処理を、図６の説明図を参照して説明する。
ＬＵ連結の結果、ＲＡＩＤグループ１に存在する論理ユニット番号ＬＵＮ３とＬＵＮ４の論理ユニットの担当がコントローラモジュールＣＭ１からコントローラモジュールＣＭ０に変更されると、ＲＡＩＤグループ１のディスク装置１３は、コントローラモジュールＣＭ１とコントローラモジュールＣＭ０の２台のコントローラモジュールによりデータの書き込み及び読み出しが行われる。そのため、ＲＡＩＤグループ１のディスク装置１３は、本来の担当であるコントローラモジュールＣＭ１のアクセス数のみでは負荷量を正確に把握できない。そこで、コントローラモジュールＣＭ１、ＣＭ０がそれぞれディスク装置１３のアクセスに対する応答時間Ｔ３を算出し、応答時間Ｔ３が閾値ｔより大きくなったときには、ディスク装置１３の負荷が大きいものと判断してアクセスを制限する。
【００５１】
ＲＡＩＤグループ０のディスク装置１２に関しては、担当するコントローラモジュールはコントローラモジュールＣＭ０のみであるので、ＬＵ連結前と同様にコントローラモジュールＣＭ０が一元的にアクセス数による負荷管理を行う。
【００５２】
上述した負荷管理処理によれば、ＬＵ連結により１台のディスク装置のアクセスを複数のコントローラモジュールが担当する場合でもディスク装置の負荷を適正に管理することができる。
【００５３】
次に、図７は、Ｉ／Ｏ要求時のキャッシュデータの移行処理のフローチャートである。
コントローラモジュールが変更された論理ユニットに対するＩ／Ｏ要求が発生すると（図７、Ｓ４１）、移行済みの管理情報を用いてキャッシュヒットか、キャッシュミスかの判定行う（Ｓ４２）。ＬＵ連結が行われて担当するコントローラモジュールが変更されると、論理ユニット番号とＬＢＡ（Logical Block Address）等のデータの位置情報からなる管理情報が、移行元コントローラモジュールから移行先コントローラモジュールに転送される。従って、移行先コントローラモジュールは、移行された論理ユニットのキャッシュデータを自己のキャッシュメモリに保持していなくとも、この管理情報を参照してホストコンピュータからのＩ／Ｏ要求に対してキャッシュヒットか、キャッシュミスかの判定を行うことができる。
【００５４】
次に、判定結果がキャッシュヒットか否かを判別する（Ｓ４３）。キャッシュミスと判定された場合には（Ｓ４３、ＮＯ）、すなわち、自己のキャッシュメモリにも、移行元のキャッシュメモリにも該当するキャッシュデータが存在しない場合には、ステップＳ４４に進み、キャッシュページを新規に獲得し、Ｉ／Ｏ要求に対する処理を行った後、Ｉ／Ｏ要求の応答をホストコンピュータに返す。
【００５５】
他方、キャッシュヒットと判定された場合には（Ｓ４３、ＹＥＳ）、ステップＳ４５に進み、該当する論理ユニットのキャッシュデータが移行済みか否かを判定する。
キャッシュデータが移行済みの場合には（Ｓ４５、ＮＯ）、ステップＳ４６に進み、自己のキャッシュメモリに格納されているキャッシュデータを用いてＩ／Ｏ要求に対する処理を行った後、ホストコンピュータにＩ／Ｏ要求の応答を返す。
【００５６】
他方、キャッシュデータが移行されていない場合には（Ｓ４５、ＹＥＳ）、ステップＳ４７に進み、移行元のコントローラモジュールに対してＩ／Ｏ要求のあった論理ユニットのキャッシュデータの転送を要求し、転送されるキャッシュデータを自己のキャッシュメモリに格納する。なお、ＬＵ連結により移行された論理ユニットの中でＩ／Ｏ要求が発生していないキャッシュデータについては、他のキャッシュデータのＩ／Ｏ要求を受け付けながら順次移行を行う。
【００５７】
上述したキャッシュデータの移行処理では、論理ユニットのアクセスを担当するコントローラモジュールが変更された時点ではキャッシュデータの移行は行わず、管理情報のみを移行先のコントローラモジュールに移行する。そして、担当が変更された論理ユニットに対するＩ／Ｏ要求が発生したときに、管理情報を参照してキャッシュヒットか、キャッシュミスかを判定し、キャッシュヒットかつキャッシュデータが未移行（移行元コントローラモジュールのキャッシュメモリにキャッシュデータが存在する状態）のときには、移行元コントローラモジュールに対してキャッシュデータの転送要求を行い、転送されるキャッシュデータを自己のキャッシュメモリに保存する。
【００５８】
上述した実施の形態は、移行された論理ユニットに対してＩ／Ｏ要求が発生した時点または他のＩ／Ｏ要求を受付けているときに順次必要なキャッシュデータを移行元コントローラモジュールから移行先コントローラモジュールに転送するようにしている。これにより、論理ユニットの連結時に、移行元コントローラモジュールのキャッシュデータをディスク装置に一旦書き戻し、Ｗｒｉｔｅ Ｔｈｒｏｕｇｈモードにした上で担当するコントローラモジュールを切り換える必要が無くなるので、その間ホストコンピュータからのＩ／Ｏ要求が待たされることが無くなる。
【００５９】
また、異なるディスク装置に分散配置されているデータを連結するストライプ連結の場合でも、１台のコントローラモジュールが連結された論理ユニットを担当することで、コントローラモジュール間の通信量を削減できる。
【００６０】
本発明は上述した実施の形態に限らず、例えば、以下のように構成しても良い。
（１）実施の形態は、２台のコントローラモジュールＣＭ０、ＣＭ１が、それぞれＲＡＩＤグループ０とＲＡＩＤグループ１のディスク装置を担当する場合について説明したが、コントローラモジュールは２台に限らず２以上の任意の台数で良い。
（２）ＲＡＩＤ装置（ＲＡＩＤ制御装置）を構成するディスク装置１２，１３及びコントローラモジュールＣＭ０、ＣＭ１はネットワークを介してそれぞれ離れた位置に配置されていても良い。
【００６１】
（付記１）複数のディスク装置と複数のディスク制御装置とからなるＲＡＩＤ制御装置であって、
論理ユニットのキャッシュデータを記憶するキャッシュメモリと、
異なるディスク装置に存在する複数の前記論理ユニットの連結が行われたとき、移行元ディスク制御装置のキャッシュメモリに格納されているキャッシュデータのディスク装置への書き戻しを行わずに、連結された前記複数の論理ユニットのアクセスを１つのディスク制御装置が担当するように担当の切り換えを行う制御手段を備えるＲＡＩＤ制御装置。（付記２）前記制御手段は、担当する前記論理ユニットに対するアクセス要求があったときに、前記論理ユニットのキャッシュデータが移行済みか否かを判定し、前記キャッシュデータが移行されていないときには、移行元ディスク制御装置から前記論理ユニットのキャッシュデータを取得するキャッシュデータ取得手段を有する付記１記載のＲＡＩＤ制御装置。
（付記３）  前記制御手段は、連結された前記論理ユニットが存在する前記ディスク装置
のアクセスを担当するディスク制御装置が複数存在するか否かを判定する判定手段と、前記ディスク制御装置が複数存在すると判定された場合に、書き込みまたは読み出し要求に対する前記ディスク装置の応答時間を算出し、前記応答時間に基づいて前記ディスク装置の負荷管理を行う負荷管理手段を有する付記１記載のＲＡＩＤ制御装置。
（付記４）前記制御手段は、連結対象の前記論理ユニットが存在する前記ディスク装置のアクセスを担当する前記ディスク制御装置が複数存在するか否かを判定する判定手段と、前記ディスク制御装置が複数存在すると判定された場合に、書き込みまたは読み出し要求に対する前記ディスク装置の応答時間を算出し、前記応答時間に基づいて前記ディスク装置の負荷管理を行い、前記ディスク装置のアクセスを担当する前記ディスク制御装置が１台と判定された場合に、前記ディスク装置に対する書き込みまたは読み出しのアクセス数に基づいて前記ディスク装置の負荷管理を行う負荷管理手段を有する付記１記載のＲＡＩＤ制御装置。
（付記５）前記制御手段は、移行元ディスク制御装置から移行される前記論理ユニットに関する管理情報を取得する管理情報取得手段と、前記論理ユニットに対するアクセス要求が発生したとき、前記管理情報を参照してキャッシュヒットか、キャッシュミスかを判定する判定手段を有する付記１、２または３記載のＲＡＩＤ制御装置。
（付記６）前記制御手段は、前記論理ユニットと、前記論理ユニットが存在する前記ディスク装置を示す情報と、前記論理ユニットのアクセスを担当する前記ディスク制御装置を示す情報とを対応付けた構成情報を取得する取得手段を有する付記１、２または３記載のＲＡＩＤ制御装置。
（付記７）前記複数のディスク制御装置の内のマスターディスク制御装置は、前記複数の論理ユニットの連結が指示された場合に、連結対象の前記論理ユニットと、前記論理ユニットが存在する前記ディスク装置を示す情報と、前記論理ユニットのアクセスを担当する前記ディスク制御装置を示す情報とを対応付けた構成情報を作成する作成手段と、作成した構成情報を各ディスク制御装置に配信する配信手段を有する付記６記載のＲＡＩＤ制御装置。
（付記８）複数のディスク装置と複数のディスク制御装置とからなるＲＡＩＤ制御装置の制御方法であって、
異なるディスク装置に存在する論理ユニットの連結が行われたとき、移行元ディスク制御装置のキャッシュメモリに格納されているキャッシュデータのディスク装置への書き戻しを行わずに、連結された前記複数の論理ユニットのアクセスを１つのディスク制御装置が担当するように担当の切り換えを行うＲＡＩＤ制御装置の制御方法。
（付記９）担当する前記論理ユニットに対するアクセス要求があったときに、前記論理ユニットのキャッシュデータが移行済みか否かを判定するステップと、前記キャッシュデータが移行されていないときには、移行元ディスク制御装置から前記論理ユニットのキャッシュデータを取得するステップからなる付記８記載のＲＡＩＤ制御装置の制御方法。
（付記１０）連結対象の前記論理ユニットが存在する前記ディスク装置のアクセスを担当する前記ディスク制御装置が複数存在するか否かを判定するステップと、前記ディスク制御装置が複数存在すると判定された場合に、書き込みまたは読み出し要求に対する前記ディスク装置の応答時間を算出するステップと、前記応答時間に基づいて前記ディスク装置の負荷管理を行うステップと、前記ディスク装置のアクセスを担当する前記ディスク制御装置が１台と判定された場合に、前記ディスク装置に対する書き込みまたは読み出しのアクセス数に基づいて前記ディスク装置の負荷管理を行うステップとからなる付記８記載のＲＡＩＤ制御装置の制御方法。
（付記１１）前記複数の論理ユニットの連結が行われたとき、移行元ディスク制御装置から移行された論理ユニットに関する管理情報を取得するステップと、前記管理ユニットに対するアクセス要求が発生したとき、前記管理情報を参照してキャッシュヒットか、キャッシュミスかを判定するステップとからなる付記８記載のＲＡＩＤ制御装置の制御方法。（付記１２）複数のディスク装置と複数のディスク制御装置とからなるＲＡＩＤ制御装置の制御プログラムであって、
異なるディスク装置に存在する複数の論理ユニットの連結が行われたとき、移行元ディスク制御装置のキャッシュメモリに格納されているキャッシュデータのディスク装置への書き戻しを行わずに、連結された前記複数の論理ユニットのアクセスを１つのディスク制御装置が担当するように担当の切り換えを行うステップを、コンピュータが実行するＲＡＩＤ制御装置の制御プログラム。
（付記１３）連結対象の前記論理ユニットが存在する前記ディスク装置のアクセスを担当する前記ディスク制御装置が複数存在するか否かを判定するステップと、前記ディスク制御装置が複数存在すると判定された場合に、書き込みまたは読み出し要求に対する前記ディスク装置の応答時間を算出するステップと、前記応答時間に基づいて前記ディスク装置の負荷管理を行うステップと、前記ディスク装置のアクセスを担当する前記ディスク制御装置が１台と判定された場合に、前記ディスク装置に対する書き込みまたは読み出しのアクセス数に基づいて前記ディスク装置の負荷管理を行うステップを、コンピュータが実行する付記１２記載のＲＡＩＤ制御装置の制御プログラム。
【図面の簡単な説明】
【００６２】
【図１】実施の形態のＲＡＩＤ装置の構成を示す図である。
【図２】ストライプ連結時の移行処理のフローチャートである。
【図３】ＬＵ連結前・連結後の構成情報を示す図である。
【図４】ストライプ連結ボリューム作成時の担当ＣＭの移行の説明図である。
【図５】ＬＵ連結後の負荷管理処理のフローチャートである。
【図６】数の負荷管理とレスポンス時間の負荷管理の説明図である。
【図７】Ｉ／Ｏ要求時のキャッシュデータの移行処理のフローチャートである。
【図８】従来のＲＡＩＤ装置のＬＵ連結時の説明図である。
【符号の説明】
【００６３】
１１      ＲＡＩＤ装置
１２，１３      ディスク装置
１４，１５      キャッシュメモリ
１６      ホストコンピュータ
ＣＭ０，ＣＭ１      コントローラモジュール
【図１】
2008192020.tif 000003
【図２】
2008192020.tif 000004
【図３】
2008192020.tif 000005
【図４】
2008192020.tif 000006
【図５】
2008192020.tif 000007
【図６】
2008192020.tif 000008
【図７】
2008192020.tif 000009
【図８】
2008192020.tif 000010