(57)【要約】【課題】  寿命が短く、データ書き換えに時間のかかるフラッシュメモリの欠点を補いながら、省電力運転を行い得るストレージ装置及びその制御方法を提案する。【解決手段】  ストレージ装置は、複数の不揮発性メモリがそれぞれ提供する記憶領域をプールとして管理すると共に、ホスト装置に仮想的なボリュームを提供し、ホスト装置からのデータの書込み要求に応じて仮想プールから仮想的なボリュームに記憶領域を動的に割り当て、割り当てた記憶領域に前記データを配置する。そしてホスト装置からのデータの配置先を一部の不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させ、起動中の不揮発性メモリが提供する記憶領域に対するデータの書換え回数及び又はアクセス頻度を監視し、データの書換え回数が増大した場合には他の記憶領域にデータを移動させ、アクセス頻度が過多になった場合にはデータの配置先を分散させる。【選択図】        図１３
2011128895.tif 000002
【特許請求の範囲】
【請求項１】
計算機システムにおいて、
ホスト装置がデータを読み書きするための記憶領域を提供するストレージ装置と、
前記ストレージ装置を管理する管理装置と
を備え、
前記ストレージ装置は、
前記記憶領域を提供する複数の不揮発性メモリと、
前記不揮発性メモリに対する前記ホスト装置からのデータの読み書きを制御するコントローラとを有し、
前記コントローラは、
前記複数の不揮発性メモリがそれぞれ提供する前記記憶領域をプールとしてまとめて管理すると共に、前記ホスト装置に対して仮想的なボリュームを提供し、当該仮想的なボリュームに対する前記ホスト装置からのデータの書込み要求に応じて前記仮想プールから前記仮想的なボリュームに前記記憶領域を動的に割り当て、割り当てた前記記憶領域に前記データを配置し、
前記管理装置は、
前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御し、
起動中の前記不揮発性メモリが提供する記憶領域に対するデータの書換え回数及び又はアクセス頻度を監視し、
一部の前記不揮発性メモリが提供する記憶領域におけるデータの書換え回数が増大した場合には、他の前記不揮発性メモリが提供するデータの書換え回数が少ない記憶領域にデータを移動させるように前記ストレージ装置を制御し、一部の前記不揮発性メモリが提供する記憶領域に対するアクセス頻度が過多になった場合には、電源供給を停止している前記不揮発性メモリを起動することによりデータの配置先を分散させるように前記ストレージ装置を制御する
ことを特徴とする計算機システム。
【請求項２】
前記不揮発性メモリは、フラッシュメモリである
ことを特徴とする請求項１に記載の計算機システム。
【請求項３】
前記管理装置は、
未使用の前記不揮発性メモリが最大化するように、前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させる
ことを特徴とする請求項１に記載の計算機システム。
【請求項４】
前記管理装置は、
予め設定されたスケジュールを管理し、
いずれかのスケジュールの開始時間から終了時間までの間は、電源供給を停止していた前記不揮発性メモリを起動させることにより複数の前記不揮発性メモリがそれぞれ提供する記憶領域にデータを分散させるように前記ストレージ装置を制御し、
当該スケジュールの終了時間が経過すると、データの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御する
ことを特徴とする請求項１に記載の計算機システム。
【請求項５】
前記管理装置は、
前記仮想プールの稼働状況に関する情報を前記ストレージ装置から取得し、
ユーザからの指示に応じて又は定期的に前記情報をレポート出力する
ことを特徴とする請求項１に記載の計算機システム。
【請求項６】
ホスト装置がデータを読み書きするための記憶領域をそれぞれ提供する複数の不揮発性メモリを有するストレージ装置の制御方法において、
前記ストレージ装置は、
前記複数の不揮発性メモリがそれぞれ提供する前記記憶領域をプールとしてまとめて管理すると共に、前記ホスト装置に対して仮想的なボリュームを提供し、当該仮想的なボリュームに対する前記ホスト装置からのデータの書込み要求に応じて前記仮想プールから前記仮想的なボリュームに前記記憶領域を動的に割り当て、割り当てた前記記憶領域に前記データを配置し、
前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御する第１のステップと、
起動中の前記不揮発性メモリが提供する記憶領域に対するデータの書換え回数及び又はアクセス頻度を監視する第２のステップと、
一部の前記不揮発性メモリが提供する記憶領域におけるデータの書換え回数が増大した場合には、他の前記不揮発性メモリが提供するデータの書換え回数が少ない記憶領域にデータを移動させるように前記ストレージ装置を制御し、一部の前記不揮発性メモリが提供する記憶領域に対するアクセス頻度が過多になった場合には、電源供給を停止している前記不揮発性メモリを起動することによりデータの配置先を分散させるように前記ストレージ装置を制御する第３のステップと
を備えることを特徴とするストレージ装置の制御方法。
【請求項７】
前記不揮発性メモリは、フラッシュメモリである
ことを特徴とする請求項６にストレージ装置の制御方法。
【請求項８】
前記第１のステップでは、
未使用の前記不揮発性メモリが最大化するように、前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させる
ことを特徴とする請求項６に記載のストレージ装置の制御方法。
【請求項９】
前記第１乃至第３のステップの処理と並行して、
予め設定されたスケジュールを管理し、
いずれかのスケジュールの開始時間から終了時間までの間は、電源供給を停止していた前記不揮発性メモリを起動させることにより複数の前記不揮発性メモリがそれぞれ提供する記憶領域にデータを分散させるように前記ストレージ装置を制御し、
当該スケジュールの終了時間が経過すると、データの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御する
ことを特徴とする請求項６に記載のストレージ装置の制御方法。
【請求項１０】
前記第１乃至第３のステップの処理と並行して、
前記仮想プールの稼働状況に関する情報を前記ストレージ装置から取得し、
ユーザからの指示に応じて又は定期的に前記情報をレポート出力する
ことを特徴とする請求項６に記載のストレージ装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はストレージ装置及びその制御方法に関し、例えば記憶媒体としてフラッシュメモリが搭載されたストレージ装置に適用して好適なものである。
【背景技術】
【０００２】
フラッシュメモリを記憶媒体とするストレージ装置は、小型ディスクドライブを多数備えるストレージ装置に比べ、省電力及びアクセス時間等に優れている。しかしながら、フラッシュメモリは、データの書き換えのために以下の手順を踏む必要があるため、書き換えに時間を要する問題がある。
【０００３】
（ステップ１）有効領域（現在使われているデータが格納されている領域）のデータを退避する。
（ステップ２）無効領域（現在使われていないデータが格納されている領域）のデータを消去する。
（ステップ３）未使用領域（データを消去した領域）に、新たなデータを書き込む。
【０００４】
またフラッシュメモリはデータの消去回数に制限があり、消去回数が増大した記憶領域は使用不能となる。この問題に対し、複数のフラッシュメモリに渡って消去回数を平準化する方法（以下、これを消去回数平準化方法と呼ぶ）が特許文献１に開示されている。この消去回数平準化方法は以下の手順により実行される。
【０００５】
（ステップ１）複数のフラッシュメモリ（ＰＤＥＶ）をまとめたウェアレベリンググループ（ＷＤＥＶ）を定義する。
（ステップ２）ＷＤＥＶ内の複数のＰＤＥＶの論理ページアドレスをまとめて仮想ページアドレスにマッピングする。
（ステップ３）複数のＷＤＥＶを組み合わせてＲＡＩＤ（Redundant Arrays of Independent Disks）グループ（冗長化グループ）を構成する。
（ステップ４）１つのＲＡＩＤグループ内の領域を組み合わせて、又は、複数のＲＡＩＤグループで論理ボリュームを構成する。
（ステップ５）ストレージコントローラが、論理ページアドレス空間内の所定領域ごとの延べ書き込み容量を計数管理し、論理ページアドレス間のデータ移動と論理対仮想ページアドレス・マッピング変更により消去回数平準化を実行する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２６５３６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところが、かかる消去回数平準化方法により複数のフラッシュメモリに渡って消去回数を平準化するためにはフラッシュメモリを常時起動しておく必要があり、このため消費電力を抑えることができない問題があった。またかかる消去回数平準化方法によると、データの書き換えに多くの時間を要し、その間ストレージ装置のＩ／Ｏ性能が劣化する問題があった。
【０００８】
本発明は以上の点を考慮してなされたもので、寿命が短く、データ書き換えに時間のかかるフラッシュメモリの欠点を補いながら、省電力運転を行い得るストレージ装置及びその制御方法を提案しようとするものである。
【課題を解決するための手段】
【０００９】
かかる課題を解決するため本発明においては、計算機システムにおいて、ホスト装置がデータを読み書きするための記憶領域を提供するストレージ装置と、前記ストレージ装置を管理する管理装置とを備え、前記ストレージ装置は、前記記憶領域を提供する複数の不揮発性メモリと、前記不揮発性メモリに対する前記ホスト装置からのデータの読み書きを制御するコントローラとを有し、前記コントローラは、前記複数の不揮発性メモリがそれぞれ提供する前記記憶領域をプールとしてまとめて管理すると共に、前記ホスト装置に対して仮想的なボリュームを提供し、当該仮想的なボリュームに対する前記ホスト装置からのデータの書込み要求に応じて前記仮想プールから前記仮想的なボリュームに前記記憶領域を動的に割り当て、割り当てた前記記憶領域に前記データを配置し、前記管理装置は、前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御し、起動中の前記不揮発性メモリが提供する記憶領域に対するデータの書換え回数及び又はアクセス頻度を監視し、一部の前記不揮発性メモリが提供する記憶領域におけるデータの書換え回数が増大した場合には、他の前記不揮発性メモリが提供するデータの書換え回数が少ない記憶領域にデータを移動させるように前記ストレージ装置を制御し、一部の前記不揮発性メモリが提供する記憶領域に対するアクセス頻度が過多になった場合には、電源供給を停止している前記不揮発性メモリを起動することによりデータの配置先を分散させるように前記ストレージ装置を制御することを特徴とする。
【００１０】
また本発明においては、ホスト装置がデータを読み書きするための記憶領域をそれぞれ提供する複数の不揮発性メモリを有するストレージ装置の制御方法において、前記ストレージ装置は、前記複数の不揮発性メモリがそれぞれ提供する前記記憶領域をプールとしてまとめて管理すると共に、前記ホスト装置に対して仮想的なボリュームを提供し、当該仮想的なボリュームに対する前記ホスト装置からのデータの書込み要求に応じて前記仮想プールから前記仮想的なボリュームに前記記憶領域を動的に割り当て、割り当てた前記記憶領域に前記データを配置し、前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御する第１のステップと、起動中の前記不揮発性メモリが提供する記憶領域に対するデータの書換え回数及び又はアクセス頻度を監視する第２のステップと、一部の前記不揮発性メモリが提供する記憶領域におけるデータの書換え回数が増大した場合には、他の前記不揮発性メモリが提供するデータの書換え回数が少ない記憶領域にデータを移動させるように前記ストレージ装置を制御し、一部の前記不揮発性メモリが提供する記憶領域に対するアクセス頻度が過多になった場合には、電源供給を停止している前記不揮発性メモリを起動することによりデータの配置先を分散させるように前記ストレージ装置を制御する第３のステップとを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、寿命が短く、データ書き換えに時間のかかるフラッシュメモリの欠点を補いながら、省電力運転を行い得るストレージ装置及びその制御方法を実現できる。
【図面の簡単な説明】
【００１２】
【図１】本実施の形態による計算機システムの全体構成を示すブロック図である。
【図２】フラッシュメモリ・モジュールの概略構成を示すブロック図である。
【図３】フラッシュメモリ・チップの説明に供する概念図である。
【図４】ストレージ装置における記憶領域の管理概要の説明に供する概念図である。
【図５】本実施の形態によるデータ配置先管理機能の説明に供する概念図である。
【図６】本実施の形態によるデータ配置先管理機能の説明に供する概念図である。
【図７】管理サーバのメモリに格納された各種制御プログラム及び各種管理テーブルの説明に供するブロック図である。
【図８】ＲＡＩＤグループ管理テーブルの説明に供する概念図である。
【図９】論理デバイス管理テーブルの説明に供する概念図である。
【図１０】スケジュール管理テーブルの説明に供する概念図である。
【図１１】仮想プール稼働情報管理テーブルの説明に供する概念図である。
【図１２】論理デバイス情報収集処理の処理手順を示すフローチャートである。
【図１３】データ配置先管理処理の処理手順を示すフローチャートである。
【図１４】データ配置先分散処理の処理手順を示すフローチャートである。
【図１５】データ配置先集中処理の処理手順を示すフローチャートである。
【図１６】スケジュール処理の処理手順を示すフローチャートである。
【図１７】新規仮想プール登録処理の処理手順を示すフローチャートである。
【図１８】テーブル更新処理の処理手順を示すフローチャートである。
【図１９】レポート出力処理の処理手順を示すフローチャートである。
【図２０】レポート画面の構成例を示す略線図である。
【符号の説明】
【００１３】
１……計算機システム、２……業務ホスト、３……管理サーバ、４……ストレージ装置、２０，３１……ＣＰＵ、２１，３２……メモリ、３５……フラッシュメモリ・モジュール、４０……フラッシュメモリ・チップ、４１……フラッシュメモリ、４３……ブロック、５０……ページ、６０……データ配置先管理プログラム、６１……スケジュール管理プログラム、６２……仮想プール稼働状況レポートプログラム、６３……ＲＡＩＤグループ管理テーブル、６４……論理デバイス管理テーブル、６５……スケジュール管理テーブル、６６……仮想プール稼働情報管理テーブル、７０……レポート画面、ＤＰＰ……仮想プール、ＤＰ−ＶＯＬ……仮想ボリューム、ＬＤＥＶ……論理デバイス、ＰＤＥＶ……物理デバイス、ＲＧ……ＲＡＩＤグループ。
【発明を実施するための最良の形態】
【００１４】
以下図面について、本発明の一実施の形態を詳述する。
【００１５】
（１）本実施の形態による計算機システムの構成
図１において、１は全体として本実施の形態による計算機システムを示す。この計算機システム１は、複数の業務ホスト２、管理サーバ３及びストレージ装置４を備えて構成される。各業務ホスト２は、ネットワーク５を介してストレージ装置４と接続されると共に、管理用ネットワーク６を介して管理サーバ３と接続されている。また管理サーバ３は、管理用ネットワーク６を介してストレージ装置４と接続されている。
【００１６】
ネットワーク５は、例えばＳＡＮ（Storage Area Network）、インターネットから構成される。このネットワーク５を介した業務ホスト２及びストレージ装置４間の通信は、ファイバーチャネルプロトコルに従って行われる。また管理用ネットワーク６は、例えばＬＡＮ（Local Area Network）などから構成される。この管理用ネットワーク６を介した管理サーバ３と、業務ホスト２又はストレージ装置４と間の通信は、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）プロトコルに従って行われる。
【００１７】
業務ホスト２は、ＣＰＵ（Central Processing Unit）１０、メモリ１１及び複数のインタフェース１２Ａ，１２Ｂ等を備えたコンピュータ装置であり、パーソナルコンピュータやワークステーション、メインフレームコンピュータなどから構成される。業務ホスト２のメモリ１１には、当該業務ホスト２を使用するユーザの業務内容に応じたアプリケーションソフトウェアが格納されており、ＣＰＵ１０がこのアプリケーションソフトウェアを実行することにより、業務ホスト２全体としてかかるユーザの業務内容に応じた処理が実行される。そして、ＣＰＵ１０がこのようなユーザの業務内容に応じた処理を実行する際に使用するデータがネットワーク５を介してストレージ装置４に読み書きされる。
【００１８】
管理サーバ３は、ＣＰＵ２０、メモリ２１及びインタフェース２２等を備えたサーバ装置であり、インタフェース２２を介して管理用ネットワーク６に接続されている。後述のように、管理サーバ３のメモリ２１には、各種制御プログラム及び各種の管理テーブルが格納されており、ＣＰＵ２０がこれらの制御プログラムを実行することにより、管理サーバ３全体として後述のようなデータ配置先管理処理を実行する。
【００１９】
ストレージ装置４は、複数のネットワークインタフェース３０Ａ，３０Ｂと、ＣＰＵ３１及びメモリ３２を含むコントローラ３３と、ドライブインタフェース３４と、複数のフラッシュメモリ・モジュール３５とを備えて構成される。
【００２０】
ネットインタフェース３０Ａは、ストレージ装置４がネットワーク５を介して業務ホスト２とデータを送受するためのインタフェースであり、ストレージ装置４及び業務ホスト２間の通信時におけるプロトコル変換などの処理を実行する。またネットインタフェース３０Ｂは、ストレージ装置４が管理用ネットワーク６を介して管理サーバ３と通信を行うためのインタフェースであり、ストレージ装置４及び管理サーバ３間の通信時におけるプロトコル変換などの処理を実行する。さらにドライブインタフェース３４は、フラッシュメモリ・モジュール３５との間のインタフェースとして機能する。
【００２１】
コントローラ３３のメモリ３２は、業務ホスト２によりフラッシュメモリ・モジュール３５に読み書きされるデータを一時的に保持するために用いられるほか、ＣＰＵ３１のワークメモリとしても用いられる。各種の制御プログラムもこのメモリ３２に保持される。ＣＰＵ３１は、ストレージ装置４全体の動作制御を司るプロセッサであり、メモリ３２に格納された各種制御プログラムを実行することにより、業務ホスト２からのデータをフラッシュメモリ・モジュール３５に読み書きする。
【００２２】
ドライブインタフェース３４は、フラッシュメモリ・モジュール３５との間のプロトコル変換等を行うインタフェースである。後述のようなフラッシュメモリ・モジュール３５の電源制御（電源のオン／オフ）も、このドライブインタフェース３４により行われる。
【００２３】
フラッシュメモリ・モジュール３５は、図２に示すように、複数のフラッシュメモリ・チップ４０から構成されるフラッシュメモリ４１と、フラッシュメモリ４１に対するデータの読み書きを制御するメモリコントローラ４２とから構成される。
【００２４】
フラッシュメモリ・チップ４０は、複数の単位容量の記憶領域（以下、これをブロックと呼ぶ）４３から構成される。ブロック４３は、メモリコントローラ４２がデータを消去する単位である。またブロック４３は、後述のように複数のページを含む。ページは、メモリコントローラ４２がデータを読み書きする単位である。なおページは、有効ページ、無効ページ又は未使用ページのいずれかに分類される。有効ページは、有効なデータを記憶しているページであり、無効ページは、無効なページを記憶しているページである。また未使用ページは、データを記憶していないページである。
【００２５】
図３は、１つのフラッシュメモリ・チップ４０におけるブロック構成を示す。ブロック４３は、一般的に数十程度（例えば３２又は６４）のページ５０から構成される。ページ５３は、メモリコントローラ４２がデータを読み書きする単位であり、例えば５１２バイトのデータ部５１と、例えば１６バイトの冗長部５２とから構成される。
【００２６】
データ部５１には、通常のデータが格納され、冗長部５２には、そのページ管理情報及びエラー訂正情報が格納される。ページ管理情報には、オフセットアドレス及びページステータスが含まれる。オフセットアドレスは、そのページ５０が属するブロック４３内における相対的なアドレスである。またページステータスは、そのページ５０が有効ページ、無効ページ、未使用ページ及び処理中のページのうちのいずれであるかを示す情報である。エラー訂正情報は、そのページ５０のエラーを検出及び訂正するための情報であり、例えばハミングコードが用いられる。
【００２７】
（２）ストレージ装置に搭載された各種機能
次に、ストレージ装置４に搭載された各種機能について説明する。これに際して、まず、ストレージ装置４における記憶領域の管理方法について説明する。
【００２８】
図４は、ストレージ装置４における記憶領域の管理方法の概要を示す。この図４に示すように、ストレージ装置４においては、１つのフラッシュメモリ・モジュール３５が１つの物理デバイスＰＤＥＶとして管理され、複数の物理デバイスＰＤＥＶにより１つのウェアレベリンググループＷＤＥＶが定義される。
【００２９】
また１つのウェアレベリンググループＷＤＥＶを構成する各物理デバイスＰＤＥＶが提供する記憶領域から１又は複数のＲＡＩＤグループＲＧが構成され、１つのＲＡＩＤグループＲＧから切り出された記憶領域（つまり１つのＲＡＩＤグループＲＧの一部の記憶領域）が論理デバイスＬＤＥＶとして定義される。さらに複数の論理デバイスＬＤＥＶをまとめて１つの仮想プールＤＰＰが定義され、この仮想プールＤＰＰに１又は複数の仮想ボリュームＤＰ−ＶＯＬが対応付けられる。ストレージ装置４は、この仮想ボリュームＤＰ−ＶＯＬを記憶領域として業務ホスト２に提供する。
【００３０】
そして業務ホスト２から仮想ボリュームＤＰ−ＶＯＬに対してデータの書き込みがあった場合、その仮想ボリュームＤＰ−ＶＯＬにおけるデータの書込み先の領域に対して仮想プールＤＰＰからいずれかの論理デバイスＬＤＥＶの記憶領域が割り当てられ、この記憶領域にそのデータが書き込まれる。
【００３１】
この場合、データの書込み先の領域に記憶領域を割り当てる論理デバイスＬＤＥＶはランダムに選択される。このため複数の論理デバイスＬＤＥＶが存在する場合には、これら複数の論理デバイスＬＤＥＶにデータが分散されて格納される。
【００３２】
そこで本実施の形態の場合、ストレージ装置４には、図５に示すように、通常時にはデータの配置先を一部の論理デバイスＬＤＥＶに集中させることで未使用の物理デバイスＰＤＥＶ（フラッシュメモリ・モジュール３５）数を最大化し、これら未使用の物理デバイスＰＤＥＶの電源供給を停止（オフ）させる一方、起動中の論理デバイスＬＤＥＶに対するデータの書換え回数やアクセス頻度が増大した場合には、図６に示すように、データ書換え回数が増大した論理デバイスＬＤＥＶに格納されているデータを書換え回数の少ない論理デバイスＬＤＥＶに移動させたり、アクセス頻度が過大になった論理デバイスＬＤＥＶに格納されているデータを他の論理デバイスＬＤＥＶに分散させるデータ配置先管理機能が搭載されている。
【００３３】
これによりストレージ装置４においては、このデータ配置先管理機能によってデータの配置先を適宜変更することができ、かくしてフラッシュメモリ・モジュール３５に含まれるフラッシュメモリ４１（図２）の寿命を平準化しながら、通常時には省電力運転を行い得るようになされている。
【００３４】
またストレージ装置４には、ユーザにより設定されたスケジュールに従って、その開始時間から終了時間までの間、データを複数の論理デバイスＬＤＥＶに分散させる処理を実行し、終了時間が経過すると、データを再度一部の論理デバイスＬＤＥＶに集中させるスケジュール処理機能も搭載されている。
【００３５】
これによりストレージ装置４においては、このスケジュール処理機能によって、予めアクセスが増加することが分かっている時間帯にはデータを複数の論理デバイスＬＤＥＶに分散させてＩ／Ｏ性能の劣化を防止し、その時間帯の終了後には再度データを一部の論理デバイスＬＤＥＶに集中させることにより省電力運転を行い得るようになされている。
【００３６】
加えて、ストレージ装置４には、仮想プールＤＰＰの稼働状態をレポートする仮想プール稼働状況レポート機能も搭載されている。これによりストレージ装置４においては、この仮想プール稼働状況レポート機能によって、ユーザがストレージ装置４内の仮想プールＤＰＰの稼働状況を容易に認識し得るようになされている。
【００３７】
以上のようなデータ配置先管理機能、スケジュール処理機能及び仮想プール稼働状況レポート機能を実行するための手段として、図７に示すように、管理サーバ３のメモリ２１には、データ配置先管理プログラム６０、スケジュール管理プログラム６１及び仮想プール稼働状況レポートプログラム６２と、ＲＡＩＤグループ管理テーブル６３、論理デバイス管理テーブル６４、スケジュール管理テーブル６５及び仮想プール稼働情報管理テーブル６６とが格納されている。
【００３８】
データ配置先管理プログラム６０は、上述のデータ配置先管理機能を実現するため、複数の論理デバイスＬＤＥＶに分散されて格納されているデータを一部の論理デバイスＬＤＥＶに集中させるデータ配置先集中処理や、一部の論理デバイスＬＤＥＶに集中して格納されているデータを複数の論理デバイスＬＤＥＶに分散させるデータ配置先分散処理を実行するプログラムである。
【００３９】
またスケジュール管理プログラム６１は、上述のスケジュール処理機能を実現するため、予めユーザによりスケジュールされた時間帯に上述のデータ配置先分散処理を行い、その時間帯の経過後に上述のデータ配置先集中処理を実行するプログラムである。
【００４０】
さらに仮想プール稼働状況レポートプログラム６２は、上述の仮想プール稼働状況レポート機能を実現するため、仮想プール稼働情報管理テーブル６６を適宜更新し、この仮想プール稼働情報管理テーブル６６に基づき、ユーザ指示に応じて又は定期的に、仮想プールＤＰＰの稼働状況をレポート出力するプログラムである。
【００４１】
一方、ＲＡＩＤグループ管理テーブル６３は、ストレージ装置４内に定義されたＲＡＩＤグループＲＧを管理するためのテーブルであり、図８に示すように、ＲＡＩＤグループ番号欄６３Ａ、物理デバイス番号欄６３Ｂ、論理デバイス番号欄６３Ｃ、平均データ消去回数欄６３Ｄ、消去可能回数欄６３Ｅ、ＩＯＰＳ欄６３Ｆ、処理性能欄６３Ｇ、移行フラグ欄６３Ｈ及び電源状態欄６３Ｉから構成される。
【００４２】
そしてＲＡＩＤグループ番号欄６３Ａには、ストレージ装置４内に定義された各ＲＡＩＤグループＲＧにそれぞれ付与された識別番号（ＲＡＩＤグループ番号）が格納され、物理デバイス番号欄６３Ｂには、対応するＲＡＩＤグループＲＧを構成する各フラッシュメモリ・モジュール３５（図１）にそれぞれ付与された識別番号（物理デバイス番号）が格納される。また、論理デバイス番号欄６３Ｃには、そのＲＡＩＤグループＲＧから切り出された各論理デバイスＬＤＥＶにそれぞれ付与された識別番号（論理デバイス番号）が格納される。
【００４３】
さらに平均データ消去回数欄６３Ｄには、対応するフラッシュメモリ・モジュール３５内の各ブロック４３（図２）におけるデータの消去回数の平均値が格納され、消去可能回数欄６３Ｅには、そのフラッシュメモリ・モジュール３５内のブロック４３におけるデータの消去可能回数の最大値が格納される。またＩＯＰＳ欄６３Ｆには、対応するフラッシュメモリ・モジュール３５に対する単位時間当たりのＩ／Ｏ回数（ＩＯＰＳ）が格納され、処理性能欄６３Ｇには、そのフラッシュメモリ・モジュール３５における単位時間当たりのＩ／Ｏ処理の処理可能回数が格納される。なお消去可能回数欄６３Ｅ及び処理性能欄６３Ｇに格納される数値は、いずれも対応するフラッシュメモリ・モジュール３５を構成する各フラッシュメモリ・チップ４０（図２）のスペックの値である。
【００４４】
さらに移行フラグ欄６３Ｈには、データ移行に関するフラグ（以下、これを移行フラグと呼ぶ）が格納される。具体的には、対応するＲＡＩＤグループＲＧから切り出された論理デバイスＬＤＥＶに格納されたデータを他のＲＡＩＤグループＲＧから切り出された論理デバイスＬＤＥＶに移行させる場合には「移行元」、他のＲＡＩＤグループＲＧから切り出された論理デバイスＬＤＥＶに格納されているデータを、対応するＲＡＩＤグループＲＧから切り出された論理デバイスＬＤＥＶに移行する場合には「移行先」、これら以外の場合には「初期値」をそれぞれ表す移行フラグが格納される。
【００４５】
さらに電源状態欄６３Ｉには、対応するＲＡＩＤグループＲＧを構成する各フラッシュメモリ・モジュール３５の電源状態が格納される。例えば、かかる各フラッシュメモリ・モジュール３５の電源が供給されている場合には電源状態として「オン」が格納され、かかる各フラッシュメモリ・モジュール３５の電源供給が停止されている場合には電源状態として「オフ」が格納される。
【００４６】
従って、例えば図８の例の場合には、ストレージ装置４内には「RG#1」及び「RG#2」というＲＡＩＤグループＲＧが存在し、このうち「RG#1」というＲＡＩＤグループＲＧは「PDEV#1」〜「PDEV#4」という４つのフラッシュメモリ・モジュール３５から構成され、「PDEV#1」というフラッシュメモリ・モジュール３５からは「LDEV#1」〜「LDEV#3」という３つの論理デバイスＬＤＥＶが切り出されていることが分かる。また、例えば「PDEV#1」というフラッシュメモリ・モジュール３５においては、各ブロック４３におけるデータの消去回数の平均値、ブロック当たりの消去可能回数、単位時間当たりのアクセス回数、単位時間当たりの処理性能がそれぞれ「200」、「100000」、「3000」及び「10000」であり、これらフラッシュメモリ・モジュール３５は電源がオン状態にあることも分かる。
【００４７】
論理デバイス管理テーブル６４は、仮想プールＤＰＰを構成する論理デバイスＬＤＥＶを管理するためのテーブルであり、仮想プールＤＰＰごとに作成される。この論理デバイス管理テーブル６４は、図９に示すように、論理デバイス番号欄６４Ａ、物理デバイス番号欄６４Ｂ、容量欄６４Ｃ、有効ページ欄６４Ｄ、無効ページ欄６４Ｅ、未使用ページ欄６４Ｆ及びデータ消去回数欄６４Ｇから構成される。
【００４８】
そして論理デバイス番号欄６４Ａには、対応する仮想プールＤＰＰを構成する各論理デバイスＬＤＥＶの論理デバイス番号が格納され、物理デバイス番号欄６４Ｂには、対応する論理デバイスＬＤＥＶを構成するすべてのフラッシュメモリ・モジュール３５の物理デバイス番号が格納される。
【００４９】
また容量欄６４Ｃには、対応する論理デバイスＬＤＥＶの容量が格納され、有効ページ欄６４Ｄ、無効ページ欄６４Ｅ及び未使用ページ欄６４Ｆには、それぞれ対応する論理デバイスＬＤＥＶにおける有効ページ（有効領域）の合計容量、無効ページ（無効領域）の合計容量及び未使用ページ（未使用領域）の合計容量がそれぞれ格納される。さらにデータ消去回数欄６４Ｇには、対応する論理デバイスＬＤＥＶ内においてブロック４３に格納されているデータを消去した回数が格納される。
【００５０】
従って、図９の例の場合、例えば「LDEV#1」という論理デバイスＬＤＥＶは、「PDEV#1」〜「PDEV#4」という４つの物理デバイス（フラッシュメモリ・モジュール３５）が提供する記憶領域に跨って定義されており、その容量は「100[GB]」で、有効ページの合計容量は「10[GB]」、無効ページの合計容量は「20[GB]」、未使用ページの合計容量は「70[GB]」であって、現在のデータの消去回数が「100」であることが示されている。
【００５１】
スケジュール管理テーブル６５は、バッチ処理等の性能が要求される処理をスケジュールとして登録することにより、データ配置先管理処理を行うために利用されるテーブルであり、図１０に示すように、スケジュール名欄６５Ａ、実行間隔欄６５Ｂ、開始時間欄６５Ｃ、終了時間欄６５Ｄ及び必要スペック欄６５Ｅから構成される。
【００５２】
そしてスケジュール名欄６５Ａには、ユーザにより登録されたスケジュールのスケジュール名が格納され、実行間隔欄６５Ｂには、そのスケジュールを実行する間隔が格納される。また開始時間欄６５Ｃ及び終了時間欄６５Ｄには、それぞれユーザにより登録されたそのスケジュールを開始又は終了すべき時間が格納され、必要スペック欄６５Ｅには、そのスケジュールに対応する処理を実行するのに必要なＲＡＩＤグループＲＧの個数（以下、これを必要スペックと呼ぶ）が格納される。
【００５３】
なお、このスケジュール管理テーブル６５は、ユーザがスケジュール登録を行う任意のタイミングでデータが更新される。また必要スペック欄６５Ｅに格納される必要スペックは、そのスケジュールに対応する処理の実行後に更新される。
【００５４】
仮想プール稼働情報管理テーブル６６は、仮想プールＤＰＰを構成する物理デバイスＰＤＥＶ（フラッシュメモリ・モジュール３５）の稼働状況を管理するために利用されるテーブルであり、図１１に示すように、仮想プール番号欄６６Ａ、仮想プール作成日時欄６６Ｂ、物理デバイス番号欄６６Ｃ、起動状態欄６６Ｄ、起動状態最終更新時刻欄６６Ｅ及び累計稼働時間欄６６Ｆから構成される。
【００５５】
そして仮想プール番号欄６６Ａには、ストレージ装置４内に定義されている仮想プールＤＰＰの識別番号（仮想プール番号）が格納され、仮想プール作成日時欄６６Ｂには、対応する仮想プールＤＰＰの作成日時が格納される。また物理デバイス番号欄６６Ｃには、対応する仮想プールＤＰＰを構成するすべての物理デバイスＰＤＥＶの物理デバイス番号が格納され、起動状態欄６６Ｄには、対応する物理デバイスＰＤＥＶの現在の起動状態が格納される。
【００５６】
さらに起動状態最終更新時刻欄６６Ｅには、対応する物理デバイスＰＤＥＶの起動状態を最後に確認した時刻が格納され、累計稼働時間欄６６Ｆには、対応する物理デバイスＰＤＥＶの累計稼働時間が格納される。
【００５７】
従って、図１１の場合、「DPP#1」という仮想プールＤＰＰは、「2009/8/31 12:00:00」に作成され、現在は「PDEV#1」〜「PDEV#8」という８個の物理デバイスＰＤＥＶ（フラッシュメモリ・モジュール３５）から構成されていることが分かる。またこれら８個の物理デバイスＰＤＥＶのうち、「PDEV#1」〜「PDEV#8」という４個の物理デバイスＰＤＥＶは現在起動中であり、これら物理デバイスＰＤＥＶの起動状態の最終確認時刻はいずれも「2009/9/1 12:00」で、累計稼働時間はいずれも「６」時間であることが示されている。
【００５８】
（３）管理サーバの処理
次に、上述のようなデータ配置先管理機能、スケジュール処理機能及び仮想プール稼働状況レポート機能に関連して管理サーバ３において実行される各種処理の処理内容について説明する。なお、以下においては、各種処理の処理主体を「プログラム」として説明するが、実際には、そのプログラムに基づいて管理サーバ３のＣＰＵ２０がその処理を実行することは言うまでもない。
【００５９】
（３−１）データ配置先管理機能に関する処理
（３−１−１）論理デバイス情報収集処理
図１２は、データ配置先管理プログラム６０（図７）により定期的（例えば１時間毎）に実行される論理デバイス情報更新処理の処理手順を示す。データ配置先管理プログラム６０は、この図１２に示す論理デバイス情報更新処理を定期的に実行することにより、ＲＡＩＤグループ管理テーブル６３（図８）及び論理デバイス管理テーブル６４（図９）に登録されている各論理デバイスＬＤＥＶに関する情報を更新する。
【００６０】
すなわちデータ配置先管理プログラム６０は、この論理デバイス情報更新処理を開始すると、まず、ストレージ装置４において管理されている各フラッシュメモリ・モジュール３５に対するアクセス頻度（単位時間当たりのアクセス回数）を、図示しない所定の管理プログラム経由でストレージ装置４から取得し、取得した情報に基づいてＲＡＩＤグループ管理テーブル６３のＩＯＰＳ欄６３Ｆを更新する（ＳＰ１）。
【００６１】
続いてデータ配置先管理プログラム６０は、ストレージ装置４において管理されている各フラッシュメモリ・モジュール３５のデータ消去回数をストレージ装置４から取得し、取得した情報に基づいてＲＡＩＤグループ管理テーブル６３の平均データ消去回数欄６３Ｄ及び論理デバイス管理テーブル６４のデータ消去回数欄６４Ｇをそれぞれ更新する（ＳＰ２）。
【００６２】
次いでデータ配置先管理プログラム６０は、各論理デバイスＬＤＥＶの容量と、これらの論理デバイスＬＤＥＶの現在の使用ページ、無効ページ及び未使用ページの各容量とを論理デバイスＬＤＥＶ単位で取得し、取得したこれらの情報に基づいて、ＲＡＩＤグループ管理テーブル６３及び論理デバイス管理テーブル６４をそれぞれ更新する（ＳＰ３）。
【００６３】
そしてデータ配置先管理プログラム６０は、この後、この論理デバイス情報更新処理を終了する。
【００６４】
（３−１−２）データ配置先管理処理
一方、図１３は、管理サーバ３のデータ配置先管理プログラム６０により定期的（例えば１時間毎）に実行されるデータ配置先管理処理の処理手順を示す。データ配置先管理プログラム６０は、この図１３に示す処理手順に従って複数の論理デバイスＬＤＥＶに分散されているデータを一部の論理デバイスＬＤＥＶに集中させ、又は一部の論理デバイスＬＤＥＶに集中しているデータを複数の論理デバイスＬＤＥＶに分散させる。
【００６５】
すなわちデータ配置先管理プログラム６０は、このデータ配置先管理処理を開始すると、まずＲＡＩＤグループＲＧごとのデータ消去回数を論理デバイス管理テーブル６４からそれぞれ取得すると共に、ＲＡＩＤグループＲＧごとの単位時間当たりのアクセス回数をＲＡＩＤグループ管理テーブル６３から取得する（ＳＰ１０）。
【００６６】
続いてデータ配置先管理プログラム６０は、データ消去回数が閾値（以下、これをデータ消去回数閾値と呼ぶ）を超えるＲＡＩＤグループＲＧが存在するか否かを判断する（ＳＰ１１）。なお、このデータ消去回数閾値ＳＨは、フラッシュメモリ・モジュール３５内の各フラッシュメモリ・チップ４０（図２）が保障するブロック４３（図２）のデータ消去可能回数（ＲＡＩＤグループ管理テーブル６３の消去可能回数欄６３Ｅに格納されているブロック４３当たりの消去可能回数）をＤとし、重付け変数をｉとして、次式
【数１】
2011128895.tif 000003
により算出される値である。また重付け変数ｉは、ＲＡＩＤグループＲＧごとに、当該ＲＡＩＤグループＲＧを構成するすべてのフラッシュメモリ・モジュール３５のデータ消去回数が（１）式を超えたときにインクリメント（１だけ増加）される。
【００６７】
そしてデータ配置先管理プログラム６０は、ステップＳＰ１１の判断において肯定結果を得ると、データ消去回数がデータ消去回数閾値ＳＨを超える各ＲＡＩＤグループＲＧからそれぞれ切り出された論理デバイスＬＤＥＶを、ステップＳＰ１３〜ステップＳＰ２０について後述するデータ配置先集中処理においてデータの移行元となる論理デバイス（以下、これを移行元論理デバイスと呼ぶ）ＬＤＥＶに設定する（ＳＰ１２）。具体的に、データ配置先管理プログラム６０は、ＲＡＩＤグループ管理テーブル６３におけるかかるＲＡＩＤグループＲＧに対応する移行フラグ欄６３Ｈ（図８）に格納されている移行フラグを「移行元」に設定する。
【００６８】
続いてデータ配置先管理プログラム６０は、ステップＳＰ１２において移行フラグを「移行元」に設定したＲＡＩＤグループＲＧの中から１つのＲＡＩＤグループＲＧを選択する（ＳＰ１３）。
【００６９】
続いてデータ配置先管理プログラム６０は、ＲＡＩＤグループ管理テーブル６３を参照して、電源状態が「オン」で、かつ移行フラグが「未設定」となっているＲＡＩＤグループＲＧの中からデータ消去回数の平均値が最も小さいＲＡＩＤグループを検索する（ＳＰ１４）。
【００７０】
そしてデータ配置先管理プログラム６０は、この検索により検出したＲＡＩＤグループＲＧから切り出された各論理デバイスＬＤＥＶを、データ配置先集中処理においてデータの移行先となる論理デバイス（以下、これを移行先論理デバイスと呼ぶ）ＬＤＥＶに決定する（ＳＰ１５）。具体的にデータ配置先管理プログラム６０は、ＲＡＩＤグループ管理テーブル６３におけるそのＲＡＩＤグループＲＧに対応する移行フラグ欄６３Ｈの移行フラグを「移行先」に設定する。
【００７１】
続いてデータ配置先管理プログラム６０は、上述の移行元論理デバイスＬＤＥＶの合計使用容量が、上述の移行先論理デバイスＬＤＥＶの合計未使用容量未満であるか否かを判断する（ＳＰ１６）。具体的に、データ配置先管理プログラム６０は、論理デバイス管理テーブル６４を参照して、すべての移行元論理デバイスＬＤＥＶの有効ページの合計容量を移行元論理デバイスＬＤＥＶの合計使用容量として算出する。またデータ配置先管理プログラム６０は、すべての移行先論理デバイスＬＤＥＶの無効ページ及び未使用ページの合計容量を移行先論理デバイスＬＤＥＶの合計未使用容量として算出する。そしてデータ配置先管理プログラム６０は、このようにして得られた移行元論理デバイスＬＤＥＶの合計使用容量と、移行先論理デバイスＬＤＥＶの合計未使用容量とを比較し、移行元論理デバイスＬＤＥＶの合計使用容量が、移行先論理デバイスＬＤＥＶの合計未使用容量未満であるか否かを判断する。
【００７２】
データ配置先管理プログラム６０は、この判断において否定結果を得るとステップＳＰ１４に戻り、この後、ステップＳＰ１４〜ステップＳＰ１６の処理を繰り返すことにより、移行先論理デバイスＬＤＥＶをＲＡＩＤグループＲＧ単位で追加する。
【００７３】
そしてデータ配置先管理プログラム６０は、やがて移行先論理デバイスＬＤＥＶの合計未使用容量が移行元論理デバイスＬＤＥＶの合計使用容量以上となることによりステップＳＰ１６において肯定結果を得ると、ストレージ装置４のＣＰＵ３１（図１）を制御することにより、移行元論理デバイスＬＤＥＶに格納されているデータを移行先論理デバイスＬＤＥＶに移行させる（ＳＰ１７）。
【００７４】
続いてデータ配置先管理プログラム６０は、ストレージ装置４のＣＰＵ３１（図１）を制御することにより、各移行元論理デバイスＬＤＥＶの有効ページ及び無効ページにそれぞれ格納されているデータを消去させると共に、これに応じて論理デバイス管理テーブル６４を最新の状態に更新する（ＳＰ１８）。
【００７５】
またデータ配置先管理プログラム６０は、そのときステップＳＰ１３において選択したＲＡＩＤグループＲＧを構成するすべてのフラッシュメモリ・モジュール３５に対する電源供給を停止し、さらにＲＡＩＤグループ管理テーブル６３におけるそのＲＡＩＤグループＲＧの電源状態を「オフ」に更新する（ＳＰ１９）。
【００７６】
次いでデータ配置先管理プログラム６０は、ステップＳＰ１３において移行フラグを「移行元」に設定したすべてのＲＡＩＤグループＲＧについて上述のステップＳＰ１３〜ステップＳＰ１９の処理を実行し終えたか否かを判断する（ＳＰ２０）。そしてデータ配置先管理プログラム６０は、この判断において否定結果を得るとステップＳＰ１３に戻り、この後ステップＳＰ１３において順次異なるＲＡＩＤグループＲＧを選択しながら、ステップＳＰ２０において肯定結果を得るまでステップＳＰ１３〜ステップＳＰ２０の処理を繰り返す。
【００７７】
そしてデータ配置先管理プログラム６０は、やがてステップＳＰ１３において移行フラグを「移行元」に設定したすべてのＲＡＩＤグループＲＧについて上述のステップＳＰ１３〜ステップＳＰ１９の処理を実行し終えることによりステップＳＰ２０において肯定結果を得ると、このデータ配置先管理処理を終了する。
【００７８】
一方、データ配置先管理プログラム６０は、ステップＳＰ１１の判断において否定結果を得ると、アクセス頻度が一定時間高いＲＡＩＤグループＲＧが存在するか否かを判断する（ＳＰ２１）。そしてデータ配置先管理プログラム６０は、この判断において否定結果を得るとこのデータ配置先管理処理を終了する。
【００７９】
これに対してデータ配置先管理プログラム６０は、ステップＳＰ２１の判断において肯定結果を得ると、図１４について後述するデータ配置先分散処理を実行し（ＳＰ２２）、この後、このデータ配置先管理処理を終了する。
【００８０】
（３−１−３）データ配置先分散処理
図１４は、上述したデータ配置先管理処理（図１３）のステップＳＰ２２においてデータ配置先管理プログラム６０により実行されるデータ配置先分散処理の処理手順を示す。データ配置先管理プログラム６０は、この図１４に示す処理手順に従って、一部の論理デバイスＬＤＥＶに集中しているデータを複数の論理デバイスＬＤＥＶに分散させる。
【００８１】
すなわちデータ配置先管理プログラム６０は、データ配置先管理処理のステップＳＰ２２に進むとこのデータ配置先分散処理を開始し、まず、ＲＡＩＤグループ管理テーブル６３を参照して、電源状態が「オフ」で、かつ移行フラグが「未設定」となっているＲＡＩＤグループＲＧの中からデータ消去回数の平均値が最も小さいＲＡＩＤグループＲＧを検索する（ＳＰ３０）。
【００８２】
続いてデータ配置先管理プログラム６０は、かかる検索により検出したＲＡＩＤグループＲＧを構成するすべてのフラッシュメモリ・モジュール３５に対する電源供給を開始することにより、そのＲＡＩＤグループＲＧから切り出されたすべての論理デバイスＬＤＥＶを使用可能な状態にする（ＳＰ３１）。
【００８３】
これにより、この後、業務ホスト２から新たに仮想ボリュームＤＰ−ＶＯＬ（図４）に書き込まれたデータは、ステップＳＰ３１において使用可能状態となった論理デバイスＬＤＥＶを含めた使用可能状態のすべての論理デバイスＬＤＥＶに分散されて格納されることとなる。
【００８４】
次いでデータ配置先管理プログラム６０は、図１２について上述した論理デバイス情報収集処理を実行することにより、ＲＡＩＤグループ管理テーブル６３及び論理デバイス管理テーブル６４を更新する（ＳＰ３２）。なお、このステップＳＰ３２における論理デバイス情報収集処理は、例えば１０分間隔で行われる処理であり、前回の論理デバイス情報収集処理の実行後、１０分が経過していないときには省略される。
【００８５】
そしてデータ配置先管理プログラム６０は、この後、ＲＡＩＤグループ管理テーブル６３を参照して、いずれかのＲＡＩＤグループＲＧに対するＩ／Ｏアクセスの頻度が高い状態にあるか否かを判断する（ＳＰ３３）。
【００８６】
具体的にデータ配置先管理プログラム６０は、ＲＡＩＤグループ管理テーブル６３のＩＯＰＳ欄に格納されているそのＲＡＩＤグループＲＧから切り出された各論理デバイスＬＤＥＶの単位時間当たりのＩ／Ｏアクセスの合計回数をＸ、ＲＡＩＤグループ管理テーブル６３の処理性能欄６３Ｇに格納されている対応するフラッシュメモリ・モジュール３５の単位時間当たりの処理性能をＹ、Ｉ／Ｏアクセスの頻度が高いか否かを判定するためのパラメータ（以下、これをアクセス過多判定パラメータと呼ぶ）を0.7として、次式
【数２】
2011128895.tif 000004
で与えられる状態が一定時間継続した場合に、そのＲＡＩＤグループＲＧに対するＩ／Ｏアクセスの頻度が高い状態にあると判定する。従って、データ配置先管理プログラム６０は、ステップＳＰ３３において、ＲＡＩＤグループＲＧごとに（２）式を満たすか否かを判断することになる。なお、このアクセス過多判定パラメータの値は更新可能な値であり、0.7に限られない。
【００８７】
そしてデータ配置先管理プログラム６０は、いずれかのＲＡＩＤグループＲＧが未だ（２）式を満たすと判断した場合（つまりアクセス過多のＲＡＩＤグループＲＧが存在すると判断した場合）にはステップＳＰ３０に戻り、この後、ステップＳＰ３０以降の処理を繰り返す。これにより、それまで電源供給が停止されていたＲＡＩＤグループＲＧが順次起動され、そのＲＡＩＤグループＲＧから切り出された論理デバイスＬＤＥＶが使用可能状態にされてゆくことになる。
【００８８】
これに対してデータ配置先管理プログラム６０は、ステップＳＰ３３の判断において否定結果を得ると、ＲＡＩＤグループ管理テーブル６３を参照して、いずれかのＲＡＩＤグループＲＧに対するＩ／Ｏアクセスの頻度が低い状態にあるか否かを判断する（ＳＰ３４）。
【００８９】
具体的にデータ配置先管理プログラム６０は、Ｉ／Ｏアクセスの頻度が低いか否かを判定するためのパラメータ（以下、これをアクセス低下判定パラメータと呼ぶ）を0.4として、次式
【数３】
2011128895.tif 000005
で与えられる状態が一定時間継続した場合に、そのＲＡＩＤグループＲＧに対するＩ／Ｏアクセスの頻度が低い状態にあると判断する。なお、このアクセス低下判定パラメータの値は更新可能な値であり、0.4に限られない。
【００９０】
そしてデータ配置先管理プログラム６０は、いずれのＲＡＩＤグループＲＧも（３）式を満たさないと判断した場合（つまりアクセス頻度が低いＲＡＩＤグループＲＧが存在しないと判断した場合）にはステップＳＰ３２に戻り、この後、ステップＳＰ３２以降の処理を繰り返す。
【００９１】
これに対してデータ配置先管理プログラム６０は、ステップＳＰ３４の判断において肯定結果を得ると、図１５について後述するデータ配置先集中処理を実行し（ＳＰ３５）、この後、図１３について上述したデータ配置先管理処理に戻る。
【００９２】
（３−１−４）データ配置先集中処理
図１５は、データ配置先分散処理のステップＳＰ３５においてデータ配置先管理プログラム６０により実行されるデータ配置先集中処理の処理手順を示す。データ配置先管理プログラム６０は、この図１５に示す処理手順に従って、複数の論理デバイスＬＤＥＶに分散されたデータを一部の論理デバイスＬＤＥＶに集中させる。
【００９３】
すなわちデータ配置先管理プログラム６０は、図１４について上述したデータ配置先分散処理のステップＳＰ３５に進むとこのデータ配置先集中処理を開始し、まず、ＲＡＩＤグループ管理テーブル６３を参照して、データ消去回数の平均値が最も小さいＲＡＩＤグループＲＧを検索する（ＳＰ４０）。
【００９４】
続いてデータ配置先管理プログラム６０は、かかる検索により上述の条件を満たすＲＡＩＤグループＲＧを検出すると、そのＲＡＩＤグループＲＧから切り出された各論理デバイスＬＤＥＶを移行先論理デバイスに決定する（ＳＰ４１）。具体的にデータ配置先管理プログラム６０は、ＲＡＩＤグループ管理テーブル６３におけるこれらの論理デバイスＬＤＥＶに対応する移行フラグ欄６３Ｈ（図８）に格納されている移行フラグを「移行先」に設定する（ＳＰ４１）。
【００９５】
次いでデータ配置先管理プログラム６０は、ＲＡＩＤグループ管理テーブル６３を参照して、ステップＳＰ４０の検索において検出したＲＡＩＤグループＲＧ以外の起動中のＲＡＩＤグループＲＧが存在するか否かを判断する（ＳＰ４２）。具体的に、データ配置先管理プログラム６０は、このステップＳＰ４２において、ＲＡＩＤグループ管理テーブル６３における対応する移行フラグ欄６３Ｈに格納されている移行フラグが「未設定」であり、かつＲＡＩＤグループ管理テーブル６３における対応する電源状態欄６３Ｉに格納されている電源状態が「オン」となっているＲＡＩＤグループＲＧを検索する。
【００９６】
そしてデータ配置先管理プログラム６０は、この判断において否定結果を得ると、ＲＡＩＤグループ管理テーブル６３における各移行フラグ欄６３Ｈにそれぞれ格納されている移行フラグをすべて「未設定」に更新した後、図１４について上述したデータ配置先分散処理に戻る。
【００９７】
これに対してデータ配置先管理プログラム６０は、ステップＳＰ４２の判断において肯定結果を得ると、ステップＳＰ４０の検索により検出したＲＡＩＤグループＲＧ以外の起動中のＲＡＩＤグループＲＧであって、データ消去回数が最も大きいＲＡＩＤグループＲＧを検索する（ＳＰ４３）。具体的に、データ配置先管理プログラム６０は、このステップＳＰ４３において、ＲＡＩＤグループ管理テーブル６３における対応する移行フラグ欄６３Ｈに格納されている移行フラグが「未設定」であり、かつＲＡＩＤグループ管理テーブル６３における対応する電源状態欄６３Ｉに格納されている電源状態が「オン」であるＲＡＩＤグループＲＧの中からデータ消去回数の平均値が最も大きいＲＡＩＤグループＲＧを検索する。
【００９８】
そしてデータ配置先管理プログラム６０は、この検索により検出したＲＡＩＤグループＲＧから切り出された各論理デバイスＬＤＥＶを、上述の移行元論理デバイスに設定する（ＳＰ４４）。具体的にデータ配置先管理プログラム６０は、ＲＡＩＤグループ管理テーブル６３におけるそのＲＡＩＤグループＲＧに対応する移行フラグ欄６３Ｈに格納されている移行フラグを「移行元」に設定する。
【００９９】
次いでデータ配置先管理プログラム６０は、データ配置先管理処理（図１３）のステップＳＰ１６について上述した方法と同様の方法により、移行元論理デバイスＬＤＥＶの合計使用容量が、移行先論理デバイスＬＤＥＶの合計未使用容量未満であるか否かを判断する（ＳＰ４５）。
【０１００】
データ配置先管理プログラム６０は、この判断において否定結果を得ると、ＲＡＩＤグループ管理テーブル６３を参照して、そのＲＡＩＤグループＲＧから切り出された論理デバイスＬＤＥＶが移行先論理デバイスに設定されていない起動中のＲＡＩＤグループＲＧであって、データ消去回数の平均値が最も小さいＲＡＩＤグループＲＧが存在するか否かを判断する（ＳＰ４９）。具体的には、データ配置先管理プログラム６０は、このステップＳＰ４９において、ＲＡＩＤグループ管理テーブル６３における対応する移行フラグ欄６３Ｈに格納されている移行フラグが「未設定」であり、かつＲＡＩＤグループ管理テーブル６３における対応する電源状態欄６３Ｉに格納されている電源状態が「オン」となっているＲＡＩＤグループＲＧの中からデータ消去回数の平均値が最も少ないＲＡＩＤグループＲＧが存在するか否かを判断することになる。
【０１０１】
そしてデータ配置先管理プログラム６０は、この判断において否定結果を得ると、ＲＡＩＤグループ管理テーブル６３における各移行フラグ欄６３Ｈにそれぞれ格納されている移行フラグをすべて「未設定」に更新した後、図１４について上述したデータ配置先分散処理に戻る。
【０１０２】
これに対してデータ配置先管理プログラム６０は、ステップＳＰ４５の判断において肯定結果を得ると、ステップＳＰ４２において存在を確認した上述のＲＡＩＤグループＲＧから切り出された各論理デバイスＬＤＥＶを移行先論理デバイスに追加する（ＳＰ５０）。具体的に、データ配置先管理プログラム６０は、ＲＡＩＤグループ管理テーブル６３におけるかかるＲＡＩＤグループＲＧに対応する移行フラグ欄６３Ｈに格納されている移行フラグを「移行先」に設定することになる。
【０１０３】
次いでデータ配置先管理プログラム６０は、ステップＳＰ４５に戻り、この後、移行元論理デバイスＬＤＥＶの合計使用容量が、移行先論理デバイスＬＤＥＶの合計未使用容量未満となるまで、ステップＳＰ４５−ステップＳＰ４９−ステップＳＰ５０−ステップＳＰ４５のループを繰り返す。
【０１０４】
そしてデータ配置先管理プログラム６０は、やがてステップＳＰ４５の判断において肯定結果を得ると、ストレージ装置４のＣＰＵ３１（図１）を制御することにより、移行元論理デバイスＬＤＥＶに格納されているデータを移行先論理デバイスＬＤＥＶに移行させる（ＳＰ４６）。
【０１０５】
続いてデータ配置先管理プログラム６０は、ストレージ装置４のＣＰＵ３１を制御することにより、各移行元論理デバイスＬＤＥＶの有効ページ及び無効ページにそれぞれ格納されているデータを消去させ、この後、これに応じて論理デバイス管理テーブル６４を最新の状態に更新する（ＳＰ４７）。
【０１０６】
次いでデータ配置先管理プログラム６０は、そのときステップＳＰ４３の検索により検出したＲＡＩＤグループＲＧを構成するすべてのフラッシュメモリ・モジュール３５に対する電源供給を停止し、さらにＲＡＩＤグループ管理テーブル６３におけるそのＲＡＩＤグループＲＧに対応する電源状態欄６３Ｉに格納されている電源状態を「オフ」に更新する（ＳＰ４８）。
【０１０７】
さらにデータ配置先管理プログラム６０は、ステップＳＰ４２に戻り、この後ステップＳＰ４２又はステップＳＰ４９において否定結果を得るまでステップＳＰ４２以降の処理を繰り返す。そしてデータ配置先管理プログラム６０は、やがてステップＳＰ４２又はステップＳＰ４９において否定結果を得ると、データ配置先分散処理（図１４）に戻る。
【０１０８】
（３−２）スケジュール処理機能に関する処理
他方、図１６は、図１２〜図１５について上述した各種処理と並行してスケジュール管理プログラム６１（図７）により実行されるスケジュール処理の処理手順を示す。このスケジュール処理は、上述のようにユーザにより設定されたスケジュールに従って、その開始時間から終了時間までの間、データを複数の論理デバイスＬＤＥＶに分散させる処理を実行し、終了時間が経過すると、データを再度一部の論理デバイスＬＤＥＶに集中させる処理である。従って、スケジュールは、予めアクセスが増加していることが分かっている時間帯に合わせて開始時間及び終了時間が設定される。
【０１０９】
スケジュール管理プログラム６１は、スケジュール管理テーブル６５（図１０）を常時監視しており、スケジュール管理テーブル６５に登録されたいずれかのスケジュールの開始時間の１分前になるとこのスケジュール処理を開始し、まず、スケジュール管理テーブル６５上のそのとき実行しようとするスケジュールに対応する必要スペック欄６５Ｅ（図１０）に必要スペックが登録されているか否かを判断する（ＳＰ６０）。
【０１１０】
スケジュール管理プログラム６１は、この判断において肯定結果を得ると、かかる必要スペック欄６５Ｅに登録されている必要個数のＲＡＩＤグループＲＧを起動し、それらのＲＡＩＤグループＲＧから切り出された各論理デバイスＬＤＥＶを使用可能な状態にする（ＳＰ６１）。
【０１１１】
具体的に、スケジュール管理プログラム６１は、このステップＳＰ６１において、ＲＡＩＤグループ管理テーブル６３を参照して、電源状態が「オフ」となっているＲＡＩＤグループＲＧのうち、平均データ消去回数欄６３Ｄ（図８）に格納されているデータ消去回数の平均値が少ないものから順番に必要個数のＲＡＩＤグループＲＧを選択する。そしてスケジュール管理プログラム６１は、選択した各ＲＡＩＤグループＲＧをそれぞれ構成する各フラッシュメモリ・モジュール３５に対する電源供給を開始し、さらにＲＡＩＤグループ管理テーブル６３におけるそのＲＡＩＤグループＲＧに対応する電源状態欄６３Ｉに格納されている電源状態を「オン」に更新する。そしてスケジュール管理プログラム６１は、この後、ステップＳＰ６３に進む。
【０１１２】
これに対してスケジュール管理プログラム６１は、ステップＳＰ６０の判断において否定結果を得ると、そのスケジュールを実行するのに必要なＲＡＩＤグループＲＧの個数を２個として、２個のＲＡＩＤグループＲＧを起動することにより、そのＲＡＩＤグループＲＧから切り出された論理デバイスＬＤＥＶを使用可能な状態にする（ＳＰ６２）。このステップＳＰ６２における具体的な処理内容は、ステップＳＰ６１と同様であるので説明は省略する。そしてスケジュール管理プログラム６１は、この後、ステップＳＰ６３に進む。
【０１１３】
そしてスケジュール管理プログラム６１は、ステップＳＰ６３に進むと、図示しないタイマより現在時刻を取得し、スケジュール管理テーブル６５に登録されているそのスケジュールの終了時間が経過したか否かを判断する（ＳＰ６３）。
【０１１４】
スケジュール管理プログラム６１は、この判断において否定結果を得ると、図６４について上述した論理デバイス情報収集処理を実行することにより、ＲＡＩＤグループ管理テーブル６３を更新する（ＳＰ６４）。なお、このステップＳＰ６４における論理デバイス情報収集処理は、例えば１０分ごとに行われる処理であり、前回の論理デバイス情報収集処理の実行後、１０分が経過していないときには省略される。
【０１１５】
次いでスケジュール管理プログラム６１は、データ配置先分散処理（図１４）のステップＳＰ３３と同様にして、ＲＡＩＤグループ管理テーブル６３に登録されたいずれかのＲＡＩＤグループＲＧに対するＩ／Ｏアクセスの頻度が高い状態にあるか否かを判断する（ＳＰ６５）。
【０１１６】
そしてスケジュール管理プログラム６１は、この判断において否定結果を得るとステップＳＰ６３に戻り、これに対して肯定結果を得ると、ＲＡＩＤグループ管理テーブル６３を参照して、電源状態が「オフ」で、かつ移行フラグが「未設定」となっているＲＡＩＤグループＲＧの中からデータ消去回数の平均値が最も小さいＲＡＩＤグループＲＧを検索する（ＳＰ６６）。
【０１１７】
続いてスケジュール管理プログラム６１は、かかる検索により検出したＲＡＩＤグループＲＧを構成するすべてのフラッシュメモリ・モジュール３５に対する電源供給を開始することにより、そのＲＡＩＤグループＲＧから切り出されたすべての論理デバイスＬＤＥＶを使用可能な状態にする（ＳＰ６７）。
【０１１８】
これにより、この後、業務ホスト２から新たに仮想ボリュームＤＰ−ＶＯＬ（図４）に書き込まれたデータは、ステップＳＰ６１又はステップＳＰ６２において使用可能状態となった論理デバイスＬＤＥＶを含めた使用可能状態のすべての論理デバイスＬＤＥＶに分散されて格納されることとなる。
【０１１９】
またスケジュール管理プログラム６１は、この後ステップＳＰ６３に戻り、ステップＳＰ６３において肯定結果を得るまでステップＳＰ６３〜ステップＳＰ６７の処理を繰り返す。
【０１２０】
一方、スケジュール管理プログラム６１は、やがてスケジュール管理テーブル６５に登録されたそのスケジュールの終了時間が経過することによりステップＳＰ６３において肯定結果を得ると、スケジュール管理テーブル６５におけるそのスケジュールに対応する必要スペック欄６５Ｅ（図１０）に格納されている必要スペックを、そのときそのスケジュールを実行するのに使用したＲＡＩＤグループＲＧの個数に更新する（ＳＰ６８）。
【０１２１】
次いでスケジュール管理プログラム６１は、図１５について上述したデータ配置先集中処理を実行する（ＳＰ６９）。これによりスケジュール管理プログラム６１は、ステップＳＰ６０〜ステップＳＰ６７の処理により複数の論理デバイスＬＤＥＶに分散されたデータを一部の論理デバイスＬＤＥＶに再度集中させると共に、未使用のＲＡＩＤグループＲＧを最大化させて、これらのＲＡＩＤグループＲＧを構成するフラッシュメモリ・モジュール３５に対する電源供給を開始させる。
【０１２２】
そしてスケジュール管理プログラム６１は、この後、このスケジュール処理を終了する。
【０１２３】
（３−３）仮想プール稼働状況レポート機能に関する処理
（３−３−１）新規仮想プール登録処理
他方、図１７は、図１２〜図１５について上述した各種処理と並行して仮想プール稼働状況レポートプログラム６２（図７）により実行される新規仮想プール登録処理の処理手順を示す。
【０１２４】
仮想プール稼働状況レポートプログラム６２は、ユーザ操作により仮想プールＤＰＰが作成されると、これに応じてこの図１７に示す新規仮想プール登録処理を開始し、まず、そのとき作成された新たな仮想プールＤＰＰのエントリを仮想プール稼働情報管理テーブル６６（図１１）に追加する（ＳＰ７０）。
【０１２５】
具体的に仮想プール稼働状況レポートプログラム６２は、そのとき作成された仮想プールＤＰＰに対応する行を仮想プール稼働情報管理テーブル６６に追加し、その行の仮想プール番号欄６６Ａ（図１１）及び仮想プール作成日時欄６６Ｂに、それぞれその仮想プールＤＰＰの仮想プール番号及び作成日時を格納する。
【０１２６】
また仮想プール稼働状況レポートプログラム６２は、かかる行の物理デバイス番号欄６６Ｃ（図１１）にその仮想プールＤＰＰを構成するすべてのフラッシュメモリ・モジュール３５のフラッシュメモリ・モジュール番号を格納すると共に、各起動状態欄６６Ｄ（図１１）に、対応するフラッシュメモリ・モジュール３５の現在の起動状態として「オン」を格納する。
【０１２７】
さらに仮想プール稼働状況レポートプログラム６２は、かかる行の各起動状態最終更新時刻欄６６Ｅ（図１１）に、対応するフラッシュメモリ・モジュール３５の起動状態の最終更新時刻としてその仮想プールＤＰＰの作成日時を格納し、累計稼働時間欄６６Ｆ（６６Ｆ）に、対応するフラッシュメモリ・モジュール３５の累計稼働時間として「０」を格納する。
【０１２８】
そして仮想プール稼働状況レポートプログラム６２は、この後、この新規仮想プール登録処理を終了する。
【０１２９】
（３−３−２）テーブル更新処理
一方、図１８は、新規仮想プール登録処理の実行後に仮想プール稼働状況レポートプログラム６２により実行されるテーブル更新処理の処理手順を示す。仮想プール稼働状況レポートプログラム６２は、上述したデータ配置先管理処理等によりいずれかのフラッシュメモリ・モジュール３５に対して電源供給が開始若しくは停止され、又は、ユーザにより指示され若しくは予め定められた監視タイミングとなると、この図１８に示す処理手順に従って仮想プール稼働情報管理テーブル６６（図１１）を更新する。
【０１３０】
すなわち仮想プール稼働状況レポートプログラム６２は、いずれかのフラッシュメモリ・モジュール３５に対する電源供給が開始若しくは停止され、又は、ユーザにより指示され若しくは予め定められた監視タイミングとなるとこのテーブル更新処理を開始し、まず、いずれかのフラッシュメモリ・モジュール３５に対する電源供給が開始されたか否かを判断する（ＳＰ７１）。
【０１３１】
仮想プール稼働状況レポートプログラム６２は、この判断において肯定結果を得ると、仮想プール稼働情報管理テーブル６６におけるそのフラッシュメモリ・モジュール３５に対応するエントリの起動状態欄６６Ｄ（図１１）に格納されている起動状態を「オン」に更新すると共に、起動状態最終更新時刻欄６６Ｅ（図１１）に格納されているそのフラッシュメモリ・モジュール３５の起動状態の最終更新時刻を現在時刻に更新する（ＳＰ７２）。そして仮想プール稼働状況レポートプログラム６２は、この後、このテーブル更新処理を終了する。
【０１３２】
一方、仮想プール稼働状況レポートプログラム６２は、ステップＳＰ７１の判断において否定結果を得ると、いずれかのフラッシュメモリ・モジュール３５に対する電源供給が停止されたか否かを判断する（ＳＰ７３）。
【０１３３】
仮想プール稼働状況レポートプログラム６２は、この判断において肯定結果を得ると、仮想プール稼働情報管理テーブル６６におけるそのフラッシュメモリ・モジュール３５に対応するエントリの起動状態欄６６Ｄに格納されている起動状態を「オフ」に更新する。また仮想プール稼働状況レポートプログラム６２は、そのフラッシュメモリ・モジュール３５に対応するエントリの起動状態最終更新時刻欄６６Ｅに格納されているそのフラッシュメモリ・モジュール３５の起動状態の最終更新時刻を現在時刻に更新すると共に、累計稼働時間欄６６Ｆ（図１１）に格納されているそのフラッシュメモリ・モジュール３５の累計稼働時間を更新する（ＳＰ７４）。そして仮想プール稼働状況レポートプログラム６２は、この後、このテーブル更新処理を終了する。
【０１３４】
他方、仮想プール稼働状況レポートプログラム６２は、ステップＳＰ７３の判断において否定結果を得ると、ユーザによりレポートの出力を指示され又は一定間隔で設定された監視タイミングとなったか否かを判断する（ＳＰ７５）。
【０１３５】
そして仮想プール稼働状況レポートプログラム６２は、この判断において否定結果を得るとこのテーブル更新処理を終了する。
【０１３６】
これに対して仮想プール稼働状況レポートプログラム６２は、ステップＳＰ７５の判断において肯定結果を得ると、仮想プール稼働情報管理テーブル６６に登録された全フラッシュメモリ・モジュール３５のうち、ステップＳＰ７７〜ステップＳＰ７９の処理を未だ行っていないフラッシュメモリ・モジュール３５を１つ選択し、そのフラッシュメモリ・モジュール３５の起動状態が「オン」であるか否かを、仮想プール稼働情報管理テーブル６６の対応する起動状態欄６６Ｄを参照して判断する（ＳＰ７７）。
【０１３７】
そして仮想プール稼働状況レポートプログラム６２は、この判断において肯定結果を得ると、仮想プール稼働情報管理テーブル６６におけるそのフラッシュメモリ・モジュール３５に対応する累計稼働時間欄６６Ｆに格納されている累計稼働時間を、起動状態最終更新時刻欄６６Ｅに格納されている起動状態の最終更新時刻から現在時刻までの時間を当該累計稼働時間に加算した値に更新すると共に、当該仮想プール稼働情報管理テーブル６６におけるそのフラッシュメモリ・モジュール３５に対応する起動状態最終更新時刻欄６６Ｅに格納されている起動状態の最終更新時刻を現在時刻に更新する（ＳＰ７８）。
【０１３８】
これに対して仮想プール稼働状況レポートプログラム６２は、ステップＳＰ７７の判断において否定結果を得ると、仮想プール稼働情報管理テーブル６６におけるそのフラッシュメモリ・モジュール３５に対応する起動状態最終更新時刻欄６６Ｅに格納されている起動状態の最終更新時刻を、現在時刻に更新する（ＳＰ７９）。
【０１３９】
そして仮想プール稼働状況レポートプログラム６２は、仮想プール稼働情報管理テーブル６６に登録されているすべてのフラッシュメモリ・モジュール３５についてステップＳＰ７７〜ステップＳＰ７９の処理を実行し終えたか否かを判断し（ＳＰ８０）、否定結果を得るとステップＳＰ７６に戻って、この後、ステップＳＰ８０において肯定結果を得るまで同様の処理を繰り返す。
【０１４０】
そして仮想プール稼働状況レポートプログラム６２は、やがて仮想プール稼働情報管理テーブル６６に登録されているすべてのフラッシュメモリ・モジュール３５についてステップＳＰ７７〜ステップＳＰ７９の処理を実行し終えることによりステップＳＰ８０において肯定結果を得ると、このテーブル更新処理を終了する。
【０１４１】
（３−３−３）レポート出力処理
図１９は、図１２〜図１５について上述した各種処理と並行して仮想プール稼働状況レポートプログラム６２により実行されるレポート出力処理の処理手順を示す。仮想プール稼働状況レポートプログラム６２は、この図１９に示す処理手順に従って仮想プールＤＰＰ（図４）の稼働状況をレポート出力する。
【０１４２】
すなわち仮想プール稼働状況レポートプログラム６２は、ユーザによりレポートの出力が指示され又は定期的に実行するよう設定されたレポートの出力タイミングとなると、この図１９に示すレポート出力処理を開始し、まず、図１８について上述したテーブル更新処理を実行することにより、仮想プール稼働情報管理テーブル６６を最新の状態に更新する（ＳＰ９０）。
【０１４３】
続いて仮想プール稼働状況レポートプログラム６２は、ステップＳＰ９０において更新した仮想プール稼働情報管理テーブル６６を参照して、例えば図２０に示すようなレポート画面７０を管理サーバ３に表示させ、又は、管理サーバ３に接続された図示しないプリンタに印刷させる。
【０１４４】
このレポート画面７０は、ストレージ装置４内に存在する各仮想プールＤＰＰについて、その仮想プールの仮想プール番号と、その仮想プールＤＰＰを構成する各フラッシュメモリ・モジュール３５の物理デバイス番号と、これらフラッシュメモリ・モジュール３５の稼働状態と、これらフラッシュメモリ・モジュール３５の稼働率とを一覧化したものである。なお、稼働率は、次式
【数４】
2011128895.tif 000006
により求められた数値である。
【０１４５】
そして仮想プール稼働状況レポートプログラム６２は、この後、このレポート出力処理を終了する。
【０１４６】
（４）本実施の形態の効果
以上のように本実施の形態によるストレージ装置４においては、通常時にはデータの配置先を一部の論理デバイスＬＤＥＶに集中させることで未使用のフラッシュメモリ・モジュール３５数を最大化し、これら未使用のフラッシュメモリ・モジュール３５の電源を落とす一方、起動中の各論理デバイスＬＤＥＶのデータ書換え回数及びアクセス頻度を監視し、データ書換え回数が増大した論理デバイスＬＤＥＶに格納されているデータを書換え回数の少ない論理デバイスＬＤＥＶに移動させたり、アクセス頻度が過大になった論理デバイスＬＤＥＶに格納されているデータを他の論理デバイスに分散させるため、データの配置先を適宜変更することができ、かくしてフラッシュメモリ４１の寿命を平準化しながら、通常時にはストレージ装置４全体として省電力運転を行うことができる。
【０１４７】
（５）他の実施の形態
なお上述の実施の形態においては、本発明を図のように構成された計算機システムのストレージ装置に適用するようにした場合について述べたが、本発明はこれに限らず、この他種々の構成の計算機システムに広く適用することができる。
【０１４８】
また上述の実施の形態においては、ストレージ装置４において業務ホスト２からのデータを読み書きするための記憶領域を提供する不揮発性メモリとしてフラッシュメモリを適用するようにした場合について述べたが、本発明はこれに限らず、この他種々の不揮発性メモリを広く適用することができる。
【０１４９】
さらに上述の実施の形態においては、データ消去回数閾値ＳＨを上述の（１）式のように算出するようにした場合について述べたが、本発明はこれに限らず、この他種々の方法によりデータ消去回数閾値ＳＨを決定するようにしても良い。
【０１５０】
さらに上述の実施の形態においては、上述の（２）式で与えられる状態が一定時間継続した場合に、そのＲＡＩＤグループＲＧに対するＩ／Ｏアクセスの頻度が高い状態にあると判定し、上述の（３）式で与えられる状態が一定時間継続した場合に、そのＲＡＩＤグループＲＧに対するＩ／Ｏアクセスの頻度が低い状態にあると判定するようにした場合について述べたが、本発明はこれに限らず、この他の方法によりこれらの判定を行うようにしても良い。
【０１５１】
さらに上述の実施の形態においては、データを一部の論理デバイスＬＤＥＶに集中させた後、起動中の論理デバイスＬＤＥＶに対するデータの書換え回数及びアクセス頻度を監視するようにした場合について述べたが、本発明はこれに限らず、これらデータの書換え回数及びアクセス頻度のうちのいずれか一方のみを監視するようにしても良い。
【産業上の利用可能性】
【０１５２】
本発明は、フラッシュメモリ等の不揮発性メモリを記憶媒体とするストレージ装置に適用することができる。
【図１】
2011128895.tif 000007
【図２】
2011128895.tif 000008
【図３】
2011128895.tif 000009
【図４】
2011128895.tif 000010
【図５】
2011128895.tif 000011
【図６】
2011128895.tif 000012
【図７】
2011128895.tif 000013
【図８】
2011128895.tif 000014
【図９】
2011128895.tif 000015
【図１０】
2011128895.tif 000016
【図１１】
2011128895.tif 000017
【図１２】
2011128895.tif 000018
【図１３】
2011128895.tif 000019
【図１４】
2011128895.tif 000020
【図１５】
2011128895.tif 000021
【図１６】
2011128895.tif 000022
【図１７】
2011128895.tif 000023
【図１８】
2011128895.tif 000024
【図１９】
2011128895.tif 000025
【図２０】
2011128895.tif 000026
【手続補正書】
【提出日】平成23年3月8日(2011.3.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
計算機システムにおいて、
ホスト装置がデータを読み書きするための記憶領域を提供するストレージ装置と、
前記ストレージ装置を管理する管理装置と
を備え、
前記ストレージ装置は、
前記記憶領域を提供する複数の不揮発性メモリと、
前記不揮発性メモリに対する前記ホスト装置からのデータの読み書きを制御するコントローラとを有し、
前記コントローラは、
前記複数の不揮発性メモリがそれぞれ提供する前記記憶領域をプールとしてまとめて管理すると共に、前記ホスト装置に対して仮想的なボリュームを提供し、当該仮想的なボリュームに対する前記ホスト装置からのデータの書込み要求に応じて前記仮想プールから前記仮想的なボリュームに前記記憶領域を動的に割り当て、割り当てた前記記憶領域に前記データを配置し、
前記管理装置は、
前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御し、
起動中の前記不揮発性メモリが提供する記憶領域に対するデータの書換え回数及び又はアクセス頻度を監視し、
一部の前記不揮発性メモリが提供する記憶領域におけるデータの書換え回数が増大した場合には、他の前記不揮発性メモリが提供するデータの書換え回数が少ない記憶領域にデータを移動させるように前記ストレージ装置を制御し、一部の前記不揮発性メモリが提供する記憶領域に対するアクセス頻度が過多になった場合には、電源供給を停止している前記不揮発性メモリを起動することによりデータの配置先を分散させるように前記ストレージ装置を制御する
ことを特徴とする計算機システム。
【請求項２】
前記不揮発性メモリは、フラッシュメモリである
ことを特徴とする請求項１に記載の計算機システム。
【請求項３】
前記管理装置は、
未使用の前記不揮発性メモリが最大化するように、前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させる
ことを特徴とする請求項１又は請求項２に記載の計算機システム。
【請求項４】
前記管理装置は、
予め設定されたスケジュールを管理し、
いずれかのスケジュールの開始時間から終了時間までの間は、電源供給を停止していた前記不揮発性メモリを起動させることにより複数の前記不揮発性メモリがそれぞれ提供する記憶領域にデータを分散させるように前記ストレージ装置を制御し、
当該スケジュールの終了時間が経過すると、データの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御する
ことを特徴とする請求項１乃至請求項３の何れか一項に記載の計算機システム。
【請求項５】
前記管理装置は、
前記仮想プールの稼働状況に関する情報を前記ストレージ装置から取得し、
ユーザからの指示に応じて又は定期的に前記情報をレポート出力する
ことを特徴とする請求項１乃至請求項４の何れか一項に記載の計算機システム。
【請求項６】
ホスト装置がデータを読み書きするための記憶領域をそれぞれ提供する複数の不揮発性メモリを有するストレージ装置の制御方法において、
前記ストレージ装置は、
前記複数の不揮発性メモリがそれぞれ提供する前記記憶領域をプールとしてまとめて管理すると共に、前記ホスト装置に対して仮想的なボリュームを提供し、当該仮想的なボリュームに対する前記ホスト装置からのデータの書込み要求に応じて前記仮想プールから前記仮想的なボリュームに前記記憶領域を動的に割り当て、割り当てた前記記憶領域に前記データを配置し、
前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御する第１のステップと、
起動中の前記不揮発性メモリが提供する記憶領域に対するデータの書換え回数及び又はアクセス頻度を監視する第２のステップと、
一部の前記不揮発性メモリが提供する記憶領域におけるデータの書換え回数が増大した場合には、他の前記不揮発性メモリが提供するデータの書換え回数が少ない記憶領域にデータを移動させるように前記ストレージ装置を制御し、一部の前記不揮発性メモリが提供する記憶領域に対するアクセス頻度が過多になった場合には、電源供給を停止している前記不揮発性メモリを起動することによりデータの配置先を分散させるように前記ストレージ装置を制御する第３のステップと
を備えることを特徴とするストレージ装置の制御方法。
【請求項７】
前記不揮発性メモリは、フラッシュメモリである
ことを特徴とする請求項６にストレージ装置の制御方法。
【請求項８】
前記第１のステップでは、
未使用の前記不揮発性メモリが最大化するように、前記ホスト装置からのデータの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させる
ことを特徴とする請求項６又は請求項７に記載のストレージ装置の制御方法。
【請求項９】
前記第１乃至第３のステップの処理と並行して、
予め設定されたスケジュールを管理し、
いずれかのスケジュールの開始時間から終了時間までの間は、電源供給を停止していた前記不揮発性メモリを起動させることにより複数の前記不揮発性メモリがそれぞれ提供する記憶領域にデータを分散させるように前記ストレージ装置を制御し、
当該スケジュールの終了時間が経過すると、データの配置先を一部の前記不揮発性メモリが提供する記憶領域に集中させて、未使用の前記不揮発性メモリに対する電源供給を停止させるように前記ストレージ装置を制御する
ことを特徴とする請求項６乃至請求項８の何れか一項に記載のストレージ装置の制御方法。
【請求項１０】
前記第１乃至第３のステップの処理と並行して、
前記仮想プールの稼働状況に関する情報を前記ストレージ装置から取得し、
ユーザからの指示に応じて又は定期的に前記情報をレポート出力する
ことを特徴とする請求項６乃至請求項９の何れか一項に記載のストレージ装置の制御方法。