(57)【要約】  ストレージシステムは、複数のＶＶＯＬ（Ｔｈｉｎ  Ｐｒｏｖｉｓｉｏｎｉｎｇに従う仮想的な論理ボリューム）が関連付けられたプールを管理すること、ライト先のＶＶＯＬに関連付けられている使用ティアパタンにおけるいずれかのティアから実領域（ＲＡ）をライト先の仮想領域（ＶＡ）に割り当てること、及び、ＶＡに割り当てられたＲＡのアクセス状況を基にそのＲＡ内のデータをそのＲＡを有するティアとは別のティアのＲＡに移動する再配置処理とを行う。管理システムは、対象ＶＶＯＬの使用ティアパタンから特定のティアを外したと仮定して、対象ＶＶＯＬ及び対象ＶＶＯＬが関連付けられているプールに関連付けられている他の全てのＶＶＯＬの性能を予測し、予測された性能が要求性能より低いＶＶＯＬがあるか否かを判断し、そのようなＶＶＯＬが無ければ、対象ＶＶＯＬの使用ティアパタンから特定のティアを外すことをストレージシステムに指示する。
2013038510.tif 000002
【特許請求の範囲】
【請求項１】
アクセス性能の異なる複数の実領域群である複数のティアで構成されたプールとそのプールに関連付けられている複数のＶＶＯＬ（Virtual  VOLume）とを有し、上位装置からライトコマンドを受信し、そのライトコマンドを基に特定されたライト先のＶＶＯＬを構成している複数の仮想領域のうちのライト先の仮想領域に、そのライトコマンドに従うデータを、前記ライト先の仮想領域に前記プールから割り当てた実領域に書き込むストレージシステム、を管理する管理システムであって、
管理情報を記憶する記憶資源と、
前記記憶資源に接続されたプロセッサと
を有し、
前記ＶＶＯＬは、仮想的な論理ボリュームであり、
前記管理情報は、要求性能と使用ティアパタンとをＶＶＯＬ毎に表す情報であるＶＶＯＬ管理情報を含み、
ＶＶＯＬの要求性能は、そのＶＶＯＬに要求される性能であり、
ＶＶＯＬの使用ティアパタンは、そのＶＶＯＬへの実領域の割当て元となることが許可されている１以上のティアであり、
（ａ）前記プロセッサは、ライト先のＶＶＯＬの仮想領域に、そのライト先のＶＶＯＬの使用ティアパタンにおけるいずれかのティアから実領域を割り当て、
（ｂ）前記プロセッサは、前記ＶＶＯＬの要求性能を満たすために、再配置処理を行うことを前記ストレージシステムに指示し、
前記ＶＶＯＬの要求性能を満たすための再配置処理には、前記ＶＶＯＬに割当てられている実領域を有するティアとは別のティアを前記使用ティアパタンから選択し、前記ＶＶＯＬに割当てられている実領域内のデータを、選択した別のティアの実領域に移動する処理が含まれる、
管理システム。
【請求項２】
請求項１記載の管理システムであって、
前記（ｂ）において、
（Ａ）前記プロセッサは、前記複数のＶＶＯＬのうちの１つである対象ＶＶＯＬの使用ティアパタンから第１の特定のティアを外し前記第１の特定のティアから前記対象ＶＶＯＬに割り当てられている実領域内のデータを前記対象ＶＶＯＬの使用ティアパタンにおける別のティア内の実領域にマイグレーションしたと仮定して、前記対象ＶＶＯＬ及び前記対象ＶＶＯＬが関連付けられているプールに関連付けられている他の全てのＶＶＯＬの性能を予測し、
（Ｂ）前記プロセッサは、ＶＶＯＬに対応する要求性能を前記ＶＶＯＬ管理情報から特定し、その要求性能と予測された性能とを比較することを前記各ＶＶＯＬについて行うことにより、前記（Ａ）で予測された性能が要求性能より低いＶＶＯＬがあるか否かを判断し、
（Ｃ）前記（Ｂ）の判断の結果が否定的であれば、前記プロセッサは、前記対象ＶＶＯＬの使用ティアパタンから前記第１の特定のティアを外すことを前記ストレージシステムに指示する、
管理システム。
【請求項３】
請求項２記載の管理システムであって、
（Ｄ）前記（Ｂ）の判断の結果が肯定的であれば、前記プロセッサは、予測された性能が要求性能より低いＶＶＯＬである影響ＶＶＯＬの使用ティアパタンから第２の特定のティアを外し前記第２の特定のティアから前記影響ＶＶＯＬに割り当てられている実領域内のデータを前記影響ＶＶＯＬの使用ティアパタンにおける別のティア内の実領域にマイグレーションしたと仮定して、前記影響ＶＶＯＬ及び前記影響ＶＶＯＬが関連付けられているプールに関連付けられている他の全てのＶＶＯＬの性能を予測し、
（Ｅ）前記プロセッサは、ＶＶＯＬに対応する要求性能を前記ＶＶＯＬ管理情報から特定し、その要求性能と予測された性能とを比較することを前記各ＶＶＯＬについて行うことにより、前記（Ｄ）で予測された性能が要求性能より低いＶＶＯＬがあるか否かを判断し、
（Ｆ）前記（Ｄ）の判断の結果が否定的であれば、前記プロセッサは、前記対象ＶＶＯＬの使用ティアパタンから前記第１の特定のティアを外し前記影響ＶＶＯＬの使用ティアパタンから前記第２の特定のティアを外すことを前記ストレージシステムに指示する、
管理システム。
【請求項４】
請求項３記載の管理システムであって、
（Ｇ）前記（Ｂ）の判断の結果が肯定的であれば、前記プロセッサは、前記（Ｄ）で予測された性能が要求性能より低いＶＶＯＬが、前記対象ＶＶＯＬ又は処理済の影響ＶＶＯＬであるか否かを判断し、
（Ｈ）前記（Ｇ）の判断の結果が肯定的であれば、前記プロセッサは、アラートを出力する、
（Ｉ）前記（Ｇ）の判断の結果が否定的であれば、前記プロセッサは、前記プールに関連付けられている複数のＶＶＯＬのうち前記対象ＶＶＯＬ及び処理済の影響ＶＶＯＬ以外のＶＶＯＬを影響ＶＶＯＬとして前記（Ｄ）を行う、
管理システム。
【請求項５】
請求項４記載の管理システムであって、
前記ストレージシステムは、ＶＶＯＬに割り当てられた実領域の割合をティア別に表した情報をＶＶＯＬ毎に含んだ割当て管理情報を適宜に更新するようになっており、
前記プロセッサは、前記割当て管理情報が有する情報を定期的に又は不定期的に取得することにより、前記プールの各ティアの使用傾向であるプール使用傾向を表すプール使用傾向情報を前記記憶資源に格納するようになっており、
（Ｊ）前記プロセッサは、前記プール使用傾向情報を基に、前記各ティアの枯渇時点を予測し、前記枯渇時点が規定時点より早いティアがあるか否かを判断し、
前記（Ｊ）の判断の結果が肯定的であれば、前記枯渇時点が規定時点より早いティアを含んだ使用ティアパタンが関連付けられているＶＶＯＬが、前記対象ＶＶＯＬである、
管理システム。
【請求項６】
請求項５記載の管理システムであって、
前記ストレージシステムに接続されている上位装置の数は２以上であり、
前記割当て管理情報は、ＶＶＯＬに割り当てられた実領域の割合をティア別に表した情報を上位装置毎に含んでおり、
前記プロセッサは、前記割当て管理情報が有する情報を定期的に又は不定期的に取得することにより、前記上位装置の各ティアの使用傾向である上位装置使用傾向を表す上位装置使用傾向情報を前記記憶資源に格納するようになっており、
（Ｋ）前記プロセッサは、前記プールに新たに関連付けられるＶＶＯＬである新規ＶＶＯＬが前記プールに関連付けられる時刻を特定し、
（Ｌ）前記プロセッサは、前記新規ＶＶＯＬの提供先の上位装置の使用傾向、又は、その上位装置の使用傾向と使用傾向が類似する上位装置の使用傾向を、前記上位装置使用傾向情報から特定し、
前記（Ｊ）において、前記プロセッサは、前記（Ｋ）で特定された時刻と、前記（Ｌ）で特定された使用傾向とを基に、前記各ティアの枯渇時点を予測し、前記枯渇時点が規定時点より早いティアがあるか否かを判断する、
管理システム。
【請求項７】
請求項６記載の管理システムであって、
前記（Ａ）において、前記プロセッサは、前記対象ＶＶＯＬの使用ティアパタンを構成するティアの数が１である場合、前記予測された枯渇時点が次回の前記再配置処理を開始する時刻よりも早ければ、アラートを出力する、
管理システム。
【請求項８】
請求項２記載の管理システムであって、
前記ストレージシステムは、ＶＶＯＬに割り当てられた実領域の割合をティア別に表した情報をＶＶＯＬ毎に含んだ割当て管理情報を適宜に更新するようになっており、
前記プロセッサは、前記割当て管理情報が有する情報を定期的に又は不定期的に取得することにより、前記プールの各ティアの使用傾向であるプール使用傾向を表すプール使用傾向情報を前記記憶資源に格納するようになっており、
（Ｊ）前記プロセッサは、前記プール使用傾向情報を基に、前記各ティアの枯渇時点を予測し、前記枯渇時点が規定時点より早いティアがあるか否かを判断し、
前記（Ｊ）の判断の結果が肯定的であれば、前記枯渇時点が規定時点より早いティアを含んだ使用ティアパタンが関連付けられているＶＶＯＬが、前記対象ＶＶＯＬである、
管理システム。
【請求項９】
請求項８記載の管理システムであって、
前記プロセッサは、前記予測された枯渇時点と規定時点との比較の結果、及び、実領域の量の実測値と予測値を、ティア別に表した画面を表示する、
管理システム。
【請求項１０】
請求項８記載の管理システムであって、
前記割当て管理情報は、ＶＶＯＬに割り当てられた実領域の割合をティア別に表した情報を上位装置毎に含んでおり、
前記プロセッサは、前記割当て管理情報が有する情報を定期的に又は不定期的に取得することにより、前記上位装置の各ティアの使用傾向である上位装置使用傾向を表す上位装置使用傾向情報を前記記憶資源に格納するようになっており、
（Ｋ）前記プロセッサは、前記プールに新たに関連付けられるＶＶＯＬである新規ＶＶＯＬが前記プールに関連付けられる時刻を特定し、
（Ｌ）前記プロセッサは、前記新規ＶＶＯＬの提供先の上位装置の使用傾向、又は、その上位装置の使用傾向と使用傾向が類似する上位装置の使用傾向を、前記上位装置使用傾向情報から特定し、
前記（Ｊ）において、前記プロセッサは、前記（Ｋ）で特定された時刻と、前記（Ｌ）で特定された使用傾向とを基に、前記各ティアの枯渇時点を予測し、前記枯渇時点が規定時点より早いティアがあるか否かを判断する、
管理システム。
【請求項１１】
請求項１０記載の管理システムであって、
前記プロセッサは、前記新規ＶＶＯＬの提供先の上位装置の使用傾向と使用傾向が類似する上位装置の使用傾向を、ティア別に表した画面を表示する、
管理システム。
【請求項１２】
請求項１０記載の管理システムであって、
前記（Ａ）において、前記プロセッサは、前記対象ＶＶＯＬの使用ティアパタンを構成するティアの数が１である場合、前記予測された枯渇時点が次回の前記再配置処理を開始する時刻よりも早ければ、アラートを出力する、
管理システム。
【請求項１３】
請求項１０記載の管理システムであって、
前記ストレージシステムが有するプールの数は２以上であり、
前記プロセッサは、プールを構成する全てのティアが規定時点よりも枯渇時点が遅いティアであり、既存のＶＶＯＬの使用ティアパタンを変更しなくても規定時点までに実領域が枯渇しないだろうと予測できるプールに、前記新規ＶＶＯＬを関連付ける、
管理システム。
【請求項１４】
請求項２記載の管理システムであって、
前記（Ａ）において、前記プロセッサは、前記対象ＶＶＯＬの使用ティアパタンにおける前記第１の特定のティア以外の２以上のティアの複数通りの組み合わせのうち、ティアの数が最も多い組み合わせから優先的に採用して、前記対象ＶＶＯＬ及び前記対象ＶＶＯＬが関連付けられているプールに関連付けられている他の全てのＶＶＯＬの性能を予測する、
管理システム。
【請求項１５】
アクセス性能の異なる複数の実領域群である複数のティアで構成されたプールとそのプールに関連付けられている複数のＶＶＯＬ（Virtual  VOLume）とを有し、上位装置からライトコマンドを受信し、そのライトコマンドを基に特定されたライト先のＶＶＯＬを構成している複数の仮想領域のうちのライト先の仮想領域に、そのライトコマンドに従うデータを、前記ライト先の仮想領域に前記プールから割り当てた実領域に書き込むストレージシステム、を管理する管理方法であって、
前記ＶＶＯＬは、仮想的な論理ボリュームであり、
（ａ）ライト先のＶＶＯＬの仮想領域に、そのライト先のＶＶＯＬへ実領域の割当て元となることが許可されている１以上のティアから構成される使用ティアパタンから、いずれかのティアの実領域を割り当て、
（ｂ）前記ＶＶＯＬに要求されている要求性能を満たすために、再配置処理を行うことをストレージシステムに指示し、
前記ＶＶＯＬの要求性能を満たすための再配置処理には、前記ＶＶＯＬに割当てられている実領域を有するティアとは別のティアを前記使用ティアパタンから選択し、前記ＶＶＯＬに割当てられている実領域内のデータを、選択した別のティアの実領域に移動する処理が含まれる、
管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想ボリュームに割り当てられた要求性能に基づく制御を行うストレージシステムの管理の技術に関する。
【背景技術】
【０００２】
複数の物理記憶デバイスを有するストレージ装置や、１以上のストレージ装置で構成されたストレージシステムが知られている。物理記憶デバイスとしては、例えば、ハードディスクドライブ、フラッシュメモリデバイスなどがある。ストレージ装置は、一般に、ＲＡＩＤ（Redundant  Array  of  Independent（or  Inexpensive）Disks）技術に従うＲＡＩＤグループを有する。ＲＡＩＤグループは、複数の物理記憶デバイスで構成されている。ＲＡＩＤグループには、所定のＲＡＩＤレベルに従ってデータが格納される。ＲＡＩＤグループの記憶空間を基に、１又は複数の論理的な記憶デバイス（論理ボリューム）が作成される。論理ボリュームは、ストレージ装置に接続されたホスト計算機に提供される。ホスト計算機は、提供された論理ボリュームを指定したアクセスコマンド（例えば、ライトコマンド又はリードコマンド）をストレージ装置に送信する。これにより、その論理ボリュームに対して、データのアクセスが行われる。【０００３】
ストレージ装置として、シンプロビジョニング（ダイナミックプロビジョニングと呼ばれることもある）技術が適用されたストレージ装置が知られている（特許文献１）。シンプロビジョニングによれば、記憶容量が固定された論理ボリュームに代えて、仮想的な論理ボリュームである仮想ボリューム（以下、ＶＶＯＬと言う）がホスト計算機に提供される。ＶＶＯＬは、複数の仮想領域（仮想的な記憶領域）の集合である。ホスト計算機からＶＶＯＬに対する書込みが発生した場合、仮想領域にプールからページが割り当てられる。なお、プールは、複数のページで構成された記憶領域である。ページは、実領域（実体的な記憶領域）であり、具体的には、例えば、プールを構成する論理ボリュームをＬＢＡ（Logical  Block  Address）等によって分割することにより得られた記憶領域である。ここで、「ＬＢＡ」とは、ホスト計算機がストレージ装置との間でデータを読み書きする場合に、論理ボリューム上の位置を指定するために用いるアドレスである。【０００４】
また、アクセス性能の異なる複数のページ群が混在するプールが知られている（特許文献２）。例えば、高性能なページ群は、高性能の論理ボリュームで構成されており、低性能のページ群は、低性能の論理ボリュームで構成されている。論理ボリュームのアクセス性能は、その論理ボリュームの基になっている物理記憶デバイスのアクセス性能（及び／又は、ＲＡＩＤグループのＲＡＩＤレベル）に依存する。或る論理ボリューム内の或るページから別の論理ボリューム内のページへの再配置（以下、ページ再配置）を行うことができる。【０００５】
なお、一般的に、プールを構成する論理ボリュームの中で、同等のアクセス性能を持った論理ボリュームの集合は、ティアと呼ばれている。つまり、プールは、複数のティア、すなわち、アクセス性能の異なる複数のページ群で構成される。【０００６】
また、特許文献２では、各ＶＶＯＬの要求性能に応じて、各ＶＶＯＬに割り当てるティアを指定することができる。ここで、ＶＶＯＬの要求性能とは、そのＶＶＯＬに対して要求される性能、例えば、スループット或いはレスポンスタイム等のアクセス性能を示す。【０００７】
この場合、例えば、要求性能の高いＶＶＯＬに対しては、高性能のティアを割り当て、アクセス頻度が低いＶＶＯＬに対しては、低性能のティアを割り当てることが望ましい。【０００８】
特許文献３には、ＶＶＯＬに割り当てるページが不足した場合に、プールに追加する記憶容量を決定する方法が開示されている。つまり、特許文献３には、定期的にプールの容量枯渇を予測し、プールの容量枯渇に備える技術が開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００３−００１５９１号公報
【特許文献２】特開２００７−０６６２５９号公報
【特許文献３】特開２００８−０９７５０２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
複数のＶＶＯＬで１つのプールを共有すること、言い換えれば、１つのプールに複数のＶＶＯＬが関連付けられることがある。一般的に、ＶＶＯＬの仮想領域には、そのＶＶＯＬが関連付けられているプールからページが割り当てられ、そのＶＶＯＬが関連付けられていないプールからはページが割り当てられない。【００１１】
このため、特定のＶＶＯＬに、プールから高性能ページ（高性能なティアを構成するページ）が優先的に割り当てられると、高性能ページが枯渇してしまい、そのＶＶＯＬと同一のプールを共有する他のＶＶＯＬ（既存のＶＶＯＬ、及び／又は新たに追加するＶＶＯＬ）に対して高性能ページが割り当てられなくなることがある。つまり、特定のＶＶＯＬに対して高性能ページが優先的に割り当てられることにより、特定のＶＶＯＬの要求性能を満たすことができるが、他のＶＶＯＬの要求性能を満たすことができない場合が生じることがある。【００１２】
この課題を解決するための方法として、プールにおける高性能なティアに高性能ページ群を追加する方法が考えられる。しかし、高性能ページ群の基になる高性能の物理記憶デバイスを追加する必要があるためコスト高となってしまうという課題がある。【００１３】
また、他の方法として、特定のＶＶＯＬに割り当てられている高性能ページ内のデータを低性能ページ（低性能なティアを構成するページ）に移動しその移動先の低性能ページを移動元の高性能ページに代えて特定のＶＶＯＬに割り当てるページ再配置を行う方法が考えられる。これにより、他のＶＶＯＬに割当て可能な高性能ページが増える。しかし、割当て可能な高性能ページを増やすためにわざわざページ再配置を行うと、ストレージ装置に余計な負荷がかかるという課題がある。【００１４】
従って、本発明の目的は、複数のＶＶＯＬが１つのプールを共有する環境において、上記のようなページ再配置を行ったり高性能な物理記憶デバイスを追加したりすることなく、１つのプールに関連付けられている各ＶＶＯＬの要求性能を満足できるようにすることにある。
【課題を解決するための手段】
【００１５】
ストレージシステムは、１以上のストレージ装置で構成されており、プールと、そのプールに関連付けられている複数のＶＶＯＬ（Ｔｈｉｎ  Ｐｒｏｖｉｓｉｏｎｉｎｇに従う仮想的な論理ボリューム）とを有する。プールは、複数のティアで構成されている。複数のティアは、アクセス性能の異なる複数の実領域群である。【００１６】
ストレージシステムは、上位装置（例えばホスト計算機又は他のストレージシステム）からライトコマンドを受信し、そのライトコマンドを基に特定されたライト先のＶＶＯＬを構成している複数の仮想領域のうちのライト先の仮想領域に、ライト先のＶＶＯＬに関連付けられている使用ティアパタンにおけるいずれかのティアから、実領域を割り当て、そのライトコマンドに従うデータを、割り当てた実領域に書き込むようになっている。また、ストレージシステムは、仮想領域に割り当てられた実領域のアクセス状況を基にその実領域内のデータをその実領域を有するティアとは別のティアの実領域に移動する再配置処理を行うようになっている。アクセス状況は、典型的には、アクセス頻度であるが、アクセス頻度に代えて又は加えて、他種のアクセス状況（例えば、最終アクセス時刻）であっても良い。【００１７】
このようなストレージシステムを管理する管理システムは、要求性能と使用ティアパタンとをＶＶＯＬ毎に表す情報であるＶＶＯＬ管理情報を含んだ管理情報を記憶する。ＶＶＯＬの要求性能は、そのＶＶＯＬに要求される性能である。ＶＶＯＬの使用ティアパタンは、そのＶＶＯＬへの実領域の割当て元となることが許可されている１以上のティアである。【００１８】
管理システムは、複数のＶＶＯＬのうちの１つである対象ＶＶＯＬの使用ティアパタンから第１の特定のティアを外し第１の特定のティアから対象ＶＶＯＬに割り当てられている実領域内のデータを対象ＶＶＯＬの使用ティアパタンにおける別のティア内の実領域にマイグレーションしたと仮定して、対象ＶＶＯＬ及び対象ＶＶＯＬが関連付けられているプールに関連付けられている他の全てのＶＶＯＬの性能を予測する。管理システムは、ＶＶＯＬに対応する要求性能をＶＶＯＬ管理情報から特定し、その要求性能と予測された性能とを比較することを各ＶＶＯＬについて行うことにより、上記予測された性能が要求性能より低いＶＶＯＬがあるか否かを判断する。この判断の結果が否定的であれば、管理システムは、対象ＶＶＯＬの使用ティアパタンから第１の特定のティアを外すことをストレージシステムに指示する。【００１９】
ここでいう「要求性能」は、例えば、後述の実施例１〜３で述べるＳＬＯであっても良いし、ＳＬＯと係数ｇとの積であっても良い。【００２０】
また、管理システムは、ストレージシステムの外にあっても良いし、ストレージシステムの中にあっても良い。
【発明の効果】
【００２１】
本発明によれば、複数のＶＶＯＬが１つのプールを共有する環境において、そのプールを共有する複数のＶＶＯＬが要求性能を満たす範囲で、それぞれのＶＶＯＬに対して使用可能なティアを変更することができる。
【図面の簡単な説明】
【００２２】
【図１】図１は、実施例１に係るストレージシステム１０３の一例を示す。
【図２】図２は、実施例１に係るホスト計算機１０１、管理計算機２０１及びストレージ装置２０３の構成の一例を示す。
【図３】図３は、実施例１に係るコントローラ２５１のメモリ２４３に記憶されるプログラム及び情報の一例を示す。
【図４】図４は、実施例１に係るページ状態管理テーブル３０２の一例を示す。
【図５】図５は、実施例１に係るプール管理テーブル３０３の一例を示す。
【図６】図６は、実施例１に係るメディア状態管理テーブル３０４の一例を示す。
【図７】図７は、実施例１に係るＶＯＬ管理テーブル３０５の一例を示す。
【図８】図８は、実施例１に係る管理計算機２０１内の記憶資源２１１に記憶されるプログラム及び情報の一例を示す。
【図９】図９は、実施例１に係るＶＶＯＬ管理テーブル８０４の一例を示す。
【図１０】図１０は、実施例１に係るティア定義テーブル８０５の一例を示す。
【図１１】図１１は、実施例１に係るＶＶＯＬ作成／割り当てインタフェース１１０１の一例を示す。
【図１２】図１２は、実施例１に係るＶＶＯＬ状態監視処理の流れを示すフローチャートの一例である。
【図１３】図１３は、実施例１に係るＶＶＯＬ一覧表示インタフェースの一例を示す。
【図１４】図１４は、実施例１に係るＶＶＯＬ状態監視アラートインタフェースの一例を示す。
【図１５】図１５は、実施例１に係るＶＶＯＬ性能管理処理の流れを示すフローチャートの一例の一部である。
【図１６】図１６は、実施例１に係るＶＶＯＬ性能管理処理の流れを示すフローチャートの一例の残りである。
【図１７】図１７は、実施例１に係るＶＶＯＬ性能計測管理テーブルの一例を示す。
【図１８】図１８は、実施例１に係るＶＶＯＬ性能劣化警告インタフェースの一例を示す。
【図１９】図１９は、実施例２に係るコントローラ２５１のメモリ２４３に記憶されるプログラム及び情報の一例を示す。
【図２０】図２０は、実施例２に係るＶＯＬ管理テーブル３０５の一例を示す。
【図２１】図２１は、実施例２に係るホスト使用傾向管理テーブル３０６の一例を示す。
【図２２】図２２は、実施例２に係るプール使用傾向管理テーブル３０７の一例を示す。
【図２３】図２３は、実施例２に係る管理計算機２０１のメモリに記憶されるプログラム及び情報の一例を示す。
【図２４】図２４は、実施例２に係るＶＶＯＬ管理テーブル８０４の一例の一部を示す。
【図２５】図２５は、実施例２に係るＶＶＯＬ管理テーブル８０４の一例の残りを示す。
【図２６】図２６は、実施例２に係るホスト使用傾向計測結果管理テーブル８０７の一例を示す。
【図２７】図２７は、実施例２に係るプール使用傾向計測結果管理テーブル８０８の一例を示す。
【図２８】図２８は、実施例２に係るティア枯渇時点予測管理処理の流れを示すフローチャートの一例の一部である。
【図２９】図２９は、実施例２に係るティア枯渇時点予測管理処理の流れを示すフローチャートの一例の残りである。
【図３０】図３０は、実施例２に係るプール使用状況インタフェース３００１の一例を示す。
【図３１】図３１は、実施例３に係るティア枯渇時点予測処理の流れを示すフローチャートの一例の一部をである。
【図３２】図３２は、実施例３に係るティア枯渇時点予測処理の流れを示すフローチャートの一例の残りである。
【図３３】図３３は、実施例３に係るＶＶＯＬ作成／割り当てインタフェースの一例を示す。
【発明を実施するための形態】
【００２３】
本発明の幾つかの実施例を説明する。なお、本発明の技術的範囲は各実施例に限定されない。
【００２４】
なお、以後の説明では、「ｘｘｘテーブル」の表現にて各種情報を説明することがあるが、各種情報は、テーブル以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために「ｘｘｘテーブル」を「ｘｘｘ情報」と呼ぶことができる。
【００２５】
また、以後の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ（例えばＣＰＵ（Central  Processing  Unit））によって実行されることで、定められた処理を、適宜に記憶資源（例えばメモリ）及び通信制御装置（例えば通信ポート）を用いながら行うため、処理の主語がプロセッサとされてもよい。また、プログラムを主語として説明された処理は、管理システムが行う処理としても良い。また、プログラムの一部または全ては専用ハードウェアによって実現されてもよい。このため、プログラムを主語として説明された処理は、コントローラが行う処理としても良い。コントローラは、プロセッサと、プロセッサに実行されるコンピュータプログラムを記憶する記憶資源とを含んでも良いし、上記の専用ハードウェアを含んでも良い。また、コンピュータプログラムは、プログラムソースから各計算機にインストールされても良い。プログラムソースは、例えば、プログラム配布サーバ又は記憶メディアであっても良い。
【００２６】
なお、管理システムは、一以上の計算機、例えば、管理計算機、又は、管理計算機と表示用計算機との組み合わせである。具体的には、例えば、管理計算機が表示用情報を表示する場合は、管理計算機が管理システムである。また、処理の高速化や高信頼化のために、複数の計算機で管理計算機と同等の機能が実現されてもよく、この場合は、当該複数の計算機（表示を表示用計算機が行う場合は表示用計算機を含んで良い）が、管理システムである。
【実施例１】
【００２７】
まず、本発明の実施例１の概略を説明する。【００２８】
シンプロビジョニング技術とデータ再配置技術が適用されたストレージ装置において、複数のＶＶＯＬが同じプールを共有している環境では、あるＶＶＯＬの性能を向上させるためにそのＶＶＯＬが使用できるティアを変更すると、そのＶＶＯＬと同じプールを共有する他のＶＶＯＬの性能が劣化し、各ＶＶＯＬの要求性能を満足できなくなることがある。本実施例では、性能を向上させたいＶＶＯＬの使用ティアを変更するだけでなく、そのＶＶＯＬとプールを共有する他のＶＶＯＬの使用ティアも変更することで、複数のＶＶＯＬが要求性能を満足できる。【００２９】
以下、図面を参照して、実施例１を詳細に説明する。【００３０】
図１は、本発明の実施例１に係るストレージシステム１０３の一例を示す。【００３１】
ストレージシステム１０３に、ホスト計算機１０１と、管理計算機２０１が接続されている。ストレージシステム１０３は、１以上のストレージ装置で構成されている。１以上のストレージ装置のうちの少なくとも１つが、シンプロビジョニング技術が適用されたストレージ装置である。ストレージシステム１０３は、性能の異なる複数のメディア群を有する。メディア群は、１以上のメディアの集合である。なお、以下の説明において、「メディア」とは、論理ボリュームのことである。【００３２】
複数のメディア群として、本実施例では、３つのメディア群、具体的には、ＳＳＤ（Solid  State  Drive）メディア群１０９Ａと、ＳＡＳ（Serial  Attached  SCSI）メディア群１０９Ｂと、ＳＡＴＡ（Serial  ATA（Advanced  Technology  Attachment））メディア群１０９Ｃとがある。【００３３】
ＳＳＤメディア群１０９Ａは、ＳＳＤメディア（ＳＳＤに基づく論理ボリューム）で構成されている。ＳＡＳメディア群１０９Ｂは、ＳＡＳメディア（ＳＡＳ−ＨＤＤ（Hard  Disk  Drive）に基づく論理ボリューム）で構成されている。また、ＳＡＴＡメディア群１０９Ｃは、ＳＡＴＡメディア（ＳＡＴＡ−ＨＤＤに基づく論理ボリューム）で構成されている。【００３４】
なお、これら３つのメディア群は、全て異なるメディア群でなくても良い。例えば、これら３つのメディア群のうちの少なくとも１つが別種のメディア群であっても良い。また、メディア群の数は、２以上であれば良い。例えば、同種のメディア群が、アクセス性能に応じて２以上の異なるメディア群に分けられても良い。例えば、ＳＡＳメディア群１０９Ｂは、ＳＡＳ［１０Ｋ／ｒｐｍ］（回転数が１０，０００［回転／分］のＳＡＳ）に基づくメディア群と、ＳＡＳ［１５Ｋ／ｒｐｍ］（回転数が１５，０００［回転／分］のＳＡＳ）に基づくメディア群とに分けられても良い。また、メディア群は、プール１０７を有するストレージ装置とは別のストレージ装置から提供されたメディア群（外部メディア群）であっても良い。【００３５】
ストレージシステム１０３は、１以上のプール１０７（図では、プールＡ及びＢ）を有する。各プール１０７は、性能の異なる複数のメディアで構成されている。具体的には、例えば、各プール１０７は、ＳＳＤメディア群１０９Ａのうちの１以上のＳＳＤメディアと、ＳＡＳメディア群１０９Ｂのうちの１以上のＳＡＳメディアと、ＳＡＴＡメディア群１０９Ｃのうちの１以上のＳＡＴＡメディアとで構成されている。各メディアが、複数のページに区切られている。このため、各プール１０７は、ＳＳＤページ群と、ＳＡＳページ群と、ＳＡＴＡページ群とで構成されていることになる。各メディアは、１つのプールの構成要素となり、２以上のプールの共通の構成要素とならないで良い。なお、図１における、プール１０７と各メディア群１０９との間の結線は、物理的な接続を意味するものではなく、上述の通りプール１０７が各メディア群１０９から構成されていることを示している。【００３６】
なお、１つのプール１０７には、複数のティアがある。１つのティアは、同じ性能の１以上のメディアで構成される。このため、例えば、上位のティアとして、ＳＳＤメディアで構成されたティアがあり、中位のティアとして、ＳＡＳメディアで構成されたティアがあり、下位のティアとして、ＳＡＴＡメディアで構成されたティアがある。なお、「同じ性能」とは、完全に同じ性能であっても良いし、実質的に同じ性能（例えば、アクセス性能の差が所定の差以下である）であっても良い。【００３７】
各ティアには、アクセス頻度範囲（アクセス頻度の範囲）が関連付けられる。アクセス頻度は、単位時間当りのアクセスの数であり、例えば、ＩＯＰＳ（Input  Output  Per  Second）で表される。なお、ＩＯＰＳは、１秒間当たりに行われるアクセス（Ｉ／Ｏ）の数の単位である。ストレージシステム１０３は、複数のＶＶＯＬ（例えばＶＶＯＬ１〜ＶＶＯＬ５）１０５を有する。【００３８】
ＶＶＯＬ１０５は、複数のホスト計算機１０１のうちのいずれか１つのホスト計算機１０１に提供される。本実施例では、ＶＶＯＬ１０５とホスト計算機１０１が１対１で対応している。なお、図１における、ホスト計算機１０１とＶＶＯＬ１０５との間の結線は、物理的な接続を意味するものではなく、ホスト計算機１０１からＶＶＯＬ１０５が認識されていること（ホスト計算機１０１にＶＶＯＬ１０５が提供されていること）を示す。同様に、プール１０７とＶＶＯＬ１０５との間の結線も、物理的な接続を意味するものではなく、ＶＶＯＬ１０５がプール１０７に関連付けられていることを示す。【００３９】
ＶＶＯＬ１０５は、シンプロビジョニング技術に従う仮想的な論理ボリュームであり、複数の仮想領域（仮想的な記憶領域）で構成されている。仮想領域は、例えば、アドレス（例えばＬＢＡ）である。ストレージシステム１０３は、ホスト計算機１０１からＶＶＯＬ１０５を指定したライトコマンドを受信した場合、そのライトコマンドから特定されるライト先の仮想領域にページ（実領域）が割り当てられていなければ、そのライト先のＶＶＯＬ１０５が関連付けられているプールから、未使用のページを割り当て、その割り当てたページに、そのライトコマンドに従うライト対象のデータを書き込む。【００４０】
ホスト計算機１０１は、アクセス元の一例である。ホスト計算機１０１は、提供されたＶＶＯＬ１０５にアクセスする。具体的には、ホスト計算機１０１は、アクセス先情報を有するアクセスコマンドを、ストレージシステム１０３に送信する。アクセス先情報は、アクセス先を表す情報であり、例えば、ＶＶＯＬ１０５のＩＤ（例えばＬＵＮ（Logical  Unit  Number））と、仮想領域のＩＤ（例えばＬＢＡ）とを含んでいる。【００４１】
図２は、ホスト計算機１０１、管理計算機２０１及びストレージ装置２０３の構成の一例を示す。【００４２】
ストレージ装置２０３が、第１の通信ネットワーク（例えばＬＡＮ（Local  Area  Network））２３１を介して、管理計算機２０１及びホスト計算機１０１に接続されている。また、ストレージ装置２０３が、第２の通信ネットワーク（例えばＳＡＮ２３２）を介して、ホスト計算機１０１に接続されている。なお、第１の通信ネットワーク２３１、及び第２の通信ネットワーク２３２は一体に形成されても良い。【００４３】
ストレージ装置２０３は、物理記憶デバイス群と、物理記憶デバイス群に接続されたコントローラ２５１とを有する。【００４４】
物理記憶デバイス群は、１以上の物理記憶デバイスより構成される。物理記憶デバイス群としては、ＳＳＤ群３０９Ａ、ＳＡＳ群３０９Ｂ及びＳＡＴＡ群３０９Ｃがある。ＳＳＤ群３０９Ａは、１以上のＳＳＤであり、ＳＡＳ群３０９Ｂは、１以上のＳＡＳ−ＨＤＤであり、ＳＡＴＡ群３０９Ｃは、１以上のＳＡＴＡ−ＨＤＤである。このように、ストレージ装置２０３は、性能の異なる複数の物理記憶デバイスが混在している。なお、物理記憶デバイス群は、ストレージ装置２０３の外部から提供されるものであっても良い。【００４５】
コントローラ２５１は、管理Ｉ／Ｆ（図では、Ｍ−Ｉ／Ｆと記載）２４１と、通信Ｉ／Ｆ２４２（図では、Ｃ−Ｉ／Ｆと記載）２４２と、デバイスＩ／Ｆ（図では、Ｄ−Ｉ／Ｆ）２４５と、メモリ２４３と、それらに接続されたプロセッサ２４４とを有する。【００４６】
Ｍ−Ｉ／Ｆ２４１は、第１のプロトコルで通信するための通信インタフェース装置（例えば、ＮＩＣ（Network  Interface  Card））である。Ｃ−Ｉ／Ｆ２４２は、第２のプロトコルで通信するための通信インタフェース装置である。【００４７】
Ｄ−Ｉ／Ｆ２４５は、第３のプロトコルで物理記憶デバイスと通信するための通信インタフェース装置である。Ｄ−Ｉ／Ｆ２４５は、物理記憶デバイスの種類毎に有していても良い。コントローラ２５１は、Ｄ−Ｉ／Ｆ２４５を介して、物理記憶デバイスに対してアクセスをする。【００４８】
メモリ２４３は、プロセッサ２４４で実行されるコンピュータプログラムや、種々の情報を記憶する。また、メモリ２４３は、キャッシュメモリ領域を有する。キャッシュメモリ領域には、ホスト計算機１０１から受けたライトコマンドに従うデータや、ホスト計算機１０１から受けたリードコマンドに応答してページ（つまりは、ページに割り当てられている物理記憶デバイス）から読み出されたデータが一時格納される。【００４９】
キャッシュメモリ領域内のライト対象のデータは、ライト先の仮想領域に割り当てられた物理記憶デバイスに格納される。キャッシュメモリ領域内のリード対象のデータは、ホスト計算機１０１に提供される。【００５０】
ホスト計算機１０１は、Ｍ―Ｉ／Ｆ（例えばＮＩＣ）２２４と、Ｃ―Ｉ／Ｆ（例えばＨＢＡ（Host  Bus  Adapter））２２６と、記憶資源２２１と、それら接続されたプロセッサ２２２とを有する。記憶資源２２１は、例えば、メモリ（ハードディスクドライブ等の補助記憶装置を含んでも良い）である。記憶資源２２１は、例えば、アプリケーションプログラム（例えば業務プログラム）やＯＳ（Operating  System）を記憶し、プロセッサ２２２が、そのアプリケーションプログラムやＯＳを実行する。【００５１】
管理計算機２０１は、Ｍ−Ｉ／Ｆ（例えばＮＩＣ）２１４と、記憶資源２１１と、それらに接続されたプロセッサ２１２とを有する。記憶資源２１１は、例えば、メモリ（ハードディスクドライブ等の補助記憶装置を含んでも良い）である。記憶資源２１１は、コンピュータプログラムや種々の情報を記憶する。コンピュータプログラムは、プロセッサ２１２で実行される。【００５２】
以上が、本実施例に係る計算機システムのハードウェア構成の一例である。なお、前述の通信インタフェースデバイス（Ｍ−Ｉ／Ｆ及びＣ−Ｉ／Ｆ）は、例えば、そのＩ／Ｆが接続されるネットワークの種類や、そのＩ／Ｆを有する装置の種類によって異なる。【００５３】
図３は、メモリ２４３に記憶されるプログラム及び情報の一例を示す。【００５４】
メモリ２４３には、プール管理プログラム３０１、ページ状態管理テーブル３０２、プール管理テーブル３０３、メディア状態管理テーブル３０４及びＶＯＬ管理テーブル３０５が記憶される。【００５５】
プール管理プログラム３０１は、ストレージシステム１０３が有するプール１０７を管理するためのプログラムである。プール管理プログラム３０１は、プロセッサ２４４に実行され、各種テーブル（３０２〜３０５）に基づき、各種処理が実現される。まず、各種テーブル（３０２〜３０５）について説明する。【００５６】
図４は、ページ状態管理テーブル３０２の一例を示す。【００５７】
ページ状態管理テーブル３０２は、ページ毎の状態を表す。ページ状態管理テーブル３０２により、プールを構成する各ページが、ＶＶＯＬの仮想領域に割り当てられているか否かが分かる。【００５８】
具体的に、例えば、テーブル３０２は、ページ毎に、下記の情報を有する。
（＊）プールＩＤ４０１：ページを有するプールを識別するための情報。
（＊）ページＩＤ４０２：ページを識別するための情報。
（＊）ＶＶＯＬ  ＩＤ４０３：ページの割当先の仮想領域を有するＶＶＯＬを識別するための情報。「Ｎ／Ａ（Not/Assigned）」は、ページがどの仮想領域にも割り当てられていないことを示す。
（＊）最近アクセス時刻４０４：ページに最近アクセスされた時刻を表す情報。
（＊）アクセス頻度４０５：ページに対するアクセスの頻度を示す情報。【００５９】
なお、最近アクセス時刻４０４は、「ページに対する最近のライトの時刻」と、「ページからの最近のリードの時刻」とに分けて管理されても良い。【００６０】
また、アクセス頻度４０５は、「ライトの頻度」と、「リードの頻度」とに分けて管理されても良い。アクセス頻度４０５は、ページに対するアクセスが行われた場合に更新され、アクセスコマンドを受けたもののページに対するアクセスが行われなかった場合には、更新されない。【００６１】
図５は、プール管理テーブル３０３の一例を示す。【００６２】
プール管理テーブル３０３は、プールを構成する各ページと仮想領域との対応関係を表す。プール管理テーブル３０３により、プールを構成する各ページが、どの種類のメディアのどの範囲から構成されているのかが分かる。【００６３】
具体的には、例えば、テーブル３０３は、ページ毎に、下記情報を有する。
（＊）プールＩＤ５０１：ページを有するプールを識別するための情報。
（＊）ページＩＤ５０２：ページを識別するための情報。
（＊）メディアＩＤ５０３：ページを有するメディアを識別するための情報。
（＊）メディアＬＢＡ５０４：メディアにおけるページの位置（例えば、ページの先頭のＬＢＡとそのページの末端のＬＢＡ）を示す情報。
（＊）ＶＶＯＬ  ＩＤ５０５：ページの割当先であるＶＶＯＬを識別するための情報。「Ｎ／Ａ」とは、ページがどの仮想領域にも割り当てられていないことを示す。
（＊）ＶＶＯＬ  ＬＢＡ５０６は、ページの割当先の仮想領域の位置（例えば、仮想領域の先頭のＬＢＡとその仮想領域の末端のＬＢＡ）を示す情報である。【００６４】
図６は、メディア状態管理テーブル３０４の一例を示す。【００６５】
メディア状態管理テーブル３０４は、メディアの状態に関する情報を有する。メディア状態管理テーブル３０４により、プールを構成する各メディアと、その各メディアが属するティアのレベルが分かる。【００６６】
具体的には、例えば、テーブル３０４は、メディア毎に、下記の情報を有する。
（＊）プールＩＤ６０１：メディアを有するプールを識別するための情報。
（＊）メディアＩＤ６０２：メディアを識別するための情報。
（＊）ティアレベル６０３：メディアが属するティアのレベルを表す情報。
（＊）アクセス頻度限界６０４：メディアに対するアクセス頻度の上限値を示す情報。図においては、アクセス頻度限界６０４は、単位時間内にメディアにアクセスすることのできるページの数の上限として示されている。
（＊）アクセス頻度６０５：メディアのアクセス頻度を示す情報である。図においては、アクセス頻度６０５は、単位時間内にメディアにアクセスされたページの数を示す。【００６７】
図７は、ＶＯＬ管理テーブル３０５の一例を示す。【００６８】
ＶＯＬ管理テーブル３０５は、ストレージ装置２０３が有するボリューム（例えば全てのボリューム）に関する情報を有する。ＶＯＬ管理テーブル３０５により、ボリュームがＶＶＯＬである場合、そのＶＶＯＬが仮想領域を提供しているホスト計算機、そのＶＶＯＬにページを割り当てているプール、及びＶＶＯＬが使用可能なティアの種類が分かる。【００６９】
具体的には、例えば、ＶＯＬ管理テーブル３０５は、ボリューム毎に、下記の情報を有する。
（＊）ＶＯＬ  ＩＤ７０１：ＶＶＯＬ又はメディアを識別するための情報。
（＊）容量７０２：ＶＶＯＬ又はメディアの記憶容量を示す。
（＊）ボリュームタイプ７０３：ボリュームタイプを示す。ボリュームのタイプは、ＶＶＯＬまたはメディアであるかを示す。ボリュームがメディアである場合、ボリュームタイプ７０３は、ＳＳＤ、ＳＡＳ、或いはＳＡＴＡを示す。
（＊）ホストＩＤ７０４：ボリュームの提供先のホスト計算機を識別するための情報。
（＊）プールＩＤ７０５：ＶＶＯＬに関連付けられたプールを識別するための情報。
（＊）使用ティア７０６：ＶＶＯＬが使用可能なティアを示す情報。【００７０】
「ＶＶＯＬが使用可能なティア」とは、そのＶＶＯＬに割り当てられるページの割当て元として選択されて良いティアである。ＶＶＯＬには、そのＶＶＯＬに関連付けられている使用ティア７０６が示すティア（使用可能なティア）以外のティアからはページが割り当てられない。使用可能なティアは、プールが、ティア１(上位ティア)、ティア２（中位のティア）、ティア３（下位ティア）の３ティアで構成されている場合、典型的には、下記パタンから選ばれる。
（パタン１）ティア１
（パタン２）ティア２
（パタン３）ティア３
（パタン４）ティア１、ティア２
（パタン５）ティア１、ティア３
（パタン６）ティア２、ティア３
（パタン７）ティア１、ティア２、ティア３。【００７１】
例えば「（パタン１）ティア１」が使用ティア７０６として選択されたＶＶＯＬは、優先的にティア１からページが割り当てられる。「（パタン６）ティア２、ティア３」が使用ティアとして選択されたＶＶＯＬは、ティア２またはティア３のいずれかのティアからページが割り当てられ、いくらアクセス頻度が高いページがあろうとも、ティア１からページが割り当てられることはない。【００７２】
また、使用ティア７０６のパタンは、例えば「（パタン５）ティア１、ティア３」に示すように、他のティア（この場合ティア２）を除き、離散的に選択することもできる。【００７３】
以上が、テーブル３０２〜３０５についての説明である。なお、それらのテーブルに加えて、どのページが割り当てられているかを仮想領域毎に表すマッピング管理テーブル（図示せず）が用意されても良い。仮想領域にページが割り当てられているか否かは、そのマッピング管理テーブルを基に判断されても良い。【００７４】
プール管理プログラム３０１（図２参照）は、前述したテーブル３０２〜３０５を基に、プロセッサ２４４により実行され、例えば、次の処理が行われる。
（Ａ）プロセッサ２４４は、プログラム３０１を実行することにより、以下の（ａ１）〜（ａ９）の処理を含んだライト処理を行う。
（ａ１）プログラム３０１は、ライトコマンドをホスト計算機１０１から受信する。
（ａ２）プログラム３０１は、ライトコマンドが有するアクセス先情報を基に、ライト先ＶＶＯＬとライト先仮想領域を特定する。
（ａ３）プログラム３０１は、ライトコマンドに従うライト対象のデータをキャッシュメモリ領域に格納する。なお、プログラム３０１は、この段階で、ホスト計算機１０１にライト完了を応答して良い。
（ａ４）プログラム３０１は、ページ状態管理テーブル３０２（又は前述のマッピング管理テーブル）を基に、上記（ａ２）で特定されたライト先仮想領域にページが割り当てられているかを判断する。
（ａ５）上記（ａ４）の判断の結果が肯定的であれば、プログラム３０１は、ライト先仮想領域に割り当てられているページに、キャッシュメモリ領域内のライト対象のデータを書き込む。
（ａ６）上記（ａ４）の判断の結果が否定的であれば、プログラム３０１は、ＶＯＬ管理テーブル３０５を基に、ライト先ＶＶＯＬが使用可能なティアを特定する。そして、プログラム３０１は、ＶＯＬ管理テーブル３０５と、ページ状態管理テーブル３０２又はプール管理テーブル３０３と、メディア状態管理テーブル３０４を基に、ライト先ＶＶＯＬに関連付けられているプールの中から、ライト先ＶＶＯＬが使用可能なティアに属する未使用のページ（どの仮想領域にも割り当てられていないページ）を特定する。ここで、プログラム３０１は、メディア状態管理テーブル３０４を基に、ライト先ＶＶＯＬが使用可能なティアの中でなるべく上位のティアに属するメディアから未使用のページを特定して良い。
（ａ７）プログラム３０１は、上記（ａ６）で特定したページをライト先仮想領域に対応付ける。具体的には、例えば、プログラム３０１は、プール管理テーブル３０３に、割り当てたページに対応するＶＶＯＬ  ＬＢＡ５０６として、ライト先仮想領域の先頭ＬＢＡ及び末端ＬＢＡを書き込む。
（ａ８）プログラム３０１は、上記（ａ６）で特定したページに、キャッシュメモリ領域内のライト対象のデータを書き込む（プログラム３０１は、この段階で、ホスト計算機１０１にライト完了を応答して良い）。
（ａ９）プログラム３０１は、上記（ａ５）又は（ａ８）において、ページ状態管理テーブル３０２における、データの書込み先のページの最近アクセス時刻４０４及びアクセス頻度４０５を更新する。また、それに伴い、プログラム３０１は、メディア状態管理テーブル３０４における、そのページを有するメディアのアクセス頻度６０５を更新する。【００７５】
なお、容量不足などの理由により、所望のティアからページが割り当てられなかった場合は、近傍ティアからページを割り当てるようにすることで、ページ割り当ての失敗を回避したりすることもできる。
（Ｂ）プログラム３０１は、以下の（ｂ１）〜（ｂ８）の処理を含んだリード処理を行う。
（ｂ１）プログラム３０１は、リードコマンドをホスト計算機１０１から受信する。
（ｂ２）プログラム３０１は、リードコマンドが有するアクセス先情報を基に、リード元ＶＶＯＬとリード元仮想領域を特定する。
（ｂ３）プログラム３０１が、リード対象のデータがキャッシュメモリ領域に残っているか否かを判断する。
（ｂ４）上記（ｂ３）の判断の結果が肯定的の場合、プログラム３０１は、キャッシュメモリ領域内のリード対象データを、ホスト計算機１０１に送信する。この場合、リード元仮想領域に割り当てられているページの最終アクセス時刻４０４及びアクセス頻度４０５（及び、そのページを有するメディアのアクセス頻度６０５）は、更新されない。
（ｂ５）上記（ｂ３）の判断の結果が否定的の場合、プログラム３０１は、ページ状態管理テーブル３０２（又は前述のマッピング管理テーブル）を基に、上記（ｂ２）で特定されたリード元仮想領域にページが割り当てられているかを判断する。
（ｂ６）上記（ｂ５）の判断の結果が否定的であれば、プログラム３０１は、所定のデータ（例えばエラー）をホスト計算機１０１に送信する。
（ｂ７）上記（ｂ５）の判断の結果が肯定的であれば、プログラム３０１は、リード元仮想領域に割り当てられているページからデータを読み出し、そのデータをキャッシュメモリ領域に書き込む。そして、プログラム３０１は、キャッシュメモリ領域内のそのデータをホスト計算機１０１に送信する。
（ｂ８）プログラム３０１は、上記（ｂ６）において、ページ状態管理テーブル３０２における、データの書込み先のページの最近アクセス時刻４０４及びアクセス頻度４０５を更新する。また、それに伴い、プログラム３０１は、メディア状態管理テーブル３０４における、そのページを有するメディアのアクセス頻度６０５を更新する。
（Ｃ）プログラム３０１は、以下の（ｃ１）〜（ｃ３）の処理を含んだメディア追加処理を行う。なお、（ｃ３）の後に、後述の（Ｅ）ページ再配置処理が行われて良い。
（ｃ１）プログラム３０１は、追加対象のメディアにＩＤを付与する。
（ｃ２）プログラム３０１は、追加対象のメディアをページに分割し、分割により得られた各ページにＩＤを付与する。
（ｃ３）プログラム３０１は、追加対象のメディアに関する情報（メディアの追加先のプールのＩＤ、（ｃ１）で付与されたメディアＩＤ、（ｃ２）で付与されたページＩＤ等）を、テーブル３０２〜３０５に追加する。
（Ｄ）プログラム３０１は、以下の（ｄ１）及び（ｄ２）の処理を含んだメディア削除処理を行う。
（ｄ１）プログラム３０１は、削除対象のメディア内の全ての使用ページ（いずれかの仮想領域に割り当てられているページ）内のデータを他のメディアに再配置するページ再配置処理を実行する。
（ｄ２）プログラム３０１は、削除対象のメディアに関する情報を、テーブル３０２〜３０５から削除する。
（Ｅ）プログラム３０１は、以下の（ｅ１）〜（ｅ４）の処理を含んだページ再配置処理を行うことができる。その場合、例えば、メモリ２４３は、管理計算機２０１が有する後述のティア定義テーブルを有していて良い。このページ再配置処理は、定期的に行われて良い。また、このページ再配置処理は、上記（ｄ１）でのページ再配置処理に適用されて良い。また、ページ再配置処理は、後述する使用ティアの変更に伴って行われても良い。
（ｅ１）プログラム３０１は、再配置元のページを見つける。再配置元のページは、不適切に配置されているデータが記憶されているページである。基本的には、再配置元のページとは、ページのアクセス頻度４０５がそのページを有するティアのアクセス頻度範囲に属していないページである。ただし、ＶＶＯＬが使用できるティアが特定ティアに限定されている場合はその限りではなく、その場合の処理は後述する。なお、再配置元のページは、上記（ｄ１）のページ再配置処理では、削除対象のメディア内の使用ページである。
（ｅ２）プログラム３０１は、上記（ｅ１）で見つけた再配置元ページのアクセス頻度４０５が属するアクセス頻度範囲に対応したティアを特定する。
（ｅ３）プログラム３０１は、上記（ｅ２）で特定したティアから、未使用のページを特定する。ここで特定された未使用のページが、再配置先のページである。
（ｅ４）プログラム３０１は、上記（ｅ１）で特定した再配置元ページ内のデータを、上記（ｅ３）で特定した再配置先ページに再配置する。また、プログラム３０１は、再配置元ページが割り当てられている仮想領域に、再配置元ページに代えて、再配置先ページを割り当てる（テーブル３０２及び３０３が更新される）。【００７６】
プログラム３０１は、（ｅ１）〜（ｅ４）のページ再配置処理の対象となるＶＶＯＬに対し，例えば、プログラム３０１は、下記（ｘ１）及び（ｘ２）、
（ｘ１）上位のティアから下位のティアにかけて順次に選択し、
（ｘ２）上記（ｘ１）で選択したティアの優先ティアパタン（優先度が高いティアパタン）が使用ティアとして関連付けられているＶＶＯＬを、上記（ｘ１）で選択したティアの優先ティアパタンが使用ティアとして関連付けられていないＶＶＯＬよりも優先的に選択する、
を行なって良い。ここで、上記（ｘ１）で選択したティアの優先ティアパタンとは、上記（ｘ１）で選択したティアがティアパタン内で最下位ティアであるティアパタンである。【００７７】
ここでは、ティア１（上位ティア）、ティア２（中位ティア）、ティア３（下位ティア）の３ティアで構成されるプールにおいて、以下の６つのティアパタンを使用ティアとして適用できる場合を例として説明する。
（パタン１）ティア１
（パタン２）ティア２
（パタン３）ティア３
（パタン４）ティア１、ティア２
（パタン５）ティア２、ティア３
（パタン６）ティア１、ティア２、ティア３【００７８】
この場合、ティア１の優先ティアパタンは、ティア１が最下位ティアである（パタン１）であり、ティア２の優先ティアパタンは、ティア２が最下位ティアである（パタン２）及び（パタン４）である。【００７９】
この例でのページ再配置処理は、例えば、以下（ｍ１）〜（ｍ４）で説明する通りである。
（ｍ１）まず、プログラム３０１は、ティア１の優先ティアパタン（パタン１）が使用ティアとして関連付けられているＶＶＯＬを特定し、そのＶＶＯＬに割り当てられているページ内のデータをティア１に配置する。これにより、ＶＶＯＬに割り当てられているページがティア１以外のティアにある場合、そのページに代えて、そのページからのデータの配置先である、ティア１内のページが、ＶＶＯＬに割り当てられる。
（ｍ２）次に、プログラム３０１は、優先ティアパタン（パタン１）以外のパタンのうち、ティア１を含むティアパタン（（パタン４）或いは（パタン６））が使用ティアとして関連付けられているＶＶＯＬを特定する。
（ｍ３）プログラム３０１は、（ｍ２）で特定したＶＶＯＬに割り当てられているページ群の中で、アクセス頻度（ＩＯＰＳ）が高い仮想領域に割り当てられているページから順に、ページ内のデータをティア１に配置する。プログラム３０１は、ティア１を含まないパタン２、３又は５が使用ティアとして関連付けられているＶＶＯＬに割り当てられているページ内のデータを、ページの割当先の仮想領域のアクセス頻度がどんなに高くても、ティア１には配置しない。
（ｍ４）プログラム３０１は、（ｍ１）〜（ｍ３）と同様の処理を、ティア２の優先ティアパタン（（パタン２）及び（パタン４））のうち、ページ再配置処理を未実行なティアパタン（パタン２）にも適用する。具体的には、プログラム３０１は、（ｍ１）と同様の処理によって、パタン２が使用ティアとして関連付けられているＶＶＯＬに割り当てられているページについて、ページ再配置処理を実施する。そして、プログラム３０１は、（ｍ２）及び（ｍ３）と同様の処理によって、パタン５（ティア２の優先ティアパタンではないが、ティア２を含んでいるティアパタン）が使用ティアとして関連付けられているＶＶＯＬに割り当てられているページについて、ページ再配置処理を実行する。
（ｍ５）プログラム３０１は、残りのティアパタン（パタン３）が使用ティアとして関連付けられているＶＶＯＬに割り当てられているページについて、ページ再配置処理を実施する。【００８０】
本実施例の１つの特徴は、優先ティアパタン以外のパタンが関連付けられているＶＶＯＬには優先順位を設けず、そのＶＶＯＬに割り当てられているページ内のデータの配置先を、そのページの割当先の仮想領域のアクセス頻度に基づいて決定する。このような方法をとることで、アクセス頻度の高いページ内のデータをできるだけ上位ティアに配置することができる。【００８１】
なお、（Ｅ）のページ再配置処理は、アクセス頻度とアクセス頻度範囲との比較に代えて又は加えて、各ページの最近アクセス時刻４０４からどのぐらい経過したかを基に行われても良い。すなわち、ページ内のデータの配置先は、アクセス頻度に代えて又は加えて、他種のアクセス情報、例えば、最近アクセス時刻からの経過時間に基づいて決定されても良い。【００８２】
このように、ＶＶＯＬに関連付けられた使用ティアに基づき、そのＶＶＯＬに割り当てられるページを決定することによって、そのＶＶＯＬの要求性能を満たすようなページ割り当てができる。【００８３】
使用ティアが限定されなければ、アクセス頻度が高い仮想領域ほど高性能ページ（高性能のティアにあるページ）が割り当てられ、アクセス頻度が低い仮想領域ほど低性能ページ（低性能なティアにあるページ）が割り当てられる。しかし、本実施例の様に、ＶＶＯＬの使用ティアとして、高性能なティアのみを含んだパタンが、そのＶＶＯＬに関連付けられていれば、各仮想領域のアクセス頻度がどれだけ小さくても、仮想領域に高性能ページが割り当てられる。ＶＶＯＬには、そのＶＶＯＬの使用ティアとして関連付けられたティア以外のティアからは、ページが割り当てられないからである。このため、仮想領域のアクセス頻度が低くても、その仮想領域についてリードコマンドがあった場合には、高レスポンスを期待することができる。【００８４】
図８は、管理計算機２０１内の記憶資源２１１に記憶されるプログラム及び情報の一例を示す。【００８５】
プログラムとして、ＶＶＯＬ構成管理プログラム８０１、ＶＶＯＬ性能管理プログラム８０２、及びＶＶＯＬ状態管理プログラム８０３が記憶される。情報として、ＶＶＯＬ管理テーブル８０４及びティア定義テーブル８０５が記憶される。【００８６】
図９は、ＶＶＯＬ管理テーブル８０４の一例を示す。【００８７】
ＶＶＯＬ管理テーブル８０４は、ＶＶＯＬに関する情報を有する。【００８８】
ＶＶＯＬ管理テーブル８０４により、各ＶＶＯＬに要求される要求性能、及び各ＶＶＯＬの仮想領域にページを提供しているプール、及びそのプールを構成しているティアの種類が分かる。【００８９】
具体的には、例えば、ＶＶＯＬ管理テーブル８０４は、ＶＶＯＬ毎に、下記情報を有する。
（＊）ＶＶＯＬ  ＩＤ９０１：ＶＶＯＬを識別するための情報。
（＊）サブシステムＩＤ９０２：ＶＶＯＬを有するストレージ装置２０３を識別するための情報。
（＊）ホストＩＤ９０３：ＶＶＯＬが割り当てられているホスト計算機を識別するための情報。
（＊）プールＩＤ９０４：ＶＶＯＬに関連付けられているプールを識別するための情報。
（＊）ＳＬＯ９０５：ＶＶＯＬのＳＬＯ（Service  Level  Objective）、つまり、ＶＶＯＬの要求性能を示す情報。ＳＬＯ９０５はとしては、ＶＶＯＬのレスポンスタイム、及びスループット等のアクセス性能に関する要求性能がある。以後、ＳＬＯ９０５は、レスポンスタイムとする。
（＊）使用ティア９０６：ＶＶＯＬが使用可能なＴｉｒｅを示す情報。
（＊）容量９０７：ＶＶＯＬの容量を表す情報。
（＊）使用容量９０８：ページが割り当てられている仮想領域の総記憶容量を表す情報。
（＊）性能９０９：ＶＶＯＬの性能（典型的にはアクセス性能）を表す情報。
（＊）アクセス分布９１０：アクセス頻度範囲毎に、そのアクセス頻度範囲に該当するページの総数及びページの割合を表す情報。ページの割合は、ＶＶＯＬに割り当てられているページの総数に対する、アクセス頻度範囲に該当するページの総数の割合である。図では、アクセス頻度範囲のサイズは、２５０であるが、アクセス頻度範囲のサイズは、例えば、１以上で整数であればこれに限定されない。ＶＶＯＬ構成管理プログラム８０１が、ページ状態管理テーブル３０２を基に、ＶＶＯＬ毎のアクセス分布９１０を算出することができる。【００９０】
ところで、ＳＬＯ９０５は、本実施例においては、性能９０９（計算値）と比較される閾値又はその閾値の基になる値である。【００９１】
性能９０９は、例えば、ＶＶＯＬの平均のレスポンスタイムである。ここで言う「レスポンスタイム」とは、例えば、ＶＶＯＬを指定したアクセスコマンドがストレージ装置２０３に入ってから応答がホスト計算機１０１に返されるまでの時間長である。【００９２】
ＶＶＯＬの平均レスポンスタイムは、下記の（１）式により算出することができる。
（ＶＶＯＬの平均レスポンスタイム）
＝（ＶＶＯＬに割り当てられている全てのページについての、アクセス頻度とレスポンスタイムの積の和）／（ＶＶＯＬに割り当てられている全てのページについてのアクセス頻度の和）・・・（１）。【００９３】
ここで、アクセス頻度の単位は、前述したように、例えば、ＩＯＰＳである。例えば、ＶＶＯＬにページ１〜６が割り当てられているとする。ページ１〜６のそれぞれについて、「ページが属するティア／そのティアでのアクセス速度／ページのアクセス頻度」は、次の通りであるとする。
ページ１：上位ティア（ＳＳＤ）／１／１００、
ページ２：中位ティア（ＳＡＳ）／１０／５０、
ページ３：中位ティア（ＳＡＳ）／１０／２０、
ページ４：下位ティア（ＳＡＴＡ）／２０／１０、
ページ５：下位ティア（ＳＡＴＡ）／２０／５、
ページ６：下位ティア（ＳＡＴＡ）／２０／０。【００９４】
この場合、（１）式によれば、ＶＶＯＬの平均レスポンスタイムＫは、【００９５】
Ｋ＝（１００×１＋５０×１０＋２０×１０＋１０×２０＋５×２０＋０×２０）／（１００＋５０＋２０＋１０＋１５）【００９６】
＝約５．３７
となる。アクセス速度は、後に説明するティア定義テーブル８０５から分かる。【００９７】
このようにして求められた平均レスポンスタイム（性能）は、ＳＬＯ（又はＳＬＯの所定割合（例えば８０％））と比較される。【００９８】
なお、以下の説明では「ＳＬＯ９０５が大きい／小さい」とは、単にＳＬＯの値が大きい／小さい、という意味を示す。また「性能９０９が大きい／小さい」とは、単に性能９０９の値が大きい／小さい、という意味を示す。【００９９】
例えば、性能９０９が平均レスポンスタイムの場合、性能９０９（及びＳＬＯ）が大きいということは、性能が低い（例えば、レスポンスタイムが長い）ことを意味する。また、性能９０９（及びＳＬＯ）が小さいということは、性能が高い（例えば、レスポンスタイムが短い）ことを意味する。【０１００】
図１０は、ティア定義テーブル８０５の一例を示す。【０１０１】
ティア定義テーブル８０５は、ティアの定義を表す。ティア定義テーブル８０５により、各ティアを構成するメディアの種類、そのメディアの性能、及びそのメディアに対する最大のアクセス頻度が分かる。【０１０２】
具体的には、例えば、ティア定義テーブル８０５は、ティア毎に、下記の情報を有する。
（＊）ティアレベル１００１：ティアのレベルを表す情報。「ティアのレベル」とは、ティアの高さを表す数値である。本実施例では、数値が小さいティアほど、高いティアである。
（＊）メディアタイプ１００２：ティアに属するメディアのタイプを表す情報。
（＊）速度１００３：ティアに対するアクセスの速度を表す情報。
（＊）最大アクセス頻度１００４：ティアに対応するアクセス頻度の最大値を示す情報。【０１０３】
各ティアの最大アクセス頻度１００４により、各ティアのアクセス頻度範囲が表されている。具体的には、図１０の例によれば、上位ティア（ＳＳＤ）のアクセス頻度範囲は、２５０００〜２５００（２５００を含まない）である。中位ティア（ＳＡＳ）のアクセス頻度範囲は、２５００〜１２５０（１２５０を含まない）である。下位ティア（ＳＡＴＡ）のアクセス頻度範囲は、１２５０〜０である。【０１０４】
以下、本実施例で行われる処理を詳細に説明する。【０１０５】
＜仮想ボリューム作成／割り当て管理＞。【０１０６】
プロセッサ２１４が、ＶＶＯＬ構成管理プログラム８０１を実行することにより、ＶＶＯＬが管理される。【０１０７】
まず、ＶＶＯＬ構成管理プログラム８０１は、管理者からＶＶＯＬの作成、及び割り当ての指示を受ける。ＶＶＯＬの作成、及び割り当ての指示には、ＶＶＯＬ割り当て先ホストの識別情報、ＶＶＯＬの容量及びＳＬＯ等が含まれる。また、ＶＶＯＬに関連づけるプールの識別情報が含まれていてもよい。【０１０８】
その後、ＶＶＯＬ構成管理プログラム８０１は、ＶＶＯＬの作成指示に応答して、ＶＶＯＬの作成先のストレージ装置２０３、ＶＶＯＬに関連付けるプール、ＶＶＯＬ  ＩＤを決定する。そして、ＶＶＯＬ構成管理プログラム８０１は、その決定に従う情報と、ＶＶＯＬの容量及びＳＬＯとを含んだエントリ（レコード）を、ＶＶＯＬ管理テーブル８０４に追加する。なお、使用ティア９０６については、すべてのティアが使用できるものとして登録される。例えば、プールがティア１、ティア２、ティア３の３ティアであれば、ティア１、ティア２、及びティア３で構成されたパタンが使用ティアとして登録される。ＶＶＯＬに関連づけるプールは、ランダムに選択してもよいし、ストレージ装置２０３からプール管理テーブル３０３に基づくプールの使用状況（ページの割り当て率など）を取得し、未割当ページが一定基準よりも多いプールの中から選択してもよい。管理者がＶＶＯLに関連づけるプールを指定した場合は指定されたプールを選択する。【０１０９】
次に、ＶＶＯＬ構成管理プログラム８０１は、ＶＶＯＬ追加指示をストレージ装置２０３に送信する。ＶＶＯＬ追加指示は、ＶＶＯＬ  ＩＤ、ＶＶＯＬの容量、ＶＶＯＬ割り当て先ホストＩＤ、ＶＶＯＬに関連づけるプールＩＤ、使用ティアを含む。その指示を受け取ったストレージ装置２０３のプール管理プログラム３０１は、受け取った指示に基づいてＶＯＬ管理テーブル３０５を更新し、ＶＶＯＬ追加完了をＶＶＯＬ構成管理プログラム８０１に通知する。ＶＶＯＬ構成管理プログラム８０１は、プール管理プログラムからの完了通知をもって処理を終了する。【０１１０】
なお、本実施例では、ＶＶＯＬ作成及び割り当ての時点で使用ティアが特定ティアのみに限定されることはなく、後述するＶＶＯＬ性能管理処理によって、そのＶＶＯＬの要求性能に応じて使用ティアが適宜調整される。しかし、別の実施例として、ＶＶＯＬ作成及び割り当て時に、ＶＶＯＬに関連付ける使用ティアを管理者が指定するようにしても良い。この場合、使用ティア欄９０６には、管理者が指定した使用ティアが登録される。また、ＶＶＯＬの要求性能を満足しているか否かの確認は、使用ティアとして指定されたティアからページが正しく割り当てられているかによって判断されて良い。【０１１１】
図１１は、ＶＶＯＬ作成／割り当てインタフェース１１０１の一例を示す。【０１１２】
ＶＶＯＬ構成管理プログラム８０１に対する、管理者からのＶＶＯＬ作成及び割り当ての指示は、図１１に示すような管理インタフェース１１０１を介して行われて良い。インタフェース１１０１は、例えば、管理計算機２０１によって表示されるＧＵＩ（Graphical  User  Interface）である。【０１１３】
管理インタフェース１１０１には、作成するＶＶＯＬの容量指定欄１１０２、作成したＶＶＯＬの割り当て先のホスト計算機を指定する指定欄１１０３、作成したＶＶＯＬの要求性能（例えばレスポンスタイム）を指定するＳＬＯ指定欄１１０４、及び、各種指定欄１１０２〜１１０４に入力された指定に従い、ＶＶＯＬの作成及び割り当てをＶＶＯＬ構成管理プログラム８０１に指示するＯＫボタン１１０５がある。ＶＶＯＬ構成管理プログラム８０１は、このインタフェース１１０１に対して入力された指定に従って、ＶＶＯＬの作成及び割り当てを行う。【０１１４】
＜仮想ボリューム状態監視＞。【０１１５】
図１２は、ＶＶＯＬ状態監視処理の流れを示すフローチャートの一例である。【０１１６】
この処理は、例えば、プロセッサ２１２がＶＶＯＬ状態監視プログラム８０３を定期的に実行することにより行われる。ＶＶＯＬ状態監視プログラム８０３は、この処理により、要求性能を（ＳＬＯ）満たしていないＶＶＯＬを検出する。【０１１７】
ＶＶＯＬ状態監視プログラム８０３は、各ＶＶＯＬの性能を計測する（Ｓ１２００１）。１つのＶＶＯＬを例に採れば、具体的には、下記処理が行われる。
（＊）ＶＶＯＬ状態監視プログラム８０３は、ＶＶＯＬに割り当てられている全てのページについての総記憶容量を、ＶＶＯＬ管理テーブル８０４の、そのＶＶＯＬに対応した使用容量９０８の欄に書き込む。
（＊）ＶＶＯＬ状態監視プログラム８０３は、どのティアから幾つのページがＶＶＯＬに割り当てられているかと、各ティアの速度とを基に、ＶＶＯＬの性能を算出する。ＶＶＯＬ状態監視プログラム８０３は、算出された性能を表す情報を、ＶＶＯＬ管理テーブル８０４の、ＶＶＯＬに対応した性能９０９の欄に書き込む。性能９０９は、例えば、上記の平均レスポンスタイムＫである。【０１１８】
ＶＶＯＬ状態監視プログラム８０３は、不適切なＶＶＯＬがあるかどうかを判断する（Ｓ１２００２）。不適切なＶＶＯＬは、性能９０９がＳＬＯ９０５を満たしていないＶＶＯＬ（つまり要求性能を満たしていないＶＶＯＬ）である。具体的には、例えば、不適切なＶＶＯＬは、性能９０９が、ＳＬＯ９０５と係数ｇとの積より大きいＶＶＯＬ（例えば、平均レスポンスタイムがＳＬＯ９０５と係数ｇとの積より長いＶＶＯＬ）である。なお、係数ｇは０より大きく１以下の数である。ｇ＝１の場合、性能１００７はＳＬＯ９０５それ自体と比較される。この係数ｇは、必ずしも「１」である必要はない。つまり、性能９０９は、単純にＳＬＯ９０５と比較することだけではなく、「ＳＬＯ９０５と係数ｇとの積」と比較することもできる。【０１１９】
Ｓ１２００２の判断の結果が肯定的であれば、ＶＶＯＬ状態監視プログラム８０３は、アラート１を出力する（Ｓ１２００３）。このアラート１は、ユーザが要求するＳＬＯ９０５よりも性能９０９が低いこと、つまり、不適切なＶＶＯＬが存在することを意味する。アラート１は、例えば、Ｓ１２００２で不適切と判断されたＶＶＯＬのＩＤを含んで良い。【０１２０】
Ｓ１２００２の判断の結果が否定的であれば、つまり、不適切なＶＶＯＬが見つからなければ、処理が終了する。【０１２１】
図１３及び図１４は、Ｓ１２００３で管理者にアラートを通知するインタフェースの一例を示す。具体的には、図１３は、ＶＶＯＬ一覧インタフェース１３０１の一例を示す。図１４は、ＶＶＯＬ状態監視アラートインタフェースの一例を示す。【０１２２】
ＶＶＯＬの状態監視処理（図１２参照）によって、要求性能を満足しないＶＶＯＬ（不適切なＶＶＯＬ）が発見されると、ＶＶＯＬ状態監視プログラム８０３は、管理者に対して、例えば、図１３に示すようなアラートを出力する。図１３に示すアラートには、警告文１３０２、及びアラートの対象となるＶＶＯＬの性能１３０３が含まれている。【０１２３】
なお、警告文１３０２と、図１４に示す管理インタフェース１４０１を連動させ、管理者が警告文１３０２をクリックした際に、管理計算機２０１のプロセッサ２１２が、図１４に示す管理インタフェース１４０１を表示しても良い。管理インタフェース１４０１により、管理者は、要求性能を満足しないＶＶＯＬを認識することができる。【０１２４】
管理インタフェース１４０１には、ＶＶＯＬ一覧１４０２が含まれて良い。ＶＶＯＬ一覧１４０２に、例えば、ＳＬＯ１４０３、及び性能１４０４を表示すると、管理者は、要求性能を満足していないＶＶＯＬの性能が、要求性能に対してどの位、満足していないかを把握することができる。【０１２５】
＜仮想ボリューム性能管理＞。【０１２６】
図１５及び１６は、ＶＶＯＬ性能管理処理の流れを示すフローチャートの一例である。【０１２７】
例えば、ＶＶＯＬ性能管理プログラム８０２は、管理者からＶＶＯＬ性能調整指示を受信したときにＶＶＯＬ性能管理処理を実行する。ＶＶＯＬ性能調整指示は、ＶＶＯＬ状態監視処理（図１２を参照）によって要求性能を満足していないＶＶＯＬを管理者が発見した場合などに管理者によって発行される。この他に、ＶＶＯＬ性能調整指示は、ＶＶＯＬ性能管理プログラム８０２が、定期的にＶＶＯＬを監視し、要求性能を満たしていないＶＶＯＬが発見された場合に発行されても良い。ＶＶＯＬ性能調整指示には、調整対象とするＶＶＯＬ（以降、対象ＶＶＯＬと言う）のＩＤが含まれる。対象ＶＶＯＬは、典型的には、要求性能を満たしていないＶＶＯＬである。【０１２８】
ＶＶＯＬ性能管理プログラム８０２は、ＶＶＯＬ管理テーブル８０４に基づき、現時点において対象ＶＶＯＬが使用できることになっているティアを特定する（Ｓ１５００１）。ここで、対象ＶＶＯＬが使用できるようになっているティアとは、ＶＯＬ管理テーブル３０５の使用ティア７０６にて示されているティアを示す。【０１２９】
次に、ＶＶＯＬ性能管理プログラム８０２は、対象ＶＶＯＬの性能が向上しうる使用ティアパタンに基づいて、下記のＳ１５００３の処理が行われていないパタンがあるか否かを判断する（Ｓ１５００２）。ここで、「対象ＶＶＯＬの性能が向上しうる使用ティアパタン」とは、例えば、Ｓ１５００１で取得したティアが、ティア１、ティア２及びティア３だった場合は、性能の低いティアを順に（この場合ティア３、またはティア２）を除いた、下記パタン、
（パタンＡ）ティア１、ティア２
（パタンＢ）ティア１
のいずれかである。つまり、「対象ＶＶＯＬの性能が向上しうる使用ティアパタン」とは、デフォルトの使用ティア（全てのティアが使用可能なティアとされたパタン）から、性能が或る基準性能より低いティア（上記の例では、性能の一番低いティア３、またはその次に低いティア２）を除くことにより、対象ＶＶＯＬの性能向上が期待できるパタンである。【０１３０】
対象ＶＶＯＬが使用できるティアを（パタンＡ）または（パタンＢ）に変更すると、ティア３、あるいはティア２内のページに格納されているデータが、性能の高い上位ティアに再配置されるため、対象ＶＶＯＬの性能向上が見込める。【０１３１】
Ｓ１５００２の判断の結果が否定的であれば、ＶＶＯＬ性能管理プログラム８０２は、アラートを発行して処理を終了する（Ｓ１５００７）。なぜなら、使用可能なティアを変更してもＳＬＯを満足するような性能向上が見込めないためである。この場合、高性能なメディアを追加するなどの対策を行う必要がある。アラートは、ＳＬＯを満足するための措置を表すメッセージ（例えば、メディア追加指示を促すメッセージ）を含んでも良い。【０１３２】
Ｓ１５００２の判断の結果が肯定的であれば、ＶＶＯＬ性能管理プログラム８０２は、Ｓ１５００２でＳ１５００３が実施されていないと判断されたパタンのうちの一つを、対象ＶＶＯＬの使用ティアとして、対象ＶＶＯＬ及び対象ＶＶＯＬとプールを共有する各ＶＶＯＬの予測される性能（以下、予測性能と言う）を計測する（Ｓ１５００３）。ここで、ＶＶＯＬ性能管理プログラム８０２は、使用可能なティアの数が多いパタンから性能を計測する。例えば、Ｓ１５００１で取得したティアが、ティア１、ティア２、ティア３であり、性能が向上しうるパタンが下記２パタンあった場合を例として説明する。
（パタンＡ）ティア１、ティア２
（パタンＢ）ティア１【０１３３】
パタンＡの使用可能なティアは２つであり、パタンＢの使用可能なティアは１つである。この場合、パタンＡから予測性能が計測される。これは、使用可能なティアの数が減るほど、性能不均衡が発生し易くなる傾向があるからである。要求性能が満たせる範囲であるならば使用可能なティアの数は多い方が良い。【０１３４】
上記のように、対象ＶＶＯＬの使用可能なティアが上位ティアに変更されたことで、対象ＶＶＯＬ以外のＶＶＯＬにおいて、変更前は上位ティアから割り当てられていたページが下位ティアに落とされることがあり、対象ＶＶＯＬ以外のＶＶＯＬの性能が劣化することがあり得る。【０１３５】
次に、ＶＶＯＬ性能管理プログラム８０２は、ＶＶＯＬ性能計測管理テーブル８０６を基に、対象ＶＶＯＬの予測性能がＳＬＯと係数ｇとの積以下かどうかを判断する（Ｓ１５００４）。【０１３６】
Ｓ１５００４の判断の結果が否定的であれば、対象ＶＶＯＬの予測性能が、ＳＬＯと係数ｇとの積を超えてしまう（つまり、予測されるレスポンスタイムが許容値を超えてしまう）ということである。このため、ＶＶＯＬ性能管理プログラム８０２により、Ｓ１５００２の処理が再度行われる。すなわち、異なる使用ティアパタンに基づいて、対象ＶＶＯＬの予測性能の計測が再度行われる。【０１３７】
Ｓ１５００４の判断の結果が肯定的であれば、対象ＶＶＯＬについて予測されるレスポンスタイムが許容値以下であるということである。この場合、ＶＶＯＬ性能管理プログラム８０２は、ＶＶＯＬ性能計測管理テーブル８０６（図１７参照）を基に、対象ＶＶＯＬとプールを共有するＶＶＯＬの予測性能がＳＬＯと係数ｇとの積以下かどうかを判断する（Ｓ１５００５）。【０１３８】
Ｓ１５００５の判断の結果が肯定的であれば、ＶＶＯＬ性能管理プログラム８０２は、対象ＶＶＯＬの使用ティアを、Ｓ１５００３での性能予測で仮定した使用ティアに変更する指示をストレージ装置２０３に送信し、処理を終了する（Ｓ１５００６）。使用ティア変更指示は、対象ＶＶＯＬの識別子及び使用ティアを含む。使用ティア変更指示を受け取ったストレージ装置２０３は、プール管理プログラム３０１によりＶＯＬ管理テーブルを更新し、ページ再配置処理を実行する。なお、ページ再配置処理は使用ティア変更指示受信に伴って即時実行しても良いし、任意のタイミングで実行しても良い。【０１３９】
一方、Ｓ１５００５の判断の結果が否定的であれば、図１６に示すように、ＶＶＯＬ性能管理プログラム８０２は、対象ＶＶＯＬとプールを共有するＶＶＯＬの中で、Ｓ１５００９の処理が行われておらず、かつ要求性能を満足していないＶＶＯＬ（以下、影響ＶＶＯＬ）があるか否かを判断する（Ｓ１５００８）。【０１４０】
Ｓ１５００８の判断の結果が否定的であれば、ＶＶＯＬ性能管理プログラム８０２は、アラートを発行して処理を終了する（Ｓ１５０１４）。この場合、対象ＶＶＯＬとプールを共有する他のＶＶＯＬの性能劣化を回避するには、メディアを追加するなどの対策が必要となる。このため、例えば、図１８に示す性能劣化警告インタフェース１８０１が管理計算機に表示されても良い。性能劣化警告インタフェース１８０１は、例えば、警告文１８０２として、メディアを追加しない場合にはＶＶＯＬがどの程度要求性能を満足できなくなる可能性があるかを示しても良く、以下の情報を、ＶＶＯＬ性能計測管理テーブル８０６に従って表示しても良い
（＊）ＳＬＯ１８０３：ＶＶＯＬのＳＬＯ（要求性能）。
（＊）現行性能１８０４：設定変更前のＶＶＯＬの性能。
（＊）変更後１８０５：設定を変更後のＶＶＯＬの性能。【０１４１】
また、性能劣化警告インタフェース１８０１は、要求性能を満足できなくなるＶＶＯＬがあっても設定を継続する設定ボタン１８０６、及び、設定をキャンセルするキャンセルボタン１８０７を有していても良い。「設定を継続する」が選択された場合は、後述するＳ１５０１３と同様、ＶＶＯＬ性能管理プログラム８０２は、使用するティア変更をストレージ装置２０３に指示し、処理を終了する（図示省略）。一方、「設定をキャンセルする」が選択された場合は、ＶＶＯＬ性能管理プログラム８０２は、設定を中止する（図示省略）。【０１４２】
Ｓ１５００８の判断の結果が肯定的であれば、ＶＶＯＬ性能管理プログラム８０２は、影響ＶＶＯＬの性能が向上しうる使用ティアパタンでＳ１５０１０が行われていないパタンがあるか否かを判断する（Ｓ１５００９）。【０１４３】
Ｓ１５００９の判断の結果が否定的であれば、ＶＶＯＬ性能管理プログラム８０２は、アラートを発行して処理を終了する（Ｓ１５０１４）。なお、本アラートも性能劣化警告インタフェース１８０２により通知しても良い。【０１４４】
Ｓ１５００９の判断の結果が肯定的であれば、ＶＶＯＬ性能管理プログラム８０２は、影響ＶＶＯＬの使用ティアを、影響ＶＶＯＬの性能が向上しうる使用ティアパタンでＳ１５０１０が行われていないいずれかのパタンを選択し、その選択したパタンを影響ＶＶＯＬの使用ティアと仮定した場合の、影響ＶＶＯＬ及び影響ＶＶＯＬとプールを共有する他のＶＶＯＬの予測性能を計測する（Ｓ１５０１０）。ここでも、ＶＶＯＬ性能管理プログラム８０２は、Ｓ１５００３と同様に、使用可能なティアの数が多いパタンから予測性能を計測する。【０１４５】
ＶＶＯＬ性能管理プログラム８０２は、ＶＶＯＬ性能計測管理テーブル８０６（図１７参照）を基に、影響ＶＶＯＬの予測性能がＳＬＯと係数ｇとの積以下か否かを判断する（Ｓ１５０１１）。【０１４６】
Ｓ１５０１１の判断の結果が否定的であれば、Ｓ１５００９の処理が再度行われる。【０１４７】
Ｓ１５０１１の判断の結果が肯定的であれば、ＶＶＯＬ性能管理プログラム８０２は、ＶＶＯＬ性能計測管理テーブル８０６を基に、影響ＶＶＯＬとプールを共有するＶＶＯＬ（対象ＶＶＯＬ含む）の予測性能がＳＬＯと係数ｇとの積以下か否かを判断する（Ｓ１５０１２）。【０１４８】
Ｓ１５０１２の判断の結果が肯定的であれば、ＶＶＯＬ性能管理プログラム８０２は、ＶＶＯＬ性能計測管理テーブル８０６に基づき、使用ティアを変更する指示をストレージ装置２０３に送信し、処理を終了する（Ｓ１５０１３）。使用ティア変更指示には、対象ＶＶＯＬ、及び使用ティア変更対象の影響ＶＶＯＬの識別子及び各ＶＶＯＬの変更後の使用ティアを含む。使用ティア変更指示を受け取ったストレージ装置２０３は、プール管理プログラム４０１によりページ再配置処理を実行する。【０１４９】
Ｓ１５０１２の判断の結果が否定的であれば、ＶＶＯＬ性能管理プログラム８０２は、影響ＶＶＯＬとプールを共有する複数のＶＶＯＬのうち、処理済の影響ＶＶＯＬ及び対象ＶＶＯＬのうちの少なくとも１つについて、予測性能がＳＬＯと係数ｇとの積より大きいＶＶＯＬがあるか否かを判定する（Ｓ１５０１５）。すなわち、ここでは、影響ＶＶＯＬの使用ティアを変更することにより、処理済みの影響ＶＶＯＬ（前回影響ＶＶＯＬであったＶＶＯＬ）及び対象ＶＶＯＬに悪影響が出るか否かがチェックされる。【０１５０】
Ｓ１５０１５の判断の結果が肯定的であれば、ＶＶＯＬ性能管理プログラム８０２は、アラートを発行して処理を終了する（Ｓ１５０１４）【０１５１】
Ｓ１５０１５の判断の結果が否定的であれば、Ｓ１５００８の処理が再度行われる。【０１５２】
以上、ＶＶＯＬ性能管理処理によって、要求性能を満足していない対象ＶＶＯＬがあっても、対象ＶＶＯＬの使用ティアを変更することにより、対象ＶＶＯＬの要求性能を満足させることができる。このとき、対象ＶＶＯＬだけでなく、対象ＶＶＯＬとプールを共有する別のＶＶＯＬについても使用ティアを変更することで、そのプールを共有する複数のＶＶＯＬのそれぞれについて要求性能を満足することができる。【０１５３】
なお、Ｓ１５００８で選択されＳ１５００９以降の処理が行なわれるＶＶＯＬは、要求性能の高いＶＶＯＬから行う、或いは対象ＶＶＯＬの使用ティアの変更に伴い要求性能と予測性能との乖離が大きくなるＶＶＯＬから行ったりする等、要求性能を満足させたいＶＶＯＬの優先度に基づき実行しても良い。【０１５４】
ＶＶＯＬ性能管理処理の契機としては、上記のように要求性能を満足していないＶＶＯＬを管理者が発見し、管理者が性能調整を指示した場合に行われても良いが、この他に、例えば、管理者がＶＶＯＬの要求性能を変更する場合に行われても良い。この場合、ＶＶＯＬ性能管理プログラム８０２は、管理者からＶＶＯＬ要求性能変更指示を受ける。ＶＶＯＬ要求性能変更指示には、ＶＶＯＬのＳＬＯ等も含まれる。ＶＶＯＬ性能管理プログラム８０２は、ＶＶＯＬ要求性能変更指示に応答して、Ｓ１５００１以降の処理を実行する。【０１５５】
図１７は、ＶＶＯＬ性能計測管理テーブル８０６の一例を示す。【０１５６】
以下、Ｓ１５００３にて説明した、各ＶＶＯＬの性能の計測について詳細に説明する。１つの使用ティアパタンを例にとれば、具体的には以下の処理が行われる。【０１５７】
（ｊ１）ＶＶＯＬ性能管理プログラム８０２が、管理計算機２０１内の記憶資源２１１に、図１７に示すテーブル８０６を用意する。テーブル８０６は、対象ＶＶＯＬと、対象ＶＶＯＬとプールを共有するＶＶＯＬ毎に、下記の情報を有する。
（＊）ＶＶＯＬ  ＩＤ１７０１：ＶＶＯＬを識別するための情報。
（＊）アクセス分布１７０２：ＶＶＯＬのアクセス分布９１０（図９参照）と同じ情報。
（＊）合計１７０３：ＶＶＯＬに割り当てられているページ（使用ページ）の総数を示す情報。
（＊）メディア比１７０４：合計１７０３に対する、ティア毎の使用ページの総数の割合を示す情報。
（＊）性能１７０５：ＶＶＯＬの性能９０９（図９参照）と同じ情報。
（＊）ＳＬＯ１７０６：ＶＶＯＬに関連付けられたＳＬＯ９０５（図９参照）と同じ情報。（＊）使用ティア（変更前）１７０７：ＶＶＯＬについて変更前の使用ティアを示す情報。（＊）使用ティア（変更後）１７０８：ＶＶＯＬについて変更後の使用ティアを示す情報。【０１５８】
（ｊ２）ＶＶＯＬ性能管理プログラム８０２が、対象ＶＶＯＬが使用するプールにおけるティア毎のページ群を、アクセス頻度範囲毎の総使用ページ数に応じて、割り振る。その際、プログラム８０２は、優先ティアパタンが使用ティアとして指定されているＶＶＯＬのページを優先的に割り当ててから、アクセス頻度範囲に応じた割り当てを行う。具体的には、例えば、３ティアからなるプールであって、
（＊）ティア１（上位ティア）を構成するページの数が３００００、
（＊）ティア２（中位ティア）を構成するページの数が４０００００、
（＊）ティア３（下位ティア）を構成するページの数が５０００００、
であるとする。
（ｊ２−１）まず、プログラム８０２は、ティア１が優先ティアパタンとなっているＶＶＯＬのページ内のデータをティア１に配置する。図１７の例では、ティア１が優先ティアパタンとなっているＶＶＯＬは「ＶＶＯＬ２」である。この場合、まず、プログラム８０２は、ＶＶＯＬ２に対して、優先的にティア１からページを割り当てる。そして、ＶＶＯＬ２に対してティア１からページを割り当ててもティア１のページが残っている場合、プログラム８０２は、その残りのページを、各ＶＶＯＬのアクセス頻度に基づいて、ＶＶＯＬ２以外の各ＶＶＯＬに振り分ける。
（ｊ２−２）ＶＶＯＬ２に割り当てられている１５０００ページ分のデータがティア１に格納されると仮定する。図１７の例では、ＶＶＯＬ２以外にティア１の優先ティアパタンが指定されているＶＶＯＬはないので、ティア１の残りのページ（３００００−１５０００＝１５０００ページ）は、使用ティアにティア１が含まれるＶＶＯＬが有するページに対して、アクセス頻度に基づく振り分けを行う。
（ｊ２−３）図１７の例では、ＶＶＯＬ１、ＶＶＯＬ３が有するページの振り分けが行われる。例えば、１番目に高いアクセス頻度範囲「２５００以上」の総ページ数が５０００ページの場合、ティア１の残りの１５０００ページのうちの５０００ページに、アクセス頻度範囲「２５００以上」に属するアクセス頻度の５０００ページ内のデータが格納されると仮定される。２番目に高いアクセス頻度範囲「２２５０以上２４４９以下」の総使用ページ数が１２０００の場合、ティア１の残りのページ（３００００−１５０００−５０００＝１００００ページ）に、アクセス頻度範囲「２２５０以上２４４９以下」に属するアクセス頻度の１２０００ページのうちの１００００ページ内のデータが格納されると仮定される。以上で、ティア１へのページ振り分けが完了する。
（ｊ２−４）次に、プログラム８０２は、ティア２が優先ティアパタンとなっているＶＶＯＬのページをティア２に配置する。図１７の例では、ティア２の優先ティアパタンであるティア１及びティア２を使用ティアとしているＶＶＯＬは「ＶＶＯＬ１」である。このため、まず、ＶＶＯＬ１に割り当てられているページのうち、ティア１へのページ振り分けが行われなかったページをティア２に配置する。
（ｊ２−５）そして、図１７の例では、ＶＶＯＬ１以外にティアの優先ティアパタンが指定されているＶＶＯＬは他にないので、ティア２の残りのページは、使用ティアにティア２が含まれるＶＶＯＬが有するページに対して、アクセス頻度に基づく振り分けが行われる。ティア２への振り分けが完了したら、ティア３に対して同様の処理を行う。【０１５９】
（ｊ３）ＶＶＯＬ性能管理プログラム８０２が、上記（ｊ２）の結果を基に、ＶＶＯＬ１〜３についてメディア比１７０４を更新する。更新後の値が、図１７に、記号「->」の後に示されている。【０１６０】
（ｊ４）ＶＶＯＬ性能管理プログラム８０２が、ＶＶＯＬ１〜３について、更新後のメディア比１７０４を基に、対象ＶＶＯＬの使用可能なティアが変更されたと仮定した場合の性能１７０５を算出する。その性能１７０５の値が、図１７に、記号「->」の後に示されている。【０１６１】
以上、実施例１により、あるＶＶＯＬに対する性能調整または要求性能変更が指示された場合に、性能調整または要求性能変更が指示されたＶＶＯＬの使用ティアだけでなく、そのＶＶＯＬとプールを共有するＶＶＯＬの使用ティアを変更することによって、複数のＶＶＯＬの要求性能を満足することができる。
【実施例２】
【０１６２】
まず、本発明の実施例２の概略を説明する。【０１６３】
シンプロビジョニング技術とデータ再配置技術が適用されたストレージ装置において、あるＶＶＯＬに対して特定ティアが優先的に割り当てられると、その特定ティアのページが枯渇することがある。そうすると、このＶＶＯＬとプールを共有している他のＶＶＯＬは、特定ティアからページが割り当てられなくなる場合がある。特定ティアが上位のティアである場合、他のＶＶＯＬに対しては上位のティアからページが割り当てられなくなってしまうことがある。結果、他のＶＶＯＬが要求する性能を満足できなくなることがある。【０１６４】
ページ再配置処理を実行することによってＶＶＯＬの性能のリバランスを行うことができるが、ページ再配置処理はストレージ装置に負荷がかかるため、ページ再配置処理が発生しないように、ページを初めから配置することが望ましい。【０１６５】
本実施例では、複数のＶＶＯＬに供されるプールを構成する全てのティアについて、ページが枯渇する時間が予測される。そして、枯渇時点（枯渇時刻）が規定時点（規定時刻）よりも早いティアである枯渇ティアについては、プールを共有する全ＶＶＯＬの要求性能が満たされる範囲で、各ＶＶＯＬについて、その枯渇ティアを除いた残りのティアで、使用ティアが構成される。【０１６６】
以下、図面を参照して、実施例２を詳細に説明する。その際、実施例１との相違点を主に説明し、実施例１との共通点については説明を省略或いは簡略する。【０１６７】
実施例２におけるホスト計算機１０１、ストレージ装置２０３及び管理計算機２０１の構成は実施例１と同じであるため、説明を省略する。【０１６８】
図１９は、コントローラ２５１内のメモリ２４３に記憶されるプログラム及び情報の一例を示す。【０１６９】
プログラムとして、プール管理プログラム３０１が記憶される。情報として、ページ状態管理テーブル３０２、プール管理テーブル３０３、メディア状態管理テーブル３０４、ＶＯＬ管理テーブル３０５、ホスト使用傾向管理テーブル３０６及びプール使用傾向管理テーブル３０７が記憶される。【０１７０】
ページ状態管理テーブル３０２、プール管理テーブル３０３、メディア状態管理テーブル３０４については、実施例１と同じため、説明を省略する。プール管理プログラム３０１は、前述したテーブル３０２〜３０７を基に、プロセッサ２４４により実行され、後述の処理が実現される。【０１７１】
図２０は、ＶＯＬ管理テーブル３０５の一例を示す。【０１７２】
ＶＯＬ管理テーブル３０５は、ストレージ装置２０３が有するボリュームに関する情報を有する。このテーブル３０５は、図７に示したテーブルに、使用候補ティア７０７の情報が追加されている。使用候補ティア７０７は、ＶＶＯＬにページ割り当て可能なティアの候補を示す情報である。使用ティア７０６で指定されるティアは、使用候補ティア７０７に登録されたティアの中から選択される。【０１７３】
図２１は、ホスト使用傾向管理テーブル３０６の一例を示す。【０１７４】
ホスト使用傾向管理テーブル３０６は、ストレージ装置２０３が有する全てのＶＶＯＬについての使用傾向に関する情報を有する。具体的には、例えば、ホスト使用傾向管理テーブル３０６は、下記の情報を有する。
（＊）ホストＩＤ２１０４：ホスト計算機を識別するための情報。
（＊）ティア２１０５：ティアを識別するための情報。
（＊）時間２１０６：ティアの使用傾向を計測する計測時間帯を示す情報。
（＊）新規使用容量２１０７：計測時間帯にホスト計算機１０１（対応するホストＩＤ２１０４から識別されるホスト計算機）に対して新規に割り当てられたページの総容量を示す情報。
（＊）計測中使用容量２１０８：計測時間帯にホスト計算機１０１（対応するホストＩＤ２１０４から識別されるホスト計算機）に対して割り当てられたページの総容量を示す情報であって、計測中の場合に更新される情報。【０１７５】
図２１の例では、「１０：００〜１１：００」の時間帯にＶＶＯＬ１に新規に割り当てたページ群の内訳は、ティア１からのページ群が５ＧＢ分、ティア２からのページ群が２ＧＢ分であることがわかる。また「１１：００〜１２：００」の時間帯は、計測中であり、新規使用容量２１０７には、前回計測によって得られた容量と、現時点までに計測された容量との和が記録されている。計測中に発生した新規割り当て容量は計測中使用容量２１０８に記録され、図２１の例では、ティア１からは１ＧＢ分のページ群が割り当てられ、ティア２は新規割り当てが発生していないことが分かる。【０１７６】
図２０のテーブル３０５及び図２１のテーブル３０６により、ホスト計算機１が使用する１以上のＶＶＯＬに、どの時間帯に、どのティアからどれだけのページ群が割り当てられたかが分かる。このことから、ホスト計算機１のティアの使用傾向を予測することができる。【０１７７】
図２２は、プール使用傾向管理テーブル３０７の一例を示す。【０１７８】
プール使用傾向管理テーブル３０７は、ストレージ装置２０３が有するプールの使用傾向に関する情報を有する。具体的には、例えば、プール使用傾向管理テーブル３０７は、プール毎に、下記の情報を有する。
（＊）プールＩＤ２２０１：プールを識別するための情報。
（＊）ティアＩＤ２２０２：プールにあるティアを識別するための情報。
（＊）時間２２０３：計測時間帯を示す情報。
（＊）新規使用容量２２０４：計測時間帯に新規に割り当てられたページの総容量を示す情報。
（＊）計測中使用容量２２０５：計測時間帯に新規に割り当てられたページの総容量を示す情報であって、計測中の場合に更新される情報。
（＊）空き容量２２０６：ティアの空き容量（未使用ページの総容量）を示す情報。【０１７９】
再び図１９を参照する。【０１８０】
プール管理プログラム３０１は、前述したテーブル３０２〜３０７を基に、例えば、次の処理を行う。
（ｑ）プール管理プログラム３０１は、以下の（ｑ１）〜（ｑ９）の処理を含んだライト処理を行うことができる。実施例１との違いは、
（＊）ライトに伴う新規ページ割り当てが発生するたびに、ホスト使用傾向テーブル３０６及びプール使用傾向テーブル３０７の計測中使用容量（２１０８、２２０５）を更新すること、
（＊）ＶＶＯＬ管理テーブル３０５の使用候補ティア７０７の中から使用ティア７０６とするティアを決定すること、
である。以下詳細に説明する。
（ｑ１）プール管理プログラム３０１は、ライトコマンドをホスト計算機１０１から受信する。
（ｑ２）プログラム３０１は、ライトコマンドが有するアクセス先情報を基に、ライト先ＶＶＯＬとライト先仮想領域を特定する。
（ｑ３）プログラム３０１は、ライトコマンドに従うライト対象のデータをキャッシュメモリ領域に格納する。プログラム３０１は、この段階で、ホスト装置１０１にライト完了を応答して良い。
（ｑ４）プログラム３０１は、ページ状態管理テーブル３０２（又は前述のマッピング管理テーブル）を基に、上記（ｑ２）で特定されたライト先仮想領域にページが割り当てられているかを判断する。
（ｑ５）上記（ｑ４）の判断の結果が肯定的であれば、プログラム３０１は、ライト先仮想領域に割り当てられているページに、キャッシュメモリ領域内のライト対象のデータを書き込む。
（ｑ６）上記（ｑ４）の判断の結果が否定的であれば、プログラム３０１は、ＶＯＬ管理テーブル３０５の使用ティア７０６に登録されているティアの中から、ライト先ＶＶＯＬが使用可能なティアを特定する。そして、プール管理プログラム３０１は、ＶＯＬ管理テーブル３０５と、ページ状態管理テーブル３０２又はプール管理テーブル３０３と、メディア状態管理テーブル３０４とを基に、ライト先ＶＶＯＬに関連付けられているプールの中から、ライト先ＶＶＯＬが使用可能なティアに属する未使用のページ（どの仮想領域にも割り当てられていないページ）を特定する。ここで、プログラム３０１は、メディア状態管理テーブル３０４を基に、ライト先ＶＶＯＬに割り当て可能なティアの中でなるべく上位のティアに属するメディアから未使用のページを特定して良い。
（ｑ７）プログラム３０１は、上記（ｑ６）で特定したページをライト先仮想領域に対応付ける。具体的には、例えば、プログラム３０１は、プール管理テーブル３０３に、割り当てたページに対応するＶＶＯＬ  ＬＢＡ５０６として、ライト先仮想領域の先頭ＬＢＡ及び末端ＬＢＡを書き込む。
（ｑ８）プログラム３０１は、上記（ｑ６）で特定したページに、キャッシュメモリ領域内のライト対象のデータを書き込む（プログラム３０１は、この段階で、ホスト計算機１０１にライト完了を応答して良い）。
（ｑ９）プログラム３０１は、上記（ｑ５）又は（ｑ８）において、ページ状態管理テーブル３０２における、データの書込み先のページの最近アクセス時刻４０４及びアクセス頻度４０５を更新する。また、それに伴い、プログラム３０１は、メディア状態管理テーブル３０４における、そのページを有するメディアのアクセス頻度６０５を更新する。加えて、ホスト使用傾向管理テーブル３０６及びプール使用傾向管理テーブル３０７における、ライトが発生した時間帯の、計測中使用容量２１０８、２２０６、空き容量２２０６を更新する。具体的には、ＶＯＬ管理テーブル３０５に基づき、ライト先ＶＶＯＬが割り当てられているホスト計算機及びそのＶＶＯＬが使用するプールを特定し、ホストＩＤ、（ｑ６）で特定したページが属するティア及びライト発生時間帯から、ホスト使用傾向テーブル３０６のレコードを特定し、加えて、ＶＶＯＬが使用するプールＩＤ、（ｑ６）で特定したページが属するティア、及びライト発生時間帯から、プール使用傾向テーブル３０７のレコードを特定する。そして、当該ライトによって新規に割り当てたページの総容量と計測中使用容量２１０８、２２０６に登録されている容量を足した結果を、ホスト使用傾向テーブル３０６及びプール使用傾向計測テーブル３０７の計測中使用容量２１０８、２２０６に記録する。
（ｐ）プール管理プログラム３０１は、以下の（ｐ１）〜（ｐ２）の処理を含んだ新規使用容量確定処理を行うことができる。新規使用容量確定処理は、例えば、使用傾向を計測する時間帯が切り替わるタイミングで実行される。図２１、２２の例では、１１：００、１２：００、１３：００、・・・のタイミングで計測する時間帯が切り替わるため、その時刻になると使用容量確定処理が実行される。
（ｐ１）プール管理プログラム３０１は、ホスト使用傾向管理テーブル３０６及びプール使用傾向管理テーブル３０７に対し、計測が完了した時間帯の計測中使用容量欄２１０８、２２０５に登録された容量情報を取得し、その容量情報を、同一レコードにおける新規使用容量２１０７、２２０４として上書きする。なお、最新の計測情報で新規使用容量２１０７，２２０４を単純に上書きするのではなく、過去に取得した計測情報を加重した値で上書きしてもよい。
（ｐ２）プール管理プログラム３０１は、計測が完了した時間帯の計測中使用容量を初期化する。例えば、１２：００に実施した使用容量確定処理の場合、「１１：００−１２：００」の時間帯の計測中使用容量に登録されている容量情報で、同レコードの新規使用容量２１０７、２２０４を更新する。そして、プログラム３０１は、「１１：００−１２：００」の時間帯の計測中使用容量２１０８、２２０５を、例えば、０ＧＢで初期化する。【０１８１】
図２３は、管理計算機２０１内の記憶資源２１１に記憶されるプログラム及び情報の一例を示す。【０１８２】
プログラムとして、ＶＶＯＬ構成管理プログラム８０１、ＶＶＯＬ性能管理プログラム８０２、ＶＶＯＬ状態監視プログラム８０３、ティア枯渇時点予測プログラム８０６が記憶される。情報として、ＶＶＯＬ管理テーブル８０４、ティア定義テーブル８０５、ホスト使用傾向計測結果テーブル８０７、及びプール使用傾向計測結果テーブル８０８が記憶される。本図は、図８に、ホスト使用傾向計測結果テーブル８０７、及びプール使用傾向計測結果テーブル８０８が追加された図である。ティア定義テーブル８０５については、実施例１と同じであるため、説明を省略する。【０１８３】
図２４及び２５は、ＶＶＯＬ管理テーブル８０４の一例を示す。【０１８４】
ＶＶＯＬ管理テーブル８０４は、ＶＶＯＬに関する情報を有する。このテーブル８０４と、図９に示したテーブル８０４との相違点は、ＶＶＯＬ毎に、使用候補ティア９０７を有することである。使用候補ティア９０７は、ＶＶＯＬにページ割り当て可能なティアの候補を示す情報である。【０１８５】
図２６は、ホスト使用傾向計測結果管理テーブル８０７の一例を示す。【０１８６】
ホスト使用傾向計測結果管理テーブル８０７は、管理計算機２０１が管理する。ホスト使用傾向計測結果管理テーブル８０７は、各ホスト計算機について計測されたプール使用傾向を表す情報を保持する。【０１８７】
具体的には、例えば、ホスト使用傾向計測結果管理テーブル５０４０は、ホスト計算機１０１毎に、下記の情報を有する。
（＊）ホストＩＤ２６０１：ホスト計算機１０１を識別するための情報。
（＊）サブシステムＩＤ２６０２：ストレージ装置２０３を識別するための情報。
（＊）ティアＩＤ２６０３：ティアを識別するための情報。
（＊）時間２６０４：計測時間帯を示す情報。
（＊）新規使用容量２６０５：上記時間帯に新規に割り当てられたページの総容量を示す情報。【０１８８】
図２７は、プール使用傾向計測結果管理テーブル８０８の一例を示す。【０１８９】
プール使用傾向計測結果管理テーブル８０８は、プールの計測された使用傾向を表す情報保持する。【０１９０】
具体的には、例えば、テーブル８０８は、プール毎に、下記の情報を有する。
（＊）プールＩＤ２７０１：プールを識別するための情報。
（＊）サブシステムＩＤ２７０２：プールを有するストレージ装置２０３を識別するための情報。
（＊）ティア２７０３：ティアを識別するための情報。
（＊）時間２７０４：計測時間帯を示す情報。
（＊）新規使用容量２７０５：上記時間帯に新規に割り当てられたページの総容量を示す情報。
（＊）空き容量２７０６：ティアの空き容量を示す情報。【０１９１】
以下、実施例２で行われる処理を詳細に説明する。なお、仮想ボリューム作成、割り当て管理、仮想ボリューム状態監視処理、及び仮想ボリューム性能管理処理については、実施例１と同じであるため説明を省略する。【０１９２】
＜ティア枯渇時点予測管理＞。【０１９３】
図２８及び２９は、実施例２に係るティア枯渇時点予測管理処理の流れを示すフローチャートの一例である。【０１９４】
例えば、ティア枯渇時点予測処理は、実施例１のページ再配置処理を行う後処理として実施しても良いし、任意のタイミングで行われても良い。【０１９５】
ティア枯渇時点予測プログラム８０６は、ストレージ装置２０３にホスト／プール使用傾向計測結果取得要求を送信し、ホスト使用傾向管理テーブル３０６及びプール使用傾向管理テーブル３０７に登録された情報を受け取り、その情報に基づき、ホスト使用傾向計測結果テーブル８０７及びプール使用傾向計測結果テーブル８０８を更新する（Ｓ２８０１）。【０１９６】
予測プログラム８０６は、プール使用傾向計測結果テーブル８０８に基づき、各ティアの枯渇時点を予測する（Ｓ２８０２）。図２７のティア１の例では、１０：００から１４：００までの４時間の間に、１０＋８＋１＋１０＝２９ＧＢ分の新規ページ割り当てが発生したことを示す。現在時刻が１０：００だとすると、前日の傾向から、現在時刻から３時間後から４時間後の間に２０ＧＢ分の空き容量がすべて消費され、ティア１の容量が枯渇する可能性があることが予測される。つまり、現在時刻から３時間後から４時間後の時間帯が枯渇時点となる。【０１９７】
予測プログラム８０６は、Ｓ２８００２で得られた各ティアの枯渇時点が規定時点よりも早いか否かを判断する（Ｓ２８００３）。【０１９８】
Ｓ２８００３の判断の結果が否定的な場合は、予測プログラム８０６は、処理を終了する。【０１９９】
Ｓ２８００３の判断の結果が肯定的な場合は、予測プログラム８０６は、プールを構成するティアのうち、Ｓ２８００３で枯渇時点が規定時点より早いティアの中で、Ｓ２８００５が行われていないティアがあるか否かを判断する（Ｓ２８００４）。【０２００】
Ｓ２８００４の判断の結果が否定的な場合は、予測プログラム８０６は、処理を終了する。【０２０１】
Ｓ２８００４の判断の結果が肯定的な場合は、予測プログラム８０６は、ＶＶＯＬ管理テーブル８０４に基づき、枯渇時点が早いティアから、そのティアを使用するＶＶＯＬを特定する（Ｓ２８００５）。【０２０２】
予測プログラム８０６は、Ｓ２８００５で特定したＶＶＯＬの中で、Ｓ２８００７が行われていないＶＶＯＬがあるか否かを判断する（Ｓ２８００６）。【０２０３】
Ｓ２８００６の判断の結果が否定的な場合は、予測プログラム８０６は、再度Ｓ２８００４を実行する。【０２０４】
Ｓ２８００６の判断の結果が肯定的な場合は、予測プログラム８０６は、ＶＶＯＬ管理テーブル８０４に基づき、Ｓ２８００６で特定されたＶＶＯＬが使用可能なティアを取得する（Ｓ２８００７）。【０２０５】
予測プログラム８０６は、Ｓ２８００７で取得した使用可能なティアから、そのＶＶＯＬが複数のティアを使用できるか否かを判定する（Ｓ２８００８）。【０２０６】
Ｓ２８００８の判断の結果が否定的な場合は、予測プログラム８０６は、ホスト使用傾向管理テーブル８０７に基づき、次の再配置までにそのティアが枯渇するか否かを判定し、枯渇しそうであれば管理者に対しアラートを通知し、Ｓ２８００６の処理に戻る（Ｓ２８００９）。【０２０７】
Ｓ２８００８の判断の結果が肯定的な場合は、予測プログラム８０６は、そのＶＶＯＬの使用ティアからＳ２８００４で選択したティアを外した状態で、要求性能を満足するかを判断し、満足できるならばＳ２８００４で選択したティアを使用ティアから外す。要求性能を満足できるかは、実施例１においてＶＶＯＬ性能管理処理について説明した「予測性能の計測」と同様の方法によって判断することができる。【０２０８】
Ｓ２８００４で選択したティアを外して要求性能を満足できることが判明したら、予測プログラム８０６は、ＶＶＯＬ管理テーブル８０４の使用ティア９０６に登録されているティアから、Ｓ２８００４で処理をしたティアを除外する（Ｓ２８０１０）。【０２０９】
上記処理が、１つのプールを共有する全てのＶＶＯＬについて行われる。このため、枯渇しそうなティアが使用されるのを防止しながら、全てのＶＶＯＬの要求性能を満たすことが期待できる。
なお、上記処理ではＳ２８００６で選択したＶＶＯＬに対してＳ２８００８で複数ティアが指定可能か否かを確認し、Ｓ２８００８の判断が否定的でありかつ次の再配置までに枯渇しそうであればアラートを表示しているが、Ｓ２８００５で取得したＶＶＯＬ全てに対してＳ２８００７、Ｓ２８００８を実施してなおティアの容量が枯渇しそうな場合のみ、アラートを表示してもよい。Ｓ２８００５で取得したＶＶＯＬのうち、どのＶＶＯＬからＳ２８００７の処理を行うかは、ランダムで行ってもよいし、所定のポリシーに従って行ってもよい。【０２１０】
なお、Ｓ２８０１０の処理を、以下の２ステップに分ける事ができる。
（ステップ１）予測プログラム８０６は、予測された枯渇時点が規定時点よりも早いティアを使用ティアから外しても、１つのプールを共有する全てのＶＶＯＬの要求性能を満たすことが分かった時点で、そのことを管理者に通知する。
（ステップ２）管理者が、許可したときに、枯渇時点の早いティアを使用ティアから外す。【０２１１】
図３０は、プール使用状況インタフェース３００１の一例を示す。【０２１２】
このインタフェース３００１は、プール使用状況を管理者に通知する画面（例えばＧＵＩ）の一例であり、管理者からの指示に従って表示されても良いし、ティア枯渇時点予測管理処理のＳ２８００９のアラートに含めて、管理計算機に表示されても良い。【０２１３】
インタフェース３００１は、プールを構成する各ティアの使用実績及び枯渇時点の予測結果を管理者に通知するインタフェースである。インタフェース３００１には、警告文３００２と、ティア１及びティア２の使用実績を表すグラフ３００３、グラフ３００４を表示している。【０２１４】
グラフ３００３、３００４は、プール使用傾向計測結果テーブル８０８に基づき表示される。例えば、ティア１は、現時点では未使用ページが存在するが、現状のまま使用され続けると、１２／３／２３：００には未使用ページがなくなる可能性がある。警告文３００２は、このことを管理者に通知するメッセージを含む。【０２１５】
例えば、この時点（１２／３／２３：００）で新規ＶＶＯＬを追加しようとした場合、新規ＶＶＯＬにティア１からページを割り当てることはできない可能性がある。一方、ティア２については、この時点（１２／３／２３：００）では、ページが枯渇する可能性はないことが分かる。この場合、１つのプールを共有する全ＶＶＯＬの要求性能が満たされる範囲で、全ＶＶＯＬに対してティア１からのページの割り当てを中止する。【０２１６】
以上、実施例２により、１つのプールを共有するＶＶＯＬにおいて、全ＶＶＯＬの要求性能が満足する範囲で使用可能なティアを限定することで、特定ティアのページのみが偏って枯渇してしまうことを防止することができる。これにより、例えば、ティア１から優先的にページを割り当てたい新規ＶＶＯＬを追加しようとする際に、ティア１が枯渇していて新規ＶＶＯＬに対してティア１からページを割り当てられない、という状況を一定期間の間、防止することができる。
【実施例３】
【０２１７】
まず、本発明の実施例３の概略を説明する。【０２１８】
シンプロビジョニング技術とデータ再配置技術が適用されたストレージ装置２０３では、通常、上位ティアのページが空いている限り、既存のＶＶＯＬには上位ティアからページを割り当てられることが多い。このようなページ割り当て方法によれば、既存のＶＶＯＬのＩ／Ｏ性能をなるべく高くすることが期待できる。しかし、この方法によれば、後から新しくＶＶＯＬを追加しようとしても、既存のＶＶＯＬに上位ティアの全てのページが割当てられていれば、後から追加したＶＶＯＬに対しては上位ティアからページを割り当てることができない。【０２１９】
そこで、本実施例では、１つのプールを複数のＶＶＯＬが共有するストレージ装置２０３において、ＶＶＯＬが追加される時刻、及びそのＶＶＯＬのプール使用傾向があらかじめ分かっている場合、そのＶＶＯＬの追加に備え、主に以下の処理が行われる。【０２２０】
各ティアについて、新規にＶＶＯＬが追加される時刻とプールの使用傾向とを基に、ページが枯渇する時点（時刻）が予測される。枯渇時点が規定時点よりも早いティアである枯渇ティアについては、枯渇ティアを含んだプールを使用するＶＶＯＬに対し、そのＶＶＯＬの要求性能が満たされる範囲で、各ＶＶＯＬの使用ティアから枯渇ティアが除かれる。このような処理を、１つのプールを共有する各ＶＶＯＬについて実施することによって、複数のＶＶＯＬが要求性能を満足できるようにする。【０２２１】
以下、図面を参照して、実施例３を詳細に説明する。その際、実施例１、２との相違点を主に説明し、実施例１、２との共通点については説明を省略或いは簡略する。【０２２２】
実施例３におけるストレージシステム１０３、ホスト計算機１０１、ストレージ装置２０３、及び管理計算機２０１の構成は実施例１、２と同じため、説明を省略する。【０２２３】
また、実施例３における、コントローラ２５１内のメモリ２４３に記憶されるプログラム及び情報は実施例２と同じため、説明を省略する。【０２２４】
また、実施例３における管理計算機２０１内の記憶資源２１１に記憶されるプログラム及び情報は実施例２と同じため、説明を省略する。【０２２５】
＜ティア枯渇時点予測管理＞。【０２２６】
図３１、３２は、実施例３に係るティア枯渇時点予測処理の流れを示すフローチャートの一例である。【０２２７】
例えば、ティア枯渇時点予測処理は、ＶＶＯＬが追加されるタイミングが分かった段階で行われる。ＶＶＯＬが追加されるタイミングが分かった段階で、ティア枯渇時点予測処理を行うことにより、ＶＶＯＬに要求される性能を満足するのに必要なティアに空きのページを確保しておくことができる。以下、追加されるＶＶＯＬを、実施例３の説明において「新規ＶＶＯＬ」と言う。【０２２８】
ティア枯渇時点予測プログラム８０６は、ストレージ装置２０３にホスト／プール使用傾向計測結果取得要求を送信する。その後、予測プログラム８０６は、ストレージ装置２０３から、ホスト使用傾向管理テーブル３０６及びプール使用傾向管理テーブル３０７に登録されている情報を受け取り、その情報に基づき、ホスト使用傾向計測結果テーブル８０７及びプール使用傾向計測結果テーブル８０８を更新する（Ｓ３１００１）。【０２２９】
予測プログラム８０６は、プール使用傾向計測結果テーブル８０８と、新規ＶＶＯＬの使用傾向及び／又は要求性能と、新規ＶＶＯＬが追加される時刻（新規ＶＶＯＬがプールに関連付けられる時刻）とに基づき、プールを構成する各ティアの枯渇時点を調べる（Ｓ３１００２）。具体的に、例えば、予測プログラム８０６は、新規ＶＶＯＬが追加されるまでに既存ＶＶＯＬに新規に割り当てられるであろうページ数と、新規ＶＶＯＬが追加されてから新規ＶＶＯＬと既存ＶＶＯＬに割り当てられるであろうページ数とを、ティア毎に算出し、ティア毎に算出されたそれらのページ数を基に、各ティアの枯渇時点を求める。【０２３０】
ここで、新規ＶＶＯＬに新規に割り当てられると予測されるページ数は、新規ＶＶＯＬが提供されるホスト計算機の使用傾向から予測することもできる。また、新規ＶＶＯＬに新規に割り当てられると予測されるページ数は、新規ＶＶＯＬが提供されるホスト計算機と使用傾向が類似する他のホスト計算機の使用傾向から予測することもできる。この情報は、例えば、後述するＶＶＯＬ作成／割り当てインタフェース３３０１（図３３参照）のホスト指定３３０７で指定されたホスト計算機の使用傾向から取得することができる。【０２３１】
例えば、予測プログラム８０６は、新規ＶＶＯＬが提供されるホスト計算機の使用傾向（又は、そのホスト計算機の使用傾向と使用傾向が類似するホスト計算機の使用傾向）を基に、第１の時刻から第２の時刻までに新規ＶＶＯＬに割り当てられるページ数をティア毎に予測することができる。【０２３２】
予測プログラム８０６は、Ｓ３１００２で得られた各ティアの枯渇時点が規定時点よりも早いか否かを判断する（３１００３）。【０２３３】
Ｓ３１００３の判断の結果が否定的な場合、予測プログラム８０６は、処理を終了する。【０２３４】
Ｓ３１００３の判断の結果が肯定的な場合、予測プログラム８０６は、枯渇時点が規定時点より早いティアの中で、Ｓ３１００５の処理が行われていないティアがあるか否かを判断する（Ｓ３１００４）。【０２３５】
Ｓ３１００４の判断の結果が否定的な場合、予測プログラム８０６は、処理を終了する。【０２３６】
Ｓ３１００４の判断の結果が肯定的な場合、予測プログラム８０６は、ＶＶＯＬ管理テーブル８０４に基づき、枯渇時点が規定時点より早いティアを使用ティアに含むＶＶＯＬを特定する（Ｓ３１００５）。【０２３７】
予測プログラム８０６は、Ｓ３１００５で取得したＶＶＯＬの中で、Ｓ３１００７が行われていないＶＶＯＬ（図３１、３２の説明において「対象ＶＶＯＬ」と言う）があるか否かを判断する（Ｓ３１００６）。【０２３８】
Ｓ３１００６の判断の結果が否定的な場合、予測プログラム８０６は、再度Ｓ３１００４を実行する。【０２３９】
Ｓ３１００６の判断の結果が肯定的な場合、予測プログラム８０６は、ＶＶＯＬ管理テーブル８０４に基づき、対象ＶＶＯＬの使用ティアを特定する（Ｓ３１００７）。【０２４０】
予測プログラム８０６は、Ｓ３１００７で特定した使用ティアから、対象ＶＶＯＬが複数のティアを使用できるか否かを判定する（Ｓ３１００８）。【０２４１】
Ｓ３１００８の判断の結果が否定的な場合、予測プログラム８０６は、ホスト使用傾向管理テーブル８０７に基づき、次のページ再配置処理までにＳ３１００８で特定したティアが枯渇するか否かを判定し、枯渇しそうであればアラートを出し、Ｓ３１００６の処理に戻る（Ｓ３１００９）。【０２４２】
Ｓ３１００８の判断の結果が肯定的な場合、予測プログラム８０６は、対象ＶＶＯＬの使用ティアからＳ３１００４で処理をしたティアを外す（Ｓ３１０１０）。具体的には、例えば、予測プログラム８０６は、ＶＶＯＬ管理テーブル８０４の使用ティア９０６に登録されているティアから、Ｓ３１００４で処理をしたティアを除外する。【０２４３】
なお、Ｓ３１０１０の処理を下記の２ステップに分ける事ができる。
（ステップ１）予測プログラム８０６は、枯渇時点が規定時点より早いティアを外しても、１つのプールを共有する全てのＶＶＯＬの要求性能を満たすことが分かった時点で、そのことを管理者に通知する。
（ステップ２）管理者が、許可したときに、枯渇時点が規定時点より早いティアを外す。【０２４４】
以上のステップにより、各ＶＶＯＬの要求性能を満たしながら、新規ＶＶＯＬに割り当てられるであろうページを含んだティアから新規にページが既存ＶＶＯＬに割り当てられないようにすることができる。これにより、新規ＶＶＯＬが追加されても特定のティアのページが枯渇することがない。【０２４５】
図３３は、ＶＶＯＬ作成／割り当てインタフェースの一例を示す。【０２４６】
ＶＶＯＬ作成／割り当てインタフェース３３０１は、実行時刻指定３３０２、ＶＶＯＬ容量指定３３０３、割り当て先ホスト指定３３０４、ＳＬＯ指定３３０５、プール指定３３０６、ホスト指定３３０７、ホスト使用傾向表示３３０８、及びＯＫボタン３３０９を有する。【０２４７】
管理者は、ＶＶＯＬ作成／割り当てインタフェース３３０１を介して、以下を指定することができる。【０２４８】
実行時刻指定欄３３０２には、新規ＶＶＯＬを追加する時刻が指定される。ＶＶＯＬ容量指定欄３３０３には、ホスト計算機１０１に割り当てる新規ＶＶＯＬの容量が指定される。ホスト指定欄３３０４には、新規ＶＶＯＬの提供先となるホスト計算機のＩＤが指定される。ＳＬＯ指定欄３３０５では、新規ＶＶＯＬのＳＬＯが指定される。プール指定欄３３０６には、新規ＶＶＯＬが関連付けられるプールのＩＤが指定される。ホスト指定欄３３０７には、新規ＶＶＯＬの提供先のホスト計算機と使用傾向が類似している他のホスト計算機１０１が指定される。なお、使用傾向表示エリア３３０８には、ホスト指定欄３３０７で指定されたホスト計算機の使用傾向がティア毎に示される。ＯＫボタン３３０９が、管理者により押されることにより、実行時刻指定欄３３０２で指定された時刻に、新規ＶＶＯＬがストレージ装置２０３に追加された状態でストレージ装置２０３が稼働する。【０２４９】
ホスト使用傾向表示エリア３３０８には、ホスト使用傾向計測結果テーブル８０７に基づき、例えば、管理計算機のプロセッサ２１２によって情報が表示される。具体的に、例えば、プロセッサ２１２は、使用傾向計測結果テーブル８０７からホスト指定欄３３０７で指定されたホスト計算機１０１の使用履歴情報を特定し、特定した使用履歴情報を使ってホスト使用傾向表示３３０８を表示する。【０２５０】
なお、本実施例では、新規ＶＶＯＬが関連付けられるプールは管理者が指定することになっているが、管理者の指定ではなく、ティア枯渇時点予測処理の結果に基づいて新規ＶＶＯＬが関連付けられるプールが決定されても良い。具体的には、例えば、Ｓ３１００３の判定で、プールを構成する全てのティアが規定時点よりも枯渇時点が遅いティアであり、既存ＶＶＯＬの使用ティアを変更しなくても規定時点までに容量が枯渇しないだろうと予測できるプールが見つかった場合は、そのプールを新規ＶＶＯＬが関連付けられるプールとすることもできる。すなわち、Ｓ３１００３の判定で、プールを構成する全てのティアが規定時点よりも枯渇時点が遅いプールが見つからない場合に、Ｓ３１００４以降の処理が実行され、既存ＶＶＯＬの使用ティアが変更されて良い。【０２５１】
新規使用容量（２６０５、２７０５）の記録は、新規ＶＶＯＬが追加されてから一定期間内での新規使用容量トレンド、新規ＶＶＯＬ追加後一定期間経過した後からの新規使用容量トレンド、などに分けて記録されても良い。なぜなら、新規ＶＶＯＬ追加時には、頻繁に新規にページを割り当てることが発生するが、ある程度時間が経過すると、新規に割り当てられるページの数は減ってくることが考えられるためである。【０２５２】
また、時間帯毎の新規使用容量（２６０５、２７０５）の履歴には、前回の計測結果に対して今回の計測結果を上書きするのではなく、前回の計測結果と今回の計測結果との平均値が記録されても良い。【０２５３】
また、新規使用容量（２６０５、２７０５）は、ホスト計算機１０１単位ではなく、アプリケーション単位で記録されても良い。【０２５４】
以上、幾つかの実施例を説明したが、本発明はこれらの実施例に限定されない。例えば、使用ティアの変更は、要求性能を満たさなくなったＶＶＯＬが発見された場合（実施例１）、及び規定時点より枯渇時点が早いティアがある場合（実施例２又は３）に行うこともできる。
【符号の説明】
【０２５５】
１０１…ホスト計算機、１０３…ストレージシステム、２０１…管理計算機、２０３…ストレージ装置、２５１…コントローラ
【図１】
2013038510.tif 000003
【図２】
2013038510.tif 000004
【図３】
2013038510.tif 000005
【図４】
2013038510.tif 000006
【図５】
2013038510.tif 000007
【図６】
2013038510.tif 000008
【図７】
2013038510.tif 000009
【図８】
2013038510.tif 000010
【図９】
2013038510.tif 000011
【図１０】
2013038510.tif 000012
【図１１】
2013038510.tif 000013
【図１２】
2013038510.tif 000014
【図１３】
2013038510.tif 000015
【図１４】
2013038510.tif 000016
【図１５】
2013038510.tif 000017
【図１６】
2013038510.tif 000018
【図１７】
2013038510.tif 000019
【図１８】
2013038510.tif 000020
【図１９】
2013038510.tif 000021
【図２０】
2013038510.tif 000022
【図２１】
2013038510.tif 000023
【図２２】
2013038510.tif 000024
【図２３】
2013038510.tif 000025
【図２４】
2013038510.tif 000026
【図２５】
2013038510.tif 000027
【図２６】
2013038510.tif 000028
【図２７】
2013038510.tif 000029
【図２８】
2013038510.tif 000030
【図２９】
2013038510.tif 000031
【図３０】
2013038510.tif 000032
【図３１】
2013038510.tif 000033
【図３２】
2013038510.tif 000034
【図３３】
2013038510.tif 000035
【国際調査報告】
2013038510.tif 000036
2013038510.tif 000037
2013038510.tif 000038
2013038510.tif 000039