(57)【特許請求の範囲】
【請求項１】
ディスクアレイ装置を制御する複数のコントローラの構成情報、前記ディスクアレイ装置にＩ／Ｏ要求を発行する情報処理装置におけるＩ／Ｏ負荷を示す負荷情報及び前記情報処理装置における優先度を示す優先度情報に基づき所定の演算によって、該複数のコントローラに含まれるそれぞれのキャッシュのうち、前記Ｉ／Ｏ要求に応じてＩ／Ｏ処理を実行するに際して主として利用されるマスタという属性をもつキャッシュ及びそのキャッシュに保持されたデータを二重化する際に利用されるスレーブという属性をもつキャッシュによって構成されたキャッシュグループを対象として、前記それぞれのキャッシュの優先値を算出する優先値算出部と、
前記算出した優先値の中から、最も大きい値を示す優先値に対応するキャッシュを含むコントローラと、前記キャッシュグループとを求め、
前記求めたキャッシュグループにおいて、既に属性がマスタに決定しているキャッシュの有無を判別した結果に応じて、前記求めたコントローラに含まれるキャッシュの属性をマスタ、またはスレーブの何れかに決定し、該キャッシュの属性をスレーブに決定した場合には、前記求めたコントローラと異なる他のコントローラに含まれるキャッシュのうち属性が決定していないキャッシュの属性を、マスタ及びスレーブとして利用できないサブスレーブに決定し、
前記求めたキャッシュグループと異なる他のキャッシュグループにおいて、前記求めたコントローラに含まれるキャッシュの属性を前記サブスレーブに決定する、
という一連の処理を実行すると共に、前記それぞれのキャッシュの属性を、該決定した属性に変更するキャッシュ属性制御部と、を備えることを特徴とするキャッシュ制御装置。
【請求項２】
前記キャッシュ属性制御部は、
前記キャッシュグループ毎に、前記それぞれのキャッシュの属性が決定したか否かを判別し、前記それぞれのキャッシュの属性が決定していないと判別した場合に、前記一連の処理を実行し、
前記優先値算出部は、
前記キャッシュ属性制御部により前記それぞれのキャッシュの属性が決定していないと判別した場合に、前記構成情報、前記負荷情報及び前記優先度情報に基づき前記所定の演算によって、前記キャッシュグループ毎に、前記それぞれのキャッシュの中から属性の決定していないキャッシュの優先値を算出する
ことを特徴とする請求項１に記載のキャッシュ制御装置。
【請求項３】
前記構成情報は、
前記優先値の算出対象となるキャッシュの冗長構成を判定した結果を示す情報と、前記優先値の算出対象となるキャッシュを含むコントローラにおけるＩ／Ｏ処理を制御する制御部の属性を判定した結果を示す情報とを含む
ことを特徴とする請求項１または請求項２に記載のキャッシュ制御装置。
【請求項４】
前記負荷情報は、
前記キャッシュグループに関連付けられた制御対象である記憶領域に対してＩ／Ｏ要求を発行するそれぞれの情報処理装置における前記Ｉ／Ｏ負荷を示す情報を含む
ことを特徴とする請求項１乃至請求項３の何れかに記載のキャッシュ制御装置。
【請求項５】
前記優先度情報は、
前記それぞれの情報処理装置における前記優先度を示す情報を含む
ことを特徴とする請求項１乃至請求項４の何れかに記載のキャッシュ制御装置。
【請求項６】
請求項１乃至請求項５の何れかに記載されたキャッシュ制御装置を含むことを特徴とするディスクアレイ装置のコントローラ。
【請求項７】
１つ以上の情報処理装置からのＩ／Ｏ要求に応じて、Ｉ／Ｏ処理を実行する複数のコントローラを備えるディスクアレイ装置であって、
前記複数のコントローラのうち特定のコントローラは、
前記情報処理装置から発行される前記Ｉ／Ｏ要求を監視すると共に、そのＩ／Ｏ要求に基づき前記情報処理装置を対象として、優先度及びＩ／Ｏ負荷を求め、前記求めた優先度とＩ／Ｏ負荷とを、優先度情報と負荷情報として送信する監視部と、
前記特定のコントローラの構成情報、前記負荷情報及び前記優先度情報に基づき所定の演算によって、該複数のコントローラに含まれるそれぞれのキャッシュのうち、前記Ｉ／Ｏ要求に応じてＩ／Ｏ処理を実行するに際して主として利用されるマスタという属性をもつキャッシュ及びそのキャッシュに保持されたデータを二重化する際に利用されるスレーブという属性をもつキャッシュによって構成されたキャッシュグループを対象として、前記特定のコントローラに含まれるキャッシュの優先値を算出する優先値算出部と、
前記複数のコントローラに含まれる前記優先値算出部によって算出した優先値の中から、最も大きい値を示す優先値に対応するキャッシュを含むコントローラと、前記キャッシュグループとを求め、
前記求めたキャッシュグループにおいて、既に属性がマスタに決定しているキャッシュの有無を判別した結果に応じて、前記求めたコントローラに含まれるキャッシュの属性をマスタ、またはスレーブの何れかに決定し、該キャッシュの属性をスレーブに決定した場合には、前記求めたコントローラと異なる他のコントローラに含まれるキャッシュのうち属性が決定していないキャッシュの属性を、マスタ及びスレーブとして利用できないサブスレーブに決定し、
前記求めたキャッシュグループと異なる他のキャッシュグループにおいて、前記求めたコントローラに含まれるキャッシュの属性を前記サブスレーブに決定する、
という一連の処理を実行するキャッシュ属性判定部と、
前記キャッシュグループを対象として、前記それぞれのキャッシュの属性を、該決定した属性に変更するキャッシュ属性変更部と、を備え、
前記特定のコントローラと異なる他のコントローラは、
前記監視部と、
前記異なる他のコントローラの構成情報、前記負荷情報及び前記優先度情報に基づき所定の演算によって、前記キャッシュグループを対象として、前記異なる他のコントローラに含まれるキャッシュの優先値を算出する優先値算出部と、
前記キャッシュ属性変更部と、
を備えることを特徴とするディスクアレイ装置。
【請求項８】
情報処理装置によって、
ディスクアレイ装置を制御する複数のコントローラの構成情報、前記ディスクアレイ装置にＩ／Ｏ要求を発行する情報処理装置におけるＩ／Ｏ負荷を示す負荷情報及び前記情報処理装置における優先度を示す優先度情報に基づき所定の演算によって、該複数のコントローラに含まれるそれぞれのキャッシュのうち、前記Ｉ／Ｏ要求に応じてＩ／Ｏ処理を実行するに際して主として利用されるマスタという属性をもつキャッシュ及びそのキャッシュに保持されたデータを二重化する際に利用されるスレーブという属性をもつキャッシュによって構成されたキャッシュグループを対象として、前記それぞれのキャッシュの優先値を算出し、
前記算出した優先値の中から、最も大きい値を示す優先値に対応するキャッシュを含むコントローラと、前記キャッシュグループとを求め、
前記求めたキャッシュグループにおいて、既に属性がマスタに決定しているキャッシュの有無を判別した結果に応じて、前記求めたコントローラに含まれるキャッシュの属性をマスタ、またはスレーブの何れかに決定し、該キャッシュの属性をスレーブに決定した場合には、前記求めたコントローラと異なる他のコントローラに含まれるキャッシュのうち属性が決定していないキャッシュの属性を、マスタ及びスレーブとして利用できないサブスレーブに決定し、
前記求めたキャッシュグループと異なる他のキャッシュグループにおいて、前記求めたコントローラに含まれるキャッシュの属性を前記サブスレーブに決定する、
という一連の処理を実行すると共に、前記それぞれのキャッシュの属性を、該決定した属性に変更する、
ことを特徴とするキャッシュの制御方法。
【請求項９】
ディスクアレイ装置を制御する複数のコントローラの構成情報、前記ディスクアレイ装置にＩ／Ｏ要求を発行する情報処理装置におけるＩ／Ｏ負荷を示す負荷情報及び前記情報処理装置における優先度を示す優先度情報に基づき所定の演算によって、該複数のコントローラに含まれるそれぞれのキャッシュのうち、前記Ｉ／Ｏ要求に応じてＩ／Ｏ処理を実行するに際して主として利用されるマスタという属性をもつキャッシュ及びそのキャッシュに保持されたデータを二重化する際に利用されるスレーブという属性をもつキャッシュによって構成されたキャッシュグループを対象として、前記それぞれのキャッシュの優先値を算出する機能と、
前記算出した優先値の中から、最も大きい値を示す優先値に対応するキャッシュを含むコントローラと、前記キャッシュグループとを求め、
前記求めたキャッシュグループにおいて、既に属性がマスタに決定しているキャッシュの有無を判別した結果に応じて、前記求めたコントローラに含まれるキャッシュの属性をマスタ、またはスレーブの何れかに決定し、該キャッシュの属性をスレーブに決定した場合には、前記求めたコントローラと異なる他のコントローラに含まれるキャッシュのうち属性が決定していないキャッシュの属性を、マスタ及びスレーブとして利用できないサブスレーブに決定し、
前記求めたキャッシュグループと異なる他のキャッシュグループにおいて、前記求めたコントローラに含まれるキャッシュの属性を前記サブスレーブに決定する、
という一連の処理を実行すると共に、前記それぞれのキャッシュの属性を、該決定した属性に変更する機能と、
をコンピュータに実現させることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のキャッシュの中から最適なキャッシュを選定すると共に、選定されたキャッシュに基づきキャッシュグループを構成する技術分野に関する。
【背景技術】
【０００２】
一般的に知られたディスクアレイ装置（以降、「ストレージシステム」とも記す）では、自装置のコンポーネントを冗長化すると共に、記憶するデータを二重化することにより当該データの信頼性及び耐障害性を高める技術が採用されている。
【０００３】
より具体的に、一例として、係る冗長化する技術としては、ディスクアレイ装置を制御する制御部と、係るデータを一時的に保持するキャッシュメモリ（以降、「キャッシュ」と称する）とを含むコントローラを二重化する技術が存在する。
【０００４】
さらに、この二重化された２つのコントローラに含まれるキャッシュの制御方法は、一方のコントローラに含まれるキャッシュをマスタ（以降、「キャッシュマスタ」と称する）、他方のコントローラに含まれるキャッシュをスレーブ（以降、「キャッシュスレーブ」と称する）として構成すると共に、これらキャッシュを制御するローカルキャッシュ方式が一般的に知られている。
【０００５】
ここで、キャッシュマスタとは、例えば、サーバ装置とディスクアレイ装置との間においてデータの書き込み（ライト）、または読み込み（リード）処理（以下、本願では「Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）処理」とも記す）を実行するに際して主として利用されるキャッシュである。また、キャッシュスレーブは、キャッシュマスタに保持されたデータを二重化する際に利用されるキャッシュである。
【０００６】
ローカルキャッシュ方式は、例えば、サーバ装置からデータの書き込み要求（以降、「Ｉ／Ｏ要求」とも記す）をディスクアレイ装置が受け付けた場合に、当該データを、キャッシュマスタ及びキャッシュスレーブに一時的に保持することによりＩ／Ｏ処理に要する時間を短縮すると共に、当該データを二重化することができる。
【０００７】
ここで、本願出願に先立って存在する関連技術として、例えば、特許文献１乃至特許文献３がある。
【０００８】
特許文献１は、ディスクアレイ装置、ディスクアレイシステム及びキャッシュ制御方法に関する技術を開示する。特許文献１に開示されたディスクアレイ装置は、キャッシュを含むマスタコントローラと、バッファメモリ（以降、「バッファ」と称する）を含むスレーブコントローラとを備える。
【０００９】
係るスレーブコントローラは、サーバ装置からライトデータの書き込み要求を受信した場合に、そのライトデータをバッファに保持する。係るスレーブコントローラは、当該ライトデータをバッファに保持したことを示す識別情報を、受信した書き込み要求に付加する。さらに、係るスレーブコントローラは、識別情報を付加した書き込み要求と、ライトデータとを当該マスタコントローラに対して送信する。
【００１０】
係るマスタコントローラは、書き込み要求とライトデータとを受信すると共に、受信したライトデータをキャッシュに保持する。当該マスタコントローラは、識別情報が付加された書き込み要求を、当該スレーブコントローラに対して送信する。係るスレーブコントローラは、書き込み要求を受信するのに応じて、バッファの属性をバッファからキャッシュに変更する。
【００１１】
これにより、特許文献１に開示されたディスクアレイ装置は、一方のコントローラが他方のコントローラを制御するマスタ権限を持たないスレーブコントローラに対してライトデータの書き込みを要求された場合であっても、マスタコントローラとスレーブコントローラとのキャッシュ間において、ライトデータの一貫性を維持することができる。
【００１２】
特許文献２は、アレイコントローラ、ディスクアレイ制御方法及びプログラムに関する技術を開示する。
【００１３】
係るアレイコントローラは、複数のディスクドライブにデータ及びそのデータの冗長データを分散して書き込むように制御するライト制御部と、複数のディスクドライブのうち、当該冗長データが書き込まれるディスクドライブのキャッシュに対してライトバックモードに設定するライトキャッシュ制御部とを備える。
【００１４】
これにより、特許文献２に開示されたアレイコントローラは、ディスクアレイ装置においてデータの書き込みに要する時間を短縮することができる。
【００１５】
次に、特許文献３は、キャッシュ一貫性保証機能を有するストレージクラスタシステムに関する技術を開示する。係るストレージクラスタシステムは、複数の記憶デバイス制御装置と、その記憶デバイス制御装置によって管理される物理記憶デバイスとを備える。
【００１６】
係る複数の記憶デバイス制御装置は、外部装置からアクセス要求を受信するスレーブノードとして機能する記憶デバイス制御装置と、物理記憶デバイスを管理するマスタノードとして機能する記憶デバイス制御装置と、スレーブノードと当該アクセス要求に含まれるアクセスの対象範囲とを関連付けたディレクトリエントリを管理するディレクトリ管理ノードとして機能する記憶デバイス制御装置とを含む。
【００１７】
係るスレーブノードは、外部装置からアクセス要求を受信した場合に、マスタノードに対してアクセス要求を転送する。当該スレーブノードは、受信したアクセス要求がリード要求を示す場合に、アクセス要求に対してマスタノードから転送されたデータを、キャッシュに保持する。
【００１８】
一方で、当該スレーブノードは、受信したアクセス要求がライト要求を示す場合には、外部装置から転送されたデータをキャッシュに保持する。さらに、複数の記憶デバイス制御装置のうち何れかの記憶デバイス制御装置は、物理記憶デバイスに形成された仮想記憶デバイスに係るデータをライトする。
【００１９】
このように、特許文献３に開示されたストレージクラスタシステムは、専用のハードウェアを用いることなくキャッシュ操作に伴う不要な処理を抑止すると共に、データの一貫性を保証することができる。
【先行技術文献】
【特許文献】
【００２０】
【特許文献１】特開２０１１−１９２０５３号公報
【特許文献２】特開２００６−２７７０４２号公報
【特許文献３】特開２００８−１２３１９８号公報
【発明の概要】
【発明が解決しようとする課題】
【００２１】
ところで、２つのコントローラを備えるディスクアレイ装置において、そのコントローラに含まれるキャッシュに対してマスタ、スレーブ及びサブスレーブ等の属性を割り当てる方法は、複数のハードディスクドライブ等の物理記憶装置を、論理的に所定の単位に構成された記憶領域（以下、本願において「Ｒａｎｋ」と称する）を識別可能なＲａｎｋ番号に応じて、当該キャッシュに対して属性を割り当てる方法が知られている。
【００２２】
より具体的に、一例として、係る属性を割り当てる方法としては、Ｒａｎｋ番号が偶数を表す場合に、一方のコントローラ（例えば、コントローラ＃０）に含まれるキャッシュをキャッシュマスタとすると共に、他方のコントローラ（例えば、コントローラ＃１）に含まれるキャッシュをキャッシュスレーブとする。
【００２３】
また、係る属性を割り当てる方法は、Ｒａｎｋ番号が奇数を表す場合に、一方のコントローラ（コントローラ＃１）に含まれるキャッシュをキャッシュマスタとすると共に、他方のコントローラ（コントローラ＃０）に含まれるキャッシュをキャッシュスレーブとする。
【００２４】
上述した説明では、２つのコントローラにおいて、ローカルキャッシュ方式を採用した場合について説明した。以下の説明では、例えば、４つのコントローラを備えるディスクアレイ装置において、ローカルキャッシュ方式を採用した場合について説明する。
【００２５】
より具体的に、一例として、係る方式は、４つのコントローラのうち２つのコントローラ毎にペアを構成する。さらに、係る方式は、ペアを構成した２つのコントローラにおいて、一方のコントローラに含まれるキャッシュをキャッシュマスタとし、他方のコントローラに含まれるキャッシュをキャッシュスレーブとする。さらに、係る方式は、キャッシュマスタとキャッシュスレーブとのペア（以降、「キャッシュペア」と称する）を構成する。これにより、係る方式は、２つのキャッシュペアを構成することができる。
【００２６】
また、構成したキャッシュペアに対してＲａｎｋを割り当てる方法としては、Ｒａｎｋ番号が偶数を表す場合に、一方のキャッシュペア（例えば、キャッシュペア＃０）に割り当てることとする。また、係るＲａｎｋを割り当てる方法は、Ｒａｎｋ番号が奇数を表す場合に、他方のキャッシュペア（例えば、キャッシュペア＃１）に割り当てることとする。
【００２７】
係るＲａｎｋを割り当てる方法では、例えば、一方のキャッシュペア（キャッシュペア＃０）においてキャッシュの属性（マスタ、またはスレーブ）が既に決定している場合に、他方のキャッシュペア（キャッシュペア＃１）において、そのキャッシュをキャッシュマスタ、またはキャッシュスレーブとして利用することができない。
【００２８】
そのため、係るＲａｎｋを割り当てる方法は、一方のキャッシュペア（キャッシュペア＃０）においてキャッシュの属性（マスタ、またはスレーブ）が既に決定している場合に、他方のキャッシュペア（キャッシュペア＃１）において、そのキャッシュの属性をキャッシュサブスレーブとする。
【００２９】
図８は、４つのコントローラの構成と、４つのコントローラに含まれるキャッシュの属性とを概念的に例示する図である。
【００３０】
図８において、物理ディスクアレイコントローラ（Ｄｉｓｋ＿Ａｒｒａｙ＿Ｃｏｎｔｒｏｌｌｅｒ：以下、本願では「ＤＡＣ」と称する）グループ＃０（第１物理ＤＡＣグループ２０１）は、同一の筐体内にコントローラ＃０（第１コントローラ２０５）とコントローラ＃２（第３コントローラ２０７）とを備える。物理ＤＡＣグループ＃１（第２物理ＤＡＣグループ２０２）は、同一の筐体内にコントローラ＃１（第２コントローラ２０６）とコントローラ＃３（第４コントローラ２０８）とを備える。
【００３１】
また、論理ＤＡＣグループ＃０（第１論理ＤＡＣグループ２０３）は、第１コントローラ２０５と第２コントローラ２０６とを備える。論理ＤＡＣグループ＃１（第２論理ＤＡＣグループ２０４）は、第３コントローラ２０７と第４コントローラ２０８とを備える。
【００３２】
図８において、キャッシュペア＃０は、第１コントローラ２０５のキャッシュ＃０（第１キャッシュ２０９）をキャッシュマスタ及び第２コントローラ２０６のキャッシュ＃１（第２キャッシュ２１０）をキャッシュスレーブによって構成する。第３コントローラ２０７のキャッシュ＃２（第３キャッシュ２１１）と第４コントローラ２０８のキャッシュ＃３（第４キャッシュ２１２）とは、キャッシュペア＃０においてキャッシュサブスレーブとすることとする。
【００３３】
また、キャッシュペア＃１は、第３キャッシュ２１１をキャッシュマスタ及び第４キャッシュ２１２をキャッシュスレーブによって構成する。第１キャッシュ２０９と第２キャッシュ２１０とは、キャッシュペア＃１においてキャッシュサブスレーブとすることとする。
【００３４】
図８において例示した構成を有するディスクアレイ装置においては、例えば、サーバ装置からＩ／Ｏ要求を受け付けた場合に、キャッシュの属性（マスタ、スレーブ及びサブスレーブ）によって、レスポンスタイム（応答時間）が異なる。
【００３５】
より具体的に、一例として、サーバ装置からＩ／Ｏ要求を受け付けたディスクアレイ装置における動作について、図９（図９Ａ、図９Ｂ、図９Ｃ、図９Ｄ）を参照して説明する。
【００３６】
図９Ａは、図８に示すキャッシュマスタを含む第１コントローラ２０５がサーバ装置からライト要求を受け付けた場合のディスクアレイ装置における処理の流れを例示するシーケンス図である。
【００３７】
図９Ａにおいて、第１コントローラ２０５がサーバ装置からライト要求を受け付けた場合に、第１コントローラ２０５は、第１キャッシュ２０９にデータの書き込み後に、第２コントローラ２０６に対して当該データを送信する。第２コントローラ２０６は、第１コントローラ２０５から当該データを受信すると共に、そのデータを第２キャッシュ２１０に書き込む。第２コントローラ２０６は、第２キャッシュ２１０に当該データの書き込みが完了したことを第１コントローラ２０５に通知する。即ち、図９Ａにおいて、キャッシュマスタを含む第１コントローラ２０５がサーバ装置からライト要求を受け付けた場合に、コントローラ間のデータ通信は、１回となる。また、コントローラ間の通信は、２回となる。
【００３８】
図９Ｂは、図８に示すキャッシュサブスレーブを含む第３コントローラ２０７がサーバ装置からライト要求を受け付けた場合のディスクアレイ装置における処理の流れを例示するシーケンス図である。
【００３９】
図９Ｂにおいて、第３コントローラ２０７がサーバ装置からライト要求を受け付けた場合に、第３コントローラ２０７は、主としてライト処理を実行することができないため、データを第１コントローラ２０５に対して送信する。第１コントローラ２０５は、第３コントローラ２０７からデータを受信すると共に、そのデータを第１キャッシュ２０９に書き込む。
【００４０】
さらに、第１コントローラ２０５は、第２コントローラ２０６に対して当該データを送信する。第２コントローラ２０６は、第１コントローラ２０５から当該データを受信すると共に、そのデータを第２キャッシュ２１０に書き込む。第２コントローラ２０６は、第２キャッシュ２１０に当該データの書き込みが完了したことを第１コントローラ２０５に通知する。第１コントローラ２０５は、当該データの書き込みが完了したことを第３コントローラ２０７に通知する。即ち、図９Ｂにおいて、キャッシュサブスレーブを含む第３コントローラ２０７がサーバ装置からライト要求を受け付けた場合に、コントローラ間のデータ通信は、２回となる。また、コントローラ間の通信は、４回となる。
【００４１】
図９Ｃは、図８に示すキャッシュスレーブを含む第２コントローラ２０６がサーバ装置からライト要求を受け付けた場合のディスクアレイ装置における処理の流れを例示するシーケンス図である。
【００４２】
図９Ｃにおいて、第２コントローラ２０６がサーバ装置からライト要求を受け付けた場合に、第２コントローラ２０６は、主としてライト処理を実行することができないため、データを第１コントローラ２０５に対して送信する。第１コントローラ２０５は、第２コントローラ２０６から当該データを受信すると共に、そのデータを第１キャッシュ２０９に書き込む。
【００４３】
さらに、第１コントローラ２０５は、第２コントローラ２０６に対して当該データの書き込み要求を送信する。第２コントローラ２０６は、第１コントローラ２０５から当該データの書き込み要求を受信すると共に、当該データを第２キャッシュ２１０に書き込む。第２コントローラ２０６は、第２キャッシュ２１０に当該データの書き込みが完了したことを第１コントローラ２０５に通知する。第１コントローラ２０５は、当該データの書き込みが完了したことを第２コントローラ２０６に通知する。即ち、図９Ｃにおいて、キャッシュスレーブを含む第２コントローラ２０６がサーバ装置からライト要求を受け付けた場合に、コントローラ間のデータ通信は、１回となる。また、コントローラ間の通信は、４回となる。
【００４４】
図９Ｄは、図８に示すキャッシュサブスレーブを含む第４コントローラ２０８がサーバ装置からライト要求を受け付けた場合のディスクアレイ装置における処理の流れを例示するシーケンス図である。
【００４５】
図９Ｄにおいて、第４コントローラ２０８がサーバ装置からライト要求を受け付けた場合に、第４コントローラ２０８は、主としてライト処理を実行することができないため、データを第１コントローラ２０５に対して送信する。即ち、図９Ａ乃至図９Ｃにおいて説明したように図９Ｄにおいて、キャッシュサブスレーブを含む第４コントローラ２０８がサーバ装置からライト要求を受け付けた場合に、コントローラ間のデータ通信は、２回となる。また、コントローラ間の通信は、４回となる。
【００４６】
このように、ライト要求を受け付けたコントローラに含まれるキャッシュの属性に応じて、コントローラ間における通信及びデータ通信の回数は、異なる。即ち、キャッシュサブスレーブを含むコントローラがサーバ装置からライト要求を受け付けた場合に、ディスクアレイ装置の性能は、劣化する。
【００４７】
そのため、例えば、ユーザは、コントローラに含まれるキャッシュの属性を考慮してサーバ装置とディスクアレイ装置のコントローラとを接続する必要がある。即ち、ユーザにとって係る接続作業は、煩雑となる虞がある。
【００４８】
また、例えば、ディスクアレイ装置において、特定のサーバ装置からのＩ／Ｏ要求を優先度（優先順位）に応じて、優先的に処理を実行する場合に、ユーザは、当該特定のサーバ装置とキャッシュマスタ、またはキャッシュスレーブを含むコントローラとを接続する必要がある。しかしながら、キャッシュマスタ、またはキャッシュスレーブを含むコントローラと、他のサーバ装置とが既に接続されている場合に、ユーザは、既に接続されたサーバ装置、コントローラ及び特定のサーバ装置を改めて接続する必要がある。
【００４９】
上述した特許文献１乃至特許文献３には、二重化された２つのコントローラにおいてキャッシュを制御する方法が記載されているに留まり、例えば、サーバ装置とディスクアレイ装置との間において、Ｉ／Ｏ処理に関する状態や情報が動的に変化する場合にキャッシュを制御することについて、考慮されておらず何ら述べられていない。また、特許文献１乃至特許文献３には、４つ以上のコントローラを備えるディスクアレイ装置においてキャッシュを制御する場合について、考慮されておらず何ら述べられていない。
【００５０】
即ち、特許文献１乃至特許文献３では、サーバ装置とディスクアレイ装置間のＩ／Ｏ負荷や優先度が動的に変化した場合に、キャッシュの属性を適切に変更できない。このため、ディスクアレイ装置は、サーバ装置との間において、Ｉ／Ｏ処理をすることが安定的に行えないだけでなく、処理速度の低下を招く虞がある。
【００５１】
本発明の主たる目的は、Ｉ／Ｏ処理に関する状態や情報が動的に変化した場合であっても、ディスクアレイ装置の性能が劣化するのを抑止することが可能なキャッシュ制御装置等を提供することを主たる目的とする。
【課題を解決するための手段】
【００５２】
上記の課題を達成すべく、本発明に係るキャッシュ制御装置は、以下の構成を備えることを特徴とする。
【００５３】
即ち、本発明に係るキャッシュ制御装置は、
ディスクアレイ装置を制御する複数のコントローラの構成情報、前記ディスクアレイ装置にＩ／Ｏ要求を発行する情報処理装置におけるＩ／Ｏ負荷を示す負荷情報及び前記情報処理装置における優先度を示す優先度情報に基づき所定の演算によって、該複数のコントローラに含まれるそれぞれのキャッシュのうち、マスタ及びスレーブという属性をもつキャッシュによって構成されたキャッシュグループを対象として、前記それぞれのキャッシュの優先値を算出する優先値算出部と、
前記算出した優先値に応じて、前記それぞれのキャッシュの属性を判定すると共に、前記それぞれのキャッシュの属性を、該判定した属性に変更するキャッシュ属性制御部と、
を備えることを特徴とする。
【００５４】
或いは、同目的は、上記に示すキャッシュ制御装置を含むディスクアレイ装置のコントローラ、またはディスクアレイ装置によっても達成される。
【００５５】
また、同目的を達成すべく、本発明に係るキャッシュ制御方法は、以下の構成を備えることを特徴とする。
【００５６】
即ち、本発明に係るキャッシュ制御方法は、
ディスクアレイ装置を制御する複数のコントローラの構成情報、前記ディスクアレイ装置にＩ／Ｏ要求を発行する情報処理装置におけるＩ／Ｏ負荷を示す負荷情報及び前記情報処理装置における優先度を示す優先度情報に基づき所定の演算によって、該複数のコントローラに含まれるそれぞれのキャッシュのうち、マスタ及びスレーブという属性をもつキャッシュによって構成されたキャッシュグループを対象として、前記それぞれのキャッシュの優先値を算出し、
前記算出した優先値に応じて、前記それぞれのキャッシュの属性を判定すると共に、前記それぞれのキャッシュの属性を、該判定した属性に変更する、
ことを特徴とする。
【００５７】
尚、同目的は、上記の各構成を有するキャッシュ制御装置及びキャッシュ制御方法を、コンピュータによって実現するコンピュータ・プログラム、及びそのコンピュータ・プログラムが格納されている、読み取り可能な記憶媒体によっても達成される。
【発明の効果】
【００５８】
本発明によれば、Ｉ／Ｏ処理に関する状態や情報が動的に変化した場合であっても、ディスクアレイ装置の性能が劣化するのを抑止することが可能なキャッシュ制御装置等を提供することができる。
【図面の簡単な説明】
【００５９】
【図１】本発明の第１の実施形態におけるキャッシュ制御装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態におけるキャッシュ制御装置が行う動作を示すフローチャートである。
【図３】本発明の第２の実施形態におけるキャッシュ制御装置を含むコントローラ群の構成を示すブロック図である。
【図４】本発明の第２の実施形態におけるキャッシュ制御装置により変更する前のキャッシュの属性と、そのキャッシュを含むコントローラとサーバ装置との接続関係を概念的に例示する図である。
【図５Ａ】本発明の第２の実施形態における優先値算出部によって算出した優先値Ｚを具体的に例示する図である（１度目の算出）。
【図５Ｂ】本発明の第２の実施形態における優先値算出部によって算出した優先値Ｚを具体的に例示する図である（２度目の算出）。
【図５Ｃ】本発明の第２の実施形態における優先値算出部によって算出した優先値Ｚを具体的に例示する図である（３度目の算出）。
【図６】本発明の第２の実施形態におけるキャッシュ属性判定部によって決定されたキャッシュの属性を具体的に例示する図である。
【図７】本発明に係る各実施形態を実現可能な情報処理装置のハードウェア構成を例示的に説明するブロック図である。
【図８】４つのコントローラの構成と、４つのコントローラに含まれるキャッシュの属性とを概念的に例示する図である。
【図９Ａ】キャッシュマスタを含むコントローラがサーバ装置からライト要求を受け付けた場合のディスクアレイ装置における処理の流れを例示するシーケンス図である。
【図９Ｂ】キャッシュサブスレーブを含むコントローラがサーバ装置からライト要求を受け付けた場合のディスクアレイ装置における処理の流れを例示するシーケンス図である。
【図９Ｃ】キャッシュスレーブを含むコントローラがサーバ装置からライト要求を受け付けた場合のディスクアレイ装置における処理の流れを例示するシーケンス図である。
【図９Ｄ】キャッシュサブスレーブを含むコントローラがサーバ装置からライト要求を受け付けた場合のディスクアレイ装置における処理の流れを例示するシーケンス図である。
【発明を実施するための形態】
【００６０】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００６１】
＜第１の実施形態＞
図１は、本発明の第１の実施形態におけるキャッシュ制御装置１の構成を示すブロック図である。
【００６２】
図１において、キャッシュ制御装置１は、優先値算出部２と、キャッシュ属性制御部３とを備える。
【００６３】
より具体的に、優先値算出部２は、例えば、ディスクアレイ装置を制御する複数のコントローラの構成情報を求めると共に、求めた構成情報、負荷情報１０１及び優先度情報１０２に基づき所定の演算によって、キャッシュグループを対象として、それぞれの当該コントローラに含まれるキャッシュの優先値Ｚを、所定の時間周期毎に算出する。優先値算出部２は、後述するように、例えば、係る所定の演算をキャッシュグループ毎に行ってもよい。優先値算出部２は、算出した優先値Ｚをキャッシュ属性制御部３に対して送信する。
【００６４】
本実施形態おいて、キャッシュとは、例えば、一般的に知られたディスクアレイ装置を構成するコントローラに含まれるキャッシュを示す。
【００６５】
また、キャッシュグループは、複数のコントローラに含まれるキャッシュによる冗長構成を示す。キャッシュグループは、当該複数のコントローラに含まれるキャッシュのうち、マスタ及びスレーブという種類の属性をもつキャッシュによって構成される。
【００６６】
より具体的に、キャッシュグループは、Ｉ／Ｏ処理を実行するに際して主として利用されるキャッシュをキャッシュマスタと、キャッシュマスタに保持されたデータを二重化する際に利用されるキャッシュをキャッシュスレーブとを含む。また、本実施形態において、キャッシュマスタ及びキャッシュスレーブ以外のキャッシュは、キャッシュサブスレーブと称することとする。このキャッシュサブスレーブは、当該複数のコントローラに含まれるキャッシュのうち、上記のキャッシュマスタ及びキャッシュスレーブとして利用できないキャッシュである。
【００６７】
キャッシュを含むコントローラは、Ｒａｎｋに対するＩ／Ｏ処理を制御する制御部を有する。尚、以下の説明において、説明の便宜上、ここでは、Ｒａｎｋに対するＩ／Ｏ処理を主として制御する当該制御部をＲａｎｋマスタ、他方の制御部をＲａｎｋスレーブと称する（以下、各実施形態においても同様）。
【００６８】
また、Ｒａｎｋとは、例えば、複数のハードディスクドライブ等の物理記憶装置を、論理的に所定の単位に構成された記憶領域（以降、単に「記憶領域」とも称する）を表す。
【００６９】
尚、優先値算出部２がコントローラの構成情報を求める技術自体は、現在では一般的な技術を採用することができる。このため、本実施形態において、係る構成情報を求める技術に関する詳細な説明は省略する（以下、各実施形態においても同様）。
【００７０】
負荷情報１０１は、キャッシュグループに関連付けられた制御対象であるＲａｎｋに対してＩ／Ｏ要求を発行するところのそれぞれのサーバ装置（以降、「情報処理装置」とも記す）における負荷（つまり、Ｉ／Ｏ負荷）を示す情報を含む。
【００７１】
優先度情報１０２は、キャッシュグループに関連付けられた制御対象であるＲａｎｋに対してＩ／Ｏ要求を発行するところのそれぞれのサーバ装置における優先度を示す情報を含む。
【００７２】
ここで、優先度とは、サーバ装置からＲａｎｋに対して発行されたＩ／Ｏ要求を優先的に実行可能なように設定された情報である。
【００７３】
構成情報は、優先値Ｚの算出対象となるキャッシュの冗長構成を判定した結果を示す情報と、優先値Ｚの算出対象となるキャッシュを含むコントローラにおけるＩ／Ｏ処理を制御する制御部の属性を判定した結果（つまり、コントローラにＲａｎｋマスタ、またはＲａｎｋスレーブを含むか否か）を示す情報とを含む。
【００７４】
より具体的に、一例として、係る冗長構成を示す情報とは、キャッシュグループにおいて、優先値Ｚの算出対象となるキャッシュを含むコントローラと同一筐体内に存在する当該コントローラと異なる他のコントローラに含まれたキャッシュと、優先値Ｚの算出対象となるキャッシュとの冗長性を判定した結果を示す情報である。
【００７５】
キャッシュ属性制御部３は、優先値算出部２から受信したキャッシュグループ毎に算出されたそれぞれのキャッシュの優先値Ｚに応じて、キャッシュグループ毎に当該キャッシュの属性（マスタ、スレーブ及びサブスレーブ）を判定すると共に、その判定結果に基づいて、当該キャッシュの属性を変更する。
【００７６】
以下の説明において、より具体的に、本実施形態におけるキャッシュ制御装置１の動作について説明する。
【００７７】
図２は、本発明の第１の実施形態におけるキャッシュ制御装置１が行う動作を示すフローチャートである。係るフローチャートに沿ってキャッシュ制御装置１の動作手順を説明する。
【００７８】
ステップＳ１：
優先値算出部２は、コントローラの構成情報を求めると共に、求めた構成情報と負荷情報１０１及び優先度情報１０２に基づき所定の演算によって、キャッシュグループ毎に、それぞれのコントローラに含まれるキャッシュの優先値Ｚを算出する。優先値算出部２は、算出した優先値Ｚをキャッシュ属性制御部３に対して送信する。
【００７９】
より具体的に、一例として、ここでは、優先値Ｚの計算方法について説明する。本実施形態において、優先値算出部２は、優先値Ｚを、例えば、以下の式（１）によって求める。
【００８０】
【数１】
0005895911.tif 000002
【００８１】
式（１）において、各パラメータは、以下の通りである。
【００８２】
・ｐ：優先値Ｚの算出対象となるキャッシュを含むキャッシュグループを識別可能なキャッシュグループ番号、
・ｘ：優先値Ｚの算出対象となるキャッシュを含むコントローラを識別可能なコントローラ番号、
・ｍ：キャッシュグループｐに関連付けられた制御対象であるＲａｎｋ数、
・ｎ：キャッシュグループｐを含む１つ以上のキャッシュグループに関連付けられた制御対象であるＲａｎｋに対してＩ／Ｏ要求を発行するサーバ装置数（全てのサーバ装置数）、
・Ａｋｉ：キャッシュグループｐに関連付けられた制御対象であるＲａｎｋｉに対してＩ／Ｏ要求を発行するサーバ装置ｋにおける優先度、
・Ｂｋｉ：キャッシュグループｐに関連付けられた制御対象であるＲａｎｋｉに対してＩ／Ｏ要求を発行するサーバ装置ｋにおけるＩ／Ｏ負荷、
・Ｃｘ：キャッシュグループｐにおいて、コントローラｘと同一の筐体内に存在するコントローラｘと異なる他のコントローラに含まれたキャッシュと、優先値Ｚの算出対象となるキャッシュとの冗長性を判定した結果を示す値、及び
・Ｄｘ：コントローラｘにおけるＩ／Ｏ処理を制御する制御部の属性を判定した結果を示す値である。
【００８３】
より具体的に、（１）式において、要素Ａは、キャッシュグループｐに関連付けられた全てのＲａｎｋに対してＩ／Ｏ要求を発行する全てのサーバ装置における優先度の総和となる。また、要素Ｂは、キャッシュグループｐに関連付けられた全てのＲａｎｋに対してＩ／Ｏ要求を発行する全てのサーバ装置における負荷（つまり、Ｉ／Ｏ負荷）の総和となる。
【００８４】
さらに、Ｃｘは、優先値Ｚの算出対象となるキャッシュを含むキャッシュグループｐにおいて、コントローラｘと同一の筐体内のコントローラｘと異なる他のコントローラ（つまり、他のコントローラ）に含まれたキャッシュの属性がキャッシュマスタ、またはキャッシュスレーブの何れかの場合に、値を「０」、一方で、キャッシュマスタ、またはキャッシュスレーブの何れかでない場合に、値を「１」とする。ここで、コントローラｘと同一の筐体内のコントローラｘと異なる他のコントローラとは、優先値Ｚの算出対象となるキャッシュを含むキャッシュグループｐにおいて、コントローラｘを含む物理ＤＡＣグループ（ＤＡＣ筐体）を構成する他のコントローラである。
【００８５】
これにより、キャッシュ制御装置１は、キャッシュグループｐにおいて、コントローラｘと同一の筐体内にキャッシュマスタとキャッシュスレーブとを含む構成になることを抑制することができる。
【００８６】
また、Ｄｘは、コントローラｘにおけるＩ／Ｏ処理を制御する制御部が主として制御するマスタ（Ｒａｎｋマスタ）を表す場合に、値を「２」、スレーブ（Ｒａｎｋスレーブ）を表す場合に、値を「１」、マスタ、またはスレーブでない場合には、値を「０」とする。
【００８７】
尚、α、β、γは、所定のパラメータである。所定のパラメータ（α、β、γ）は、例えば、ユーザによって任意に決める構成を採用することができる。
【００８８】
ステップＳ２：
キャッシュ属性制御部３は、優先値算出部２から受信したキャッシュグループ毎に算出されたそれぞれのキャッシュの優先値Ｚの中から、最も大きい値を示す優先値Ｚに対応するキャッシュを含むコントローラとキャッシュグループとを求める。
【００８９】
尚、上述した本実施形態では、説明の便宜上、一例として、キャッシュ属性制御部３は、キャッシュグループ毎に算出されたそれぞれのキャッシュの優先値Ｚの中から、最も大きい値を示す優先値Ｚに対応するキャッシュを含むコントローラとキャッシュグループとを求める構成を例に説明した。
【００９０】
しかしながら本発明に係る実施形態は、係る構成に限定されない。キャッシュ属性制御部３は、例えば、キャッシュグループ毎に算出されたそれぞれのキャッシュの優先値Ｚの中から、最も小さい値を示す優先値Ｚに対応するキャッシュを含むコントローラとキャッシュグループとを求める構成を採用してもよい。
【００９１】
この場合に、キャッシュ属性制御部３は、最も小さい値を示す優先値Ｚに対応するキャッシュをキャッシュサブスレーブに決定する構成を採用することができる。但し、本実施形態を例に説明する本発明は、前述した構成には限定されない（以下、各実施形態においても同様）。
【００９２】
ステップＳ３：
キャッシュ属性制御部３は、求めたキャッシュグループにおいて、既に属性がマスタ（つまり、キャッシュマスタ）に決定しているキャッシュが存在するか否か（つまり、キャッシュの有無）を判別する。
【００９３】
ステップＳ３において「ＹＥＳ」：
キャッシュ属性制御部３は、求めたキャッシュグループにおいて、既に属性がキャッシュマスタに決定しているキャッシュの有無を判別した結果、既にキャッシュマスタに決定したキャッシュが有ると判別した場合に、処理をステップＳ５に進める。
【００９４】
ステップＳ３において「ＮＯ」：
キャッシュ属性制御部３は、求めたキャッシュグループにおいて、既に属性がキャッシュマスタに決定しているキャッシュの有無を判別した結果、既にキャッシュマスタに決定したキャッシュが無いと判別した場合に、処理をステップＳ４に進める。
【００９５】
ステップＳ４：
キャッシュ属性制御部３は、ステップＳ２において求めたコントローラに含まれるキャッシュの属性を、求めたキャッシュグループにおいてマスタ（つまり、キャッシュマスタ）に決定する。キャッシュ属性制御部３は、処理をステップＳ７に進める。
【００９６】
ステップＳ５：
キャッシュ属性制御部３は、ステップＳ２において求めたコントローラに含まれたキャッシュの属性を、求めたキャッシュグループにおいてスレーブ（つまり、キャッシュスレーブ）に決定する。
【００９７】
ステップＳ６：
キャッシュ属性制御部３は、求めたキャッシュグループにおいて、キャッシュマスタ及びキャッシュスレーブに決定したキャッシュを含むコントローラと異なる他のコントローラに含まれるキャッシュの属性をサブスレーブ（つまり、キャッシュサブスレーブ）に決定する。即ち、キャッシュ属性制御部３は、属性の決定していないキャッシュの属性をサブスレーブに決定する。
【００９８】
ステップＳ７：
キャッシュ属性制御部３は、求めたキャッシュグループと異なる他のキャッシュグループにおいて、求めたコントローラに含まれるキャッシュの属性を、サブスレーブに決定する。
【００９９】
ステップＳ８：
キャッシュ属性制御部３は、求めたキャッシュグループを含む１つ以上のキャッシュグループ毎にそれぞれのキャッシュの属性が全て決定したか否かを判別する。
【０１００】
ステップＳ８において「ＹＥＳ」：
キャッシュ属性制御部３は、キャッシュグループ毎にそれぞれのキャッシュの属性が全て決定したか否かを判別した結果、係るキャッシュの属性が決定したと判別した場合に、処理をステップＳ１０に進める。
【０１０１】
ステップＳ８において「ＮＯ」：
キャッシュ属性制御部３は、キャッシュグループ毎にそれぞれのキャッシュの属性が全て決定しているか否かを判別した結果、係るキャッシュの属性が決定していないと判別した場合に、処理をステップＳ９に進める。
【０１０２】
ステップＳ９：
優先値算出部２は、コントローラの構成情報を求めると共に、求めた構成情報、負荷情報１０１及び優先度情報１０２に基づき所定の演算によって、キャッシュグループ毎に、それぞれのコントローラに含まれるキャッシュの中から属性が決定していないキャッシュの優先値Ｚを算出する。優先値算出部２は、算出した優先値Ｚをキャッシュ属性制御部３に対して送信すると共に、処理をステップＳ２に戻す。
【０１０３】
尚、上述した本実施形態では、説明の便宜上、一例として、優先値算出部２は、ステップＳ９において、キャッシュグループ毎に、それぞれのコントローラに含まれるキャッシュの中から属性が決定していないキャッシュの優先値Ｚを算出する構成を例に説明した。
【０１０４】
しかしながら本発明に係る実施形態は、係る構成に限定されない。優先値算出部２は、ステップＳ１において説明したキャッシュグループ毎に、それぞれのコントローラに含まれるキャッシュの優先値Ｚを算出する構成を採用してもよい。
【０１０５】
ステップＳ１０：
キャッシュ属性制御部３は、決定結果に基づいて、キャッシュの属性を変更する。
【０１０６】
尚、上述した本実施形態では、説明の便宜上、一例として、キャッシュ制御装置１は、所定の時間周期毎に上述した処理を実行する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。キャッシュ制御装置１は、優先値Ｚに優先値Ｚを算出した時刻を示すパラメータを付加すると共に、付加された時刻に応じて、上述した処理を実行する構成を採用してもよい。これにより、キャッシュ制御装置１は、キャッシュの属性を変更してからあまり時間が経過していない場合に、上述した処理を実行しないように制御することができる。
【０１０７】
また、優先値算出部２は、優先値Ｚの増減値を算出すると共に、その算出した増減値が所定の閾値を超えた場合に、上述した処理を実行する構成を採用してもよい。これにより、キャッシュ制御装置１は、例えば、負荷情報１０１に含まれたＩ／Ｏ負荷が大幅に増減した場合に、最適なキャッシュの属性を判定することができる。
【０１０８】
このように本実施の形態に係るキャッシュ制御装置１によれば、Ｉ／Ｏ処理に関する状態や情報が動的に変化した場合であっても、ディスクアレイ装置の性能が劣化するのを抑止することができる。その理由は、以下に述べる通りである。
【０１０９】
即ち、キャッシュ制御装置１は、Ｉ／Ｏ処理に関する状態や情報に応じて、複数のキャッシュの中から最適なキャッシュの属性を判定すると共に、判定したキャッシュによりキャッシュグループを構成することができるからである。
【０１１０】
より具体的に、キャッシュ制御装置１の優先値算出部２は、例えば、サーバ装置とキャッシュ制御装置１を有するディスクアレイ装置間における負荷情報１０１、優先度情報１０２と、コントローラの構成情報に基づき所定の演算によって、キャッシュの優先値Ｚを算出する。キャッシュ属性制御部３は、優先値算出部２が算出した優先値Ｚに応じて、キャッシュの属性（マスタ、スレーブ及びサブスレーブ）を判定すると共に、その判定結果に基づいて、当該キャッシュの属性を変更することができるからである。即ち、キャッシュ制御装置１は、キャッシュ制御装置１は、サーバ装置とディスクアレイ装置間において、Ｉ／Ｏ負荷や優先度、ディスクアレイ装置の構成情報に応じて、キャッシュの属性を動的に変更することができるからである。
【０１１１】
これにより、例えば、キャッシュ制御装置１を有するディスクアレイ装置は、キャッシュの属性（マスタ、スレーブ及びサブスレーブ）よる性能の劣化を抑制することができる。
【０１１２】
さらに、例えば、ユーザは、ディスクアレイ装置を構成するキャッシュの属性による性能差を気にすることなくサーバ装置とディスクアレイ装置とを接続することができる。また、新たに増設するサーバ装置をディスクアレイ装置に接続する場合であっても、ユーザは、サーバ装置とディスクアレイ装置との接続を見直す必要がない。
【０１１３】
＜第２の実施形態＞
次に、上述した本発明の第１の実施形態に係るキャッシュ制御装置１を基本とする第２の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
【０１１４】
本発明の第２の実施形態におけるキャッシュ制御装置１０について、図２乃至図６を参照して説明する。
【０１１５】
図３は、本発明の第２の実施形態におけるキャッシュ制御装置１０を含むコントローラ群２０の構成を示すブロック図である。
【０１１６】
本実施形態において、説明の便宜上、一例として、図３に示すコントローラ群２０は、ディスクアレイ装置に含まれるコントローラである。また、コントローラ群２０は、第１コントローラ２１（コントローラ＃０、特定のコントローラ）、第２コントローラ２２（コントローラ＃１）、第３コントローラ２３（コントローラ＃２）及び第４コントローラ２４（コントローラ＃３）を有することとする。図３において、第１コントローラ２１と第３コントローラ２３とは、同一の筐体内に存在することとする。また、第２コントローラ２２と第４コントローラ２４とは、同一の筐体内に存在することとする。即ち、第１コントローラ２１と第３コントローラ２３とは、同一の物理ＤＡＣグループ（ＤＡＣ筐体）に含まれる。また、第２コントローラ２２と第４コントローラ２４とは、同一の物理ＤＡＣグループ（ＤＡＣ筐体）に含まれる。
【０１１７】
図３において、第１コントローラ２１は、キャッシュ制御装置１０を有することとする。また、第２コントローラ２２乃至第４コントローラ２４は、キャッシュ制御装置１０ａを有することとする。
【０１１８】
キャッシュ制御装置１０は、優先値算出部１２と、監視部１１と、キャッシュ属性判定部１３と、キャッシュ属性変更部１４と、設定部１５とを備える。
【０１１９】
キャッシュ制御装置１０ａは、優先値算出部１２と、監視部１１と、キャッシュ属性変更部１４とを備える。
【０１２０】
監視部１１は、１つ以上のサーバ装置から１つ以上のＲａｎｋに対して発行されるＩ／Ｏ要求を監視すると共に、そのＩ／Ｏ要求に基づきサーバ装置を対象として、優先度及びＩ／Ｏ負荷を求める。監視部１１は、後述するように、例えば、係る優先度及びＩ／Ｏ負荷をサーバ装置毎に行ってもよい。さらに、監視部１１は、求めたサーバ装置毎の優先度及びＩ／Ｏ負荷を、負荷情報及び優先度情報として、優先値算出部１２に対して送信する。
【０１２１】
より具体的に、監視部１１は、所定の時間に亘って、それぞれのサーバ装置からＲａｎｋに対して発行されたＩ／Ｏ要求を監視すると共に、そのＩ／Ｏ要求に設定された優先度の平均値を、当該サーバ装置の優先度として求めてもよい。
【０１２２】
尚、監視部１１がＩ／Ｏ負荷及び優先度を求める技術自体は、現在では一般的な技術を採用することができる。そのため、本実施形態において、係るＩ／Ｏ負荷及び優先度を求める技術に関する詳細な説明は省略する（以下、各実施形態においても同様）。
【０１２３】
優先値算出部１２は、コントローラの構成情報を求めると共に、求めた構成情報、負荷情報１０１及び優先度情報１０２に基づき所定の演算によって、キャッシュグループ毎に、当該優先値算出部１２を含むコントローラに含まれるキャッシュの優先値Ｚを算出する。優先値算出部１２は、キャッシュグループ毎に算出した優先値Ｚをキャッシュ属性判定部１３に対して送信する。
【０１２４】
次に、キャッシュ属性判定部１３とキャッシュ属性変更部１４とは、第１の実施形態において説明したキャッシュ属性制御部３に相当する。キャッシュ属性判定部１３は、図２に示すステップＳ２乃至ステップＳ８において説明した処理を実行する。キャッシュ属性変更部１４は、図２に示すステップＳ１０において説明した処理を実行する。
【０１２５】
より具体的に、キャッシュ属性判定部１３は、優先値算出部１２から受信した優先値Ｚに応じて、キャッシュの属性（マスタ、スレーブ及びサブスレーブ）を判定すると共に、判定結果をキャッシュ属性変更部１４に対して送信する。
【０１２６】
キャッシュ属性変更部１４は、キャッシュ属性判定部１３から受信した判定結果に基づいて、キャッシュの属性を変更する。
【０１２７】
設定部１５は、例えば、ユーザの操作に応じて、優先値算出部１２が優先値Ｚを算出する際に用いるパラメータを設定する。また、設定部１５は、ユーザの操作に応じて、キャッシュの属性を変更する。
【０１２８】
以下の説明において、より具体的に、本実施形態におけるキャッシュ制御装置１０の動作について説明する。
【０１２９】
ここで、説明の便宜上、一例として、キャッシュ制御装置１０は、第１コントローラ２１、第２コントローラ２２、第３コントローラ２３及び第４コントローラ２４の４つのコントローラに含まれるキャッシュの属性を変更することとする。
【０１３０】
図４は、本発明の第２の実施形態におけるキャッシュ制御装置１０により変更する前のキャッシュの属性と、そのキャッシュを含むコントローラとサーバ装置との接続関係を概念的に例示する図である。
【０１３１】
図４において、第０キャッシュグループ４１（キャッシュグループ＃０）は、キャッシュマスタ５１及びキャッシュスレーブ５２を含む。キャッシュマスタ５１及びキャッシュスレーブ５２以外のキャッシュは、キャッシュサブスレーブ５３及びキャッシュサブスレーブ５４とする。第１キャッシュグループ４２（キャッシュグループ＃１）は、キャッシュマスタ５５及びキャッシュスレーブ５６を含む。キャッシュマスタ５５及びキャッシュスレーブ５６以外のキャッシュは、キャッシュサブスレーブ５７及びキャッシュサブスレーブ５８とする。
【０１３２】
第１サーバ装置４３、第２サーバ装置４４、第７サーバ装置４９及び第８サーバ装置５０は、第１コントローラ２１に接続されていることとする。
【０１３３】
第３サーバ装置４５は、第２コントローラ２２及び第３コントローラ２３に接続されていることとする。第４サーバ装置４６は、第２コントローラ２２に接続されていることとする。
【０１３４】
第５サーバ装置４７は、第４コントローラ２４に接続されていることとする。第６サーバ装置４８は、第３コントローラ２３及び第４コントローラ２４に接続されていることとする。
【０１３５】
第１サーバ装置４３、第６サーバ装置４８及び第８サーバ装置５０は、Ｒａｎｋ１に対してＩ／Ｏ要求を発行することとする。第２サーバ装置４４は、Ｒａｎｋ３に対してＩ／Ｏ要求を発行することとする。
【０１３６】
第３サーバ装置４５は、Ｒａｎｋ０に対してＩ／Ｏ要求を発行することとする。第４サーバ装置４６は、Ｒａｎｋ２に対してＩ／Ｏ要求を発行することとする。第５サーバ装置４７は、Ｒａｎｋ４に対してＩ／Ｏ要求を発行することとする。第７サーバ装置４９は、Ｒａｎｋ６に対してＩ／Ｏ要求を発行することとする。
【０１３７】
尚、説明の便宜上、上述した構成を例に説明するが、本実施形態を例に説明する本発明は、この構成にはこれに限定されない（以下の実施形態においても同様）。
【０１３８】
第１コントローラ２１乃至第４コントローラ２４の監視部１１は、所定の時間周期毎に、負荷情報及び優先度情報を、第１コントローラ２１乃至第４コントローラ２４の優先値算出部１２に対して送信する。
【０１３９】
以下の説明において、説明の便宜上、ここでは、第１コントローラ２１の監視部１１から第１コントローラ２１の優先値算出部１２に対して送信された負荷情報及び優先度情報を、それぞれ第１負荷情報１０１ａ及び第１優先度情報１０２ａと称する。第２コントローラ２２の監視部１１から第２コントローラ２２の優先値算出部１２に対して送信された負荷情報及び優先度情報を、それぞれ第２負荷情報１０１ｂ及び第２優先度情報１０２ｂと称する。
【０１４０】
また、第３コントローラ２３の監視部１１から第３コントローラ２３の優先値算出部１２に対して送信された負荷情報及び優先度情報を第３負荷情報１０１ｃ及び第３優先度情報１０２ｃと称する。第４コントローラ２４の監視部１１から第４コントローラ２４の優先値算出部１２に対して送信された負荷情報及び優先度情報を第４負荷情報１０１ｄ及び第４優先度情報１０２ｄと称する。
【０１４１】
第１コントローラ２１乃至第４コントローラ２４の優先値算出部１２は、第１コントローラ２１乃至第４コントローラ２４の構成情報を求めると共に、求めた構成情報、負荷情報１０１（１０１ａ、１０１ｂ、１０１ｃ及び１０１ｄ）及び優先度情報１０２（１０２ａ、１０２ｂ、１０２ｃ及び１０２ｄ）に基づき所定の演算によって、キャッシュグループ毎に、コントローラに含まれるキャッシュの優先値Ｚを算出する。
【０１４２】
より具体的に、一例として、第１コントローラ２１の優先値算出部１２は、第１コントローラ２１の構成情報を求めると共に、求めた構成情報、負荷情報１０１ａ及び優先度情報１０２ａに基づき所定の演算によって、キャッシュグループ毎に、第１コントローラ２１に含まれるキャッシュの優先値Ｚを算出する。
【０１４３】
より具体的に、ここでは、図４に示すサーバ装置の接続図に基づき、第１キャッシュグループ４２を構成する第１コントローラ２１に含まれるキャッシュの優先値Ｚを算出する場合について説明する。
【０１４４】
図４において、第１コントローラ２１には、第１サーバ装置４３、第２サーバ装置４４、第７サーバ装置４９及び第８サーバ装置５０が接続されている。
【０１４５】
また、第１キャッシュグループ４２は、奇数番号のＲａｎｋに対するＩ／Ｏ処理を実行する。そのため、第１キャッシュグループ４２において、第１コントローラ２１に含まれるキャッシュの優先値Ｚを算出する際に対象となるサーバ装置は、第１サーバ装置４３、第２サーバ装置４４及び第８サーバ装置５０である。
【０１４６】
第１コントローラ２１の優先値算出部１２は、係るキャッシュの優先値Ｚを、以下の式（２）によって求める。
【０１４７】
【数２】
0005895911.tif 000003
【０１４８】
第１コントローラ２１乃至第４コントローラ２４の優先値算出部１２は、算出した優先値Ｚを、第１コントローラ２１のキャッシュ属性判定部１３に対して送信する。
【０１４９】
図５（図５Ａ、図５Ｂ及び図５Ｃ）は、本発明の第２の実施形態における優先値算出部１２によって算出した優先値Ｚを具体的に例示する図である。
【０１５０】
図５（図５Ａ、図５Ｂ及び図５Ｃ）において、１列目には、キャッシュグループを構成するキャッシュを含むコントローラの名称（コントローラ名）を表す。２列目及び３列目は、優先値算出部１２によりキャッシュグループ毎に算出されたキャッシュの優先値Ｚ、またはキャッシュ属性判定部１３により決定されたキャッシュの属性を表す。
【０１５１】
図５Ａは、本発明の第２の実施形態における優先値算出部１２によって算出した優先値Ｚを具体的に例示する図である（１度目の算出）。
【０１５２】
図５Ａにおいて、優先値Ｚは、第１キャッシュグループ４２を構成する第１コントローラ２１に含まれるキャッシュの優先値Ｚ「８０」が最も大きい値である。
【０１５３】
そのため、キャッシュ属性判定部１３は、第１コントローラ２１乃至第４コントローラ２４の優先値算出部１２から受信した優先値Ｚの中から、最も大きい値を示す優先値Ｚに対応するキャッシュを含むコントローラとキャッシュグループとを求める。
【０１５４】
ここでは、キャッシュ属性判定部１３は、第１コントローラ２１と第１キャッシュグループ４２とを求めることとする。
【０１５５】
さらに、キャッシュ属性判定部１３は、求めた第１キャッシュグループ４２において、既にキャッシュマスタに属性を決定したキャッシュが存在するか否かを判別する。
【０１５６】
ここでは、第１キャッシュグループ４２において、既にキャッシュマスタに属性を決定したキャッシュが存在しないため、キャッシュ属性判定部１３は、求めた第１コントローラ２１に含まれるキャッシュの属性を、第１キャッシュグループ４２においてキャッシュマスタに決定する。
【０１５７】
さらに、キャッシュ属性判定部１３は、求めた第１キャッシュグループ４２と異なる他の第０キャッシュグループ４１において、第１コントローラ２１に含まれるキャッシュの属性を、キャッシュサブスレーブに決定する。
【０１５８】
キャッシュ属性判定部１３は、キャッシュグループ（第０キャッシュグループ４１及び第１キャッシュグループ４２）毎にそれぞれのコントローラに含まれるキャッシュの属性が全て決定しているか否かを判別した結果、係るキャッシュの属性が決定していないと判別する。
【０１５９】
第１コントローラ２１乃至第４コントローラ２４の優先値算出部１２は、第１コントローラ２１乃至第４コントローラ２４の構成情報を求めると共に、求めた構成情報、負荷情報１０１（１０１ａ、１０１ｂ、１０１ｃ及び１０１ｄ）及び優先度情報１０２（１０２ａ、１０２ｂ、１０２ｃ及び１０２ｄ）に基づき所定の演算によって、キャッシュグループ毎に、そのキャッシュグループに含まれるキャッシュの属性が決定していないコントローラに含まれるキャッシュの優先値Ｚを算出する。優先値算出部１２は、算出した優先値Ｚをキャッシュ属性制御部３に対して送信する。
【０１６０】
図５Ｂは、本発明の第２の実施形態における優先値算出部１２によって算出した優先値Ｚを具体的に例示する図である（２度目の算出）。
【０１６１】
図５Ｂにおいて、優先値Ｚは、第０キャッシュグループ４１を構成する第２コントローラ２２に含まれるキャッシュの優先値Ｚ「５５」が最も大きい値である。
【０１６２】
そのため、キャッシュ属性判定部１３は、第１コントローラ２１乃至第４コントローラ２４の優先値算出部１２から受信した優先値Ｚの中から、最も大きい値を示す優先値Ｚに対応するキャッシュを含む第２コントローラ２２と第０キャッシュグループ４１とを求める。
【０１６３】
さらに、キャッシュ属性判定部１３は、求めた第０キャッシュグループ４１において、既にキャッシュマスタに属性を決定したキャッシュが存在するか否かを判別する。
【０１６４】
ここでは、第０キャッシュグループ４１において、既にキャッシュマスタに属性を決定したキャッシュが存在しないため、キャッシュ属性判定部１３は、求めた第２コントローラ２２に含まれるキャッシュの属性を、第０キャッシュグループ４１においてキャッシュマスタに決定する。
【０１６５】
キャッシュ属性判定部１３は、求めた第０キャッシュグループ４１と異なる他の第１キャッシュグループ４２において、第２コントローラ２２に含まれるキャッシュの属性を、キャッシュサブスレーブに決定する。
【０１６６】
キャッシュ属性制御部３は、キャッシュグループ（第０キャッシュグループ４１及び第１キャッシュグループ４２）毎にそれぞれのコントローラに含まれるキャッシュの属性が全て決定しているか否かを判別した結果、係るキャッシュの属性が決定していないと判別する。
【０１６７】
第１コントローラ２１乃至第４コントローラ２４の優先値算出部１２は、第１コントローラ２１乃至第４コントローラ２４の構成情報を求めると共に、求めた構成情報、負荷情報１０１（１０１ａ、１０１ｂ、１０１ｃ及び１０１ｄ）及び優先度情報１０２（１０２ａ、１０２ｂ、１０２ｃ及び１０２ｄ）に基づき所定の演算によって、キャッシュグループ毎に、そのキャッシュグループに含まれるキャッシュの属性が決定していないコントローラに含まれるキャッシュの優先値Ｚを算出する。優先値算出部１２は、算出した優先値Ｚをキャッシュ属性制御部３に対して送信する。
【０１６８】
図５Ｃは、本発明の第２の実施形態における優先値算出部１２によって算出した優先値Ｚを具体的に例示する図である（３度目の算出）。
【０１６９】
図５Ｃにおいて、優先値Ｚは、第０キャッシュグループ４１を構成する第３コントローラ２３に含まれるキャッシュの優先値Ｚ「３０」が最も大きい値である。
【０１７０】
そのため、キャッシュ属性判定部１３は、第１コントローラ２１乃至第４コントローラ２４の優先値算出部１２から受信した優先値Ｚの中から、最も大きい値を示す優先値Ｚに対応するキャッシュを含む第３コントローラ２３と第０キャッシュグループ４１とを求める。
【０１７１】
さらに、キャッシュ属性判定部１３は、求めた第０キャッシュグループ４１において、既にキャッシュマスタに属性を決定したキャッシュが存在するか否かを判別する。
【０１７２】
ここでは、第０キャッシュグループ４１において、既にキャッシュマスタに属性を決定したキャッシュが存在するため、キャッシュ属性判定部１３は、求めた第３コントローラ２３に含まれたキャッシュの属性をキャッシュスレーブに決定する。
【０１７３】
キャッシュ属性判定部１３は、求めた第０キャッシュグループ４１と異なる他の第１キャッシュグループ４２において、第３コントローラ２３に含まれるキャッシュの属性を、キャッシュサブスレーブに決定する。
【０１７４】
このように、キャッシュ制御装置１０は、キャッシュグループ毎に全てのコントローラに含まれるキャッシュの属性が決定するまで上述した処理を繰り返す。
【０１７５】
キャッシュ属性判定部１３は、キャッシュグループ毎にコントローラに含まれるキャッシュの属性が全て決定しているか否かを判別した結果、全てのキャッシュの属性が決定していると判別した場合に、決定した結果をキャッシュ属性変更部１４に対して送信する。
【０１７６】
キャッシュ属性変更部１４は、キャッシュ属性判定部１３から受信し決定結果に基づいて、キャッシュの属性を変更する。
【０１７７】
図６は、本発明の第２の実施形態におけるキャッシュ属性判定部１３によって決定されたキャッシュの属性を具体的に例示する図である。
【０１７８】
図６において、１列目には、キャッシュグループを構成するキャッシュを含むコントローラの名称（コントローラ名）を表す。２列目及び３列目は、キャッシュ属性判定部１３により決定されたキャッシュの属性を表す。
【０１７９】
尚、上述した本実施形態では、説明の便宜上、一例として、キャッシュ属性判定部１３を含むキャッシュ制御装置１０は、第１コントローラ２１が有する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。キャッシュ制御装置１０は、第１コントローラ２１乃至第４コントローラ２４の何れかが有する構成を採用してもよい。
【０１８０】
また、上述した本実施形態では、説明の便宜上、一例として、キャッシュ制御装置１０ａは、設定部１５とキャッシュ属性判定部１３とを含まない構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。キャッシュ制御装置１０ａは、設定部１５とキャッシュ属性判定部１３とを含む構成を採用してもよい。
【０１８１】
その場合に、キャッシュの属性は、１つ以上のキャッシュ属性判定部１３のうち何れかのキャッシュ属性判定部１３がキャッシュの属性を決定する構成を採用してもよい。
【０１８２】
また、上述した本実施形態では、説明の便宜上、一例として、キャッシュ制御装置１０を４つのコントローラを備えるディスクアレイ装置に適用した場合の動作について説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。キャッシュ制御装置１０を４つ以上の、例えば、８つのコントローラを備えるディスクアレイ装置に適用してもよい。
【０１８３】
その場合に、キャッシュグループを４つ用意し、そのキャッシュグループに関連付けるＲａｎｋを４の倍数により区切ることによって、キャッシュ制御装置１０は、キャッシュを制御することが可能である。
【０１８４】
また、上述した本実施形態では、説明の便宜上、一例として、監視部１１は、Ｉ／Ｏ負荷と優先度とを求める構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。監視部１１は、例えば、所定の閾値をＩ／Ｏ負荷、または優先度が超えた場合に、高負荷、または優先度の高いサーバ装置からのＩ／Ｏ要求であると判別すると共に、所定の値を負荷情報１０１及び優先度情報１０２として優先値算出部１２に対して送信する構成を採用してもよい。
【０１８５】
このように本実施の形態に係るキャッシュ制御装置１０によれば、各実施形態において説明した効果を享受できると共に、さらに、サーバ装置とディスクアレイ装置との間において、Ｉ／Ｏ処理に関する状態や情報が動的に変化した場合であっても、より速やかに、ディスクアレイ装置の性能が劣化するのを抑止することができる。
【０１８６】
その理由は、キャッシュ制御装置１０（１０、１０ａ）をコントローラ毎に備えたからである。そのため、キャッシュ制御装置１０の優先値算出部１２は、より速やかに、キャッシュグループ毎に、コントローラに含まれるキャッシュの優先値Ｚを算出することができるからである。
【０１８７】
（ハードウェア構成例）
上述した実施形態において図面に示した各部は、ソフトウェアプログラムの機能（処理）単位（ソフトウェアモジュール）と捉えることができる。これらの各ソフトウェアモジュールは、専用のハードウェアによって実現してもよい。但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定されうる。この場合のハードウェア環境の一例を、図７を参照して説明する。
【０１８８】
図７は、本発明の模範的な実施形態に係る端末特定装置を実行可能な情報処理装置３００（コンピュータ）の構成を例示的に説明する図である。即ち、図７は、図１に示したキャッシュ制御装置１、或いは、図３に示したキャッシュ制御装置１０、の全体または一部のキャッシュ制御装置を実現可能なサーバ等のコンピュータ（情報処理装置）の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
【０１８９】
図７に示した情報処理装置３００は、ＣＰＵ（Ｃｅｎｔｒａｌ＿Ｐｒｏｃｅｓｓｉｎｇ＿Ｕｎｉｔ）３０１、ＲＯＭ（Ｒｅａｄ＿Ｏｎｌｙ＿Ｍｅｍｏｒｙ）３０２、ＲＡＭ（Ｒａｎｄｏｍ＿Ａｃｃｅｓｓ＿Ｍｅｍｏｒｙ）３０３、ハードディスク３０４（記憶装置）、並びに外部装置との通信インタフェース（Ｉｎｔｅｒｆａｃ：以降、「Ｉ／Ｆ」と称する）３０５、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ＿Ｄｉｓｃ＿Ｒｅａｄ＿Ｏｎｌｙ＿Ｍｅｍｏｒｙ）等の記憶媒体３０７に格納されたデータを読み書き可能なリーダライタ３０８を備え、これらの構成がバス３０６（通信線）を介して接続された一般的なコンピュータである。
【０１９０】
そして、上述した実施形態を例に説明した本発明は、図７に示した情報処理装置３００に対して、その説明において参照したブロック構成図（図１、図３）或いはフローチャート（図２）の機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、当該ハードウェアのＣＰＵ３０１に読み出して実行することによって達成される。また、当該装置内に供給されたコンピュータ・プログラムは、読み書き可能な一時記憶メモリ（ＲＡＭ３０３）またはハードディスク３０４等の不揮発性の記憶デバイスに格納すれば良い。
【０１９１】
また、前記の場合において、当該ハードウェア内へのコンピュータ・プログラムの供給方法は、ＣＤ−ＲＯＭ等の各種記憶媒体３０７を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータ・プログラムを構成するコード或いは、そのコードが格納された記憶媒体によって構成されると捉えることができる。
【符号の説明】
【０１９２】
１    キャッシュ制御装置
２    優先値算出部
３    キャッシュ属性制御部
１０    キャッシュ制御装置
１０ａ    キャッシュ制御装置
１１    監視部
１２    優先値算出部
１３    キャッシュ属性判定部
１４    キャッシュ属性変更部
１５    設定部
２０    コントローラ群
２１    第１コントローラ
２２    第２コントローラ
２３    第３コントローラ
２４    第４コントローラ
４１    第０キャッシュグループ
４２    第１キャッシュグループ
４３    第１サーバ装置
４４    第２サーバ装置
４５    第３サーバ装置
４６    第４サーバ装置
４７    第５サーバ装置
４８    第６サーバ装置
４９    第７サーバ装置
５０    第８サーバ装置
５１    キャッシュマスタ
５２    キャッシュスレーブ
５３    キャッシュサブスレーブ
５４    キャッシュサブスレーブ
５５    キャッシュマスタ
５６    キャッシュスレーブ
５７    キャッシュサブスレーブ
５８    キャッシュサブスレーブ
１０１    負荷情報
１０１ａ    第１負荷情報
１０１ｂ    第２負荷情報
１０１ｃ    第３負荷情報
１０１ｄ    第４負荷情報
１０２    優先度情報
１０２ａ    第１優先度情報
１０２ｂ    第２優先度情報
１０２ｃ    第３優先度情報
１０２ｄ    第４優先度情報
２０１    第１物理ＤＡＣグループ
２０２    第２物理ＤＡＣグループ
２０３    第１論理ＤＡＣグループ
２０４    第２論理ＤＡＣグループ
２０５    第１コントローラ
２０６    第２コントローラ
２０７    第３コントローラ
２０８    第４コントローラ
２０９    第１キャッシュ
２１０    第２キャッシュ
２１１    第３キャッシュ
２１２    第４キャッシュ
３００    情報処理装置
３０１    ＣＰＵ
３０２    ＲＯＭ
３０３    ＲＡＭ
３０４    ハードディスク
３０５    通信インタフェース
３０６    バス
３０７    記憶媒体
３０８    リーダライタ
【図１】
0005895911.tif 000004
【図２】
0005895911.tif 000005
【図３】
0005895911.tif 000006
【図４】
0005895911.tif 000007
【図５Ａ】
0005895911.tif 000008
【図５Ｂ】
0005895911.tif 000009
【図５Ｃ】
0005895911.tif 000010
【図６】
0005895911.tif 000011
【図７】
0005895911.tif 000012
【図８】
0005895911.tif 000013
【図９Ａ】
0005895911.tif 000014
【図９Ｂ】
0005895911.tif 000015
【図９Ｃ】
0005895911.tif 000016
【図９Ｄ】
0005895911.tif 000017