(57)【要約】【課題】高性能と低消費電力を両立する階層ストレージシステムを提供する。【解決手段】計算機管理サーバ１８と接続し、ファイル格納用第一ボリューム５１を構成する第一階層ストレージ装置１１と、ファイル格納用第二ボリューム５２を構成する第二階層ストレージ装置１２と、ストレージ管理サーバ１９を含むストレージシステム２において、サーバ１８は、計算機１４上で逐次実行されるジョブ情報と、実行中及び実行を待つジョブキュー情報を有し、サーバ１９は、これらの情報を収集・解析して、該ジョブがアクセスするボリューム５２を特定し、ジョブキュー情報から実行を待つ各ジョブが実行開始されるまでの平均待ち時間、及びボリューム５２を構成するディスク装置を稼働し、ボリューム５２をボリューム５１にコピーするのに要する閾値時間を求める。ジョブが投入された時点で、平均待ち時間が閾値時間より短いとき、該ジョブの実行を該閾値時間分遅らせる。【選択図】  図１
2010231636.tif 000002
【特許請求の範囲】
【請求項１】
１以上の第一のボリュームを構成する１以上の第一のハードディスク装置を含む第一のストレージ装置と、
１以上の第二のボリュームを構成する１以上の第二のハードディスク装置を含む第二のストレージ装置と、
計算機上で逐次実行されるジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記第一のボリューム及び前記第二のボリュームを管理するストレージ管理サーバと、
が通信可能に接続しているストレージシステムにおいて、
前記ストレージ管理サーバは、
少なくとも、ジョブのキュー状態及びジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記第二のボリュームの識別情報を、ジョブごとに記憶している記憶部を有し、
前記ジョブがキューに投入される際の平均投入間隔および前記キューに投入されたジョブが実行される際の平均実行頻度に基づいて前記平均待ち時間を算出する制御と、
前記第二のハードディスク装置を、前記ファイルの入出力処理が可能になる程度に稼働状態にし、前記第二のボリュームに格納される当該ファイルを前記第一のボリュームに移動するまでに要する時間を前記閾値時間として算出する制御と、
前記平均待ち時間と前記閾値時間とを比較し、その比較結果に基づいて、前記ジョブを実行するタイミング及び当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を稼働状態または非稼働状態にするタイミングを調整し、当該ファイルが前記第一のボリュームに格納された状態で当該ジョブを前記計算機上で実行させる制御と、を実行する制御部を有する
ことを特徴とするストレージシステム。
【請求項２】
前記制御部は、
前記平均待ち時間が前記閾値時間以下であるとき、ジョブが投入された時点から少なくとも前記閾値時間だけ、当該ジョブの実行を遅らせる制御と、
当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームに移動する制御と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする制御と、を実行する
ことを特徴とする請求項１に記載のストレージシステム。
【請求項３】
前記制御部は、
前記平均待ち時間が前記閾値時間より大きいとき、遅くとも前記平均待ち時間が前記閾値時間と略同じ時間になるまでには、当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームに移動する制御と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする制御と、を実行する
ことを特徴とする請求項１に記載のストレージシステム。
【請求項４】
前記制御部は、
前記キュー状態を参照して、当該ジョブの実行が終了したことを確認すると、当該ファイルが元々格納されていた前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームから当該第二のボリュームに移動する制御と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする制御と、を実行する
ことを特徴とする請求項２または請求項３に記載のストレージシステム。
【請求項５】
計算機上で逐次実行されるジョブを管理する計算機管理サーバが通信可能に接続され、
前記計算機管理サーバは、
前記ストレージ管理サーバから、前記ファイルの前記移動が完了した通知を受信するまで、当該ジョブの実行を遅らせる制御を実行する計算機管理サーバ用制御部を有する
ことを特徴とする請求項２または請求項３に記載のストレージシステム。
【請求項６】
前記計算機からのアクセスがなされないファイルはすべて、前記第二のボリュームに格納されており、
当該第二のボリュームを構成する前記第二のハードディスク装置の非稼働状態は、前記第二のハードディスク装置の電源を切断している、もしくは前記第二のハードディスク装置のディスクの回転を停止している、または予め定められた回転速度以下で回転させている状態である
ことを特徴とする請求項１から請求項４のいずれかに記載のストレージシステム。
【請求項７】
前記計算機と前記第一のストレージ装置とを介して通信可能に接続しているファイルサーバが通信可能に接続しており、
前記第一のボリューム及び前記第二のボリュームは、前記ファイルサーバが管理するディレクトリにマウントされており、
前記記憶部は、前記ディレクトリをジョブごとに記憶している
ことを特徴とする請求項１から請求項４のいずれかに記載のストレージシステム。
【請求項８】
１以上の第一のボリュームを構成する１以上の第一のハードディスク装置を含む第一のストレージ装置と、
１以上の第二のボリュームを構成する１以上の第二のハードディスク装置を含む第二のストレージ装置と、
計算機上で逐次実行されるジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記第一のボリューム及び前記第二のボリュームを管理するストレージ管理サーバと、
が通信可能に接続しているストレージシステムにおいて、
前記ストレージ管理サーバは、
少なくとも、ジョブのキュー状態及びジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記第二のボリュームの識別情報を、ジョブごとに記憶している記憶部を有し、
前記記憶部を参照し、前記キュー状態が待ち状態のジョブ及び実行中のジョブの数の和を求めるとともに、前記キューに投入されたジョブが実行される際の平均実行頻度に基づいて前記ジョブが実行される際の平均実行時間を算出する制御と、
前記第二のハードディスク装置を、前記ファイルの入出力処理が可能になる程度に稼働状態にし、前記第二のボリュームに格納される当該ファイルを前記第一のボリュームに移動するまでに要する時間を前記閾値時間として算出する制御と、
前記移動を終了できない確率であり、前記平均実行時間、前記平均投入間隔、及び前記閾値時間に基づいて算出される失敗確率が、前記記憶部に記憶される値以下になるように、前記和の閾値数を決定する制御と、
前記和と前記閾値数とを比較し、その比較結果に基づいて、前記ジョブを実行するタイミング及び当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を稼働状態または非稼働状態にするタイミングを調整し、当該ファイルが前記第一のボリュームに格納された状態で当該ジョブを前記計算機上で実行させる制御と、を実行する制御部を有する
ことを特徴とするストレージシステム。
【請求項９】
前記制御部は、
前記和が前記閾値数以下であるとき、ジョブが投入された時点から少なくとも前記閾値時間だけ、当該ジョブの実行を遅らせる制御と、
当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームに移動する制御と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする制御と、を実行する
ことを特徴とする請求項８に記載のストレージシステム。
【請求項１０】
前記制御部は、
前記和が前記閾値数より大きいとき、遅くとも前記和が前記閾値数と略同じ数になるまでには、当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームに移動する制御と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする制御と、を実行する
ことを特徴とする請求項８に記載のストレージシステム。
【請求項１１】
１以上のファイル格納用第一ボリュームを構成する１以上の高速ハードディスクを含む第一階層ストレージ装置と、
１以上のファイル格納用第二ボリュームを構成する１以上の大容量ハードディスクを含む第二階層ストレージ装置と、
計算機上で逐次実行されるジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記ファイル格納用第一ボリューム及び前記ファイル格納用第二ボリュームを管理するストレージ管理サーバと、
が通信可能に接続しているストレージシステムにおいて、
前記ストレージ管理サーバは、
少なくとも、ジョブのＪＯＢ状態及びジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記ファイル格納用第二ボリュームの識別情報を、ジョブごとに記憶しているメモリを有し、
前記ジョブがキューに投入される際の平均投入間隔および前記キューに投入されたジョブが実行される際の平均実行頻度に基づいて前記平均待ち時間を算出する制御と、
前記大容量ハードディスクを、前記ファイルの入出力処理が可能になる程度に稼働状態にし、前記ファイル格納用第二ボリュームに格納される当該ファイルを前記ファイル格納用第一ボリュームにステージングするまでに要する時間を前記閾値時間として算出する制御と、
前記平均待ち時間と前記閾値時間とを比較し、その比較結果に基づいて、前記ジョブを実行するタイミング及び当該ファイルが格納される前記ファイル格納用第二ボリュームを構成する前記大容量ハードディスクを稼働状態または非稼働状態にするタイミングを調整し、当該ファイルが前記ファイル格納用第一ボリュームに格納された状態で当該ジョブを前記計算機上で実行させる制御と、を実行するプロセッサを有し、
前記プロセッサは、
前記平均待ち時間が前記閾値時間以下であるとき、ジョブが投入された時点から少なくとも前記閾値時間だけ、当該ジョブの実行を遅らせる制御と、
当該ファイルが格納される前記ファイル格納用第二ボリュームを構成する前記大容量ハードディスクを、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記ファイル格納用第一ボリュームにステージングする制御と、
前記ステージングが終了した後、当該大容量ハードディスクを非稼働状態にする制御と、を実行し、
前記平均待ち時間が前記閾値時間より大きいとき、遅くとも前記平均待ち時間が前記閾値時間と略同じ時間になるまでには、当該ファイルが格納される前記ファイル格納用第二ボリュームを構成する前記大容量ハードディスクを、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記ファイル格納用第一ボリュームにステージングする制御と、
前記ステージングが終了した後、当該大容量ハードディスクを非稼働状態にする制御と、を実行し、
前記ＪＯＢ状態を参照して、当該ジョブの実行が終了したことを確認すると、当該ファイルが元々格納されていた前記ファイル格納用第二ボリュームを構成する前記大容量ハードディスクを、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記ファイル格納用第一ボリュームから当該ファイル格納用第二ボリュームにデステージングする制御と、
前記デステージングが終了した後、当該大容量ハードディスクを非稼働状態にする制御と、を実行する
ことを特徴とするストレージシステム。
【請求項１２】
１以上の第一のボリュームを構成する１以上の第一のハードディスク装置を含む第一のストレージ装置と、
１以上の第二のボリュームを構成する１以上の第二のハードディスク装置を含む第二のストレージ装置と、
計算機上で逐次実行されるジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記第一のボリューム及び前記第二のボリュームを管理するストレージ管理サーバと、
が通信可能に接続しているストレージシステムにおけるストレージ管理方法において、
前記ストレージ管理サーバの記憶部は、
少なくとも、ジョブのキュー状態及びジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記第二のボリュームの識別情報を、ジョブごとに記憶しており、
前記ストレージ管理サーバの制御部は、
前記ジョブがキューに投入される際の平均投入間隔および前記キューに投入されたジョブが実行される際の平均実行頻度に基づいて前記平均待ち時間を算出する処理と、
前記第二のハードディスク装置を、前記ファイルの入出力処理が可能になる程度に稼働状態にし、前記第二のボリュームに格納される当該ファイルを前記第一のボリュームに移動するまでに要する時間を前記閾値時間として算出する処理と、
前記平均待ち時間と前記閾値時間とを比較し、その比較結果に基づいて、前記ジョブを実行するタイミング及び当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を稼働状態または非稼働状態にするタイミングを調整し、当該ファイルが前記第一のボリュームに格納された状態で当該ジョブを前記計算機上で実行させる処理と、を実行する
ことを特徴とするストレージ管理方法。
【請求項１３】
前記制御部は、
前記平均待ち時間が前記閾値時間以下であるとき、ジョブが投入された時点から少なくとも前記閾値時間だけ、当該ジョブの実行を遅らせる処理と、
当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームに移動する処理と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする処理と、を実行する
ことを特徴とする請求項１２に記載のストレージ管理方法。
【請求項１４】
前記制御部は、
前記平均待ち時間が前記閾値時間より大きいとき、遅くとも前記平均待ち時間が前記閾値時間と略同じ時間になるまでには、当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームに移動する処理と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする処理と、を実行する
ことを特徴とする請求項１２に記載のストレージ管理方法。
【請求項１５】
前記制御部は、
前記キュー状態を参照して、当該ジョブの実行が終了したことを確認すると、当該ファイルが元々格納されていた前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームから当該第二のボリュームに移動する処理と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする処理と、を実行する
ことを特徴とする請求項１３または請求項１４に記載のストレージ管理方法。
【請求項１６】
計算機上で逐次実行されるジョブを管理する計算機管理サーバが通信可能に接続され、
前記計算機管理サーバの計算機管理サーバ用制御部は、
前記ストレージ管理サーバから、前記ファイルの前記移動が完了した通知を受信するまで、当該ジョブの実行を遅らせる処理を実行する
ことを特徴とする請求項１３または請求項１４に記載のストレージ管理方法。
【請求項１７】
前記計算機からのアクセスがなされないファイルはすべて、前記第二のボリュームに格納されており、
当該第二のボリュームを構成する前記第二のハードディスク装置の非稼働状態は、前記第二のハードディスク装置の電源を切断している、もしくは前記第二のハードディスク装置のディスクの回転を停止している、または予め定められた回転速度以下で回転させている状態である
ことを特徴とする請求項１２から請求項１５のいずれかに記載のストレージ管理方法。
【請求項１８】
１以上の第一のボリュームを構成する１以上の第一のハードディスク装置を含む第一のストレージ装置と、
１以上の第二のボリュームを構成する１以上の第二のハードディスク装置を含む第二のストレージ装置と、
計算機上で逐次実行されるジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記第一のボリューム及び前記第二のボリュームを管理するストレージ管理サーバと、
が通信可能に接続しているストレージシステムにおけるストレージ管理方法において、
前記ストレージ管理サーバの記憶部は、
少なくとも、ジョブのキュー状態及びジョブを実行するときに前記計算機からアクセスされるファイルが格納される前記第二のボリュームの識別情報を、ジョブごとに記憶しており、
前記ストレージ管理サーバの制御部は、
前記記憶部を参照し、前記キュー状態が待ち状態のジョブ及び実行中のジョブの数の和を求めるとともに、前記キューに投入されたジョブが実行される際平均実行頻度に基づいて前記ジョブが実行される際の平均実行時間を算出する処理と、
前記第二のハードディスク装置を、前記ファイルの入出力処理が可能になる程度に稼働状態にし、前記第二のボリュームに格納される当該ファイルを前記第一のボリュームに移動するまでに要する時間を前記閾値時間として算出する処理と、
前記移動を終了できない確率であり、前記平均実行時間、前記平均投入間隔、及び前記閾値時間に基づいて算出される失敗確率が、前記記憶部に記憶される値以下になるように、前記和の閾値数を決定する処理と、
前記和と前記閾値数とを比較し、その比較結果に基づいて、前記ジョブを実行するタイミング及び当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を稼働状態または非稼働状態にするタイミングを調整し、当該ファイルが前記第一のボリュームに格納された状態で当該ジョブを前記計算機上で実行させる処理と、を実行する
ことを特徴とするストレージ管理方法。
【請求項１９】
前記制御部は、
前記和が前記閾値数以下であるとき、ジョブが投入された時点から少なくとも前記閾値時間だけ、当該ジョブの実行を遅らせる処理と、
当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームに移動する処理と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする処理と、を実行する
ことを特徴とする請求項１８に記載のストレージ管理方法。
【請求項２０】
前記制御部は、
前記和が前記閾値数より大きいとき、遅くとも前記和が前記閾値数と略同じ数になるまでには、当該ファイルが格納される前記第二のボリュームを構成する前記第二のハードディスク装置を、当該ファイルの入出力処理が可能になる程度に稼働状態にし、当該ファイルを前記第一のボリュームに移動する処理と、
前記移動が終了した後、当該第二のハードディスク装置を非稼働状態にする処理と、を実行する
ことを特徴とする請求項１８に記載のストレージ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機のデータを格納する記憶装置システム（以下「ストレージシステム」とも言う）に関し、特に複数のディスク装置から構成されるストレージ装置複数台を階層構成とした階層型ストレージシステムに関する。
【背景技術】
【０００２】
近年、データセンターの大規模化に伴う消費エネルギーの急増が問題となっている。その中で、データ量の急激な増大に伴い、ストレージシステムが消費するエネルギーの割合が増大している。特に、オンライントランザクションシステムやＨＰＣ（Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｃｏｍｐｕｔｉｎｇ）システム向けの用途に利用される高性能で、大容量のストレージシステムの消費エネルギーの占める割合が大きくなっている。最近ではデータセンターの約２割から３割の消費エネルギーがストレージシステムで消費されており、データ量の急増に伴い、その割合が今後ますます増えるという報告もあり、ストレージシステムの省電力化が今後の重要な課題の１つになると考えられている。
【０００３】
上記問題を解決する手段として、ストレージシステムに搭載されたハードディスクの電源のオン／オフを制御する技術が、特許文献１、２に開示されている。特許文献１の方法は、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）を構成するハードディスクグループ内のハードディスク単位で電源制御を行うという方法で、さらにその方法を用いた製品では、アクセス要求に対して遅延なく応答するために、常時稼動しているハードディスクを複数台設けるという方法であった（非特許文献１）。
【０００４】
特許文献２の方法は、アクセスがないＲＡＩＤを構成するハードディスクグループのハードディスクの電源をオフ、または節電状態にするという方法であった。
【０００５】
また、上記問題を解決する別の手段として、階層ストレージシステムを利用する技術が、非特許文献２に開示されている。その方法は、高速のストレージ装置と低電力・大容量のストレージ装置を階層化した階層ストレージシステムにおいて、生成したデータはまず高速のストレージ装置に保存し、アクセス頻度が低くなったデータを高速のストレージ装置から低電力・大容量のストレージ装置に移行することにより、消費電力の大きい高速のストレージ装置の容量増加を抑え、システム全体として、消費エネルギーの増加を抑制するという方法であった。
【０００６】
また、上記問題を解決する別の手段として、データベース用に利用されるストレージシステムにおいて、データベース管理システムが有する情報を利用してハードディスクの回転数を制御する技術が、特許文献３に開示されている。その方法は、通常はハードディスクをスピンダウンして消費電力を下げ、データベース管理システムが作成するクエリプラン（ストレージ装置へのアクセス処理の列）を利用して、事前にどのハードディスクがアクセスされるかを知り、アクセスされるハードディスクのスピンアップ／ダウンを行うという方法であった。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許出願公開第２００４／００５４９３９号明細書
【特許文献２】特開２０００−２９３３１４号公報
【特許文献３】特開２００７−２９３４７９号公報
【非特許文献】
【０００８】
【非特許文献１】[online][平成２１年３月１６日検索]、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｃｏｐａｎｓｙｓ．ｃｏｍ／ｐｄｆｓ／Ｒｅｖｏｌｕｔｉｏｎ２００ＴＤａｔａＳｈｅｅｔ．ｐｄｆ＞
【非特許文献２】ＩＬＭ  ａｎｄ  Ｔｉｅｒｅｄ  Ｓｔｏｒａｇｅ．Ｓｔｏｒａｇｅ  Ｎｅｔｗｏｒｋｉｎｇ  Ｉｎｄｕｓｔｒｙ  Ａｓｓｏｃｉａｔｉｏｎ，２００６．
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ストレージシステムの省電力化の方法として、特許文献１、非特許文献１に開示されている従来技術は、アクセス要求に対して遅延なく応答するために、常時稼動しているハードディスクを複数台設けているが、そのハードディスクにアクセス要求があったデータが格納されていない場合、節電状態のハードディスクを稼働状態に戻してからアクセスさせるため、応答ペナルティが大きく、高性能が要求されるアプリケーションに適用できないという問題があった。
【００１０】
また、特許文献２に開示されている従来技術は、アクセスがないときにハードディスクの電源をオフするという受動的な電源制御であるため、上記の方法と同様に、アクセス要求に対して遅延なく応答することが難しく、高性能が要求されるアプリケーションに適用できないという問題があった。
【００１１】
また、非特許文献２に開示されている従来技術は、消費電力の大きい高速のストレージ装置の容量を抑えるために、データを頻繁に低電力・大容量のストレージ装置に移行すると、アクセス要求のあるデータが低速の低電力・大容量ストレージに格納されている割合が高まり、システム全体として性能が劣化するという、性能と省電力化がトレードオフの関係にあり、高性能と省電力化の両立が難しいという問題があった。
【００１２】
また、特許文献３に開示されている従来技術は、クエリプラン（ストレージ装置へのアクセス処理の列）の情報から、データベース管理システムがストレージに対していつ、どのハードディスクにアクセスするかをデータベース管理システム自身、すなわちアプリケーションが決定可能である。しかしながら、処理の実行開始時間がアプリケーション自身で決定できないようなバッチ処理型のアプリケーション、例えば、ＨＰＣシステムで実行される科学計算のようなアプリケーションには適用できないという問題があった。
そこで、本発明は、計算機上で実行される処理の実行開始時間をアプリケーション自身で決定できない場合であっても、高性能と低消費電力を両立することを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決するために、本発明の一実施態様は以下の構成を有する。具体的には、第一の管理装置（符号１８に相当）が接続された複数の計算機に接続され、１以上の第一のハードディスク装置（符号４２に相当）から構成される１以上の第一のボリューム（符号５１に相当）を有する第一のストレージ装置（符号１１に相当）と、上記第一のストレージ装置に接続され、１以上の第二のハードディスク装置（符号４３に相当）から構成される１以上の第二のボリューム（符号５２に相当）を有する第二のストレージ装置（符号１２に相当）と、上記第一のストレージ装置と、上記第二のストレージ装置、及び上記第一の管理装置に接続される第二の管理装置（符号１９に相当）を有するストレージシステムであって、上記第一の管理装置は、計算機上で逐次実行されるジョブの情報（ジョブ情報）と、実行中及び実行を待つジョブキューの情報（ジョブキュー情報）を有し、上記第二の管理装置は、上記ジョブ情報を収集する手段と上記ジョブキュー情報を収集する手段（符号２４に相当）、及び収集した上記ジョブ情報と上記ジョブキュー情報を解析する解析手段（符号２５に相当）を有し、上記解析手段は、上記ジョブ情報から該ジョブがアクセスする第二のボリュームを特定する手段と、上記ジョブキュー情報から実行を待つ各ジョブが実行開始されるまでの平均待ち時間を算出する手段を有する。
【００１４】
そして、上記第二のストレージ装置は、上記第二のハードディスク装置の電源を制御する手段を有し、上記第二のボリュームに全てのデータが格納され、アクセスされない上記第二のボリュームを構成する上記第二のハードディスク装置の電源を切断している。
【００１５】
そして、上記第二の管理装置は、上記解析手段によって特定された第二のボリュームを構成する第二のハードディスク装置の電源を投入して稼働状態とし、該第二のボリュームを上記第一のボリュームにコピーするのに要する閾値時間を算出する手段と、上記平均待ち時間と上記閾値時間を比較する手段と、上記第二のハードディスク装置の電源を制御する指示と上記第一のストレージ装置と上記第二のストレージ装置間でデータをコピーする指示を発行する手段を有し、上記第二の管理装置は、ジョブが投入された時点で、該ジョブの平均待ち時間が該ジョブの閾値時間より短い場合は、該ジョブが投入された時点から少なくとも該閾値時間だけ、該ジョブの実行を遅らせる指示を第一の管理装置に発行する。
【００１６】
また、上記第二の管理装置は、該ジョブがアクセスする第二のボリュームを構成する第二のハードディスク装置の電源を投入して稼働状態とし、該第二のボリュームを前記第一のボリュームへコピーする指示を上記第二のストレージ装置及び上記第一のストレージ装置に発行し、上記第二のボリュームの上記第一のボリュームへのコピーが終了した後、該第二のボリュームを構成する第二のハードディスク装置の電源を切断する指示を上記第二のストレージ装置に発行する。
【００１７】
また、上記第二の管理装置は、ジョブが投入された時点で、該ジョブの平均待ち時間が該ジョブの閾値時間より長い場合は、遅くとも該ジョブの平均待ち時間が該ジョブの閾値時間に達する直前までに、該ジョブがアクセスする第二のボリュームを構成する第二のハードディスク装置の電源を投入して稼働状態とし、該第二のボリュームを第一のボリュームへコピーする指示を上記第二のストレージ装置及び上記第一のストレージ装置に発行する。
その他、本願が開示する課題、及びその解決方法は、発明の実施形態の欄及び図面により明らかにされる。
【発明の効果】
【００１８】
本発明によれば、計算機上で実行される処理の実行開始時間をアプリケーション自身で決定できない場合であっても、高性能と低消費電力を両立することができる。
【図面の簡単な説明】
【００１９】
【図１】ストレージシステムを含む計算機システムの構成例を示す図である。
【図２】計算機管理サーバとストレージ管理サーバの機能構成の一例を示す図である。
【図３】第一階層ストレージ装置の構成の例を示す図である。
【図４】第二階層ストレージ装置の構成の例を示す図である。
【図５】ファイルサーバの構成の例を示す図である。
【図６】ＪＯＢキューの状態の一例を示す図である。
【図７】計算機管理サーバが管理するＪＯＢキュー情報テーブル１の一例を示す図である。
【図８】ストレージ管理サーバが管理するＪＯＢキュー情報テーブル２の一例を示す図である。
【図９】ボリュームのステージングをしていない時のファイル格納用ディレクトリと、ファイル格納用仮想ボリューム、ファイル格納用第一、第二ボリュームの対応関係の一例を示す図である。
【図１０】ボリューム管理テーブルの一例を示す図である。
【図１１】ボリューム使用状況管理テーブルの一例を示す図である。
【図１２Ａ】ファイルサーバ、第一、第二階層ストレージ装置間でのボリュームのステージングのタイミングの決定、及びステージング／デステージングの手順の一例を示す図である。
【図１２Ｂ】ファイルサーバ、第一、第二階層ストレージ装置間でのボリュームのステージングのタイミングの決定、及びステージング／デステージングの手順の一例を示す図である。
【図１２Ｃ】ファイルサーバ、第一、第二階層ストレージ装置間でのボリュームのステージングのタイミングの決定、及びステージング／デステージングの手順の一例を示す図である。
【図１３】計算機実行スクリプトの一例を示す図である。
【図１４】ボリュームのステージングをした時のファイル格納用ディレクトリと、ファイル格納用仮想ボリューム、ファイル格納用第一、第二ボリュームの対応関係の一例を示す図である。
【図１５Ａ】ファイルサーバ、第一、第二階層ストレージ装置間でのボリュームのステージングのタイミングの決定、及びステージング／デステージングの手順の他の一例を示す図である。
【図１５Ｂ】ファイルサーバ、第一、第二階層ストレージ装置間でのボリュームのステージングのタイミングの決定、及びステージング／デステージングの手順の他の一例を示す図である。
【図１５Ｃ】ファイルサーバ、第一、第二階層ストレージ装置間でのボリュームのステージングのタイミングの決定、及びステージング／デステージングの手順の他の一例を示す図である。
【発明を実施するための形態】
【００２０】
以下、本発明を実施するための形態（「実施形態」という。）について、図面を参照しながら説明する。
【００２１】
≪第一の実施形態≫
図１は、第一の実施形態のストレージシステムを含む計算機システムの構成例を示す図である。計算機システム１は、ストレージシステム２、ＩＰスイッチ１６、計算機１４、及び計算機管理サーバ１８を有する。また、ストレージシステム２は、ファイルサーバ１３、第一階層ストレージ装置（第一のストレージ装置）１１、第二階層ストレージ装置（第二のストレージ装置）１２、ファイバチャネル（ＦＣ：Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ）スイッチ１７、及びストレージ管理サーバ１９を有する。
【００２２】
図１に示すように、ＩＰスイッチ１６を介してファイルサーバ１３と計算機１４を接続することにより、ストレージシステム２と計算機１４は接続されている。また、計算機管理サーバ１８とストレージ管理サーバ１９はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１５を介して互いに接続される。さらに、ストレージ管理サーバ１９と、ファイルサーバ１３、第一階層ストレージ装置１１、及び第二階層ストレージ装置１２間はＬＡＮ１５を介して互いに接続される。
【００２３】
第一階層ストレージ装置１１は、ファイルサーバ１３に直接接続される。接続インターフェースとしては、ファイバチャネル、ｉＳＣＳＩ（Ｉｎｔｅｒｎｅｔ  Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）等のブロックデータを送るプロトコルのインターフェースを用いるのが一般的である。ここで、第一階層ストレージ装置１１はスイッチを介してファイルサーバ１３に接続されていても問題ない。
【００２４】
第二階層ストレージ装置１２は、ＦＣスイッチ１７を介して第一階層ストレージ装置１２に接続される。接続インターフェースとしては、ファイバチャネル以外にｉＳＣＳＩ等のブロックデータを送るプロトコルのインターフェースを用いても問題ない。
【００２５】
第一階層ストレージ装置１１は、ファイルサーバ１３が入出力処理を行うファイルを格納するためのファイル格納用第一ボリューム（第一のボリューム）５１を有する。第二階層ストレージ装置１２は、ファイルサーバ１３が入出力処理を行うファイルを格納するためのファイル格納用第二ボリューム（第二のボリューム）５２を有する。また、第一階層ストレージ装置１１は、第二階層ストレージ装置１２が有するボリュームを当該第一階層ストレージ装置１１が計算機１４に提供するボリュームとして、すなわちファイル格納用仮想ボリューム６１として仮想的に提供する仮想化機能を有する。
なお、図１中のファイル格納用仮想ボリューム６１およびファイル格納用第二ボリューム５２に示される「ｕｓｒ１」、「ｕｓｒ２」、・・・との標記は、計算機１４によるファイルの入出力処理を実行するために当該ボリュームを使用するユーザを意味する。換言すれば、各ユーザには、第一階層ストレージ装置１１および第二階層ストレージ装置１２において、使用することができるボリュームが割り当てられている。ただし、その割り当て方は、例えば計算機システム１の運用に応じて変更することができる。
【００２６】
図３に第一階層ストレージ装置１１の構成の一例を示す。コントローラ３１は、ファイルサーバ３や計算機１４等の上位装置からのデータの書き込み／読み出しアクセスを制御するチャネルＩＦ(ｉｎｔｅｒｆａｃｅ：インターフェース)部３２、複数の高速ハードディスク（第一のハードディスク装置）４２に接続され、高速ハードディスク４２へのデータの書き込み／読出しアクセスを制御するディスクＩＦ(インターフェース)３３、高速ハードディスク４２への書き込み／読み出しデータを一時的に格納するキャッシュメモリ３４、制御用データを格納する制御メモリ３８及びチャネルＩＦ部３２、ディスクＩＦ部３３、及びキャッシュメモリ３４を接続する結合部３５を有する。結合部３５は、１つ以上のスイッチから構成されるのが一般的であるが、１本以上の共通バスから構成しても問題ない。
【００２７】
チャネルＩＦ部３２は上位装置からのデータの書き込み／読み出しアクセスを受けた際に、キャッシュメモリ３４との間のデータ転送を制御し、ディスクＩＦ部３３は、高速ハードディスク４２へのデータの書き込み／読出し時にキャッシュメモリ３４との間のデータ転送を制御する。このようなキャッシュメモリ３４を介したチャネルＩＦ部３２とディスクＩＦ部３３の間のデータのやり取りにより、上位装置から高速ハードディスク４２へのデータの書き込み／読出しを行う。このような制御を行うため、チャネルＩＦ部３２、ディスクＩＦ部３３は１つ以上のプロセッサ(図示していない)を有する。このプロセッサには内部ＬＡＮ３７が接続される。さらに、第一ストレージ装置１１外部のストレージ管理サーバ１９がＬＡＮ１５を介して、内部ＬＡＮ３７に接続される。
【００２８】
ここで、上述のコントローラ３１の構成は一例に過ぎず、構成を上記に限定するものではない。コントローラ３１は、計算機１４からのデータの書き込み／読み出し要求に応じて高速ハードディスク４２へのデータの書き込み／読出しを行う機能を有していれば問題ない。
さらに、コントローラ３１は高速ハードディスク４２の電源のオン／オフ(投入／遮断)を制御する電源制御部３６を有していても良く、その場合、電源制御部３６は内部ＬＡＮ３７に接続される。
【００２９】
ハードディスク搭載部４１Ａ（４１）は、複数の高速ハードディスク４２の個々のハードディスクへ電源を供給するハードディスク電源４６Ａ（４６）を有する。複数の高速ハードディスク４２は複数台の高速ハードディスク４２から構成されるＲＡＩＤグループ（Ｇｒ．）１：４４にグルーピングされる。
【００３０】
ここで、高速ハードディスク４２としては、回転数が１０，０００ｒｐｍ（ｒｅｖｏｌｕｔｉｏｎ  ｐｅｒ  ｍｉｎｕｔｅ）あるいは１５，０００ｒｐｍで、ＦＣやＳＡＳ（Ｓｅｒｉａｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ）インターフェースを有する高速ハードディスクを用いるのが一般的である。また、最近ストレージ装置に搭載されるようになってきた固体メモリディスク（ＳＳＤ：Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｍｅｍｏｒｙ）を用いても問題ない。そうすることにより、高速ハードディスクを利用した場合に比べ、第一階層ストレージ装置１１をさらに高速かつ低消費電力にすることができる。
【００３１】
またここで、ハードディスク電源４６Ａは、個々の高速ハードディスク４２毎、またはＲＡＩＤ  Ｇｒ．１：４４毎に１個または２個(冗長構成を組む場合)程度設けても問題ない。
【００３２】
コントローラ３１内の電源制御部３６は、ハードディスク電源４６Ａに接続され、電源のオン／オフの制御を行う。
ここで、電源制御部３６は、コントローラ３１の中ではなく、ハードディスク搭載部４１Ａの中にあっても問題ない。また、電源制御部３６はストレージ管理サーバ１９に直接接続されていても問題ない。
【００３３】
図１の説明で述べたファイル格納用第一ボリューム５１は、複数台のハードディスク４２から構成されるＲＡＩＤＧｒ．１：４４の領域上に形成される。
【００３４】
図４に、第二階層ストレージ装置１２の構成の一例を示す。コントローラ７１は、第一階層ストレージ装置１１等の上位装置を接続する計算機接続ポート７６、複数の大容量ハードディスク（第二のハードディスク装置）４３を接続するディスク接続ポート７８、大容量ハードディスク４３への書き込み／読み出しデータを一時的に格納する共有メモリ７３、及びプロセッサ７２を有する。また、計算機接続ポート７６、ディスク接続ポート７８、プロセッサ７２、及び共有メモリ７３は結合部７４を介して接続される。結合部７４は、スイッチから構成されるのが一般的であるが、共通バスから構成しても問題ない。
【００３５】
プロセッサ７２は上位装置からのデータの書き込み／読み出しアクセスを受けた際に、計算機接続ポート７６と共有メモリ７３との間のデータ転送を制御するとともに、大容量ハードディスク４３へのデータの書き込み／読出し時に、大容量ハードディスク４３と共有メモリ７３との間のデータ転送を制御する。このような共有メモリ７３を介した計算機接続ポート７６と大容量ハードディスク４３の間のデータのやり取りにより、上位装置から大容量ハードディスク４３へのデータの書き込み／読出しを行う。
【００３６】
プロセッサ７２には内部ＬＡＮ７７が接続される。さらに、第二ストレージ装置１２の外部のストレージ管理サーバ１９がＬＡＮ１５を介して、内部ＬＡＮ７７に接続される。
【００３７】
ここで、上述のコントローラ７１の構成は一例に過ぎず、構成を上記に限定するものではない。コントローラ７１は計算機１４からのデータの書き込み／読み出し要求に応じて大容量ハードディスク４３へのデータの書き込み／読出しを行う機能を有していれば問題ない。
さらに、コントローラ７１は大容量ハードディスク４３の電源のオン／オフ(投入／遮断)を制御する電源制御部７５を有していても良く、その場合、電源制御部７５は内部ＬＡＮ３７に接続される。
【００３８】
ハードディスク搭載部４１Ｂ（４１）およびハードディスク電源４６Ｂ（４６）については、図３で示した第一階層ストレージ装置１１の構成（４１Ａ、４６Ａ）と同様であるため、説明は省略する。
【００３９】
ここで、大容量ハードディスク４３としては、回転数が７，２００ｒｐｍ（ｒｅｖｏｌｕｔｉｏｎ  ｐｅｒ  ｍｉｎｕｔｅ）以下で、ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｅｄ）インターフェースを有し、容量当たりの消費電力が高速ハードディスク４２に比べて小さい、大容量・低電力ハードディスクを用いるのが一般的である。また、アクセスが来ない時は、回転数を落として消費電力を低減するといった省電力機能を備えたハードディスクを用いても良い。
【００４０】
図１の説明で述べたファイル格納用第二ボリューム５２は、複数台の大容量ハードディスク４３から構成されるＲＡＩＤ  Ｇｒ．２：４５の領域上に形成される。
【００４１】
図３、図４において第一階層ストレージ装置１１、第二階層ストレージ装置１２の構成について、一般的な構成についてそれぞれ述べたが、それらは上記した構成に限定されるものではない。第一階層ストレージ装置１１として要求されるＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）処理性能としては、第二階層ストレージ装置１２を上回るＩ／Ｏ処理性能を有する装置であれば良い。また、第二階層ストレージ装置１２として要求される仕様としては、上記計算機１４が必要とする容量を、第一階層ストレージ装置１１に比べて少ない台数のハードディスクで実現できる装置であれば良い。言い換えると、容量当たりの消費電力が小さい装置であれば良い。
【００４２】
ここで、第一階層ストレージ装置１１と第二階層ストレージ装置１２は、１つのストレージ装置で構成しても問題ない。すなわち、例えば、第一階層ストレージ装置１１において、ハードディスク搭載部４１Ａ内に高速ハードディスク４２と大容量ハードディスク４３を混載し、それぞれのハードディスクでＲＡＩＤ  Ｇｒ．１：４４，ＲＡＩＤ  Ｇｒ．２：４５を構成し、さらに、ＲＡＩＤ  Ｇｒ．１：４４及びＲＡＩＤ  Ｇｒ．２：４５の領域上に，それぞれファイル格納用第一ボリューム５１、ファイル格納用第二ボリューム５２を形成しても良い。こうすることにより、第二階層ストレージ装置のコントローラ７１の消費電力分を削減できる。
【００４３】
図５に、ファイルサーバ１３の構成の一例を示す。ファイルサーバ１３は、入出力コントローラ２５１と、入出力コントローラ２５２と、プロセッサ２５０と，メモリ２５３からなる。入出力コントローラ２５１はＩＰスイッチ１６に接続され、ファイルデータの入出力処理を行う。また入出力コントローラ２５２は第一階層ストレージ装置１１に接続され、第一階層ストレージ装置１１へのブロックデータの書き込み及び読み出し処理を行う。またメモリ２５３では，入出力コントローラ２５１と入出力コントローラ２５２間でのデータのバッファリング／キャッシングを行う。またプロセッサ２５０では，ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）としてＬＩＮＵＸ（登録商標）が動作しており，そのファイルシステムとしてＮＦＳ（Ｎｅｔｗｏｒｋ  Ｆｉｌｅ  ｓｙｓｔｅｍ）が動作している。このファイルシステムがホストサーバからアクセスされるファイルデータをブロックデータのアドレスに変換する処理を行う。ファイルデータとブロックデータの変換に必要な変換テーブル等の管理情報は、プロセッサ２５０がメモリ２５３に格納する。ここで，ＯＳはＬＩＮＵＸに限らず，またファイルシステムもＮＦＳに限らない。ホストサーバからファイルデータを受け取り，それをブロックデータに変換して第一階層ストレージ装置１１へアクセスする機能を有していれば問題無い。
【００４４】
図２に、計算機管理サーバ１８及びストレージ管理サーバ１９の機能構成を示す。
計算機管理サーバ１８は、計算機１４で実行するＪＯＢ（ジョブ）を管理するＪＯＢ管理部２１、計算機１４にＪＯＢの実行を依頼するユーザを管理するユーザ管理部２２、計算機１４で実行されるＪＯＢ情報をストレージ管理サーバ１９に提供するインターフェースとなる情報提供部２３を有する。なお、前記ジョブは、バッチ処理型のアプリケーションにおいて、逐次実行されるジョブをいう。
【００４５】
なお、本実施形態中の構成要素を説明する際に用いる、ＪＯＢ管理部２１、情報解析部２５等の各機能部は、ソフトウェア（プログラム）により論理的に構成されても良いし、専用ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等によりハードウェア的に構成されても良いし、さらには、ソフトウェアとハードウェアの組み合わせにより実現されても良い。なお、論理的に構成される場合、ストレージ管理サーバ１９の各機能部は、メモリ９４（記憶部）上に格納され、プロセッサ９５（制御部）によって処理が実行されることで、その機能が実現される。また、計算機管理サーバ１８の各機能部は、メモリ９９上に格納され、プロセッサ９８（計算機管理サーバ用制御部）によって処理が実行されることで、その機能が実現される。
【００４６】
ＪＯＢ管理部２１は、投入ＪＯＢ管理部２０１、ＪＯＢスケジューラ２０２、終了ＪＯＢ管理部２０６を有する。また、ＪＯＢスケジューラ２０２は、待ちキュー２０３と実行キュー２０５を有する。
【００４７】
ユーザは、計算機１４で計算ＪＯＢ（ＪＯＢ）を実行するために、図１３に示す計算実行スクリプト２３４を作成し、計算機管理サーバ１８に入力する。その入力は、例えば、計算機管理サーバ１８が備えるＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）やＣＬＩ（Ｃｏｍｍａｎｄ  Ｌｉｎｅ  Ｉｎｔｅｒｆａｃｅ）により、計算機管理サーバ１８に直接か、計算機管理サーバ１８に接続されるクライアント端末（図示していない）を通して行う。
【００４８】
入力された計算実行スクリプト２３４は、投入ＪＯＢ管理部２０１で管理され、待ちキュー２０３内に優先度の高い順に用意されているキュー１：２１１、キュー２：２１２、キュー３：２１３、あるいはキュー４：２１４のいずれかに振り分けられる。その振分け方、つまり、優先度の付け方は、例えば、計算実行スクリプト２３４の中に記述された、使用するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）数（Ｎｕｍｂｅｒ  ｏｆ  ＣＰＵｓ）３０１、最大計算時間（ＭＡＸ  ＣＰＵ  ＴＩＭＥ）３０２の長短、使用する主記憶容量（Ｍｅｍｏｒｙ  Ｓｉｚｅ）３０３の多少等で判断することや、ユーザが計算実行スクリプト２３４の中で明示的に優先順位を指定すること等がある。ＪＯＢは各キューに並んだ順番に実行される。また、キュー１〜４：２１１〜２１４のＪＯＢの実行順は、優先度の高いキュー１：２１１から順次実行される。優先度の高いキューのＪＯＢが実行に入った後、計算機１４のＣＰＵリソースに空きがあり、次の優先度のＪＯＢが実行可能であるならば、そのＪＯＢについても空いているＣＰＵ上で並行して実行する。その次の優先度のＪＯＢについても同様である。実行中のＪＯＢは実行キュー２０５の中で管理され、ＪＯＢが終了すると終了ＪＯＢ管理部２０６へ管理が移される。
【００４９】
ユーザ管理部２２は、計算機管理サーバ１８や、計算機管理サーバ１８に接続されたクライアント端末から計算機１４を利用するユーザの管理、すなわち、ユーザ認証やユーザが計算に使用するファイルを格納するためのユーザディレクトリの管理を行う。この管理のために、例えば、ＮＩＳ（Ｎｅｔｗｏｒｋ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｉｃｅ）やＬＤＡＰ（Ｌｉｇｈｔｗｅｉｇｈｔ  Ｄｉｒｅｃｔｏｒｙ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）等のプロトコルが用いられる。
【００５０】
また、情報提供部２３は、ストレージ管理サーバ１９に対して各ＪＯＢの計算実行スクリプト２３４とＪＯＢの実行順序を示す情報、及び計算機１４を使用するユーザ及びそのユーザが使用するユーザディレクトリの情報を送信する。
【００５１】
ストレージ管理サーバ１９は、計算機管理サーバ１８の情報提供部２３から計算機１４で実行されるＪＯＢ情報及びＪＯＢキュー情報を受け取る情報収集部２４と、ＪＯＢ情報及びＪＯＢキュー情報をストレージ装置（１１、１２）で利用するために解析を行う情報解析部２５、解析した情報を元に、ファイルサーバ１３が管理するユーザディレクトリへの第一階層ストレージ装置１１、第二階層ストレージ装置１２が有するボリュームのマウント／アンマウントや、その第一階層ストレージ装置１１と第二階層ストレージ装置１２間でのファイルまたはボリュームのステージング／デステージングの管理を行うボリューム管理部２６、ファイルサーバ１３が取り扱うユーザディレクトリを管理するユーザエリア管理部２７、ファイルサーバ１３、第一階層ストレージ装置１１、及び第二階層ストレージ装置１２へボリュームの割り当てやボリュームのマウント／アンマウントを指示したり、第一階層ストレージ装置１１及び第二階層ストレージ装置１２内の電源制御部３６、７５にハードディスクの電源制御を指示したりするストレージ管理部２８を有する。
【００５２】
図６は、ある１つのキュー（キュー４：２１４）において、１つのＪＯＢが投入されたときのキューの状態を示している。ここで、λはＪＯＢがキューに投入される際の平均投入頻度、μ（前記キューに投入されたＪＯＢが実行される際の平均実行頻度）の逆数が、ＪＯＢが実行される際の平均ＪＯＢ実行時間（平均実行時間）Ｔｅを表す。λの逆数はＪＯＢの平均投入間隔Ｔｉを表す。また、ＴｗはＪＯＢの実行までの平均待ち時間(この図では、投入されたＪＯＢの実行までの平均待ち時間)を表す。平均待ち時間の算出方法については、以下に示す。
【００５３】
図７に計算機管理サーバ１８のＪＯＢ管理部２１に格納されているＪＯＢキュー情報テーブル１：７０の一例を示す。ＪＯＢキュー情報テーブル１：７０は、各ＪＯＢの現在の状態を示す値を格納している。「ＪＯＢ  ＩＤ（Ｉｄｅｎｔｉｆｉｅｒ）」７０１は、ＪＯＢを識別するための識別情報を示す。そして、ＪＯＢが投入された順にＪＯＢ  ＩＤが付与される。「ＪＯＢ状態」７０２は、各ＪＯＢの現在の状態を示す。「実行中」は、ＪＯＢが実行されていることを示す。「待ち」は、ＪＯＢが実行待ち状態であることを示す。実行待ち状態のＪＯＢについては、その実行の順番を示す優先度が付されている。通常、優先度は先に投入されたＪＯＢの優先度を高くするように付される。しかしながら、ユーザが優先度を指定したり、計算機管理サーバ１８の管理者が計算条件や計算機１４の使用状況から判断して、その優先度を変えたりすることが可能である。ここで、図７のＪＯＢキュー情報テーブル１：７０のフォーマットは一例に過ぎず、フォーマットを図のように限定するものではない。上記に述べた情報が少なくとも含まれていれば良い。
【００５４】
図８にストレージ管理サーバ１９のメモリ９４に格納されるＪＯＢキュー情報テーブル２：８０の一例を示す。「ＪＯＢ  ＩＤ」８０１は、ＪＯＢを識別するための識別情報を示す。「ＪＯＢ状態」８０２は、各ＪＯＢの現在の状態（キュー状態）を示す。「実行中」は、ＪＯＢが実行されていることを示す。「待ち」は、ＪＯＢが実行待ち状態であることを示す。実行待ち状態のＪＯＢについては、その実行の順番を示す優先度が付されている。「Ｔｗ」８０３は、各ＪＯＢの平均待ち時間を示す。ＪＯＢ１のように「実行中」である場合には、待ち時間は「０」であるため、Ｔｗは格納されない。「Ｕｓｅｒ  ＩＤ」８０４は、各ＪＯＢを実行するＵｓｅｒ（ユーザ）の識別情報を示す。「対象ｄｉｒ」８０５は、各ＪＯＢによって使用されるディレクトリの識別情報を示す。「Ｔｔｈ」８０６は、各ＪＯＢの実行に用いる論理ボリュームを構成する記憶装置（ストレージ装置）の電源を入れて稼動状態にし、その論理ボリューム、またはボリューム内に格納された使用されるファイルを第一階層ストレージ１１内のファイル格納用第一ボリューム５１にステージング(コピー)するのに要する時間（これを閾値時間と呼ぶ。）を示す。ここで、図８のＪＯＢキュー情報テーブル２：８０のフォーマットは一例に過ぎず、フォーマットを図のように限定するものではない。上記に述べた情報が少なくとも含まれていれば問題ない。
【００５５】
図９は、ユーザが計算を開始する前のユーザディレクトリとボリュームの関係の一例を示している。ファイルサーバ１３は、ストレージ管理部２８の指示に基づいて、ファイル格納用仮想ボリューム６１をユーザディレクトリであるファイル格納用ディレクトリ８１としてマウントする。
【００５６】
第一階層ストレージ装置１１内のコントローラ３１は、ストレージ管理部２８の指示に基づいて、第二階層ストレージ装置１２内のファイル格納用第二ボリューム５２を、第一階層ストレージ装置１１内のファイル格納用仮想ボリューム６１として仮想化し、第一階層ストレージ装置１１が管理する。こうすることにより、第一階層ストレージ装置１１が第二階層ストレージ装置１２のボリュームも一括して管理することができるため、ボリューム管理を簡単化することができる。
ここで、ファイル格納用第二ボリューム５２を、直接、ファイル格納用ディレクトリ８１としてマウントしても良い。
【００５７】
ディレクトリ・ツリー１０１に、ユーザディレクトリと、ファイル格納用仮想ボリューム６１、及びファイル格納用第二ボリューム５２との関係の一例を示す。ここでは、ｕｓｒ０下のディレクトリｄｉｒ０，ｄｉｒ１と、ｕｓｒ１下のディレクトリｄｉｒ０，ｄｉｒ１，ｄｉｒ２毎に別個のファイル格納用第二ボリューム５２を割り当てている。
【００５８】
ここで、上記のユーザディレクトリ（ファイル格納用ディレクトリ８１）とファイル格納用第二ボリューム５２との対応関係（マッピング）は、ストレージ管理部１９内のユーザエリア管理部２７で管理される。またこの対応関係は、ストレージ管理サーバ１９に接続されるクライアント端末からユーザが要求を出した際に、作成、または変更される。
【００５９】
また、ユーザが扱うファイル（計算機１４から入出力されるファイルを含む）は全て、ファイル格納用ディレクトリ８１、すなわち、第２階層ストレージ装置１２内のファイル格納用第二ボリューム５２に格納される。さらに、通常、計算機１４またはユーザからアクセスされない間、乃至はファイル／ボリュームのステージング／デステージングが行われない間は、ファイル格納用第二ボリューム５２はアンマウントし、ファイル格納用第二ボリューム５２を構成する大容量ハードディスク４３の電源は落としておく。こうすることにより、ストレージシステム２全体の消費電力量を削減することが可能となる。
【００６０】
ここで、大容量ハードディスク４３の電源を落とさずに、スピンダウン（ハードディスク装置のディスクを予め定められた回転速度（メモリに記憶されている回転速度）以下に回転させること）、スピンオフ（ハードディスク装置のディスクの回転を停止させること）あるいは省電力モードにしても良い。こうすることによって、削減される消費電力量は少なくなるが、アクセスが来る前に大容量ハードディスク４３を立ち上げる時間（入出力可能状態になるまでの時間）を短くすることが可能となる。
【００６１】
ディレクトリ・ツリー１０１は、例えば、図１０に示すボリューム管理テーブル１００によりユーザ毎に管理されている。ボリューム管理テーブル１００は、ストレージ管理サーバ１９のメモリ９４に格納されている。「Ｕｓｅｒ  ＩＤ」１００１は、各Ｕｓｅｒの識別情報を示す。「ｄｉｒ  ＩＤ」１００２は、Ｕｓｅｒごとのディレクトリの識別情報を示す。「ＬＵ  ＩＤ」１００３は、各ｄｉｒに対応する論理ユニット（論理ボリューム）の識別情報を示す。「ＲＡＩＤ  ＩＤ」１００４は、各ＬＵを構成するＲＡＩＤグループの識別情報を示す。ＲＡＩＤグループは、複数の記憶装置により構成される。ここで、図１０のボリューム管理テーブルのフォーマットは一例に過ぎず、フォーマットを図のように限定するものではない。上記に述べた情報が少なくとも含まれていれば問題ない。
【００６２】
図１１は、ボリューム使用状況管理テーブル１１０を示す。ボリューム使用状況管理テーブル１１０は、第一階層ストレージ装置１１の各論理ボリュームの使用状況を示す。ボリューム使用状況管理テーブル１１０は、ストレージ管理サーバ１９のメモリ９４に格納されている。「ＬＵ  ＩＤ」１１０１は、第一階層ストレージ装置１１の各論理ボリュームの識別情報を示す。「使用状況」１１０２は、第一階層ストレージ装置１１の各論理ボリュームがＵｓｅｒ（計算機）によって使用されているか否かを示す。「サイズ」１１０３は、各論理ボリュームの容量を示す。ここで、図１１のボリューム使用状況管理テーブル１１０のフォーマットは一例に過ぎず、フォーマットを図のように限定するものではない。上記に述べた情報が少なくとも含まれていれば良い。
【００６３】
図１２（図１２Ａ〜図１２Ｃの総称）は、本実施形態のストレージシステムでのファイルのステージング／デステージングの手順を示している。この手順は、待ちキュー２０３内のキュー毎（キュー１：２１１からキュー４：２１４）に並行して実施する。プロセッサ９５が処理主体となることで、各機能部（２４、２５等）による機能が実現され、前記手順が定期的に繰り返される。
【００６４】
まずステップ４０１で、ストレージ管理サーバ１９の情報収集部２４は、定期的に、計算機管理サーバ１８の情報提供部２３から待ちキュー２０３内にある全てのＪＯＢの実行順序を示す情報と終了ＪＯＢ管理部２０６にある終了ＪＯＢ情報（ＪＯＢキュー情報）を取得する。取得するときは、例えば計算機管理サーバ１８のＪＯＢスケジューラ２０２をモニタリングするためのコマンドが計算機管理サーバ１８に送信され、計算機管理サーバ１８による、そのコマンドに対する応答として前記情報を受信する。
【００６５】
そしてステップ４０２で、ＪＯＢキュー情報テーブル２：８０に記載された前回受け取ったＪＯＢキュー情報と、ステップ４０１で受け取ったＪＯＢキュー情報テーブル１：７０に記載された各ＪＯＢの現在の状態をＪＯＢ  ＩＤ毎に比較し、待ちキュー２０３内の該当する１つのキュー（キュー１：２１１乃至キュー：２１４）について、キューの状態が変化したかどうかを調べる。ここで、キューの状態が変化したとは、新たなＪＯＢが投入された、待ちキュー内のＪＯＢが実行に移された、待ちキュー内のＪＯＢがキャンセルされた、ＪＯＢの実行が終了したことを少なくとも意味する。具体的にいえば、当該レコードのＪＯＢ状態７０２の値と、ＪＯＢ状態８０２の値が異なったことを意味する。
ここで、実行中のＪＯＢ（図７または図８の場合、ＪＯＢ１）は、実行キュー２０５の中でそのＪＯＢ  ＩＤが管理される。また、実行を終了したＪＯＢについては、終了ＪＯＢ管理部２０６でそのＪＯＢ  ＩＤが管理される。
【００６６】
ここで、キュー状態が変化していなかった場合は（ステップ４０２でＮｏ）、ステップ４０１に戻り、次のキュー状態取得まで待つ。キュー状態が変化していた場合は（ステップ４０２でＹｅｓ）、ＪＯＢキュー情報テーブル２：８０のＪＯＢ  ＩＤとＪＯＢ状態のカラム（８０１、８０２）を取得してきた内容に置き換え、ステップ４０３へ移る。
【００６７】
ステップ４０３では、キュー状態の変化がＪＯＢ実行終了（完了）であるかどうかをチェックする。キュー状態の変化がＪＯＢ実行終了であった場合（ステップ４０３でＹｅｓ）、ステップ４１８に処理を移す。また、キュー状態の変化がＪＯＢ実行終了でなかった場合（ステップ４０３でＮｏ）、ステップ４０４に移る。ここで、キュー状態の変化がＪＯＢ実行終了であったことは、実行キュー２０５内の該当するＪＯＢが、ＪＯＢ終了管理部２０６へ移ったことで確認できる。
【００６８】
次にステップ４０４では、キュー状態の変化がＪＯＢ投入であった場合、待ちキュー２０３内にある該当するキューのＪＯＢの計算実行スクリプト２３４を取得し、その解析を行う。その解析について説明する前に、計算機１４で実行される実行ジョブ（あるいは計算）の情報を記述した計算実行スクリプト２３４の一例を図１３に示す。複数のユーザが計算実行スクリプト２３４を投入するので、図１３では複数の計算実行スクリプト２３４があるイメージを示している。ファイルサーバ１３が管理するユーザディレクトリ（ファイル格納用ディレクトリ８１）への第一階層ストレージ装置１１、第二階層ストレージ装置１２が有するボリュームのマウント／アンマウントのスケジューリングや、そのユーザディレクトリ間でのファイルのステージング／デステージングのスケジューリング及びファイルサーバ１３が取り扱うユーザディレクトリを管理するためには、計算実行スクリプト２３４は少なくとも計算のパラメータや計算の実行結果を格納するディレクトリの情報３００を含む。
さらに、使用するＣＰＵ数（Ｎｕｍｂｅｒ  ｏｆ  ＣＰＵｓ）３０１、最大計算時間（ＭＡＸ  ＣＰＵ  ＴＩＭＥ）３０２の長短、使用する主記憶容量（Ｍｅｍｏｒｙ  Ｓｉｚｅ）３０３を少なくとも含む。これら情報を元にＪＯＢの優先順位付けが行われ、ＪＯＢは複数あるキューに優先順位ごとに振り分けられて投入される。
ここで、図１３の計算実行スクリプトのフォーマットは一例に過ぎず、フォーマットを図のように限定するものではない。上記に述べた情報が少なくとも含まれていれば問題ない。
【００６９】
情報解析部２５では、各ＪＯＢの計算実行スクリプト２３４から、入出力用ファイルのディレクトリ名（ディレクトリの情報３００）を抽出し、ＪＯＢキュー情報テーブル２：８０の対象ｄｉｒ(ディレクトリ)のカラム（８０５）の該当するＪＯＢ  ＩＤの箇所にそのディレクトリ名を入力する。
【００７０】
さらに、キュー状態の変化がＪＯＢ投入である場合に限らず全ての場合について、該当するキューのＪＯＢキュー情報から、ＪＯＢの投入間隔の平均値及び分散、ＪＯＢ実行時間の平均値及び分散を計算する。これら平均値及び分散は、該当するキューの状態を取得するたびに統計情報として、以前ＪＯＢが投入された時刻からその次にＪＯＢが投入されるまでの時間間隔、及び以前ＪＯＢが実行に移された時刻からその次にＪＯＢが実行に移されるまでの時間間隔を収集することにより、それら収集した値から求めることができる。
【００７１】
次にステップ４０５で、待ち行列理論から導かれる式を用いて、図６に示す、λとμから各ＪＯＢの実行までの平均の待ち時間Ｔｗを算出する。そして、ＪＯＢキュー情報テーブル２：８０のＴｗのカラム（８０３）の該当するＪＯＢ  ＩＤの箇所にその値を入力する。ここで、λ及びμの分散の値を使うことにより、平均値を使う場合に比べてより正確に平均の待ち時間を計算することができる。
【００７２】
さらに、ＪＯＢの投入時には、ステップ４０５で抽出した、該当するＪＯＢが計算で使用するファイルのディレクトリから、図９に示すディレクトリ・ツリー１０１をたどって、該当するファイルが格納されているファイル格納用第二ボリューム５２を、ボリューム管理部２６において特定する。
そして、閾値時間Ｔｔｈを算出する。閾値時間とは上述した通り、「その特定したボリュームを構成するＲＡＩＤ  Ｇｒ２：４５の大容量ハードディスク４３の電源を入れて稼動状態にし、そのボリューム、またはボリューム内に格納された使用されるファイルを第一階層ストレージ１１内のファイル格納用第一ボリューム５１にステージング(コピー)するのに要する時間」である。Ｔｔｈは、ステージングするファイル／ボリュームのサイズと第一階層ストレージ装置１１と第二階層ストレージ装置１２の間のデータ転送速度から求めることができる。Ｔｔｈを算出後、ＪＯＢキュー情報テーブル２：８０のＴｔｈのカラム（８０６）の該当するＪＯＢ  ＩＤの箇所にその値を入力する。
ここで、特定したボリュームを構成するＲＡＩＤ  Ｇｒ２：４５は、ボリューム管理テーブル：１００のＲＡＩＤ  ＩＤ（１００４）から特定する。
【００７３】
ステップ４０６では、キュー状態の変化がＪＯＢ投入かどうかをチェックする。キュー状態の変化がＪＯＢ投入でなかった場合（ステップ４０６でＮｏ）、ステップ４０９へ処理を移す。また、キュー状態の変化がＪＯＢ投入であった場合（ステップ４０６でＹｅｓ）、ステップ４０７に移る。ここで、キュー状態の変化がＪＯＢ投入であったとは、該当するキューの最後尾に新たなＪＯＢ（ＪＯＢ  ＩＤ）が存在していることで確認できる。
【００７４】
ステップ４０７で、図８に示すＪＯＢキュー情報テーブル２：８０を用いて、投入されたＪＯＢの実行までの平均の待ち時間（Ｔｗ）と閾値時間（Ｔｔｈ）を比較し、Ｔｗが長い場合は（ステップ４０７でＮｏ）ステップ４０１へ処理を移す。また、ＴｗがＴｔｈ以下の場合（ステップ４０７でＹｅｓ）は、ステップ４０８に移る。
【００７５】
ステップ４０８では、投入したＪＯＢの実行を少なくとも閾値時間Ｔｔｈの間だけ待つように、ストレージ管理サーバ１９の情報解析部２５から計算機管理サーバ１８のＪＯＢ管理部２１へ通知する。これはＴｗがＴｔｈ以下の場合には、該当するＪＯＢが実行開始になる前に、そのＪＯＢが実行中にアクセスするファイル／ディレクトリ（言い換えると、アクセスするファイル格納用第二ボリューム５２）が、第一階層ストレージ装置１１へのステージングを完了することができないためである。この場合、第一階層ストレージ装置１１にアクセスされるファイル／ディレクトリがないため、計算機１４から第一階層ストレージ装置１１への入出力エラーとなる。あるいは、第二階層ストレージ装置１２のファイル格納用第二ボリューム５２から直接入出力することになるため、入出力性能が低下する。このような状態になるのを防ぐため、ジョブが投入された時点から少なくとも閾値時間ＴｔｈだけＪＯＢの実行を遅らせる処理を行う。
【００７６】
次にステップ４０９では、該当するキュー内の全てのキューについて、ジョブ実行までの平均の待ち時間（Ｔｗ）を、閾値時間（Ｔｔｈ）に一定の時間（α）を加えた時間と比較する。比較する際には、例えばＪＯＢキュー情報テーブル２：８０を用いる。そして、ＴｗがＴｔｈにαを加えた時間より長い場合は（ステップ４０９でＮｏ）、ステップ４０１へ処理を移す。また、ＴｗがＴｔｈにαを加えた時間以下の場合は（ステップ４０９でＹｅｓ）、ステップ４１０へ移る。この条件を満たすＪＯＢがあった場合は、少なくともＴｔｈにαを加えた時間後に、該当するＪＯＢの実行が開始される可能性があることを意味する。したがって、ステップ４１０以降でファイルまたはボリュームのステージング処理を行う必要がある。
【００７７】
ここで、Ｔｔｈはシステムの稼働状況により変動する場合があるため、αという余裕を付加する。この余裕を大きくとりすぎると、多くのＪＯＢについて、ＪＯＢが使用するファイルまたはボリュームを第二階層ストレージ装置１２から第一階層ストレージ装置１１へステージングすることになるため、第一階層ストレージ装置１１の容量が増える。その結果、消費電力の大きい高速ハードディスクの台数が増えるので、省電力効果が小さくなる。そのためαは、例えばＴｔｈの１０％以下程度とする。
【００７８】
このように処理すると、平均待ち時間Ｔｗが閾値時間Ｔｔｈよりも大きい場合であっても、結果的には平均待ち時間Ｔｗが閾値時間Ｔｔｈと略同じ値になるまで、ステップ４１０以降の処理が保留される。そのため、ジョブが実行されるよりもかなり早い段階でステージングを実行してしまい、第一階層ストレージ装置１１の容量を無駄に長時間使用してしまったことによる電力の無駄を省くことができる。
【００７９】
次にステップ４１０で、計算機１４からアクセスされるファイル格納用第二ボリューム５２を構成する対象ＲＡＩＤ  Ｇｒ．２：４５の大容量ハードディスク４３の電源を投入（ＯＮ）するよう、ストレージ管理部２８から第二階層ストレージ装置１２に対して、指示する。対象ＲＡＩＤグループは、図１０に示すボリューム管理テーブル：１００を用いて決定することができる。
【００８０】
ステップ４１１で、大容量ハードディスク４３の電源投入が完了し、大容量ハードディスク４３が稼動状態となるまで待つ。
【００８１】
稼動状態となったら（ステップ４１１でＹｅｓ）、ステップ４１２で、ストレージ管理部２８から、ファイルサーバ１３に対して、電源を投入し稼動状態としたファイル格納用第二ボリューム５２をファイル格納用ディレクトリ８１にマウントするように指示を出す。その後、ストレージ管理部２８から第二階層ストレージ装置１２及び第一階層ストレージ装置１１に、アクセスされるファイル格納用第二ボリューム５２、またはそのボリューム内に格納されている、アクセスされるファイルを第一階層ストレージ装置１１のファイル格納用第一ボリューム５１へステージング（コピー）するよう指示する。
【００８２】
ここで、ファイル格納用第一ボリューム５１は複数のボリュームＬＵ０乃至ＬＵｎを有しており、その中のどのボリュームにコピーを行うかを決定する必要がある。それは、これらのボリュームが未使用で、かつそのボリュームのサイズがコピーされるボリュームまたはファイルのサイズ以上であるボリュームの中から選択する。ファイル格納用ボリューム５１の各ボリュームの使用状況及びサイズは、図１１に示すボリューム使用状況管理テーブル：１１０で管理されており、ストレージ管理部２８において、未使用でサイズの条件が合うボリュームをこの表１１０から選択する。
【００８３】
ステップ４１３で、ステージングが完了するまで待つ。
ステージングが完了したら（ステップ４１３でＹｅｓ）、ステップ４１４でファイル格納用ディレクトリ８１にマウントされていた該当するファイル格納用第二ボリューム５２（アクセスされるボリューム）をアンマウントし、ステージングが完了したファイル格納用第一ボリューム５１に当該ディレクトリをマウントしなおす（切り替える）よう、ストレージ管理部２８からファイルサーバ１３に対して、指示する。
【００８４】
図１４にステージングが終了して、マウント切り替えを行った後の、ディレクトリ及びボリュームの状態を示している。この図では、ＪＯＢからアクセスされるファイル格納用第二ボリューム５２がＬＵ００である場合について示している。ＬＵ００に格納されていたファイルが、未使用かつ当該ファイルを格納しうるサイズを持つＬＵ０にステージング（コピー：移動）１１０される。マウント切り替えをした後、ＶＬＵ００（ＬＵ００）とディレクトリｕｓｒ０／ｄｉｒ０とのマッピングは一時的に消滅する。
【００８５】
ステップ４１５で、マウント切り替えが完了するまで待つ。
マウント切り替えが完了したら（ステップ４１５でＹｅｓ）、ステップ４１６で、ステージングが終了した（データ準備が完了した）という情報（ステージング完了情報）をストレージ管理サーバ１９のストレージ管理部２８から計算機管理サーバ１８のＪＯＢ管理部２１へ通知する。計算機管理サーバ１８では、上記ストレージ管理サーバ１９から送信されるステージング完了情報に基づき、各ＪＯＢの実行開始前に、そのＪＯＢの実行に必要なファイルのステージングが完了しているかどうかをチェックして、ステージングが完了していればＪＯＢを実行し、完了していなければステージングが完了した後にＪＯＢを実行するように制御する。つまり、その通知を受信するまでＪＯＢの実行を遅らせる。こうすることによって、ステージング完了前にＪＯＢの実行が開始されて、入出力エラーとなったり、性能の低い第二階層ストレージ装置１２からの入出力を防いだりすることが可能となる。
【００８６】
次にステップ４１７で、アンマウントしたファイル格納用第二ボリューム５２を構成するＲＡＩＤ  Ｇｒ．２：４５を構成する大容量ハードディスク２３の電源を切る（ＯＦＦ）ように、ストレージ管理部２８から第二階層ストレージ装置１２に対して、指示する。指示した後、ステップ４０１に戻る。
【００８７】
次にステップ４１８以降の処理について説明するが、これらの処理はＪＯＢ実行終了時（ステップ４０３でＹｅｓ）に行う処理である。ステップ４１８では、実行が終了したＪＯＢからアクセスされていたファイル／ディレクトリが元々格納／マウントされていたファイル格納用第二ボリューム５２を構成する対象ＲＡＩＤ  Ｇｒ．２：４５の大容量ハードディスク４３の電源を投入（ＯＮ）するよう、ストレージ管理部２８から第二階層ストレージ装置１２に対して、指示する。
【００８８】
ステップ４１９で、大容量ハードディスク４３の電源投入が完了し、大容量ハードディスク４３が稼動状態となるまで待つ。
【００８９】
稼動状態となったら（ステップ４１９でＹｅｓ）、ステップ４２０で、ストレージ管理部２８から第一階層ストレージ装置１１及び第二階層ストレージ装置１２に、第一階層ストレージ装置１１の該当するＪＯＢからアクセスされていたファイル格納用第一ボリューム５１、またはそのボリューム内に格納されているアクセスされるファイルを、元々のファイル格納用第二ボリューム５１へデステージング（コピー）するよう指示する。なお、デステージングの完了後、ファイル格納用第一ボリューム５１に格納されているファイルは、タイミングを問わず、削除するようにしても良い。
【００９０】
ステップ４２１で、デステージングが完了するまで待つ。
デステージングが完了したら（ステップ４２１でＹｅｓ）、ステップ４２２でファイル格納用ディレクトリ８１にマウントされていた該当するファイル格納用第一ボリューム５１（アクセスされていたボリューム）をアンマウントし、デステージングが完了したファイル格納用第二ボリューム５２に当該ディレクトリをマウントしなおす（切り替える）よう、ストレージ管理部２８からファイルサーバ１３に対して、指示する。
【００９１】
ステップ４２３で、マウント切り替えが完了するまで待つ。
マウント切り替えが完了したら（ステップ４２３でＹｅｓ）、ステップ４２４で、デステージングの終了したファイル格納用第二ボリューム５２をファイル格納用ディレクトリ８１からアンマウントするように、ストレージ管理部２８からファイルサーバ１３に対して、指示する。
【００９２】
次に、ステップ４２５で、デステージングの終了したファイル格納用第二ボリューム５２を構成する大容量ハードディスク２３の電源を切る（ＯＦＦ）よう、ストレージ管理部２８から第二階層ストレージ装置１２に対して、指示する。指示した後、ステップ４０１に戻る。
【００９３】
本実施形態によれば、計算機１４で実行されるＪＯＢが必要なときに、必要なファイルを第一階層ストレージ装置１１にステージングできるため、第一階層ストレージ装置１１の高性能を活かして計算機１４へのファイルの入出力を高速化することが可能となる。また、第二階層ストレージ装置１２の大容量ハードディスク４３は、アクセスされるとき以外は電源を切っておくことが可能となる。さらに、第一階層ストレージ装置１１の容量を最小限にすることが可能となる。したがって、ストレージシステム２の消費電力量を削減することが可能となる。よって、高性能が要求されるバッチ処理型のアプリケーション向けに、性能劣化を最小限に抑え、且つ、低消費電力を可能とする高速・大容量の階層ストレージシステムを提供することが可能となる。
【００９４】
≪第二の実施形態≫
次に、本発明の第二の実施形態について説明する。
図１５（図１５Ａ〜図１５Ｃの総称）に、第二の実施形態のステージング／デステージングの手順を示す。図１５に示す手順は、以下の点を除いて、図１２に示す手順と同様である（図１５のステップ５０１からステップ５２５はそれぞれ、以下の点を除いて、図１２のステップ４０１からステップ４２５と同様である）。
異なる点は、ＪＯＢの実行の遅延、ステージングの開始タイミングを判断するために、平均の待ち時間ではなく、キュー内に待っているＪＯＢの数を利用する点である。以下、その異なる点について説明する。
【００９５】
そのため、ステップ５０４では、該当するキュー内に待っているＪＯＢの数（待ちＪＯＢ数）とそのキューにあった実行中のＪＯＢの数（実行中ＪＯＢ数）の和（図６中のｋに相当）を抽出する。また、ＪＯＢの平均実行頻度μ（図６参照）の逆数をとり、平均ＪＯＢ実行時間Ｔｅ（ＪＯＢ実行時間の平均値）を算出する。
【００９６】
また、ステップ５０５では、ＪＯＢの実行の遅延、ステージングの開始タイミングを判断するための、ｋの閾値数（ｋｔｈ）を待ち行列理論により算出する。ｋｔｈは、ステップ５０４で求める平均ＪＯＢ実行時間と閾値時間Ｔｔｈ、及び閾値数をｋｔｈとしたときに、ＪＯＢ実行開始前までに、アクセスされるファイル／ボリュームのステージングを終了できない確率（失敗確率）を用いて、待ち行列理論から導出される式を使って計算する。失敗確率の上限値は、予め指定する（メモリ９４に記憶される）。その上限値以下になるように、ｋの閾値数（ｋｔｈ）が決定される。
そして、ＪＯＢの実行の遅延、ステージングの開始タイミングを、ステップ５０７及び５０９でそれぞれ判断する。
【００９７】
具体的には、ステップ５０７では、図８に示すＪＯＢキュー情報テーブル：８０を用いて、該当するキュー内に待っているＪＯＢの数とそのキューにあった実行中のＪＯＢの数の和ｋと閾値数（ｋｔｈ）を比較する（待ち行列理論により、Ｔｅ、Ｔｉ、及びＴｔｈからｋｔｈを算出することができる）。ｋが大きい場合は（ステップ５０７でＮｏ）、ステップ５０１へ処理を移す。また、ｋがｋｔｈ以下の場合（ステップ５０７でＹｅｓ）は、ステップ５０８に移る。
【００９８】
ステップ５０９では、該当するキュー内の全てのキューについて、該当するキュー内に待っているＪＯＢの数とそのキューにあった実行中のＪＯＢの数の和ｋを、閾値数（ｋｔｈ）と比較する。比較する際には、例えばＪＯＢキュー情報テーブル２：８０を用いる。そして、ｋがｋｔｈより大きい場合は（ステップ５０９でＮｏ）、ステップ５０１へ処理を移す。また、ｋがｋｔｈ以下の場合は（ステップ５０９でＹｅｓ）、ステップ５１０へ移る。この条件を満たすＪＯＢがあった場合は、少なくともｋｔｈ番目に、該当するＪＯＢの実行が開始される可能性があることを意味する。
【００９９】
このように処理すると、該当するキュー内に待っているＪＯＢの数とそのキューにあった実行中のＪＯＢの数の和ｋが閾値数ｋｔｈよりも大きい場合であっても、結果的には前記和ｋが閾値数ｋｔｈと略同じ値になるまで、ステップ５１０以降の処理が保留される。そのため、ジョブが実行されるよりもかなり早い段階でステージングを実行してしまい、第一階層ストレージ装置１１の容量を無駄に長時間使用してしまったことによる電力の無駄を省くことができる。
【０１００】
本実施形態では、ＪＯＢの実行開始前にステージングを終えることができない確率（失敗確率）を管理者が予め指定する値以下に抑えることが可能となる。
【０１０１】
≪その他≫
前記した各実施形態は、本発明を実施するために好適のものであるが、その実施形式はこれらに限定されるものでなく、本発明の要旨を変更しない範囲内において種々変形することが可能である。
【０１０２】
例えば、ストレージ管理サーバ１９が、計算機管理サーバ１８の機能を兼ねるようなシステム構成にしても良い。具体的には、ストレージ管理サーバ１９が、ＪＯＢ管理部２１、ユーザ管理部２２、情報提供部２３等の機能部を有し、プロセッサ９５が前記機能部による機能を実現するように処理を実行しても良い。
【０１０３】
その他、ハードウェア、ソフトウェア、各フローチャート等の具体的な構成について、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【０１０４】
１  計算機システム
２  ストレージシステム
１１  第一階層ストレージ装置（第一のストレージ装置）
１２  第二階層ストレージ装置（第二のストレージ装置）
１３  ファイルサーバ
１４  計算機
１５  ＬＡＮ
１６  ＩＰスイッチ
１７  ＦＣスイッチ
１８  計算機管理サーバ
１９  ストレージ管理サーバ
２１  ＪＯＢ管理部
２２  ユーザ管理部
２３  情報提供部
２４  情報収集部
２５  情報解析部
２６  ボリューム管理部
２７  ユーザエリア管理部
２８  ストレージ管理部
４２  高速ハードディスク（第一のハードディスク装置）
４３  大容量ハードディスク（第二のハードディスク装置）
５１  ファイル格納用第一ボリューム（第一のボリューム）
５２  ファイル格納用第二ボリューム（第二のボリューム）
６１  ファイル格納用仮想ボリューム
９４  メモリ（記憶部）
９５  プロセッサ（制御部）
９８  プロセッサ（計算機管理サーバ用制御部）
９９  メモリ
【図１】
2010231636.tif 000003
【図２】
2010231636.tif 000004
【図３】
2010231636.tif 000005
【図４】
2010231636.tif 000006
【図５】
2010231636.tif 000007
【図６】
2010231636.tif 000008
【図７】
2010231636.tif 000009
【図８】
2010231636.tif 000010
【図９】
2010231636.tif 000011
【図１０】
2010231636.tif 000012
【図１１】
2010231636.tif 000013
【図１２Ａ】
2010231636.tif 000014
【図１２Ｂ】
2010231636.tif 000015
【図１２Ｃ】
2010231636.tif 000016
【図１３】
2010231636.tif 000017
【図１４】
2010231636.tif 000018
【図１５Ａ】
2010231636.tif 000019
【図１５Ｂ】
2010231636.tif 000020
【図１５Ｃ】
2010231636.tif 000021