(57)【要約】【課題】  アクセス性能の低下を抑制しながら、消費電力を削減する。【解決手段】  モータの回転状態を維持した複数の第１の磁気ディスク装置が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とが接続された第２の情報処理装置と、第１の情報処理装置と第２の情報処理装置とを管理する管理装置を有する情報処理システムにおいて、データを書き込む場合、管理装置が、複数の第１の磁気ディスク装置のいずれかと、複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力し、データを読み出す場合、管理装置が、複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力する。【選択図】    図１
2015076060.tif 000002
【特許請求の範囲】
【請求項１】
モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置と、前記第１の情報処理装置と前記第２の情報処理装置とを管理する管理装置を有する情報処理システムにおいて、
データを書き込む場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかと、前記第２の磁気ディスク装置群に含まれる前記複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力し、
データを読み出す場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力することを特徴とする情報処理システム。
【請求項２】
前記管理装置は、前記第２の磁気ディスク装置のいずれかに保持されたデータの量が所定量を超えた場合、前記第２の情報処理装置に前記第２の磁気ディスク装置のモータの回転を停止させるとともに、前記第３の磁気ディスク装置の所定数のモータを回転させ、
データをさらに書き込む場合、前記管理装置が、前記第１の磁気ディスク装置のいずれかと、モータを回転させた前記第３の磁気ディスク装置のいずれかとに対する書き込み要求を出力すること
を特徴とする請求項１記載の情報処理システム。
【請求項３】
前記情報処理システムは、複数の前記第２の情報処理装置を有し、
前記管理装置は、複数の前記第２の情報処理装置に接続された前記第２の磁気ディスク装置のいずれかに保持されたデータの量が所定量を超えた場合、複数の前記第２の情報処理装置に前記第２の磁気ディスク装置のモータの回転を停止させるとともに、前記第３の磁気ディスク装置の所定数のモータを回転させること
を特徴とする請求項２記載の情報処理システム。
【請求項４】
前記管理装置は、前記読み出し要求に応答して前記第１の磁気ディスク装置からデータを読み出せない場合、前記第２の磁気ディスク装置のいずれか、またはモータを回転させた前記第３の磁気ディスク装置のいずれかに対して読み出し要求を出力し、
モータの回転が停止した前記第２の磁気ディスク装置からデータを読み出す場合、前記管理装置は、前記第２の情報処理装置に前記第２の磁気ディスク装置のモータを回転させ、前記第２の磁気ディスク装置からデータを読み出した後に、前記第２の情報処理装置に前記第２の磁気ディスク装置のモータの回転を停止させること
を特徴とする請求項２記載の情報処理システム。
【請求項５】
前記情報処理システムはさらに、
前記管理装置が管理する接続情報に基づいて、前記第１の情報処理装置と前記第１の磁気ディスク装置とを接続し、前記第２の情報処理装置と前記第２の磁気ディスク装置および前記第３の磁気ディスク装置とを接続するスイッチ装置と、
前記スイッチ装置に接続される複数の第４の磁気ディスク装置とを有し、
モータを回転させた前記第３の磁気ディスク装置のいずれかに保持されたデータの量が所定量を超えた場合、前記管理装置は、前記第２の情報処理装置に前記第３の磁気ディスク装置のモータの回転を停止させ、前記スイッチ装置を介して前記第４の磁気ディスク装置を前記第２の情報処理装置に接続し、前記第２の情報処理装置に前記第４の磁気ディスク装置のモータを回転させ、
データをさらに書き込む場合、前記第１の磁気ディスク装置のいずれかと、モータを回転させた前記第４の磁気ディスク装置のいずれかとに対する書き込み要求を出力すること
を特徴とする請求項２記載の情報処理システム。
【請求項６】
前記管理装置は、ハッシュ関数を用いてデータを書き込む前記第２の磁気ディスク装置を決定し、前記第２の磁気ディスク装置の各々と、前記第３の磁気ディスク装置の各々とは、共通のハッシュ空間に割り当てられること
を特徴とする請求項１ないし請求項５のいずれか１項記載の情報処理システム。
【請求項７】
モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置とを管理する管理装置の制御プログラムにおいて、
データを書き込む場合、前記管理装置に、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかと、前記第２の磁気ディスク装置群に含まれる前記複数の第２の磁気ディスク装置のいずれかに対する書き込み要求を出力させ、
データを読み出す場合、前記管理装置に、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力させることを特徴とする管理装置の制御プログラム。
【請求項８】
モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置と、前記第１の情報処理装置と前記第２の情報処理装置とを管理する管理装置を有する情報処理システムの制御方法において、
データを書き込む場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかと、前記第２の磁気ディスク装置群に含まれる前記複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力し、
データを読み出す場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかと対する読み出し要求を出力することを特徴とする情報処理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理システムを管理する管理装置の制御プログラムおよび情報処理システムの制御方法に関する。
【背景技術】
【０００２】
例えば、複数のハードディスクドライブを含むディスクアレイ装置は、書き込みデータを分割して複数のハードディスクドライブにそれぞれ書き込み、ハードディスクドライブから読み出されるデータを組み合わせて、読み出しデータとして出力する。この種のディスクアレイ装置では、アクセス頻度が閾値より低下した場合に一部のハードディスクドライブへの電源の供給が停止され、データは、電源の供給が維持されたハードディスクドライブに、分割することなく書き込まれる（例えば、特許文献１参照）。
【０００３】
また、ストレージ装置を使用するタスクを実行する複数のスケジュール案のうち、所定の条件を満たすスケジュール案に基づいてタスクの実行およびストレージ装置の電源を制御することで、消費電力を削減する手法が提案されている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−２９７３２０号公報
【特許文献２】特開２００９−４８５８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ディスク装置の電源を遮断して消費電力を削減する場合、電源を遮断したディスク装置へのアクセスは、電源の供給を再開した後に実行されるため、アクセス性能が低下するおそれがある。例えば、複数のディスク装置にデータを冗長に記憶させる情報処理システムにおいて、アクセス性能の低下を抑制しながら消費電力を削減する手法は提案されていない。
【０００６】
本件開示の情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法は、アクセス性能の低下を抑制しながら、消費電力を削減することを目的とする。
【課題を解決するための手段】
【０００７】
一つの観点によれば、情報処理システムは、モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置と、第１の情報処理装置と第２の情報処理装置とを管理する管理装置を有する情報処理システムにおいて、データを書き込む場合、管理装置が、第１の磁気ディスク装置群に含まれる複数の第１の磁気ディスク装置のいずれかと、第２の磁気ディスク装置群に含まれる複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力し、データを読み出す場合、管理装置が、第１の磁気ディスク装置群に含まれる複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力する。
【０００８】
別の観点によれば、管理装置の制御プログラムは、モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置とを管理する管理装置の制御プログラムにおいて、データを書き込む場合、管理装置に、第１の磁気ディスク装置群に含まれる複数の第１の磁気ディスク装置のいずれかと、第２の磁気ディスク装置群に含まれる複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力させ、データを読み出す場合、管理装置に、第１の磁気ディスク装置群に含まれる複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力させる。
【０００９】
さらなる別の観点によれば、情報処理システムの制御方法は、モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置と、第１の情報処理装置と第２の情報処理装置とを管理する管理装置を有する情報処理システムの制御方法において、データを書き込む場合、管理装置が、第１の磁気ディスク装置群に含まれる複数の第１の磁気ディスク装置のいずれかと、第２の磁気ディスク装置群に含まれる複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力し、データを読み出す場合、管理装置が、第１の磁気ディスク装置群に含まれる複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力する。
【発明の効果】
【００１０】
本件開示の情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法は、アクセス性能の低下を抑制しながら、消費電力を削減できる。
【図面の簡単な説明】
【００１１】
【図１】情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の一実施形態を示す図である。
【図２】図１に示した情報処理システムの動作の例を示す図である。
【図３】図１に示した情報処理システムの動作の別の例を示す図である。
【図４】情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の別の実施形態を示す図である。
【図５】図４に示した磁気ディスク装置群における各磁気ディスク装置のハッシュ空間への割り当ての例を示す図である。
【図６】図４に示した磁気ディスク装置群ＭＤａのハッシュリングの例を示す図である。
【図７】図６に示したハッシュリングにおける状態の変化の例を示す図である。
【図８】図４に示したストレージサーバに接続される磁気ディスク装置の対応付けを示すデバイス表の例を示す図である。
【図９】図４に示した磁気ディスク装置群の磁気ディスク装置とハッシュ値との関係を示すハッシュ表の例を示す図である。
【図１０】図４に示した情報処理システムの動作の例を示す図である。
【図１１】図４に示した情報処理システムの動作の別の例を示す図である。
【図１２】図４に示したフロントエンドサーバによるデータの書き込み処理の例を示す図である。
【図１３】図４に示したストレージサーバＳＳＶｐによるデータの書き込み処理の例を示す図である。
【図１４】図４に示したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによるデータの書き込み処理の例を示す図である。
【図１５】図４に示したフロントエンドサーバによるデータの読み出し処理の例を示す図である。
【図１６】図４に示したストレージサーバＳＳＶｐによるデータの読み出し処理の例を示す図である。
【図１７】図４に示したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによるデータの読み出し処理の例を示す図である。
【図１８】情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の別の実施形態を示す図である。
【図１９】図１８に示した磁気ディスク装置群ＭＤａのハッシュリングにおける状態の変化の例を示す図である。
【図２０】図１９に示した状態ＳＴ３を含む情報が追加されたデバイス表の例を示す図である。
【図２１】図１８に示したフロントエンドサーバによる状態ＳＴ２から状態ＳＴ３への変更処理の例を示す図である。
【図２２】情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の別の実施形態を示す図である。
【図２３】図２２に示したフロントエンドサーバによるデータの読み出し処理の例を示す図である。
【図２４】情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の別の実施形態を示す図である。
【図２５】図２４に示したストレージサーバに接続される磁気ディスク装置の対応付けを示すデバイス表の例を示す図である。
【図２６】図２４に示した磁気ディスク装置群の磁気ディスク装置とハッシュ値との関係を示すハッシュ表の例を示す図である。
【図２７】図２４に示したストレージサーバＳＳＶｐによるデータの転送処理の例を示す図である。
【図２８】図２４に示したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによる転送データの書き込み処理の例を示す図である。
【図２９】図２４に示したストレージサーバストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによるデータの読み出し処理の例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を用いて実施形態を説明する。
【００１３】
図１は、情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の一実施形態を示す。この実施形態の情報処理システムＳＹＳ１は、情報処理装置１０、２０と、情報処理装置１０に接続された磁気ディスク装置群ＭＤｐと、情報処理装置２０に接続された磁気ディスク装置群ＭＤａと、情報処理装置１０、２０を管理する管理装置３０とを有する。
【００１４】
例えば、情報処理装置１０、２０および管理装置３０のそれぞれは、サーバ等のコンピュータ装置である。情報処理装置１０は、ＣＰＵ（Central Processing Unit）４１と、ＣＰＵ４１が実行するプログラムを記憶するメモリ５１とを有する。情報処理装置２０は、ＣＰＵ４２と、ＣＰＵ４２が実行するプログラムを記憶するメモリ５２とを有する。管理装置３０は、ＣＰＵ４３と、ＣＰＵ４３が実行するプログラムを記憶するメモリ５３とを有する。
【００１５】
メモリ５３に記憶され、ＣＰＵ４３により実行されるプログラムは、情報処理装置１０、２０を管理し、情報処理システムＳＹＳ１の動作を制御する管理装置３０の制御プログラムである。また、メモリ５３に記憶され、ＣＰＵ４３により実行されるプログラムにより、情報処理システムＳＹＳ１の制御方法が実現される。
【００１６】
磁気ディスク装置群ＭＤｐは、情報処理装置１０に接続された磁気ディスク装置Ｐ（Ｐ０、Ｐ１、Ｐ２、Ｐ３）を有する。磁気ディスク装置群ＭＤａは、情報処理装置２０に接続された磁気ディスク装置Ａ（Ａ０、Ａ１、Ａ２、Ａ３）を有する。例えば、磁気ディスク装置Ｐ０−Ｐ３、Ａ０−Ａ３は、ハードディスクドライブ装置である。例えば、磁気ディスク装置群ＭＤｐの磁気ディスク装置Ｐ０−Ｐ３は、１つの筐体に収納され、磁気ディスク装置群ＭＤａの磁気ディスク装置Ａ０−Ａ３は、１つの筐体に収納される。
【００１７】
太い実線で示す磁気ディスク装置Ｐ０、Ｐ１、Ｐ２、Ｐ３および磁気ディスク装置Ａ０は、磁気ディスク（プラッタとも称される）を回転させるスピンドルモータの回転状態を維持したスピンアップ状態ＳＵであることを示す。細い破線で示す磁気ディスク装置Ａ１、Ａ２、Ａ３は、スピンドルモータの回転を停止したスピンダウン状態ＳＤであることを示す。なお、情報処理装置２０は、モータの回転状態を維持した複数の磁気ディスク装置を含んでもよい。以下の説明では、スピンドルモータは、モータとも称される。
【００１８】
磁気ディスク装置群ＭＤｐは、通常状態において、書き込み要求に応答してデータの書き込みが実行され、読み出し要求に応答してデータの読み出しが実行されるプライマリな記憶領域である。磁気ディスク装置群ＭＤａは、通常状態において、書き込み要求に応答してデータの書き込みが実行され、読み出し要求に応答するデータの読み出しが実行されない非プライマリな記憶領域である。換言すれば、情報処理装置１０および磁気ディスク装置群ＭＤｐは、プライマリなストレージサーバとして動作し、情報処理装置２０および磁気ディスク装置群ＭＤａは、非プライマリなストレージサーバとして動作する。
【００１９】
図２は、図１に示した情報処理システムＳＹＳ１の動作の例を示す。すなわち、図２は、管理装置３０が実行する制御プログラムの処理の例を示し、情報処理システムＳＹＳ１の制御方法の例を示す。図２に示した太い矢印は、書き込みデータまたは読み出しデータの流れを示し、星形、菱形および三角形は、磁気ディスク装置群ＭＤｐ、ＭＤａに書き込まれ、磁気ディスク装置群ＭＤｐ、ＭＤａから読み出されるデータを示す。また、説明を分かりやすくするために、各磁気ディスク装置Ｐ０−Ｐ３、Ａ０−Ａ３は、４個のデータを記憶可能であるとする。
【００２０】
例えば、管理装置３０は、情報処理装置１０、２０のそれぞれにデータの書き込み要求を発行する。書き込み要求を受けた情報処理装置１０は、磁気ディスク装置Ｐ０−Ｐ３のいずれかに書き込みアクセスし、データを書き込む。書き込み要求を受けた情報処理装置２０は、スピンアップ状態ＳＵの磁気ディスク装置Ａ０に書き込みアクセスし、データを書き込む。すなわち、管理装置３０は、データを書き込む場合、磁気ディスク装置Ｐ０−Ｐ３のいずれかと、磁気ディスク装置Ａ０−Ａ３のいずれか（この例では、Ａ０）に対する書き込み要求を出力する。
【００２１】
この例では、管理装置３０からの最初の書き込み要求に応答して、星形で示したデータが磁気ディスク装置Ｐ０と磁気ディスク装置Ａ０に書き込まれる。管理装置３０からの次の書き込み要求に応答して、菱形で示したデータが磁気ディスク装置Ｐ１と磁気ディスク装置Ａ０に書き込まれる。管理装置３０からの次の書き込み要求に応答して、三角形で示したデータが磁気ディスク装置Ｐ３と磁気ディスク装置Ａ０に書き込まれる。このように、データは、磁気ディスク装置群ＭＤｐ、ＭＤａに冗長に書き込まれ、例えば、磁気ディスク装置Ｐ０、Ａ０に書き込まれた星形で示したデータは、互いにレプリカである。
【００２２】
例えば、管理装置３０は、データを識別する識別子（例えば、データのパス名やファイル名）をハッシュ関数に入力し、ハッシュ関数から得られるハッシュ値に応じて、データを書き込む磁気ディスク装置（Ｐ０−Ｐ３のいずれか）を決定する。なお、情報処理装置２０がモータの回転状態を維持した複数の磁気ディスク装置を含む場合、管理装置３０は、データを書き込む磁気ディスク装置をハッシュ関数を用いて決定する。
【００２３】
一方、管理装置３０は、情報処理装置１０にデータの読み出し要求を発行し、情報処理装置２０にデータの読み出し要求は発行しない。読み出し要求を受けた情報処理装置１０は、読み出し要求を受けたデータを保持した磁気ディスク装置Ｐ０−Ｐ３のいずれかに読み出しアクセスし、データを読み出す。すなわち、管理装置３０は、磁気ディスク装置Ｐ０−Ｐ３のいずれかに対して読み出し要求を出力する。
【００２４】
この例では、管理装置３０からの最初の読み出し要求に応答して、星形で示したデータが磁気ディスク装置Ｐ０から読み出される。管理装置３０からの次の読み出し要求に応答して、三角形で示したデータが磁気ディスク装置Ｐ３から読み出される。
【００２５】
図３は、図１に示した情報処理システムの動作の別の例を示す。図２と同様の動作については、詳細な説明は省略する。図３は、図２に示した動作の続きを示す。すなわち、図３は、管理装置３０が実行する制御プログラムの処理の例を示し、情報処理システムＳＹＳ１の制御方法の例を示す。
【００２６】
管理装置３０は、磁気ディスク装置Ａ０に保持されたデータの量が所定値（例えば、記憶容量の７０％）を超えた場合、情報処理装置２０に磁気ディスク装置Ａ０のモータの回転を停止させ、磁気ディスク装置Ａ０をスピンダウン状態ＳＤに設定させる指示をする。また、管理装置３０は、情報処理装置２０に磁気ディスク装置Ａ１のモータを回転させ、磁気ディスク装置Ａ１をスピンアップ状態ＳＵに設定させる指示をする。太い破線で示した磁気ディスク装置Ａ０は、所定量を超えるデータが書き込まれ、スピンダウン状態ＳＤに設定されたことを示す。
【００２７】
星形、菱形、三角形で示すデータが図２に示した処理により磁気ディスク装置群ＭＤｐ、ＭＤａのそれぞれに書き込まれた後、図３では、四角形および丸形で示すデータが磁気ディスク装置群ＭＤｐ、ＭＤａのそれぞれに冗長に書き込まれる。これにより、例えば、四角形で示すデータは、磁気ディスク装置Ｐ３と磁気ディスク装置Ａ１に冗長に書き込まれ、丸形で示すデータは、磁気ディスク装置Ｐ２と磁気ディスク装置Ａ１に冗長に書き込まれる。
【００２８】
この後、管理装置３０は、情報処理装置１０に読み出し要求を出力し、四角形および星形で示すデータを磁気ディスク装置Ｐ３、Ｐ０のそれぞれから読み出す。図３においても、管理装置３０は、情報処理装置２０に読み出し要求を発行しない。
【００２９】
なお、データを伝送する伝送路の障害、磁気ディスク装置の故障または情報処理装置１０の故障等により、情報処理装置１０からデータを読み出せない場合、管理装置３０は、情報処理装置２０に読み出し要求を発行する。情報処理装置２０は、スピンアップ状態ＳＵの磁気ディスク装置Ａ１に読み出すデータが存在する場合、磁気ディスク装置Ａ１にアクセスし、データを読み出す。一方、スピンダウン状態ＳＤの磁気ディスク装置Ａ０に読み出すデータが存在する場合、情報処理装置２０は、磁気ディスク装置Ａ０のモータを回転させて、磁気ディスク装置Ａ０をスピンアップ状態ＳＵに設定する。そして、情報処理装置２０は、データを読み出した後、磁気ディスク装置Ａ０のモータの回転を停止させて、磁気ディスク装置Ａ０をスピンダウン状態ＳＤに戻す。
【００３０】
以上、図１から図３に示す実施形態では、情報処理装置２０の磁気ディスク装置Ａ０−Ａ３を１つを除いてスピンダウン状態ＳＤに設定することで、情報処理システムＳＹＳ１の消費電力を従来に比べて削減することができる。磁気ディスク装置群ＭＤａでは、所定数の磁気ディスク装置（例えば、Ａ１）を除く他の磁気ディスク装置（例えば、Ａ０、Ａ２、Ａ３）は、スピンダウン状態ＳＤに設定される。最小限の磁気ディスク装置Ａをスピンアップ状態に維持することで、磁気ディスク装置群ＭＤａの消費電力を、磁気ディスク装置群ＭＤａの記憶容量に拘わりなく一定にすることができる。換言すれば、磁気ディスク装置群ＭＤａの記憶容量が大きいほど、消費電力の削減効率を高くすることができる。
【００３１】
例えば、スピンダウン状態ＳＤに設定された磁気ディスク装置の消費電力は、スピンアップ状態ＳＵに設定された磁気ディスク装置の消費電力の３分の１程度であり、スピンダウン状態ＳＤに設定した１台の磁気ディスク装置あたり約６７％の消費電力を削減できる。この際、データの読み出しは、情報処理装置１０により実行されるため、アクセス性能を低下させることなく情報処理システムＳＹＳ１の消費電力を削減することができる。
【００３２】
磁気ディスク装置Ａのスピンダウンは、所定量を超えるデータが書き込まれた場合に実行される。磁気ディスク装置Ａのスピンアップは、データを書き込む磁気ディスク装置Ａを変更する場合と、スピンダウンした磁気ディスク装置Ａからデータを読み出す場合に実行される。この実施形態では、データを書き込む磁気ディスク装置Ａを、磁気ディスク装置Ａの空き容量に応じて切り替える。このため、複数の磁気ディスク装置Ａに対してデータをランダムに書き込み、データを読み出す場合に比べて、スピンアップおよびスピンダウンの頻度を少なくすることができる。この結果、スピンアップおよびスピンダウンを頻繁に実行する場合に比べて、磁気ディスク装置Ａの劣化を抑制することができる。
【００３３】
磁気ディスク装置群ＭＤｐの磁気ディスク装置Ｐ０−Ｐ３は、スピンアップ状態ＳＵに維持されるため、アクセス要求に応答して遅延することなく磁気ディスク装置Ｐからデータを読み出すことができる。すなわち、読み出し要求を受けてから磁気ディスク装置Ｐをスピンアップする場合に比べて、データの読み出し速度を高速にすることができる。
【００３４】
データは磁気ディスク装置群ＭＤｐ、ＭＤａに冗長に保持されるため、万一、情報処理装置１０からデータが読み出せない場合にも、情報処理装置２０からデータを読み出すことができる。したがって、情報処理システムＳＹＳ１に保持されるデータの信頼性を維持することができる。
【００３５】
スピンダウン状態ＳＤの磁気ディスク装置Ａ０からのデータの読み出しは、磁気ディスク装置Ａ０をスピンアップ状態ＳＵに設定することで実行可能である。但し、情報処理システムＳＹＳ１は、データを冗長に保持する多重化システムである。このため、スピンダウン状態ＳＤの磁気ディスク装置Ａ０からのデータの読み出しは、情報処理装置１０からデータを読み出せない場合で、かつ、スピンアップ状態ＳＵの磁気ディスク装置Ａ１にデータが存在しない場合に限られる。これにより、アクセス性能の低下を抑制しながら情報処理システムＳＹＳ１の消費電力を削減することができる。
【００３６】
図４は、情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の別の実施形態を示す。図１から図３に示す実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
【００３７】
この実施形態の情報処理システムＳＹＳ２は、フロントエンドサーバＦＥＳＶ、ネットワークスイッチＮＳＷ、ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃおよび磁気ディスク装置群ＭＤｐ、ＭＤａ、ＭＤｂ、ＭＤｃを有する。例えば、フロントエンドサーバＦＥＳＶは、情報処理システムＳＹＳ２をネットワークストレージとして使用する端末ＴＭに、インターネット等のネットワークＮＷを介して接続され、情報処理システムＳＹＳ２の全体の動作を制御する。
【００３８】
フロントエンドサーバＦＥＳＶは、図１に示した管理装置３０と同様に、ＣＰＵと、ＣＰＵが実行するプログラムを記憶するメモリとを有する。すなわち、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃを管理する管理装置の一例である。
【００３９】
端末ＴＭは、情報処理システムＳＹＳ２をネットワークストレージとして使用するアプリケーションプログラムが実行されるコンピュータ装置に含まれ、あるいは、アプリケーションプログラムを使用するユーザのコンピュータ装置に含まれる。なお、情報処理システムＳＹＳ２は、ネットワークＮＷを介して複数の端末ＴＭに接続されてもよい。
【００４０】
各ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、図１に示した情報処理装置１０と同様に、ＣＰＵと、ＣＰＵが実行するプログラムを記憶するメモリとを有する。すなわち、ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、情報処理装置の一例である。
【００４１】
磁気ディスク装置群ＭＤｐは、複数の磁気ディスク装置Ｐ（Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７、Ｐ８、Ｐ９、Ｐ１０、Ｐ１１、Ｐ１２、Ｐ１３、Ｐ１４、Ｐ１５）を有する。磁気ディスク装置群ＭＤｐに含まれる磁気ディスク装置Ｐは、情報処理システムＳＹＳ２の動作中にスピンアップ状態に維持される。なお、情報処理システムＳＹＳ２は、複数のストレージサーバＳＳＶｐと、複数のストレージサーバＳＳＶｐに接続される複数の磁気ディスク装置群ＭＤｐを有してもよい。この場合、フロントエンドサーバＦＥＳＶからのデータは、複数の磁気ディスク装置群ＭＤｐの磁気ディスク装置Ｐのそれぞれに冗長に書き込まれる。
【００４２】
磁気ディスク装置群ＭＤａは、複数の磁気ディスク装置Ａ（Ａ０、Ａ１、Ａ２、Ａ３、Ａ４、Ａ５、Ａ６、Ａ７、Ａ８、Ａ９、Ａ１０、Ａ１１）を有する。磁気ディスク装置群ＭＤｂは、複数の磁気ディスク装置Ｂ（Ｂ０、Ｂ１、Ｂ２、Ｂ３、Ｂ４、Ｂ５、Ｂ６、Ｂ７、Ｂ８、Ｂ９、Ｂ１０、Ｂ１１）を有する。磁気ディスク装置群ＭＤｃは、複数の磁気ディスク装置Ｃ（Ｃ０、Ｃ１、Ｃ２、Ｃ３、Ｃ４、Ｃ５、Ｃ６、Ｃ７、Ｃ８、Ｃ９、Ｃ１０、Ｃ１１）を有する。例えば、磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃは、ハードディスクドライブ装置である。例えば、磁気ディスク装置群ＭＤｐの磁気ディスク装置Ｐ０−Ｐ１５は、１つの筐体に収納され、磁気ディスク装置群ＭＤａの磁気ディスク装置Ａ０−Ａ１１は、１つの筐体に収納される。同様に、磁気ディスク装置群ＭＤｂの磁気ディスク装置Ｂ０−Ｂ１１は、１つの筐体に収納され、磁気ディスク装置群ＭＤｃの磁気ディスク装置Ｃ０−Ｃ１１は、１つの筐体に収納される。
【００４３】
後述する図１０および図１１に示すように、状態ＳＴ０において、磁気ディスク装置Ａ０−Ａ３、Ｂ０−Ｂ３、Ｃ０−Ｃ３は、スピンドルモータの回転が維持されるスピンアップ状態に設定される。状態ＳＴ０において、磁気ディスク装置Ａ４−Ａ１１、Ｂ４−Ｂ１１、Ｃ４−Ｃ１１は、スピンドルモータの回転が停止されるスピンダウン状態に設定される。
【００４４】
状態ＳＴ１において、磁気ディスク装置Ａ４−Ａ７、Ｂ４−Ｂ７、Ｃ４−Ｃ７は、スピンアップ状態に設定され、磁気ディスク装置Ａ０−Ａ３、Ａ８−Ａ１１、Ｂ０−Ｂ３、Ｂ８−Ｂ１１、Ｃ０−Ｃ３、Ｃ８−Ｃ１１は、スピンダウン状態に設定される。状態ＳＴ２において、磁気ディスク装置Ａ８−Ａ１１、Ｂ８−Ｂ１１、Ｃ８−Ｃ１１は、スピンアップ状態に設定され、磁気ディスク装置Ａ０−Ａ７、Ｂ０−Ｂ７、Ｃ０−Ｃ７は、スピンダウン状態に設定される。
【００４５】
一方、磁気ディスク装置群Ｐ０−Ｐ１５は、状態ＳＴ０−ＳＴ２に拘わりなく、スピンドルモータの回転が維持されるスピンアップ状態に設定される。磁気ディスク装置群ＭＤｐは、通常状態において、書き込み要求に応答してデータの書き込みが実行され、読み出し要求に応答してデータの読み出しが実行されるプライマリな記憶領域である。磁気ディスク装置群ＭＤａは、通常状態において、書き込み要求に応答してデータの書き込みが実行され、読み出し要求に応答するデータの読み出しが実行されない非プライマリな記憶領域である。
【００４６】
なお、磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃ、Ｄの台数は、図４に示した台数に限定されない。例えば、磁気ディスク装置群ＭＤｐは、２５６台の磁気ディスク装置Ｐを含んでもよく、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃは、それぞれ６４台の磁気ディスク装置Ａ、Ｂ、Ｃを含んでもよい。
【００４７】
磁気ディスク装置群ＭＤａにおいて、磁気ディスク装置Ａ０、Ａ４、Ａ８は、ハッシュ空間Ｈａ０に割り当てられ、磁気ディスク群Ａ１、Ａ５、Ａ９は、ハッシュ空間Ｈａ１に割り当てられる。磁気ディスク装置Ａ２、Ａ６、Ａ１０は、ハッシュ空間Ｈａ２に割り当てられ、磁気ディスク群Ａ３、Ａ７、Ａ１１は、ハッシュ空間Ｈａ３に割り当てられる。
【００４８】
磁気ディスク装置Ｂ０、Ｂ４、Ｂ８は、ハッシュ空間Ｈｂ０に割り当てられ、磁気ディスク群Ｂ１、Ｂ５、Ｂ９は、ハッシュ空間Ｈｂ１に割り当てられる。磁気ディスク装置Ｂ２、Ｂ６、Ｂ１０は、ハッシュ空間Ｈｂ２に割り当てられ、磁気ディスク群Ｂ３、Ｂ７、Ｂ１１は、ハッシュ空間Ｈｂ３に割り当てられる。
【００４９】
磁気ディスク装置Ｃ０、Ｃ４、Ｃ８は、ハッシュ空間Ｈｃ０に割り当てられ、磁気ディスク群Ｃ１、Ｃ５、Ｃ９は、ハッシュ空間Ｈｃ１に割り当てられる。磁気ディスク装置Ｃ２、Ｃ６、Ｃ１０は、ハッシュ空間Ｈｃ２に割り当てられ、磁気ディスク群Ｃ３、Ｃ７、Ｃ１１は、ハッシュ空間Ｈｃ３に割り当てられる。ハッシュ空間Ｈａ０−Ｈａ３、Ｈｂ０−Ｈｂ３、Ｈｃ０−Ｈｃ３の例は、図５に示す。
【００５０】
例えば、情報処理システムＳＹＳ２は、図１０および図１１に示すように、端末ＴＭから受信するデータを磁気ディスク装置群ＭＤｐ、ＭＤａ、ＭＤｂ、ＭＤｃに冗長に書き込む。すなわち、フロントエンドサーバＦＥＳＶは、データを書き込む場合、磁気ディスク装置Ｐのいずれかと、磁気ディスク装置Ａのいずれかと、磁気ディスク装置Ｂのいずれかと、磁気ディスク装置Ｃのいずれかに対するデータの書き込み要求を出力する。
【００５１】
また、情報処理システムＳＹＳ２は、端末ＴＭからの読み出し要求に応答して磁気ディスク装置群ＭＤｐにアクセスし、データを読み出す。すなわち、フロントエンドサーバＦＥＳＶは、磁気ディスク装置群ＭＤｐに含まれる磁気ディスク装置Ｐのいずれかに対する読み出し要求を出力する。なお、データを磁気ディスク装置群ＭＤｐから読み出せない場合、情報処理システムＳＹＳ２は、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃのいずれかにアクセスすることでデータを読み出す。これにより、情報処理システムＳＹＳ２に保持されるデータの信頼性を確保することができる。
【００５２】
図５は、図４に示した磁気ディスク装置群ＭＤｐ、ＭＤａ、ＭＤｂ、ＭＤｃにおける各磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃのハッシュ空間への割り当ての例を示す。図５では、ハッシュ空間は、ハッシュリングとして示される。
【００５３】
例えば、図４に示したフロントエンドサーバＦＥＳＶは、ハッシュ関数を用いてデータを書き込む磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃを求める。フロントエンドサーバＦＥＳＶは、データを識別する識別子（例えば、データのパス名やファイル名）をハッシュ関数に入力して得られるハッシュ値に応じて、データを書き込む磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃを求める。
【００５４】
磁気ディスク装置群ＭＤｐでは、例えば、ハッシュ値の上位４ビット（０ｈ−Ｆｈ：”ｈ”は、１６進数を示す）に応じて、データの書き込み先が、１６個の磁気ディスク装置Ｐ０−Ｐ１５のいずれかに決定される。
【００５５】
磁気ディスク装置ＭＤａにおけるデータの書き込み先は、例えば、ハッシュ値の上位２ビットに応じて４個のハッシュ空間Ｈａ０、Ｈａ１、Ｈａ２、Ｈａ３のいずれかに決定される。例えば、ハッシュ値が０ｈ−３ｈの場合（上位の２ビットが”００”）、データの書き込み先は磁気ディスク装置Ａ０、Ａ４、Ａ８のいずれかに決定される。データが磁気ディスク装置Ａ０、Ａ４、Ａ８のいずれに書き込まれるかについては、図６および図７で説明する。ハッシュ値が４ｈ−７ｈの場合（上位の２ビットが”０１”）、データの書き込み先は磁気ディスク装置Ａ１、Ａ５、Ａ９のいずれかに決定される。ハッシュ値が８ｈ−Ｂｈの場合（上位の２ビットが”１０”）、データの書き込み先は磁気ディスク装置Ａ２、Ａ６、Ａ１０のいずれかに決定される。ハッシュ値がＣｈ−Ｆｈの場合（上位の２ビットが”１１”）、データの書き込み先は磁気ディスク装置Ａ３、Ａ７、Ａ１１のいずれかに決定される。
【００５６】
同様に、磁気ディスク装置ＭＤｂのデータの書き込み先は、ハッシュ値の上位２ビットに応じて、４個のハッシュ空間Ｈｂ０、Ｈｂ１、Ｈｂ２、Ｈｂ３のいずれかに決定される。磁気ディスク装置ＭＤｃのデータの書き込み先は、ハッシュ値の上位２ビットに応じて４個のハッシュ空間Ｈｃ０、Ｈｃ１、Ｈｃ２、Ｈｃ３のいずれかに決定される。例えば、各磁気ディスク装置Ａ、Ｂ、Ｃは、共通のハッシュ関数を用いてハッシュ空間の１つに割り当てられる。
【００５７】
なお、実際には、フロントエンドサーバＦＥＳＶは、例えば、ハッシュ関数としてＭＤ５（Message Digest 5）を用いて１２８ビットのハッシュ値を生成する。そして、フロントエンドサーバＦＥＳＶは、磁気ディスク装置群ＭＤｐでは、ハッシュ値の上位８ビットに応じて、データの書き込み先を、２５６個の磁気ディスク装置Ｐのいずれかに決定する。また、フロントエンドサーバＦＥＳＶは、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃでは、ＭＤ５を用いて得られるハッシュ値の上位６ビットに応じて、データの書き込み先を、それぞれ６４個の磁気ディスク装置Ａ、Ｂ、Ｃのいずれかに決定する。しかしながら、この実施形態では、説明を分かりやすくするため、磁気ディスク装置群ＭＤｐでは、ハッシュ空間の数は１６個とし、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃでは、ハッシュ空間の数は４個とする。
【００５８】
図６は、図４に示した磁気ディスク装置群ＭＤａのハッシュリングの例を示す。磁気ディスク装置群ＭＤａでは、状態ＳＴ（ＳＴ０、ＳＴ１、ＳＴ２）毎に、ハッシュ空間に割り当てられる磁気ディスク装置Ａが変更される。
【００５９】
なお、磁気ディスク装置群ＭＤｂ、ＭＤｃにおいても、図６と同様に、状態ＳＴ０、ＳＴ１、ＳＴ２毎に、ハッシュ空間に割り当てられる磁気ディスク装置Ｂ、Ｃが変更される。磁気ディスク装置群ＭＤｂにおいてハッシュ空間に割り当てられる磁気ディスク装置Ｂは、図６の磁気ディスク装置の符号Ａ、ａを符号Ｂ、ｂに置き換えることにより示される。同様に、磁気ディスク装置群ＭＤｃにおいてハッシュ空間に割り当てられる磁気ディスク装置Ｃは、図６の磁気ディスク装置の符号Ａ、ａを符号Ｃ、ｃに置き換えることにより示される。状態ＳＴ０、ＳＴ１、ＳＴ２の変化の例は、図７、図１０および図１１に示す。
【００６０】
図７は、図６に示したハッシュリングにおける状態ＳＴ０、ＳＴ１、ＳＴ２の変化の例を示す。図７では、磁気ディスク装置群ＭＤａにおける状態ＳＴ０、ＳＴ１、ＳＴ２の変化の例を示すが、磁気ディスク装置群ＭＤｂ、ＭＤｃにおいても、状態ＳＴ０、ＳＴ１、ＳＴ２は、図７と同様に変化する。磁気ディスク装置群ＭＤｂ、ＭＤｃの状態ＳＴ０、ＳＴ１、ＳＴ２の変化は、図７の磁気ディスク装置の符号Ａを符号Ｂまたは符号Ｃに置き換えることにより示される。
【００６１】
図３と同様に、太い実線で示す磁気ディスク装置Ａは、スピンアップ状態であることを示し、細い破線で示す磁気ディスク装置Ａは、スピンダウン状態であることを示す。また、太い破線で示す磁気ディスク装置Ａは、所定量を超えるデータが書き込まれ、スピンダウン状態に設定されたことを示す。
【００６２】
網掛けで示す領域に含まれる磁気ディスク装置Ａは、各状態ＳＴ０、ＳＴ１、ＳＴ２において、ハッシュ空間に割り当てられることを示す。この実施形態では、状態ＳＴ０において、磁気ディスク装置Ａ０−Ａ３のいずれかに保持されたデータの量が所定値を超えた場合、ストレージサーバＳＳＶａは、磁気ディスク装置群ＭＤａの状態を、状態ＳＴ０から状態ＳＴ１に変化する。状態ＳＴ１において、磁気ディスク装置Ａ４−Ａ７のいずれかに保持されたデータの量が所定値を超えた場合、ストレージサーバＳＳＶａは、磁気ディスク装置群ＭＤａの状態を、状態ＳＴ１から状態ＳＴ２に変化する。
【００６３】
例えば、状態ＳＴ０では、磁気ディスク装置Ａ０、Ａ１、Ａ２、Ａ３のそれぞれがハッシュ空間Ｈａ０、Ｈａ１、Ｈａ２、Ｈａ３に割り当てられる。状態ＳＴ１では、磁気ディスク装置Ａ４、Ａ５、Ａ６、Ａ７がそれぞれハッシュ空間Ｈａ０、Ｈａ１、Ｈａ２、Ｈａ３に割り当てられる。状態ＳＴ２では、磁気ディスク装置Ａ８、Ａ９、Ａ１０、Ａ１１がそれぞれハッシュ空間Ｈａ０、Ｈａ１、Ｈａ２、Ｈａ３に割り当てられる。
【００６４】
図７に示すように、各ハッシュ空間に状態ＳＴ０−ＳＴ２でアクセスされる磁気ディスク装置Ａを割り当てることで、状態ＳＴが変更される場合にも、ハッシュ関数を変更することなく、データを書き込む磁気ディスク装置Ａを変更することができる。したがって、状態ＳＴが変更される毎にハッシュ関数を変更する場合に比べて、フロントエンドサーバＦＥＳＶによるデータの書き込み制御を容易にすることができる。
【００６５】
図８は、図４に示したストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＶＶｂ、ＳＶＶｃに接続される磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃの対応付けを示すデバイス表ＤＴＢＬの例を示す。例えば、デバイス表ＤＴＢＬは、フロントエンドサーバＦＥＳＶおよびストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＶＶｂ、ＳＶＶｃの各々に内蔵される記憶装置に格納される。記憶装置は、ＤＲＡＭ（Dynamic Random Access Memory）、ＳＲＡＭ（Static Random Access Memory）またはフラッシュメモリ等の半導体記憶装置である。
【００６６】
デバイス表ＤＴＢＬは、磁気ディスク装置群ＭＤｐにおける磁気ディスク装置Ｐ０−Ｐ１５毎に、デバイスＩＤ（IDentity）を保持する領域と、マウントポイントを保持する領域と、ＩＰアドレスを保持する領域とを含む。デバイス表ＤＴＢＬの磁気ディスク装置群ＭＤｐの領域において、デバイスＩＤの末尾の数字およびマウントポイントの末尾の数字は、磁気ディスク装置Ｐの末尾の数字に対応する。例えば、デバイスＩＤの”ｄｅｖＰ０”は、磁気ディスク装置Ｐ０を示し、デバイスＩＤの”ｄｅｖＰ１５”は、磁気ディスク装置Ｐ１５を示す。
【００６７】
また、デバイス表ＤＴＢＬは、磁気ディスク装置群ＭＤａにおける磁気ディスク装置Ａ０−Ａ１１毎に、割り当てられる状態ＳＴ０−ＳＴ２を保持する領域と、識別子を保持する領域と、マウントポイントを保持する領域と、ＩＰアドレスを保持する領域とを含む。さらに、デバイス表ＤＴＢＬは、磁気ディスク装置群ＭＤａと同様に、磁気ディスク装置群ＭＤｂ、ＭＤｃに対応して状態ＳＴ０−ＳＴ２を保持する領域と、識別子を保持する領域と、マウントポイントを保持する領域と、ＩＰアドレスを保持する領域とを含む。
【００６８】
磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃに対応するデバイスＩＤは、図５に示したハッシュ空間Ｈａ０−Ｈａ３、Ｈｂ０−Ｈｂ３、Ｈｃ０−Ｈｃ３毎に割り当てられる。デバイス表ＤＴＢＬの磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの各領域において、デバイスＩＤの末尾の３文字は、ハッシュ空間Ｈａ０−Ｈａ３、Ｈｂ０−Ｈｂ３、Ｈｃ０−Ｈｃ３に対応する。また、デバイス表ＤＴＢＬの磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの各領域において、マウントポイントの末尾の数字は、磁気ディスク装置Ａ、Ｂ、Ｃの末尾の数字に対応する。
【００６９】
例えば、磁気ディスク装置Ａ、Ｂ、Ｃ、ＤがＳＡＳ（Serial Attached SCSI（SCSI：Small Computer System Interface））規格を採用する場合、識別子は、ＳＡＳアドレスが使用されてもよい。なお、識別子等から各磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃがマウントされている位置が判別可能な場合、マウントポイントを保持する領域は、デバイス表ＤＴＢＬから削除されてもよい。
【００７０】
図９は、図４に示した磁気ディスク装置群ＭＤｐ、ＭＤａ、ＭＤｂ、ＭＤｃの磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃとハッシュ値との関係を示すハッシュ表ＨＴＢＬの例を示す。ハッシュ表ＨＴＢＬは、磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃの名称の代わりにデバイスＩＤが使用されることを除き、図５に示したハッシュリングの内容と同様である。デバイスＩＤと磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃとの関係は、図８と同様である。例えば、ハッシュ表ＨＴＢＬは、フロントエンドサーバＦＥＳＶおよびストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＶＶｂ、ＳＶＶｃの各々に内蔵されるＤＲＡＭ、ＳＲＡＭまたはフラッシュメモリ等の記憶装置に格納される。
【００７１】
磁気ディスク装置群ＭＤｐの磁気ディスク装置Ｐ０−Ｐ１５に割り当てられたデバイスＩＤ（ｄｅｖＰ０−ｄｅｖＰ５）は、１２８ビットのハッシュ値の上位４ビットにより識別される。磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの磁気ディスク装置Ａ、Ｂ、Ｃに割り当てられたデバイスＩＤ（ｄｅｖＨａ０−ｄｅｖＨａ３、ｄｅｖＨｂ０−ｄｅｖＨｂ３、ｄｅｖＨｃ０−ｄｅｖＨｃ３）は、ハッシュ値の上位２ビットにより識別される。図９の括弧内に示したハッシュ値において、数字の後に付した符号”ｂ”は、２進数を示す。
【００７２】
図１０は、図４に示した情報処理システムＳＹＳ２の動作の例を示す。すなわち、図１０は、フロントエンドサーバＦＥＳＶが実行する制御プログラムの動作の例を示し、情報処理システムＳＹＳ２の制御方法の例を示す。図２および図３と同様に、書き込みデータの一部は、星形、菱形および三角形で示される。磁気ディスク装置Ａ０、Ａ１等を示す太い実線、細い破線および太い破線の意味は、図３および図７と同様である。すなわち、太い実線はスピンアップ状態を示し、細い破線はスピンダウン状態を示し、太い破線は、所定量を超えるデータが書き込まれ、スピンダウン状態に設定されたことを示す。磁気ディスク装置Ｐ０、Ａ０等に示す網掛けは、書き込まれたデータを示し、網掛けの面積は、書き込まれたデータの量を示す。
【００７３】
まず、フロントエンドサーバＦＥＳＶは、情報処理システムＳＹＳ２のネットワークストレージとしての機能を開始する場合に、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの状態を、初期状態である状態ＳＴ０に設定する。状態ＳＴ０では、磁気ディスク装置Ａ０−Ａ３、Ｂ０−Ｂ３、Ｃ０−Ｃ３は、スピンアップ状態に設定された後、マウントされ、各ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃにより認識可能になる。磁気ディスク装置群ＭＤｐの磁気ディスク装置Ｐ０−Ｐ１５は、スピンアップ状態に設定された後、マウントされ、ストレージサーバＳＳＶｐにより認識可能になる。
【００７４】
フロントエンドサーバＦＥＳＶは、端末ＴＭから書き込みデータを受信すると、ハッシュ関数を用いて書き込みデータのハッシュ値を求め、ハッシュ表ＨＴＢＬとデバイス表ＤＴＢＬから求めた磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃの各々にデータを書き込む。磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃへのデータの書き込みは、状態ＳＴ０に割り当てられた磁気ディスク装置Ａ０−Ａ３のいずれかと、磁気ディスク装置Ｂ０−Ｂ３のいずれかと、磁気ディスク装置Ｃ０−Ｃ３のいずれかに対して実行される。
【００７５】
データの書き込みにより、スピンアップ状態を維持する磁気ディスク装置Ａ０−Ａ３、Ｂ０−Ｂ３、Ｃ０−Ｃ３のいずれか（例えば、磁気ディスク装置Ｂ２）に保持されたデータの量が所定量を超える。例えば、所定量は、各磁気ディスク装置Ａ、Ｂ、Ｃの記憶容量の８０％から９０％程度に設定される。
【００７６】
フロントエンドサーバＦＥＳＶは、磁気ディスク装置Ａ０−Ａ３、Ｂ０−Ｂ３、Ｃ０−Ｃ３のいずれかに保持されたデータの量が所定量を超えた場合、状態を、状態ＳＴ０から状態ＳＴ１に変化させる（図１０（ａ））。状態ＳＴ０から状態ＳＴ１への変化により、所定量を超えるデータが書き込まれた磁気ディスク装置Ｂ２を含む磁気ディスク装置Ａ０−Ａ３、Ｂ０−Ｂ３、Ｃ０−Ｃ３は、スピンダウン状態に設定される。また、状態ＳＴ１に割り当てられた磁気ディスク装置Ａ４−Ａ７、Ｂ４−Ｂ７、Ｃ４−Ｃ７は、スピンアップ状態に設定された後、マウントされる。
【００７７】
この実施形態では、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃのいずれかの磁気ディスク装置Ａ、Ｂ、Ｃに保持されたデータの量が所定量を超えた場合に、全ての磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃは、状態ＳＴ０から状態ＳＴ１に変更される。これにより、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの各磁気ディスク装置Ａ、Ｂ、Ｃの記憶容量が互いに異なる場合にも、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの状態ＳＴを揃えることができる。この結果、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃのアクセス制御を、状態ＳＴを揃えない場合に比べて容易にすることができる。
【００７８】
図１１は、図４に示した情報処理システムＳＹＳ２の動作の別の例を示す。図１１は、図１０の動作の続きを示す。図２および図３と同様に、書き込みデータの一部は、四角形および円形で示される。
【００７９】
フロントエンドサーバＦＥＳＶは、端末ＴＭから書き込みデータを受信すると、ハッシュ値を求め、求めたハッシュ値に応じて、磁気ディスク装置Ｐと、状態ＳＴ１に割り当てられた各磁気ディスク装置Ａ、Ｂ、Ｃに対して書き込み要求を出力し、データを書き込む。
【００８０】
データの書き込みにより、スピンアップ状態を維持する磁気ディスク装置Ａ４−Ａ７、Ｂ４−Ｂ７、Ｃ４−Ｃ７のいずれか（例えば、磁気ディスク装置Ａ５）に保持されたデータの量が所定量を超える。
【００８１】
フロントエンドサーバＦＥＳＶは、磁気ディスク装置Ａ４−Ａ７、Ｂ４−Ｂ７、Ｃ４−Ｃ７のいずれかに保持されたデータの量が所定量を超えた場合、設定された状態を、次の状態（すなわち、ＳＴ２）に変化させる（図１１（ａ））。状態ＳＴ１から状態ＳＴ２への変化により、所定量を超えるデータが書き込まれた磁気ディスク装置Ａ５を含む磁気ディスク装Ａ４−Ａ７、Ｂ４−Ｂ７、Ｃ４−Ｃ７は、スピンダウン状態に設定される。また、状態ＳＴ２に割り当てられた磁気ディスク装置Ａ８−Ａ１１、Ｂ８−Ｂ１１、Ｃ８−Ｃ１１は、スピンアップ状態に設定された後、マウントされる。
【００８２】
この後、フロントエンドサーバＦＥＳＶは、端末ＴＭから書き込みデータを受信すると、ハッシュ値を求め、求めたハッシュ値に応じて、磁気ディスク装置Ｐと、状態ＳＴ２に割り当てられた各磁気ディスク装置Ａ、Ｂ、Ｃにデータを書き込む。
【００８３】
図１２は、図４に示したフロントエンドサーバＦＥＳＶによるデータの書き込み処理の例を示す。図１２に示す処理は、フロントエンドサーバＦＥＳＶがネットワークストレージの制御プログラムを実行することにより実現される。すなわち、図１２は、制御プログラムの動作の例および情報処理システムＳＹＳ２の制御方法の例を示す。
【００８４】
フロントエンドサーバＦＥＳＶがデータの書き込み処理を実行する前に、端末ＴＭは、例えば、書き込み要求をＰＵＴメソッドで情報処理システムＳＹＳ２に送信する。すなわち、端末ＴＭは、ＨＴＴＰ（HyperText Transfer Protocol）を用いたＡＰＩ（Application Program Interface）において、メソッドを”ＰＵＴ”とする。そして、端末ＴＭは、ＵＲＩ（Uniform Resource Identifier）によりデータを書き込むリソースを指定する。
【００８５】
例えば、フロントエンドサーバＦＥＳＶのＩＰアドレスが”１９２．１６８．１．１００”であるとき、端末ＴＭは、ＰＵＴメソッドとして”ｈｔｔｐ：／／１９２．１６８．１．１００／ｆｏｏ／ｂａｒ／ｂｕｚ”を送信する。ここで、”ｆｏｏ”、”ｂａｒ”、”ｂｕｚ”は、メタ構文変数を示す。送信するデータは、ＨＴＴＰのタグの一種であるｂｏｄｙに格納される。
【００８６】
ステップＳ１０２において、端末ＴＭからの書き込み要求を受信したフロントエンドサーバＦＥＳＶは、例えば、ＵＲＩ中の”／ｆｏｏ／ｂａｒ／ｂｕｚ”をハッシュ関数に入力し、ハッシュ値を求める。例えば、ハッシュ値は、ＭＤ５を用いて１２８ビットが生成される。
【００８７】
次に、ステップＳ１０４において、フロントエンドサーバＦＥＳＶは、図９に示したハッシュ表ＨＴＢＬを用いて、求めたハッシュ値からデータを書き込む磁気ディスク装置Ｐ、Ａ、Ｂ、ＣのデバイスＩＤを求める。例えば、磁気ディスク装置群ＭＤｐでは、ハッシュ値の上位４ビットに応じてデータを書き込むデバイスＩＤが求められる。磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃでは、ハッシュ値の上位２ビットに応じてデータを書き込むデバイスＩＤが求められる。
【００８８】
次に、ステップＳ１０６において、フロントエンドサーバＦＥＳＶは、図８に示したデバイス表ＤＴＢＬを検索し、ステップＳ１０４で求めたデバイスＩＤに対応するＩＰアドレスを求める。すなわち、フロントエンドサーバＦＥＳＶは、デバイスＩＤからデータを書き込むストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃを求める。
【００８９】
なお、例えば、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのうちの２つにデータを書き込む仕様の場合、フロントエンドサーバＦＥＳＶは、データを書き込むストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのうちの２つをランダムに選択する。
【００９０】
次に、ステップＳ１０８において、フロントエンドサーバＦＥＳＶは、求めたＩＰアドレスのそれぞれに対して、書き込みデータ、データを書き込むデバイスＩＤおよびハッシュ値（フルビット；この例では１２８ビット）を送信する。すなわち、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのそれぞれにデータの書き込み要求を出力する。書き込み要求を受けたストレージサーバＳＳＶｐの動作の例は、図１３に示し、書き込み要求を受けたストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの動作の例は、図１４に示す。
【００９１】
なお、情報処理システムＳＹＳ２が複数のストレージサーバＳＳＶｐを有する場合、フロントエンドサーバＦＥＳＶは、複数のストレージサーバＳＳＶｐと、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃとのそれぞれにデータの書き込み要求を出力する。
【００９２】
次に、ステップＳ１１０において、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃからのデータの書き込みの完了を示す書き込み完了通知の受信を待つ。各ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃからの書き込み完了通知を受けた場合、ステップＳ１１２においてフロントエンドサーバＦＥＳＶは、データの書き込みが完了したことを示す通知を端末ＴＭに送信し、データの書き込み処理を終了する。
【００９３】
一方、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのいずれかから、状態の変更の通知を受信した場合、ステップＳ１２０において、状態を変更する状態変更要求をストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに送信する。ここで、状態の変更は、図１０および図１１に示したように、現在の状態に対応して割り当てられた磁気ディスク装置Ａ、Ｂ、Ｃのいずれかに保持されたデータの量が所定量を超えた場合に実行される。ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによる状態の変更処理の例は、図１４に示す。
【００９４】
次に、ステップＳ１２２において、フロントエンドサーバＦＥＳＶは、各ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃからの状態が変更された旨の状態変更完了通知の受信を待つ。そして、状態変更完了通知を受信した場合、フロントエンドサーバＦＥＳＶは、状態の変更処理を終了する。
【００９５】
図１３は、図４に示したストレージサーバＳＳＶｐによるデータの書き込み処理の例を示す。図１３に示す処理は、ストレージサーバＳＳＶｐがデータの書き込み制御プログラムを実行することにより実現される。
【００９６】
まず、ステップＳ２０２において、ストレージサーバＳＳＶｐは、図８に示したデバイス表を参照し、フロントエンドサーバＦＥＳＶから受信したデバイスＩＤに対応するマウントポイントを取得する。次に、ステップＳ２０４において、ストレージサーバＳＳＶｐは、取得したマウントポイントにマウントされた磁気ディスク装置ＰにフロントエンドサーバＦＥＳＶから受信したデータを書き込む。この際、ストレージサーバＳＳＶｐは、フルビットのハッシュ値をファイル名として、磁気ディスク装置Ｐにデータを書き込む。
【００９７】
次に、ステップＳ２０６において、ストレージサーバＳＳＶｐは、データの書き込みが完了したことを示す書き込み完了通知をフロントエンドサーバＦＥＳＶに送信し、データの書き込み処理を終了する。
【００９８】
図１４は、図４に示したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによるデータの書き込み処理の例を示す。図１４に示す処理は、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々がデータの書き込み制御プログラムを、互いに独立に実行することにより実現される。
【００９９】
まず、ステップＳ３０２において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、図８に示したデバイス表を参照し、フロントエンドサーバＦＥＳＶから受信したデバイスＩＤおよび現在の状態に対応するマウントポイントを取得する。現在の状態は、状態ＳＴ０−ＳＴ２のいずれかであり、各ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃにより認識される。次に、ステップＳ３０４において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、取得したマウントポイントにマウントされた磁気ディスク装置Ａ、Ｂ、ＣにフロントエンドサーバＦＥＳＶから受信したデータを書き込む。この際、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、フルビットのハッシュ値をファイル名として、磁気ディスク装置Ａ、Ｂ、Ｃにデータを書き込む。
【０１００】
次に、ステップＳ３０６において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、データの書き込みにより、現在の状態に割り当てられた磁気ディスク装置Ａ、Ｂ、Ｃのいずれかに保持されたデータの量が所定値を超えたか否かを判定する。すなわち、磁気ディスク装置Ａ、Ｂ、Ｃのいずれかの空き容量が不足したか否かが判定される。空き容量が不足した場合、状態を変更するために、処理はステップＳ３０８に移行され、空き容量が不足していない場合、処理はステップＳ３１０に移行される。
【０１０１】
ステップＳ３０８において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのいずれかは、状態を変更する通知をフロントエンドサーバＦＥＳＶに送信する。次に、ステップＳ３１０において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、データの書き込みが完了したことを示す書き込み完了通知をフロントエンドサーバＦＥＳＶに送信し、データの書き込み処理を終了する。
【０１０２】
一方、フロントエンドサーバＦＥＳＶから状態変更要求を受信した場合、ステップＳ３２２において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、現在の状態に対応する磁気ディスク装置Ａ、Ｂ、Ｃをアンマウントする。なお、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、状態ＳＴ０−ＳＴ２のそれぞれに割り当てられた磁気ディスク装置Ａ、Ｂ、Ｃを、図８に示したデバイス表を参照することで認識する。
【０１０３】
次に、ステップＳ３２４において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、現在の状態に対応する磁気ディスク装置Ａ、Ｂ、Ｃをスピンダウン状態に設定する。次に、ステップＳ３２６において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、状態を示す状態値を１つインクリメントする。例えば、現在の状態がＳＴ０の場合、状態値は”０”から”１”にインクリメントされ、状態はＳＴ１に設定される。
【０１０４】
なお、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの電源を、状態ＳＴ０−ＳＴ２に割り当てられる磁気ディスク装置Ａ、Ｂ、Ｃ毎に分離し、スピンダウン状態に設定された磁気ディスク装置群Ａ、Ｂ、Ｃの電源を遮断してもよい。この場合、電源を遮断しない場合に比べて、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの消費電力をさらに削減することができる。
【０１０５】
次に、ステップＳ３２８において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、新たに設定された状態に対応する磁気ディスク装置Ａ、Ｂ、Ｃをスピンアップ状態に設定する。次に、ステップＳ３３０において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、新たに設定された状態に対応する磁気ディスク装置Ａ、Ｂ、Ｃをマウントする。
【０１０６】
そして、ステップＳ３３２において、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々は、状態の変更が完了したことを示す状態変更完了通知をフロントエンドサーバＦＥＳＶに送信し、状態の変更処理を終了する。
【０１０７】
なお、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの磁気ディスク装置Ａ、Ｂ、Ｃの記憶容量が互いに同じ場合、ステップＳ３０６において、各ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、磁気ディスク装置Ａ、Ｂ、Ｃの空き容量の不足を一斉に検出する。これは、共通のハッシュ関数が磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃに適用され、例えば、図１０に示した共通のデータが書き込まれる磁気ディスク装置Ａ２、Ｂ２、Ｃ２の空き容量が一斉に不足するためである。
【０１０８】
この場合、フロントエンドサーバＦＥＳＶの制御によりストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの状態ＳＴを変更させなくても、各ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃにより、状態ＳＴを個別に変更させることが可能である。このため、各ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、ステップＳ３０８に代えて、ステップＳ３２２、Ｓ３２４、Ｓ３２６、Ｓ３２８、Ｓ３３０を実行してもよい。この場合、フロントエンドサーバＦＥＳＶは、図１２に示したステップＳ１２０、Ｓ１２２を実行しない。
【０１０９】
図１５は、図４に示したフロントエンドサーバＦＥＳＶによる読み出し処理の例を示す。図１５に示す処理は、フロントエンドサーバＦＥＳＶがネットワークストレージの制御プログラムを実行することにより実現される。すなわち、図１５は、制御プログラムの動作の例および情報処理システムＳＹＳ２の制御方法の例を示す。
【０１１０】
フロントエンドサーバＦＥＳＶは、まず、ストレージサーバＳＳＶｐに対して読み出し要求を発行し、ストレージサーバＳＳＶｐからデータが読めない場合に、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの１つに対して読み出し要求を発行する。書き込み要求と同様に、端末ＴＭは、例えば、読み出し要求をＧＥＴメソッドで情報処理システムＳＹＳ２に送信し、ＵＲＩによりデータを読み出すリソースを指定する。
【０１１１】
ステップＳ１５２において、端末ＴＭからの読み出し要求を受信したフロントエンドサーバＦＥＳＶは、例えば、ＵＲＩ中の”／ｆｏｏ／ｂａｒ／ｂｕｚ”をハッシュ関数に入力し、１２８ビットのハッシュ値を求める。
【０１１２】
次に、ステップＳ１５４において、フロントエンドサーバＦＥＳＶは、図９に示したハッシュ表ＨＴＢＬを用いて、求めたハッシュ値からデータを読み出す磁気ディスク装置ＰのデバイスＩＤを求める。この際、フロントエンドサーバＦＥＳＶは、データが磁気ディスク装置Ｐから読み出せないことに備えて、求めたハッシュ値に対応する磁気ディスク装置Ａ、Ｂ、Ｃのそれぞれを含むデバイスＩＤも求める。
【０１１３】
次に、ステップＳ１５６において、フロントエンドサーバＦＥＳＶは、図８に示したデバイス表ＤＴＢＬを用いてステップＳ１５４で求めたデバイスＩＤを検索し、データを読み出すストレージサーバＳＳＶｐのＩＰアドレスを求める。すなわち、デバイスＩＤからデータを読み出すストレージサーバＳＳＶｐが求められる。例えば、情報処理システムＳＹＳ２が複数のストレージサーバＳＳＶｐを含む場合、ステップＳ１５６において、データを読み出すストレージサーバＳＳＶｐの１つが選択される。
【０１１４】
次に、ステップＳ１５８において、フロントエンドサーバＦＥＳＶは、データを読み出す磁気ディスク装置ＰのデバイスＩＤおよびハッシュ値（フルビット；この例では１２８ビット）を、求めたＩＰアドレスに対して送信する。すなわち、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐにデータの読み出し要求を出力する。読み出し要求を受けたストレージサーバＳＳＶｐの動作の例は、図１６に示す。
【０１１５】
次に、ステップＳ１６０において、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐに対する通信が成功したか否かを判定する。通信が成功した場合、処理はステップＳ１６２に移行され、タイムアウト等により通信が失敗した場合、処理はステップＳ１６４に移行される。例えば、通信の失敗の原因として、ストレージサーバＳＳＶｐのＯＳ（Operating System）のハングアップ、ストレージサーバＳＳＶｐの故障、磁気ディスク装置Ｐの故障、またはネットワークの不通などがある。
【０１１６】
通信に成功した場合、ステップＳ１６２において、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐからデータを受信するまで待ち、データを受信した後、ステップＳ１６８の処理を実行する。
【０１１７】
通信に失敗した場合、ステップＳ１６４において、フロントエンドサーバＦＥＳＶは、デバイスＩＤとフルビットのハッシュ値とを、デバイスＩＤに対応するストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの１つに送信する。すなわち、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの１つに読み出し要求を送信する。ここで、デバイスＩＤは、ステップＳ１５４で求めたハッシュ値に対応する磁気ディスク装置Ａ、Ｂ、ＣのデバイスＩＤのいずれかである。
【０１１８】
次に、ステップＳ１６６において、フロントエンドサーバＦＥＳＶは、読み出し要求を送信したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの１つからデータを受信するまで待つ。フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの１つからデータを受信した後、ステップＳ１６８の処理を実行する。
【０１１９】
ステップＳ１６８において、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐまたはストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの１つから受けたデータを端末ＴＭに送信し、データの読み出し処理を終了する。
【０１２０】
図１６は、図４に示したストレージサーバＳＳＶｐによるデータの読み出し処理の例を示す。図１６に示す処理は、ストレージサーバＳＳＶｐがデータの読み出し制御プログラムを実行することにより実現される。
【０１２１】
まず、ステップＳ２１２において、ストレージサーバＳＳＶｐは、図８に示したデバイス表を参照し、フロントエンドサーバＦＥＳＶから受信したデバイスＩＤに対応するマウントポイントを取得する。次に、ステップＳ２１４において、ストレージサーバＳＳＶｐは、取得したマウントポイントに対応する磁気ディスク装置Ｐに読み出しアクセスし、データを読み出す。
【０１２２】
次に、ステップＳ２１６において、ストレージサーバＳＳＶｐは、データの読み出しに成功したか否かを判定する。データの読み出しが成功した場合、処理はステップＳ２１８に移行され、データの読み出しが失敗した場合、処理はステップＳ２２０に移行される。
【０１２３】
データの読み出しが成功した場合、ステップＳ２１８において、ストレージサーバＳＳＶｐは、磁気ディスク装置Ｐから読み出したデータをフロントエンドサーバＦＥＳＶに送信し、読み出し処理を終了する。データの読み出しが失敗した場合、ステップＳ２２０において、ストレージサーバＳＳＶｐは、読み出しが失敗したことを示す読み出し失敗通知をフロントエンドサーバＦＥＳＶに送信し、読み出し処理を終了する。
【０１２４】
図１７は、図４に示したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによるデータの読み出し処理の例を示す。図１７に示す処理は、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々がデータの読み出し制御プログラムを、互いに独立に実行することにより実現される。なお、この例では、図１５に示したステップＳ１６４において、フロントエンドサーバＦＥＳＶがストレージサーバＳＳＶａに読み出し要求を送信し、ストレージサーバＳＳＶａが磁気ディスク装置Ａからデータを読み出す例について説明する。
【０１２５】
まず、ステップＳ３４２において、ストレージサーバＳＳＶａは、変数ｉｄｘを現在の状態を示す状態値に設定する。次に、ステップＳ３４４において、ストレージサーバＳＳＶａは、図８に示したデバイス表ＤＴＢＬを用いて、フロントエンドサーバＦＥＳＶから受信したデバイスＩＤと、現在の状態値とからマウントポイントを取得する。
【０１２６】
次に、ステップＳ３４６において、ストレージサーバＳＳＶａは、フロントエンドサーバＦＥＳＶから受信したフルビットのハッシュ値が示すファイルを検索する。次に、ステップＳ３４８において、ストレージサーバＳＳＶａは、ハッシュ値が示すファイルがあるか否かを判定する。ハッシュ値が示すファイルがある場合、処理はステップＳ３５６に移行され、現在の状態に割り当てられた磁気ディスク装置Ａからデータが読み出される。ハッシュ値が示すファイルがない場合、処理はステップＳ３５０に移行され、所定量を超えるデータが書き込まれ、スピンダウンされた磁気ディスク装置Ａに保持されたファイルが検索される。
【０１２７】
ステップＳ３５０において、ストレージサーバＳＳＶａは、変数ｉｄｘを１つデクリメントする。例えば、ストレージサーバＳＳＶａは、状態が図７に示す状態ＳＴ１（ｉｄｘ＝１）の場合、所定量を超えるデータが書き込まれた状態ＳＴ０の磁気ディスク装置Ａ０−Ａ３を読み出し対象とする。
【０１２８】
次に、ステップＳ３５２において、ストレージサーバＳＳＶａは、変数ｉｄｘが示す状態値（例えば、ＳＴ０）の磁気ディスク装置Ａをスピンアップ状態に設定する。次に、ステップＳ３５４において、ストレージサーバＳＳＶａは、変数ｉｄｘが示す状態値の磁気ディスク装置（例えば、Ａ０−Ａ３）をマウントする。そして、処理はステップＳ３４４に戻り、新たにマウントされた磁気ディスク装置Ａに保持されたファイルが検索される。
【０１２９】
一方、ステップＳ３５６において、ストレージサーバＳＳＶａは、ハッシュ値が示すファイルからデータを読み出す。次に、ステップＳ３５８において、ストレージサーバＳＳＶａは、磁気ディスク装置Ａから読み出したデータをフロントエンドサーバＦＥＳＶに送信する。
【０１３０】
次に、ステップＳ３６０において、ストレージサーバＳＳＶａは、現在の状態を示す状態値が変数ｉｄｘと等しいか否かを判定する。状態値が変数ｉｄｘと等しい場合、現在の状態に割り当てられた磁気ディスク装置Ａ以外にスピンアップ状態に設定された磁気ディスク装置Ａは存在しないため、読み出し処理は終了される。状態値が変数ｉｄｘと異なる場合、現在の状態に割り当てられた磁気ディスク装置Ａ以外にスピンアップ状態に設定された磁気ディスク装置Ａが存在するため、処理はステップＳ３６２に移行される。
【０１３１】
ステップＳ３６２において、ストレージサーバＳＳＶａは、変数ｉｄｘが示す状態値の磁気ディスク装置（例えば、Ａ０−Ａ３）をアンマウントする。次に、ステップＳ３６４において、ストレージサーバＳＳＶａは、変数ｉｄｘが示す状態値（例えば、ＳＴ０）の磁気ディスク装置Ａをスピンダウン状態に設定する。
【０１３２】
次に、ステップＳ３６６において、ストレージサーバＳＳＶａは、変数ｉｄｘを１つインクリメントし、処理をステップＳ３６０に移行する。そして、ステップＳ３６０、Ｓ３６２、Ｓ３６４、Ｓ３６６が繰り返し実行されることで、現在の状態に割り当てられた磁気ディスク装置Ａ以外でスピンアップ状態に設定された磁気ディスク装置Ａは、スピンダウン状態に設定される。
【０１３３】
以上、図４から図１７に示した実施形態においても、図１から図３に示した実施形態と同様に、現在の状態以外の磁気ディスク装置Ａ、Ｂ、Ｃをスピンダウン状態に設定することで、情報処理システムＳＹＳ２の消費電力を従来に比べて削減することができる。この際、データの読み出しは、ストレージサーバＳＳＶｐにより実行されるため、アクセス性能を低下させることなく情報処理システムＳＹＳ２の消費電力を削減することができる。また、複数のストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃにデータを冗長に書き込むため、データの冗長性を維持しながら、情報処理システムＳＹＳ２の消費電力を削減することができる。
【０１３４】
さらに、各ハッシュ空間に状態ＳＴ０−ＳＴ２の磁気ディスク装置Ａ（またはＢ、Ｃ）を割り当てることで、状態ＳＴが変更される場合にも、ハッシュ関数を変更することなく、データを書き込む磁気ディスク装置Ａを決定することができる。したがって、状態ＳＴが変更される毎にハッシュ関数を変更する場合に比べて、フロントエンドサーバＦＥＳＶによるデータの書き込み制御を容易にすることができる。
【０１３５】
図１８は、情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の別の実施形態を示す。図４から図１７に示す実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
【０１３６】
この実施形態の情報処理システムＳＹＳ３は、ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃと磁気ディスク装置群ＭＤｐ、ＭＤａ、ＭＤｂ、ＭＤｃとを接続するスイッチＤＳＷを有する。スイッチＤＳＷは、管理装置であるフロントエンドサーバＦＥＳＶが管理する接続情報に基づいて、ストレージサーバＳＳＶｐと磁気ディスク装置Ｐ０−Ｐ１５とを接続し、ストレージサーバＳＳＶａと磁気ディスク装置Ａ０−Ａ３および磁気ディスク装置Ａ４−Ａ１１とを接続するスイッチ装置の一例である。また、情報処理システムＳＹＳ３は、スイッチＤＳＷに接続された複数の予備の磁気ディスク装置ＲＳＶを有する。例えば、磁気ディスク装置群ＭＤｐ、ＭＤａ、ＭＤｂ、ＭＤｃの磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃと予備の磁気ディスク装置ＲＳＶとは、ディスクプールＤＰＯＯＬ内に配置される。情報処理システムＳＹＳ３のその他の構成は、図４と同様である。なお、情報処理システムＳＹＳ３は、複数のストレージサーバＳＳＶｐと、複数のストレージサーバＳＳＶｐに接続される複数の磁気ディスク装置群ＭＤｐを有してもよい。
【０１３７】
スイッチＤＳＷは、フロントエンドサーバＦＥＳＶからの制御により、ディスクプールＤＰＯＯＬ内の磁気ディスク装置をストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのそれぞれに接続する。また、スイッチＤＳＷは、フロントエンドサーバＦＥＳＶからの制御により、予備の磁気ディスク装置ＲＳＶを、ストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのそれぞれに接続可能である。例えば、予備の磁気ディスク装置ＲＳＶは、スピンダウン状態に維持される。
【０１３８】
この例では、フロントエンドサーバＦＥＳＶは、スイッチＤＳＷを介して、ディスクプールＤＰＯＯＬ内の任意の磁気ディスク装置ＰをストレージサーバＳＳＶｐに接続する。フロントエンドサーバＦＥＳＶは、スイッチＤＳＷを介して、ディスクプールＤＰＯＯＬ内の任意の磁気ディスク装置ＡをストレージサーバＳＳＶａに接続する。フロントエンドサーバＦＥＳＶは、スイッチＤＳＷを介して、ディスクプールＤＰＯＯＬ内の任意の磁気ディスク装置ＢをストレージサーバＳＳＶｂに接続する。フロントエンドサーバＦＥＳＶは、スイッチＤＳＷを介して、ディスクプールＤＰＯＯＬ内の任意の磁気ディスク装置ＣをストレージサーバＳＳＶｃに接続する。そして、情報処理システムＳＹＳ３は、ネットワークストレージとしての動作を開始する初期状態において、図４と同様の構成に構築される。
【０１３９】
図１９は、図１８に示した磁気ディスク装置群ＭＤａのハッシュリングにおける状態の変化の例を示す。図７と同一または同様の要素については、詳細な説明は省略する。ハッシュリングにおける状態ＳＴ０、ＳＴ１、ＳＴ２の変化は、図７と同様である。なお、図７と同様に、磁気ディスク装置群ＭＤｂ、ＭＤｃの状態ＳＴ０、ＳＴ１、ＳＴ２、ＳＴ３の変化は、図１９の磁気ディスク装置の符号Ａを符号Ｂまたは符号Ｃに置き換えることにより示される。
【０１４０】
この実施形態では、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃにおいて、状態ＳＴ２に割り当てられた磁気ディスク装置Ａ、Ｂ、Ｃのいずれかに所定量を超えるデータが書き込まれた場合、状態ＳＴ３が新たに設けられる。状態ＳＴ３では、図１８に示した予備の磁気ディスク装置ＲＳＶが、スイッチＤＳＷを介してストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに接続される。
【０１４１】
ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのいずれかは、図１４に示したステップＳ３０６、Ｓ３０８により、状態ＳＴ２に割り当てられた磁気ディスク装置Ａ、Ｂ、Ｃのいずれかの空き容量が不足したことを、フロントエンドサーバＦＥＳＶに送信する。フロントエンドサーバＦＥＳＶは、デバイス表ＤＴＢＬを更新し、状態ＳＴ２から状態ＳＴ３に変更する状態変更要求を各ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに送信する。
【０１４２】
状態ＳＴ３を含むデバイス表ＤＴＢＬの例は、図２０に示し、フロントエンドサーバＦＥＳＶによる状態ＳＴ２から状態ＳＴ３への変更処理の例は、図２１に示す。ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによる状態ＳＴ２から状態ＳＴ３への変更処理の例は、図１４に示したステップＳ３２２−Ｓ３３２と同様である。
【０１４３】
なお、状態ＳＴ３に割り当てられた磁気ディスク装置Ａ、Ｂ、Ｃのいずれかに所定量を超えるデータが書き込まれた場合、さらに状態ＳＴ４が新たに設けられてもよい。この場合、予備の磁気ディスク装置ＲＳＶを用いて、状態ＳＴ４で使用される磁気ディスク装置Ａ、Ｂ、Ｃが、スイッチＤＳＷを介してストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに接続される。
【０１４４】
図２０は、図１９に示した状態ＳＴ３を含む情報が追加されたデバイス表ＤＴＢＬの例を示す。状態ＳＴ３を含む情報が追加される前のデバイス表ＤＴＢＬの例は、図８と同様である。
【０１４５】
フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのいずれかから、状態ＳＴ２から状態ＳＴ３への変更通知を受信した場合、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃに状態ＳＴ３の情報を追加する。例えば、フロントエンドサーバＦＥＳＶは、状態ＳＴ３に割り当てられる磁気ディスク装置Ａ、Ｂ、Ｃの情報（識別子、マウントポイント、ＩＰアドレス）を、デバイスＩＤ毎に追加する。なお、フロントエンドサーバＦＥＳＶが追加した状態ＳＴ３の情報を含むデバイス表ＤＴＢＬは、フロントエンドサーバＦＥＳＶからストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに配布される。
【０１４６】
図２１は、フロントエンドサーバＦＥＳＶによる状態ＳＴ２から状態ＳＴ３への変更処理の例を示す。図１２と同様の動作については、詳細な説明は省略する。この例では、図１２のステップＳ１２０の前に、ステップＳ１１４、Ｓ１１６、Ｓ１１８が追加される。その他の処理は、図１２と同様である。
【０１４７】
フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのいずれかから、状態の変更の通知を受信した場合、ステップＳ１１４において、新たな状態（例えば、ＳＴ３）を追加するか否かを判定する。新たな状態を追加する場合、処理はステップＳ１１６に移行される。新たな状態を追加しない場合、状態ＳＴ０から状態ＳＴへの変更、または状態ＳＴ１から状態ＳＴ２への変更と判定され、処理はステップＳ１２０に移行される。
【０１４８】
ステップＳ１１６において、フロントエンドサーバＦＥＳＶは、デバイス表ＤＴＢＬを図８に示す状態から図２０に示す状態に更新し、更新したデバイス表ＤＴＢＬをストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに通知する。
【０１４９】
次に、ステップＳ１１８において、フロントエンドサーバＦＥＳＶは、スイッチＤＳＷを制御し、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに予備の磁気ディスク装置ＲＳＶを接続する。例えば、ストレージサーバＳＳＶａに接続された予備の磁気ディスク装置ＲＳＶは、図１９に示した磁気ディスク装置Ａ１２、Ａ１３、Ａ１４、Ａ１５として使用される。この後、フロントエンドサーバＦＥＳＶは、図１２と同様に、ステップＳ１２０、Ｓ１２２の処理を実行する。
【０１５０】
状態が追加される場合、ステップＳ１２０の処理に応答して、状態変更要求を受信するストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、図１４のステップＳ３２２からＳ３３２の処理を実行する。ステップＳ３２２からＳ３３２では、状態ＳＴ２に対応する磁気ディスク装置Ａ、Ｂ、Ｃがアンマウントおよびスピンダウンされる。そして、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、更新されたデバイス表ＤＴＢＬを参照し、状態ＳＴ３に対応する磁気ディスク装置Ａ、Ｂ、Ｃをスピンアップおよびマウントする。
【０１５１】
なお、状態ＳＴ０−ＳＴ３におけるデータの書き込み処理は、図１２、図１３、図１４と同様であり、状態ＳＴ０−ＳＴ３における読み出し処理は、図１５、図１６、図１７と同様である。
【０１５２】
また、図１８に示した磁気ディスク装置群ＭＤａの磁気ディスク装置Ａ４−Ａ１１は、予備の磁気ディスク装置ＲＳＶが使用されてもよい。磁気ディスク装置群ＭＤｂの磁気ディスク装置Ｂ４−Ｂ１１および磁気ディスク装置群ＭＤｃの磁気ディスク装置Ｃ４−Ｃ１１も同様に、予備の磁気ディスク装置ＲＳＶが使用されてもよい。この場合、状態ＳＴ０から状態ＳＴ１および状態ＳＴ１から状態ＳＴ２への変更時に、フロントエンドサーバＦＥＳＶは、スイッチＤＳＷを制御して磁気ディスク装置ＲＳＶを磁気ディスク装置Ａ、Ｂ、Ｃとして増設する。
【０１５３】
以上、図１８から図２１に示した実施形態においても、図１から図３に示した実施形態と同様に、情報処理システムＳＹＳ３の消費電力を従来に比べて削減することができる。また、図４から図１７に示した実施形態と同様に、状態ＳＴが変更される場合にも、ハッシュ関数を変更することなく、データを書き込む磁気ディスク装置Ａを決定することができる。
【０１５４】
さらに、図１８から図２１に示した実施形態では、フロントエンドサーバＦＥＳＶにより制御されるスイッチＤＳＷにより、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃに予備の磁気ディスク装置ＲＳＶを接続することができる。これにより、図１９に示したように、新たな状態ＳＴ３を追加することができ、データの保持容量の制限を緩和しながら、情報処理システムＳＹＳ３の消費電力を削減できる。
【０１５５】
なお、図１８に示したスイッチＤＳＷは、図１に示した情報処理システムＳＹＳ１、図２２に示した情報処理システムＳＹＳ４、あるいは、図２４に示した情報処理システムＳＹＳ５に適用されてもよい。
【０１５６】
図２２は、情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の別の実施形態を示す。図４から図１７に示す実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
【０１５７】
この実施形態の情報処理システムＳＹＳ４は、図４に示した情報処理システムＳＹＳ２からストレージサーバＳＳＶｐを削除した構成を有する。情報処理システムＳＹＳ４のその他の構成は、図４と同様である。情報処理システムＳＹＳ４がストレージサーバＳＳＶｐを持たないため、デバイス表ＤＴＢＬは、図８から磁気ディスク装置群ＭＤｐの情報を削除した構成を有し、ハッシュ表ＨＴＢＬは、図９から磁気ディスク装置群ＭＤｐの情報を削除した構成を有する。
【０１５８】
図２３は、図２１に示したフロントエンドサーバＦＥＳＶによる読み出し処理の例を示す。図１５と同一または同様の処理については、詳細な説明は省略する。図２３に示す処理は、フロントエンドサーバＦＥＳＶがネットワークストレージの制御プログラムを実行することにより実現される。すなわち、図２３は、制御プログラムの動作の例および情報処理システムＳＹＳ２の制御方法の例を示す。
【０１５９】
図２２に示す情報処理システムＳＹＳ４は、ストレージサーバＳＳＶｐを持たないため、図２３に示す処理は、図１５に示したストレージサーバＳＳＶｐに関する処理（ステップＳ１５８、Ｓ１６０、Ｓ１６２）を含まない。ステップＳ１５２、Ｓ１５４、Ｓ１５６、Ｓ１６４、Ｓ１６６、Ｓ１６８の処理は、図１５と同様である。
【０１６０】
なお、データの書き込み処理は、ストレージサーバＳＳＶｐにデータを書き込まないことを除き、図１２、図１４と同様である。ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによる読み出し処理は、図１７と同様である。
【０１６１】
以上、図２２および図２３に示した実施形態においても、図１から図３に示した実施形態と同様に、アクセス性能を低下させることなく情報処理システムＳＹＳ３の消費電力を削減することができる。また、図４から図１７に示した実施形態と同様に、状態ＳＴが変更される場合にも、ハッシュ関数を変更することなく、データを書き込む磁気ディスク装置Ａを決定することができる。
【０１６２】
さらに、図２２および図２３に示した実施形態では、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの磁気ディスク装置Ａ、Ｂ、Ｃの所定数を除く他の磁気ディスク装置Ａ、Ｂ、Ｃは、スピンダウン状態に設定される。このため、全ての磁気ディスク装置Ｐがスピンアップ状態を維持する磁気ディスク装置群ＭＤｐを含む情報処理システムＳＹＳ２（図４）に比べて、情報処理システムＳＹＳ４の消費電力を削減することができる。
【０１６３】
例えば、図２２および図２３に示した実施形態は、スピンアップ状態に維持される磁気ディスク装置Ａ、Ｂ、Ｃからデータが読み出される場合に、スピンアップおよびスピンダウンの頻度を下げることができ、データを高速に読み出すことができる。したがって、図２２、図２３に示した実施形態は、データが磁気ディスク装置Ａ、Ｂ、Ｃに書き込まれた後に、データの読み出しが集中する情報処理システムＳＹＳ４に適用されることが好ましい。あるいは、読み出し要求の頻度が書き込み要求の頻度に比べて低い情報処理システムＳＹＳ４に適用されることが好ましい。
【０１６４】
図２４は、情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法の別の実施形態を示す。図４から図１７に示す実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
【０１６５】
この実施形態の情報処理システムＳＹＳ５では、ストレージサーバＳＳＶｐに接続される磁気ディスク装置群ＭＤｐは、図４に示す磁気ディスク装置群ＭＤｐより多くの磁気ディスク装置Ｐを含む。特に限定されないが、例えば、磁気ディスク装置群ＭＤｐは、３２台の磁気ディスク装置Ｐ０−Ｐ３１を含む。情報処理システムＳＹＳ５のその他の構成は、図４と同様である。
【０１６６】
例えば、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐを介して、磁気ディスク装置群ＭＤｐの互いに異なる２つの磁気ディスク装置Ｐ（例えば、Ｐ０とＰ６）に、データを冗長に書き込む。フロントエンドサーバＦＥＳＶは、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃにデータを書き込まない。磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃへのデータの書き込みは、ストレージサーバＳＳＶｐにより実行される。
【０１６７】
ストレージサーバＳＳＶｐは、所定の頻度で、データが冗長に書き込まれた２つの磁気ディスク装置Ｐの一方から磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの磁気ディスク装置Ａ、Ｂ、Ｃにデータを転送する。ストレージサーバＳＳＶｐは、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃへのデータの転送後、２つの磁気ディスク装置Ｐの一方に保持されたデータを消去する。
【０１６８】
また、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの各磁気ディスク装置Ａ、Ｂ、Ｃは、ストレージサーバＳＳＶｐからデータが転送される期間に、スピンアップ状態に設定され、データが転送されない期間にスピンダウン状態に設定される。これより、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃにより消費される電力を、図４に示した磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃにより消費される電力よりも削減することができる。ストレージサーバＳＳＶｐによるデータの転送処理の例は、図２７に示し、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによる転送データの受信処理の例は、図２８に示す。
【０１６９】
図２５は、図２４に示したストレージサーバＳＳＶｐ、ＳＳＶａ、ＳＶＶｂ、ＳＶＶｃに接続される磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃの対応付けを示すデバイス表ＤＴＢＬの例を示す。図８と同一または同様の要素については、詳細な説明は省略する。図２５に示すデバイス表ＤＴＢＬは、磁気ディスク装置群ＭＤｐに含まれる磁気ディスク装置Ｐ（すなわち、デバイスＩＤ）の数が、図８に対して多いことを除き、図８と同様である。
【０１７０】
図２６は、図２４に示した磁気ディスク装置群ＭＤｐ、ＭＤａ、ＭＤｂ、ＭＤｃの磁気ディスク装置Ｐ、Ａ、Ｂ、Ｃとハッシュ値との関係を示すハッシュ表ＨＴＢＬの例を示す。図９と同一または同様の要素については、詳細な説明は省略する。
【０１７１】
ハッシュ表ＨＴＢＬにおいて、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃとハッシュ値との関係は、図９と同様である。すなわち、磁気ディスク装置群ＭＤａでは、データの書き込み先は、ハッシュ値の上位２ビットに応じて４個のデバイスＩＤ（ｄｅｖＨａ０、ｄｅｖＨａ１、ｄｅｖＨａ２、ｄｅｖＨａ３）のいずれかに決定される。同様に、磁気ディスク装置群ＭＤｂ、ＭＤｃにおいて、ハッシュ値の上位２ビットに応じて、４個のデバイスＩＤのいずれかに決定される。
【０１７２】
一方、磁気ディスク装置群ＭＤｐは、さらに２つの磁気ディスク装置群ＭＤｐ１、ＭＤｐ２に分類され、３２通りのハッシュ値の各々に、２つのデバイスＩＤ（例えば、ｄｅｖＰ０とｄｅｖＰ６）が割り当てられる。なお、磁気ディスク装置群ＭＤｐ１、ＭＤｐ２に割り当てられるデバイスＩＤは互いに重複する。例えば、デバイスＩＤの”ｄｅｖＰ０”は、磁気ディスク装置群ＭＤｐ１のハッシュ値”００ｈ”と、磁気ディスク装置群ＭＤｐ２のハッシュ値”１Ｅｈ”とに割り当てられる。しかし、各ハッシュ値に割り当てられる磁気ディスク装置群ＭＤｐ１、ＭＤｐ２のデバイスＩＤは、互いに異なる。
【０１７３】
例えば、フロントエンドサーバＦＥＳＶは、１２８ビットのハッシュ値の上位５ビット（００ｈ−１Ｆｈ）に応じて、３２個の磁気ディスク装置Ｐ０−Ｐ３１のいずれか２つにデータを書き込む。ハッシュ値は、図１２で説明したように、ＵＲＩ中の”／ｆｏｏ／ｂａｒ／ｂｕｚ”をハッシュ関数に入力することで得られる。
【０１７４】
なお、フロントエンドサーバＦＥＳＶによるデータの書き込み処理の例は、図１２に示したステップＳ１０８の処理を除き、図１２と同様である。この実施形態のステップＳ１０８では、フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶｐに書き込み要求を送信し、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに書き込み要求を送信しない。ストレージサーバＳＳＶｐによるデータの書き込み処理の例は、図１３と同様である。
【０１７５】
図２７は、図２４に示したストレージサーバＳＳＶｐによるデータの転送処理の例を示す。図２７に示す処理は、ストレージサーバＳＳＶｐがデータの転送制御プログラムを実行することにより実現される。ストレージサーバＳＳＶｐは、所定の時刻（例えば、毎日午前０時）が到来する毎に図２７に示すデータの転送処理を実行する。なお、図２７に示すデータの転送処理が開始される前、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの磁気ディスク装置Ａ、Ｂ、Ｃは、スピンダウン状態に維持される。
【０１７６】
所定の時刻が到来すると、ステップＳ２６２において、ストレージサーバＳＳＶｐは、現在の状態に割り当てられた磁気ディスク装置Ａ、Ｂ、Ｃをウェイクアップするウェイクアップ要求をストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに送信する。ウェイクアップ要求に応答するストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによるウェイクアップ処理の例は、図２８に示す。
【０１７７】
次に、ステップＳ２６４において、ストレージサーバＳＳＶｐは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃからウェイクアップ処理が完了したことを示すウェイクアップ完了通知の受信を待つ。ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々からのウェイクアップ完了通知を受けた場合、処理はステップＳ２６６に移行する。
【０１７８】
ステップＳ２６６において、ストレージサーバＳＳＶｐは、例えば、図２６に示したハッシュ表ＨＴＢＬからハッシュ値（上位ビット）の１つを選択し、磁気ディスク装置群ＭＤｐ２において、選択したハッシュ値に割り当てられた磁気ディスク装置Ｐを選択する。例えば、ハッシュ値”００ｈ”では、デバイスＩＤ（ｄｅｖＰ６）が割り当てられた磁気ディスク装置Ｐ６が選択される。
【０１７９】
次に、ステップＳ２６８において、ストレージサーバＳＳＶｐは、選択した磁気ディスク装置Ｐに保持された転送対象のファイルを検索する。図１３に示したデータの書き込み処理では、データは、フルビットのハッシュ値をファイル名として磁気ディスク装置Ｐに書き込まれる。このため、ストレージサーバＳＳＶｐは、上位５ビットが”００ｈ”であるファイル名を検索することで、転送対象のファイルを見つけることができる。
【０１８０】
次に、ステップＳ２７０において、ストレージサーバＳＳＶｐは、転送対象のファイルがあるか否かを判定する。転送対象のファイルがある場合、処理はステップＳ２７２に移行され、転送対象のファイルがない場合、処理はステップＳ２８２に移行される。
【０１８１】
ステップＳ２７２において、ストレージサーバＳＳＶｐは、図２６に示したハッシュ表ＨＴＢＬを検索し、選択したハッシュ値の上位２ビットが割り当てられた磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃのデバイスＩＤを求める。例えば、選択したハッシュ値が”００ｈ”である場合、デバイスＩＤとして”ｄｅｖＨａ０”、”ｄｅｖＨｂ０”、”ｄｅｖＨｃ０”が求められる。例えば、選択したハッシュ値が”１Ａｈ”である場合、デバイスＩＤとして”ｄｅｖＨａ２”、”ｄｅｖＨｂ２”、”ｄｅｖＨｃ２”が求められる。
【０１８２】
次に、ステップＳ２７４において、ストレージサーバＳＳＶｐは、図２５に示したデバイス表ＤＴＢＬを検索し、ステップＳ２７２で求めたデバイスＩＤに対応するＩＰアドレスを求める。すなわち、ストレージサーバＳＳＶｐは、デバイスＩＤからデータを転送するストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃを求める。
【０１８３】
次に、ステップＳ２７６において、ストレージサーバＳＳＶｐは、求めたＩＰアドレスのそれぞれに対して転送するデータ、データを転送するデバイスＩＤおよびファイル名（フルビットのハッシュ値）を送信する。すなわち、ストレージサーバＳＳＶｐは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのそれぞれにデータの転送要求を出力する。転送要求を受けたストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの動作の例は、図２８に示す。
【０１８４】
次に、ステップＳ２７８において、ストレージサーバＳＳＶｐは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃからデータの転送が完了したことを示す転送完了通知の受信を待つ。ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々からの転送完了通知を受けた場合、処理はステップＳ２８０に移行する。
【０１８５】
ステップＳ２８０において、ストレージサーバＳＳＶｐは、磁気ディスク装置群ＭＤｐ２における選択したデバイスＩＤが割り当てられた磁気ディスク装置Ｐに保持されたファイル（すなわち、データ）のうち、転送したファイルを削除する。ステップＳ２８０の後、処理はステップＳ２８２に移行される。
【０１８６】
ステップＳ２８２において、ストレージサーバＳＳＶｐは、図２６に示したハッシュ表ＨＴＢＬを参照し、磁気ディスク装置群ＭＤｐ２に割り当てられた全てのデバイスＩＤを選択したか否かを判定する。すなわち、ストレージサーバＳＳＶｐは、磁気ディスク装置群ＭＤｐ２に割り当てられた磁気ディスク装置Ｐに保持されたデータを、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに転送したか否かを判定する。磁気ディスク装置群ＭＤｐ２に割り当てられた全てのデバイスＩＤが選択済みの場合、処理はステップＳ２８４に移行される。磁気ディスク装置群ＭＤｐ２に割り当てられた未選択のデバイスＩＤがある場合、処理はステップＳ２６６に戻り、未選択のデバイスＩＤに割り当てられた磁気ディスク装置Ｐに保持されたデータがストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに転送される。
【０１８７】
ステップＳ２８４において、ストレージサーバＳＳＶｐは、現在の状態（ＳＴ０、ＳＴ１、ＳＴ２のいずれか）に割り当てられた磁気ディスク装置Ａ、Ｂ、Ｃをスリープするスリープ要求をストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに送信する。スリープ要求に応答して実行されるストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによるスリープ処理の例は、図２８に示す。
【０１８８】
次に、ステップＳ２８６において、ストレージサーバＳＳＶｐは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃからスリープ処理が完了したことを示すスリープ完了通知の受信を待つ。ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々からのスリープ完了通知を受けた場合、ストレージサーバＳＳＶｐによるデータの転送処理は終了する。
【０１８９】
図２８は、図２４に示したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによる転送データの書き込み処理の例を示す。図２８に示す処理は、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々がデータの転送制御プログラムを、互いに独立に実行することにより実現される。なお、この例では、ストレージサーバＳＳＶａが実行するデータの転送処理の例について説明する。
【０１９０】
まず、ストレージサーバＳＳＶｐからウェイクアップ要求を受信した場合、ステップＳ３７２において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａをスピンアップ状態に設定する。次に、ステップＳ３７４において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａをマウントする。
【０１９１】
次に、ステップＳ３７６において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａのウェイクアップ処理が完了したことを示すウェイクアップ完了通知をストレージサーバＳＳＶｐに送信し、ウェイクアップ処理を終了する。
【０１９２】
一方、ストレージサーバＳＳＶｐから転送データを受信した場合、ステップＳ３８２において、ストレージサーバＳＳＶａは、図２５に示したデバイス表を参照し、ストレージサーバＳＳＶｐから受信したデバイスＩＤおよび現在の状態に対応するマウントポイントを取得する。
【０１９３】
次に、ステップＳ３８４において、ストレージサーバＳＳＶａは、取得したマウントポイントにマウントされた磁気ディスク装置ＡにストレージサーバＳＳＶｐから受信したデータを書き込む。この際、ストレージサーバＳＳＶａは、フルビットのハッシュ値をファイル名として、磁気ディスク装置Ａにデータを書き込む。
【０１９４】
次に、ステップＳ３８６において、ストレージサーバＳＳＶａは、データの書き込みにより、現在の状態に割り当てられた磁気ディスク装置Ａに保持されたデータの量が所定値を超えたか否かを判定する。すなわち、磁気ディスク装置Ａの空き容量が不足したか否かが判定される。空き容量が不足した場合、状態を変更するために、処理はステップＳ３８８に移行され、空き容量が不足していない場合、処理はステップＳ３９０に移行される。
【０１９５】
ステップＳ３８８において、ストレージサーバＳＳＶａは、状態を変更する通知をフロントエンドサーバＦＥＳＶに送信する。状態を変更する通知を受信したフロントエンドサーバＦＥＳＶは、図１２に示したステップＳ１２０、Ｓ１２２の処理を実行する。さらに、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、図１４に示したステップＳ３２２、Ｓ３２４、Ｓ３２６、Ｓ３２８、Ｓ３３０、Ｓ３３２の処理を実行する。
【０１９６】
なお、ステップＳ３８８において、ストレージサーバＳＳＶａは、状態を変更する通知をストレージサーバＳＳＶｐに送信し、図１２に示したステップＳ１２０、Ｓ１２２の処理は、ストレージサーバＳＳＶｐにより実行されてもよい。この場合、図１４に示したステップＳ３３２において、状態変更完了通知は、フロントエンドサーバＦＥＳＶでなく、ストレージサーバＳＳＶｐに送信される。
【０１９７】
次に、ステップＳ３９０において、ストレージサーバＳＳＶａは、転送データの書き込みが完了したことを示す転送完了通知をストレージサーバＳＳＶｐに送信し、転送データの書き込み処理を終了する。
【０１９８】
ストレージサーバＳＳＶｐからスリープ要求を受信した場合、ステップＳ３９２において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａをアンマウントする。次に、ステップＳ３９４において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａをスピンダウン状態に設定する。次に、ステップＳ３９６において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａのスリープ処理が完了したことを示すスリープ完了通知をストレージサーバＳＳＶｐに送信し、スリープ処理を終了する。
【０１９９】
図２９は、図２４に示したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃによるデータの読み出し処理の例を示す。図１７と同一または同様の処理については、詳細な説明は省略する。ステップＳ３４２−Ｓ３６６の処理は、図１７に示す処理と同様である。図２９では、図１７に示したステップＳ３４２の前にステップＳ３４０、Ｓ３４１が追加され、図１７に示したステップＳ３６０の肯定判定（Ｙｅｓ）の後にステップＳ３６８、Ｓ３６９が追加される。
【０２００】
図２９に示す処理は、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの各々がデータの読み出し制御プログラムを、互いに独立に実行することにより実現される。なお、この例では、ストレージサーバＳＳＶａが読み出し要求を受ける例について説明する。
【０２０１】
ステップＳ３４０において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａをスピンアップ状態に設定する。次に、ステップＳ３４１において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａをマウントする。この後、ストレージサーバＳＳＶａは、図１７と同様に、ステップＳ３４２以降の処理を実行する。
【０２０２】
一方、ステップＳ３６０において、状態値が変数ｉｄｘと等しい場合、現在の状態に割り当てられた磁気ディスク装置Ａ以外にスピンアップ状態に設定された磁気ディスク装置Ａは存在しないと判定され、処理はステップＳ３６８に移行される。
【０２０３】
ステップＳ３６８において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａをアンマウントする。次に、ステップＳ３６９において、ストレージサーバＳＳＶａは、現在の状態に対応する磁気ディスク装置Ａをスピンダウン状態に設定し、読み出し処理を終了する。これにより、磁気ディスク装置群ＭＤａの全ての磁気ディスク装置Ａは、スリープ状態（すなわち、スピンダウン状態）に設定され、現在の状態に対応する磁気ディスク装置Ａがスピンアップ状態に維持される場合に比べて、消費電力が削減される。
【０２０４】
以上、図２４から図２９に示した実施形態においても、図１から図３に示した実施形態と同様に、アクセス性能を低下させることなく情報処理システムＳＹＳ５の消費電力を削減することができる。また、図４から図１７に示した実施形態と同様に、状態ＳＴが変更される場合にも、ハッシュ関数を変更することなく、データを書き込む磁気ディスク装置Ａを決定することができる。
【０２０５】
さらに、図２４から図２９に示した実施形態では、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃは、データが書き込まれない期間にスピンダウン状態に設定される。このため、磁気ディスク装置群ＭＤａ、ＭＤｂ、ＭＤｃの所定数の磁気ディスク装置Ａ、Ｂ、Ｃがスピンアップ状態に設定される場合に比べて、情報処理システムＳＹＳ５の消費電力を削減することができる。
【０２０６】
また、磁気ディスク装置Ａ、Ｂ、Ｃに転送されたデータは、磁気ディスク装置Ｐから削除されるため、転送処理で一度転送されたデータは、次の転送処理では磁気ディスク装置Ａ、Ｂ、Ｃに転送されない。したがって、データを重複して磁気ディスク装置Ａ、Ｂ、Ｃに転送する場合に比べて、転送処理に掛かる時間を削減することができ、転送処理の負荷を削減することができる。
【０２０７】
以上の実施形態において説明した発明を整理して、付記として開示する。
（付記１）
モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置と、前記第１の情報処理装置と前記第２の情報処理装置とを管理する管理装置を有する情報処理システムにおいて、
データを書き込む場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかと、前記第２の磁気ディスク装置群に含まれる前記複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力し、
データを読み出す場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力することを特徴とする情報処理システム。
（付記２）
前記管理装置は、前記第２の磁気ディスク装置のいずれかに保持されたデータの量が所定量を超えた場合、前記第２の情報処理装置に前記第２の磁気ディスク装置のモータの回転を停止させるとともに、前記第３の磁気ディスク装置の所定数のモータを回転させ、
データをさらに書き込む場合、前記管理装置が、前記第１の磁気ディスク装置のいずれかと、モータを回転させた前記第３の磁気ディスク装置のいずれかとに対する書き込み要求を出力すること
を特徴とする付記１記載の情報処理システム。
（付記３）
前記情報処理システムは、複数の前記第２の情報処理装置を有し、
前記管理装置は、複数の前記第２の情報処理装置に接続された前記第２の磁気ディスク装置のいずれかに保持されたデータの量が所定量を超えた場合、複数の前記第２の情報処理装置に前記第２の磁気ディスク装置のモータの回転を停止させるとともに、前記第３の磁気ディスク装置の所定数のモータを回転させること
を特徴とする付記２記載の情報処理システム。
（付記４）
前記管理装置は、前記読み出し要求に応答して前記第１の磁気ディスク装置からデータを読み出せない場合、前記第２の磁気ディスク装置のいずれか、またはモータを回転させた前記第３の磁気ディスク装置のいずれかに対して読み出し要求を出力し、
モータの回転が停止した前記第２の磁気ディスク装置からデータを読み出す場合、前記管理装置は、前記第２の情報処理装置に前記第２の磁気ディスク装置のモータを回転させ、前記第２の磁気ディスク装置からデータを読み出した後に、前記第２の情報処理装置に前記第２の磁気ディスク装置のモータの回転を停止させること
を特徴とする付記２記載の情報処理システム。
（付記５）
前記情報処理システムはさらに、
前記管理装置が管理する接続情報に基づいて、前記第１の情報処理装置と前記第１の磁気ディスク装置とを接続し、前記第２の情報処理装置と前記第２の磁気ディスク装置および前記第３の磁気ディスク装置とを接続するスイッチ装置と、
前記スイッチ装置に接続される複数の第４の磁気ディスク装置とを有し、
モータを回転させた前記第３の磁気ディスク装置のいずれかに保持されたデータの量が所定量を超えた場合、前記管理装置は、前記第２の情報処理装置に前記第３の磁気ディスク装置のモータの回転を停止させ、前記スイッチ装置を介して前記第４の磁気ディスク装置を前記第２の情報処理装置に接続し、前記第２の情報処理装置に前記第４の磁気ディスク装置のモータを回転させ、
データをさらに書き込む場合、前記第１の磁気ディスク装置のいずれかと、モータを回転させた前記第４の磁気ディスク装置のいずれかとに対する書き込み要求を出力すること
を特徴とする付記２記載の情報処理システム。
（付記６）
前記管理装置は、ハッシュ関数を用いてデータを書き込む前記第２の磁気ディスク装置を決定し、前記第２の磁気ディスク装置の各々と、前記第３の磁気ディスク装置の各々とは、共通のハッシュ空間に割り当てられること
を特徴とする付記１ないし付記５のいずれか１項記載の情報処理システム。
（付記７）
前記管理装置は、前記ハッシュ関数を用いて、データを前記第１の磁気ディスク装置のいずれに書き込むかを決め、前記第１の磁気ディスク装置が割り当てられるハッシュ空間の数は、前記第２の磁気ディスク装置が割り当てられるハッシュ空間の数より多いこと
を特徴とする付記６記載の情報処理システム。
（付記８）
モータの回転状態を維持した複数の第１の磁気ディスク装置とモータの回転を停止させた複数の第２の磁気ディスク装置とを含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第３の磁気ディスク装置とモータの回転を停止させた複数の第４の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置と、前記第１の情報処理装置および前記第２の情報処理装置を管理する管理装置を有する情報処理システムにおいて、
データを書き込む場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれるモータの回転状態を維持した前記複数の第１の磁気ディスク装置のいずれかと、前記第２の磁気ディスク装置群に含まれるモータの回転状態を維持した前記複数の第３の磁気ディスク装置のいずれかとに対する書き込み要求を出力し、
データを読み出す場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置と前記第２の磁気ディスク装置群に含まれる前記複数の第３の磁気ディスク装置のいずれかに対する読み出し要求を出力すること
を特徴とする情報処理システム。
（付記９）
前記管理装置は、前記第１の磁気ディスク装置および前記第３の磁気ディスク装置のいずれかに保持されたデータの量が所定量を超えた場合、前記第１の情報処理装置に前記第１の磁気ディスク装置のモータの回転を停止させ、前記第２の磁気ディスク装置の所定数のモータを回転させ、前記第２の情報処理装置に前記第３の磁気ディスク装置のモータの回転を停止させ、前記第４の磁気ディスク装置の所定数のモータを回転させ、
データをさらに書き込む場合、前記管理装置が、モータを回転させた前記第２の磁気ディスク装置のいずれかと、モータを回転させた前記第４の磁気ディスク装置のいずれかとに対する書き込み要求を出力すること
を特徴とする付記８記載の情報処理システム。
（付記１０）
モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転を停止させた複数の第２の磁気ディスク装置を含む第２の磁気ディスク装置群が接続された第２の情報処理装置と、前記第１の情報処理装置と前記第２の情報処理装置とを管理する管理装置を有する情報処理システムにおいて、
データを書き込む場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれか２つに対する書き込み要求を出力し、
データを読み出す場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力し、
所定の時間間隔で、第１の情報処理装置が、第２の情報処理装置に前記第２の磁気ディスク装置群に含まれる前記第２の磁気ディスク装置のモータを回転させ、前記第１の磁気ディスク装置のいずれか２つのうちの一方に書き込まれたデータを前記第２の磁気ディスク装置に転送する転送要求を出力し、データが前記第２の磁気ディスク装置に転送された後、第２の情報処理装置に前記第２の磁気ディスク装置のモータの回転を停止させること
を特徴とする情報処理システム。
（付記１１）
前記第１の情報処理装置は、前記第２の磁気ディスク装置にデータを転送した後、前記第１の磁気ディスク装置のいずれか２つのうちの一方に書き込まれたデータを削除すること
を特徴とする付記１０記載の情報処理システム。
（付記１２）
モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置とを管理する管理装置の制御プログラムにおいて、
データを書き込む場合、前記管理装置に、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかと、前記第２の磁気ディスク装置群に含まれる前記複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力させ、
データを読み出す場合、前記管理装置に、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力させることを特徴とする管理装置の制御プログラム。
（付記１３）
モータの回転状態を維持した複数の第１の磁気ディスク装置を含む第１の磁気ディスク装置群が接続された第１の情報処理装置と、モータの回転状態を維持した複数の第２の磁気ディスク装置とモータの回転を停止させた複数の第３の磁気ディスク装置とを含む第２の磁気ディスク装置群が接続された第２の情報処理装置と、前記第１の情報処理装置と前記第２の情報処理装置とを管理する管理装置を有する情報処理システムの制御方法において、
データを書き込む場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかと、前記第２の磁気ディスク装置群に含まれる前記複数の第２の磁気ディスク装置のいずれかとに対する書き込み要求を出力し、
データを読み出す場合、前記管理装置が、前記第１の磁気ディスク装置群に含まれる前記複数の第１の磁気ディスク装置のいずれかに対する読み出し要求を出力することを特徴とする情報処理システムの制御方法。
【０２０８】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【０２０９】
１０、２０…情報処理装置；３０…管理装置；４１、４２、４３…ＣＰＵ；５１、５２、５３…メモリ；Ａ０−Ａ１１…磁気ディスク装置；Ｂ０−Ｂ１１…磁気ディスク装置；Ｃ０−Ｃ１１…磁気ディスク装置；ＤＳＷ…スイッチ；ＤＴＢＬ…デバイス表；ＦＥＳＶ…フロントエンドサーバ；Ｈａ０、Ｈａ１、Ｈａ２、Ｈａ３…ハッシュ空間；ＨＴＢＬ…ハッシュ表；ＭＤａ、ＭＤｂ、ＭＤｃ、ＭＤｐ…磁気ディスク装置群；ＮＳＷ…ネットワークスイッチ；Ｐ０−Ｐ３１…磁気ディスク装置；ＳＤ…スピンダウン状態；ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃ、ＳＳＶｐ…ストレージサーバ；ＳＴ０−ＳＴ３…状態；ＳＵ…スピンアップ状態；ＳＹＳ１、ＳＹＳ２、ＳＹＳ３、ＳＹＳ４、ＳＹＳ５…情報処理システム；ＴＭ…端末
【図１】
2015076060.tif 000003
【図２】
2015076060.tif 000004
【図３】
2015076060.tif 000005
【図４】
2015076060.tif 000006
【図５】
2015076060.tif 000007
【図６】
2015076060.tif 000008
【図７】
2015076060.tif 000009
【図８】
2015076060.tif 000010
【図９】
2015076060.tif 000011
【図１０】
2015076060.tif 000012
【図１１】
2015076060.tif 000013
【図１２】
2015076060.tif 000014
【図１３】
2015076060.tif 000015
【図１４】
2015076060.tif 000016
【図１５】
2015076060.tif 000017
【図１６】
2015076060.tif 000018
【図１７】
2015076060.tif 000019
【図１８】
2015076060.tif 000020
【図１９】
2015076060.tif 000021
【図２０】
2015076060.tif 000022
【図２１】
2015076060.tif 000023
【図２２】
2015076060.tif 000024
【図２３】
2015076060.tif 000025
【図２４】
2015076060.tif 000026
【図２５】
2015076060.tif 000027
【図２６】
2015076060.tif 000028
【図２７】
2015076060.tif 000029
【図２８】
2015076060.tif 000030
【図２９】
2015076060.tif 000031