(57)【要約】【課題】アプリケーションが管理するデータ間の相関関係を考慮した最適なデータ移動を行い得る記憶システム及びデータ移動方法を提案する。【解決手段】ボリュームごとの稼働情報を収集し、収集した稼働情報に基づいて、移動対象のデータを格納するボリュームに要求する性能レベルでなるデータ要求レベルと、ストレージ装置内に設定された各ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出し、算出したデータ要求レベル及び各ボリューム許容レベルに基づいて、必要時、移動対象のデータを、当該データを格納するボリュームに要求するデータ要求レベルに応じたボリューム許容レベルの他のボリュームに移動させるようにした。【選択図】図１１
2007140919.tif 000002
【特許請求の範囲】
【請求項１】
データを記憶する複数のボリュームが設定されたストレージ装置と、前記ストレージ装置を管理する管理装置とを有する記憶システムにおいて、
前記ストレージ装置は、
前記ボリュームごとの稼働情報を収集して前記管理装置に送信するコントローラを備え、
前記管理装置は、
必要時、前記ボリュームごとの稼働情報に基づいて、移動対象の各前記データをそれぞれ他の前記ボリュームに移動させるように前記ストレージ装置を制御する制御部を備え、
前記管理装置の前記制御部は、
前記ボリュームごとの稼働情報に基づいて、移動対象の前記データを格納する前記ボリュームに要求する性能レベルでなるデータ要求レベルと、前記ストレージ装置内に設定された各前記ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出すると共に、算出した前記データ要求レベル及び各前記ボリューム許容レベルに基づいて、移動対象の前記データを、当該データを格納する前記ボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させるように、前記ストレージ装置を制御する
ことを特徴とする記憶システム。
【請求項２】
前記管理装置の前記制御部は、
前記移動対象のデータは、
前記データ要求レベルに変動があった前記データ及び当該データと関連のある前記データである
ことを特徴とする請求項１に記載の記憶システム。
【請求項３】
前記関連のあるデータは、
同じアプリケーションにより使用される前記データである
ことを特徴とする請求項２に記載の記憶システム。
【請求項４】
前記管理装置の前記制御部は、
前記アプリケーション及び前記ボリュームを関連付ける設定、前記アプリケーションの前記ボリュームへのアクセスパターンの設定、及び又は前記アプリケーションの前記ボリュームに対するアクセスパターンの統計情報に基づいて、関連のある前記データを検出する
ことを特徴とする請求項３に記載の記憶システム。
【請求項５】
前記管理装置の前記制御部は、
移動対象の各前記データ間の相対的な前記データ要求レベルでなる相対データ要求レベルをそれぞれ算出すると共に、当該移動対象の前記データがそれぞれ格納された各前記ボリュームの相対的な前記ボリューム許容レベルでなる相対ボリューム許容レベルをそれぞれ算出し、前記相対データ要求レベルが高い前記データほど前記相対ボリューム許容レベルが高い前記ボリュームに移動させるように、前記ストレージ装置を制御する
ことを特徴とする請求項１に記載の記憶システム。
【請求項６】
前記管理装置の前記制御部は、
移動先の前記ボリュームとして、まず、移動対象の前記データを格納する前記ボリュームに要求される前記相対データ要求レベルよりも前記相対ボリューム許容レベルが高い前記ボリュームを選択し、当該ボリュームが存在しないときに、移動対象の前記データを格納する前記ボリュームに要求される前記相対データ要求レベルよりも前記相対ボリューム許容レベルが低い前記ボリュームを選択する
ことを特徴とする請求項５に記載の記憶システム。
【請求項７】
前記管理装置の前記制御部は、
移動対象の前記データを格納する前記ボリュームに要求される前記データ要求レベルと、各前記ボリュームの前記ボリューム許容レベルとに基づいて、一部又は全部の移動対象の前記データについて、当該データの移動先の前記ボリュームの候補を、ユーザが選択できるように可視表示する
ことを特徴とする請求項１に記載の記憶システム。
【請求項８】
データを記憶する複数のボリューム間で前記データを移動させるデータ移動方法において、
前記ボリュームごとの稼働情報を収集する第１のステップと、
前記ボリュームごとの稼働情報に基づいて、移動対象の前記データを格納する前記ボリュームに要求する性能レベルでなるデータ要求レベルと、前記ストレージ装置内に設定された各前記ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出する第２のステップと、
算出した前記データ要求レベル及び各前記ボリューム許容レベルに基づいて、必要時、移動対象の前記データを、当該データを格納する前記ボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させる第３のステップと
を備えることを特徴とするデータ移動方法。
【請求項９】
前記移動対象のデータは、
前記データ要求レベルに変動があった前記データ及び当該データと関連のある前記データである
ことを特徴とする請求項８に記載のデータ移動方法。
【請求項１０】
前記関連のあるデータは、同じアプリケーションにより使用される前記データである
ことを特徴とする請求項９に記載のデータ移動方法。
【請求項１１】
前記アプリケーション及び前記ボリュームを関連付ける設定、前記アプリケーションの前記ボリュームへのアクセスパターンの設定、及び又は前記アプリケーションの前記ボリュームに対するアクセスパターンの統計情報に基づいて、関連のある前記データを検出する
ことを特徴とする請求項１０に記載のデータ移動方法。
【請求項１２】
前記第３のステップでは、
移動対象の各前記データ間の相対的な前記データ要求レベルでなる相対データ要求レベルをそれぞれ算出すると共に、当該移動対象の前記データがそれぞれ格納された各前記ボリュームの相対的な前記ボリューム許容レベルでなる相対ボリューム許容レベルをそれぞれ算出し、前記相対データ要求レベルが高い前記データほど相前記対ボリューム許容レベルが高い前記ボリュームに移動させる
ことを特徴とする請求項８に記載のデータ移動方法。
【請求項１３】
移動先の前記ボリュームとして、まず、移動対象の前記データを格納する前記ボリュームに要求される前記相対データ要求レベルよりも前記相対ボリューム許容レベルが高い前記ボリュームを選択し、当該ボリュームが存在しないときに、移動対象の前記データを格納する前記ボリュームに要求される前記相対データ要求レベルよりも前記相対ボリューム許容レベルが低い前記ボリュームを選択する
ことを特徴とする請求項１２に記載のデータ移動方法。
【請求項１４】
前記第３のステップでは、
移動対象の前記データを格納する前記ボリュームに要求される前記データ要求レベルと、各前記ボリュームの前記ボリューム許容レベルとに基づいて、一部又は全部の移動対象の前記データについて、当該データの移動先の前記ボリュームの候補を、ユーザが選択できるように可視表示する
ことを特徴とする請求項８に記載のデータ移動方法。
【請求項１５】
関連する移動元のボリュームに格納されたデータに対して要求される性能を求め、
前記要求される性能から関連するボリュームの相対関係を求め、
求めた前記相対関係に基づいて移動先のボリュームを決定し、決定されたボリュームへデータを移行する
ことを特徴とするデータ移動方法。
【請求項１６】
前記関連する移動元のボリュームは、複数のボリュームから収集した稼働情報に基づいて決定される
ことを特徴とする請求項１５に記載のデータ移動方法。
【請求項１７】
前記移動先のボリュームの決定は、関連する移動元ボリュームの中から一の移動元ボリュームに対する移動先のボリュームを決定し、他の移動元のボリュームに格納されたデータに対して要求される性能が前記一の移動元ボリュームに格納されたデータに対して要求される性能よりも高い場合、前記一の移動元ボリュームに対して決定された前記移動先のボリュームの性能以上のボリュームを他の移動元ボリュームの移動先とする
ことを特徴とする請求項１５に記載のデータ移動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶システム及びデータ移動方法に関し、例えばストレージ装置として階層ストレージ装置を用いた記憶システムに適用して好適なものである。
【背景技術】
【０００２】
近年、ＳＡＴＡ（Serial AT Attachment）のような低コストストレージデバイスを装着した大容量のストレージ装置が市場に投入され、ストレージ資源の価格、品質等の特性が多様化しつつある。こうした低価格のストレージ装置の登場により、市場では、従来のオンラインデータへの適用のみでなく、アーカイブ等のコンプライアンス市場向けに新たなストレージソリューションが生み出されつつある。このため、複数のＳＡＮ（Storage Area Network）環境を統合し、異種多様なストレージ資源を効率的に有効活用することが急務となっている。
【０００３】
また、近年、データライフサイクル管理（ＤＬＣＭ：Data Lifecycle Management）が注目を浴びてきており、時間と共に変化するデータの価値に応じてデータを最適なストレージ資源に再配置すると共に、ライフサイクルの各フェーズにおいて、ストレージ装置内のボリュームレベルでのデータ移動を支援することがストレージ管理コストを低減する上で重要視されている。
【０００４】
データ移動時の最適なボリュームの割り当て方法として、従来、例えば下記特許文献１において、各ボリュームの実際の性能（例えばデータ入出力要求に対する応答速度）と、各アプリケーションが要求するボリュームの性能とを管理し、データ移動時に移動先のボリュームとして、そのアプリケーションに最適なボリュームを割り当てる方法が提案されている。また下記特許文献２では、アプリケーションが利用するボリュームの稼働統計情報を取得し、これをユーザに提供する方法が提案されており、この技術を利用することによって、この稼働統計情報に基づいてユーザがデータの移動先のボリュームを選択することが可能となる。
【特許文献１】特開２００４−３３４５６１号公報
【特許文献２】特開２００２−３０５４１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところが、かかる従来技術によると、アプリケーションとデータ個々の関係を管理しながら、データの移動を行なうことはできるものの、アプリケーションが管理するデータ間の相関関係を考慮した場合には、データ移動先のボリュームとして最適なボリュームを割り当てられない場合も生ずる問題があった。
【０００６】
すなわち、アプリケーションがデータの種類ごとに異なるボリュームを使用する場合、かかるボリュームとして常に単一の性能が要求されるわけではなく、ボリュームごとにその使用内容に応じた要求レベルを満たせば良いことが多い。例えば、データベースアプリケーションの場合、ログデータを保存するボリュームについては、アクセス速度が高速でかつ信頼性が高いことが必要であるために、当該ボリュームに要求される性能は高いが、データを保存するボリュームについては、アクセス速度等はさほど要求されないが容量が必要となることが多いため大容量であれば良く、当該ボリュームに要求される性能は低い。
【０００７】
しかしながら、上述のように従来ではアプリケーションが管理するデータ間の相関関係を考慮していないため、従来技術によりデータを移動（マイグレーション）した場合、ログデータを保存するボリュームとして性能の高いボリュームが割り当て、データを格納するボリュームとして性能は低いが大容量のボリュームが割り当てられないケースも生じる。
【０００８】
またウェブ（Web）アプリケーションシステムでアクセス頻度の異なる複数のファイルが同一ボリューム内に格納されている場合において、アクセス頻度が高いファイル及びアクセス頻度が低いファイルをそれぞれ異なるボリュームに移動させる場合、アクセス頻度が高いファイルは、アクセス頻度が低いファイルよりも性能が高いボリュームに移動される必要があるが、従来技術によると、これが保障されない。
【０００９】
このように従来の技術では、アプリケーションが管理するデータ間の相関関係を考慮したデータ移動が必要な場合であっても、そのようなデータ移動を行い得ず、結果的に最適なデータ移動を行ない得ない問題があった。
【００１０】
本発明は以上の点を考慮してなされたもので、アプリケーションが管理するデータ間の相関関係を考慮した最適なデータ移動を行い得る記憶システム及びデータ移動方法を提案しようとするものである。
【課題を解決するための手段】
【００１１】
かかる課題を解決するため本発明においては、データを記憶する複数のボリュームが設定されたストレージ装置と、前記ストレージ装置を管理する管理装置とを有する記憶システムにおいて、前記ストレージ装置は、前記ボリュームごとの稼働情報を収集して前記管理装置に送信するコントローラを備え、前記管理装置は、必要時、前記ボリュームごとの稼働情報に基づいて、移動対象の各前記データをそれぞれ他の前記ボリュームに移動させるように前記ストレージ装置を制御する制御部を備え、前記管理装置の前記制御部は、前記ボリュームごとの稼働情報に基づいて、移動対象の前記データを格納する前記ボリュームに要求する性能レベルでなるデータ要求レベルと、前記ストレージ装置内に設定された各前記ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出すると共に、算出した前記データ要求レベル及び各前記ボリューム許容レベルに基づいて、移動対象の前記データを、当該データを格納する前記ボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させるように、前記ストレージ装置を制御するようにした。
【００１２】
この結果、この記憶システムでは、移動対象のデータを、当該データを格納する前記ボリュームに要求するデータ要求レベルに応じたボリューム許容レベルのボリュームに移動させることができる。
【００１３】
また本発明においては、データを記憶する複数のボリューム間で前記データを移動させるデータ移動方法において、前記ボリュームごとの稼働情報を収集する第１のステップと、前記ボリュームごとの稼働情報に基づいて、移動対象の前記データを格納する前記ボリュームに要求する性能レベルでなるデータ要求レベルと、前記ストレージ装置内に設定された各前記ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出する第２のステップと、算出した前記データ要求レベル及び各前記ボリューム許容レベルに基づいて、必要時、移動対象の前記データを、当該データを格納する前記ボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させる第３のステップとを設けるようにした。
【００１４】
この結果、このデータ移動方法によれば、移動対象のデータを、当該データを格納する前記ボリュームに要求するデータ要求レベルに応じたボリューム許容レベルのボリュームに移動させることができる。
【００１５】
また本発明においては、データ移動方法において、関連する移動元のボリュームに格納されたデータに対して要求される性能を求め、前記要求される性能から関連するボリュームの相対関係を求め、求めた前記相対関係に基づいて移動先のボリュームを決定し、決定されたボリュームへデータを移行するようにした。
【００１６】
この結果、このデータ移動方法によれば、移動対象のデータを、当該データを格納する前記ボリュームに要求する性能データ要求レベルに応じたボリューム許容レベルのボリュームに移動させることができる。
【発明の効果】
【００１７】
本発明によれば、アプリケーションが管理するデータ間の相関関係を考慮した最適なデータ移動を行い得る記憶システム及びデータ移動方法を実現できる。
【発明を実施するための最良の形態】
【００１８】
以下図面について、本発明の一実施の形態を詳述する。
（１）本実施の形態による記憶システムの構成
図１において、１は全体として本実施の形態による記憶システムを示す。この記憶システム１は、複数の業務ホスト２と、少なくとも１つの管理ホスト３と、階層ストレージ装置４とがネットワーク５を介して相互に接続され、階層ストレージ装置４に１又は複数の外部ストレージ装置６が接続されることにより構成されている。
【００１９】
業務ホスト２は、ユーザが業務を実行するためのサーバであり、ＣＰＵ（Central Processing Unit）やメモリを備えて構成される。業務ホスト２が備えるＣＰＵにより各種制御プログラムやアプリケーションが実行されることによって、各種機能が発揮される。
【００２０】
業務ホスト２は、ネットワーク５を介して階層ストレージ装置４との間でデータの入出力を行うことができる。ネットワーク５としては、例えばＬＡＮ、ＳＡＮ、インターネット、専用回線、公衆回線等を場合に応じて適宜用いることができる。このネットワーク５を介した業務ホスト２及び階層ストレージ装置４間の通信は、例えばネットワーク５がＳＡＮである場合にはファイバーチャネルプロトコルに従って行われ、ネットワーク５がＬＡＮである場合にはＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）プロトコルに従って行われる。
【００２１】
管理ホスト３は、ネットワーク５に接続された階層ストレージ装置４を管理・監視するためのサーバであり、ＣＰＵ１０及びメモリ１１等を備えて構成される。メモリ１１には、各種制御プログラムやアプリケーションソフトウェアが格納され、これら制御プログラムやアプリケーションソフトウェアがＣＰＵ１０により実行されることによって、階層ストレージ装置４の管理・監視のための制御処理を含む各種処理が実行される。後述のテーブル作成プログラム１２、稼働情報取得プログラム１３、データ要求レベル監視プログラム１４及びマイグレーション管理プログラム１５も、このメモリ１１に格納されて保持される。
【００２２】
また管理ホスト３は、ハードディスク装置などからなるローカルディスク装置２０を備えており、このローカルディスク装置２０に各種データが格納される。後述のデータ要求レベル管理テーブル２１や、ボリューム許容レベル管理テーブル２２もこのローカルディスク装置２０に格納されて保持される。
【００２３】
階層ストレージ装置４は、複数のディスクデバイス（図示せず）を備える記憶デバイス部３０と、この記憶デバイス部３０を制御するコントロール部３１とから構成される。
【００２４】
記憶デバイス部３０のディスクデバイスとしては、例えばＳＣＳＩ（Small Computer System Interface）ディスク等の高価なディスクや、ＳＡＴＡ（Serial AT Attachment）ディスクや光ディスク等の安価なディスクを適用することができる。この場合、かかる高価なディスクと安価なディスクとが混在していても良い。
【００２５】
記憶デバイス部３０の各ディスクデバイスは、コントロール部３１によりＲＡＩＤ方式で運用される。１又は複数のディスクデバイスによって１つのＲＡＩＤグループが構成され、各ＲＡＩＤグループが提供する物理的な記憶領域上に、それぞれ１又は複数の論理的なボリュームＶＯＬが設定される。そしてデータは、このボリューム内に所定大きさのブロック（以下、これを論理ブロックと呼ぶ）単位で記憶される。
【００２６】
各論理ボリュームＶＯＬには、それぞれ固有の識別子（以下、これをＬＵ（Logical Unit number）と呼ぶ）が付与される。本実施の形態の場合、データの入出力は、このＬＵと、各論理ブロックにそれぞれ付与されるその論理ブロックに固有の番号（ＬＢＡ：Logical Block Address）とを組み合わせたものをアドレスとして、当該アドレスを指定して行われる。
【００２７】
コントロール部３１は、接続された外部ストレージ装置６内のボリュームＶＯＬを仮想化（図１の点線で示されたボリュームＶＯＬ）して業務ホスト２に提供することにより、自ストレージ装置内のボリュームＶＯＬ及び外部ストレージ装置６内のボリュームＶＯＬを一元管理する。これにより業務ホスト２は、ボリュームＶＯＬが階層ストレージ装置４内及び外部ストレージ装置６内のいずれにあるかを意識することなく、これらボリュームＶＯＬにアクセスすることができる。またコントロール部３１は、外部ストレージ装置６の接続や切り離しを任意に行なうことができ、さらにボリュームＶＯＬ間のデータ移動を実行させることもできる。
【００２８】
外部ストレージ装置６は、例えばディスクアレイ装置などから構成される。外部ストレージ装置６内には複数の記憶デバイス（以下ではディスクデバイスとする）が配置される。このディスクデバイスとしては、一般的には階層ストレージ装置４内のディスデバイスに比べて性能が劣るものが利用される。そして、１又は複数のディスクデバイスから構成される各ＲＡＩＤグループが提供する記憶領域上にそれぞれ１又は複数のボリュームＶＯＬが設定され、これらボリュームＶＯＬが上述のように階層ストレージ装置４により仮想化されて業務ホスト２に提供される。
【００２９】
（２）記憶システム１におけるデータマイグレーション機能
次に、この記憶システム１に搭載されたデータマイグレーション機能について説明する。図２は、管理ホスト３のローカルディスク装置２０に格納されるデータ要求レベル管理テーブル２１を示している。
【００３０】
この実施の形態の場合、階層ストレージ装置４のコントローラ３１は、既存技術を用いて自装置内に設定された各ボリュームＶＯＬ（仮想化した外部ストレージ装置６内のボリュームＶＯＬも含む）の１秒当たりの入出力回数や、データ入出力要求に対する応答時間などの各ボリュームＶＯＬの稼働状況を表す各種情報（以下、これを稼働情報と呼ぶ）を常時収集し、これら収集したボリュームＶＯＬごとの稼働情報を順次管理ホスト３に送信するように構築されている。またこの際コントローラ３１は、未だ使用されていない初期状態にあるボリュームＶＯＬについては、当該ボリュームを提供するＲＡＩＤグループを構成するディスクデバイスのスペックから算出される１秒当たりの入出力回数や、データ入出力要求に対する応答時間などの理論値を稼働情報として管理ホスト３に送信する。
【００３１】
そして管理ホスト３は、階層ストレージ装置４から送信されるボリュームＶＯＬごとの稼働情報に基づいて、アプリケーションがデータの保存先として使用するボリュームＶＯＬに要求するデータごとのデータ要求レベルをこのデータ要求レベル管理テーブル２１を用いて管理する。ここで、データ要求レベルとは、アプリケーションがそのデータを格納するボリュームＶＯＬに要求する応答性能レベルをいう。
【００３２】
データ要求レベル管理テーブル２１は、図２に示すように、「アプリケーション名」フィールド４０、「データ名」フィールド４１、「統計情報」フィールド４２、「要求レベル」フィールド４３及び「使用ボリューム」フィールド４４から構成される。
【００３３】
このうち「アプリケーション名」フィールド４０及び「データ名」フィールド４１には、それぞれ対応するアプリケーションの識別情報及び対応するデータのデータ名（例えばファイル名）が格納され、「使用ボリューム」フィールド４４には、そのデータが現在格納されているボリュームＶＯＬの識別情報（例えばＬＵＮ）が格納される。
【００３４】
また「統計情報」フィールド４２は、データ読出し回数や、データ書込み回数など、各データについてのデータ要求レベルを算出する際に使用する特定項目（以下、これを要求レベル決定項目と呼ぶ）の実測値をそれぞれ格納するための幾つかのフィールド４２Ａ，４２Ｂ，‥‥，４２ｎから構成される。そして階層ストレージ装置４から送信されてきたボリュームＶＯＬごとの稼働情報のうち、対応するデータが格納されているボリュームＶＯＬの稼働情報に基づき得られる対応する数値が、これらのフィールド４２Ａ，４２Ｂ，‥‥，４２ｎにそれぞれ格納される。
【００３５】
具体的には、「統計情報」フィールド４２内には、「データ読出し回数」フィールド４２Ａ、「データ書込み回数」フィールド４２Ｂ及び「応答時間」フィールド４２ｎなどが設けられており、例えば「データ読出し回数」フィールド４２Ａに、そのデータの１秒当たりの読出し回数（対応するボリュームＶＯＬからのデータ読出し回数）が格納される。また「データ書込み回数」フィールド４２Ｂには、そのデータの１秒当たりの書込み回数（対応するボリュームＶＯＬへのデータ書込み回数）が格納され、「応答時間」フィールド４２ｎには、そのデータへのアクセスに対する応答時間（対応するボリュームＶＯＬのデータ入出力要求に対する応答時間）の平均値が格納されることとなる。
【００３６】
さらに「要求レベル」フィールド４３には、そのデータの保存先として使用するボリュームＶＯＬに要求するデータ要求レベルが格納される。このデータ要求レベルは、「統計情報」フィールド４２内の各フィールド４２Ａ，４２Ｂ，‥‥，４２ｎにそれぞれ格納された数値をそれぞれＥｒ１，Ｅｒ２，……，Ｅｒｎとして、次式
【数１】
2007140919.tif 000003
により算出される。
【００３７】
なお、この（１）式において、Ｃｒ１，Ｃｒ２，……，Ｃｒｎは、それぞれ要求レベル決定項目間のばらつきを補正するための重み付け値であり、通常はいずれも「１」に設定される。また、階層ストレージ装置４から送信されるボリュームＶＯＬごとの稼働情報に基づき得られた数値のうち、一般的に性能が高いほど値が小さくなるものについては、その逆数を「統計情報」フィールド４２内の対応するフィールド４２Ａ，４２Ｂ，‥‥，４２ｎに格納し、当該逆数を（１）式の演算に用いるようにする。
【００３８】
一方、図３は、管理ホスト３のローカルディスク装置２０に格納されるボリューム許容レベル管理テーブル２２を示している。管理ホスト３は、階層ストレージ装置４から送信されるボリュームＶＯＬごとの稼働情報に基づいて、階層ストレージ装置４内及び外部ストレージ装置６内に設定されたすべてのボリュームＶＯＬごとのボリューム許容レベルを算出し、算出したボリュームＶＯＬごとのボリューム許容レベルをこのボリューム許容レベル管理テーブル２２を用いて管理する。ここで、ボリューム許容レベルとは、データ入出力要求に対するそのボリュームＶＯＬの応答性能レベルをいう。
【００３９】
ボリューム許容レベル管理テーブル２２は、図３に示すように、「ボリューム番号」フィールド５０及び「ボリューム許容レベル」フィールド５１から構成される。このうち「ボリューム番号」フィールド５０には、階層ストレージ装置４内及び外部ストレージ装置６内に設定されたすべてのボリュームＶＯＬについて、そのボリューム番号がそれぞれ格納される。
【００４０】
また「ボリューム許容レベル」フィールド５１には、対応するボリュームＶＯＬのボリューム許容レベルが格納される。このボリューム許容レベルは、階層ストレージ装置４から送信されるボリュームＶＯＬごとの稼動情報のうちの、そのボリュームＶＯＬの稼働情報に基づき得られる特定項目（以下、これを許容レベル決定項目と呼ぶ）の数値をそれぞれＥｒ１，Ｅｒ２，……，Ｅｒｎとして、次式
【数２】
2007140919.tif 000004
により算出される。
【００４１】
なお、この（２）式において、Ｃａ１，Ｃａ２，……，Ｃａｎは、それぞれ許容レベル決定項目間のばらつきを補正するための重み付け値であり、通常はいずれも「１」に設定される。また、階層ストレージ装置４からのボリュームＶＯＬごとの稼働情報に基づき得られる数値のうち、一般的に性能が高いほど値が小さくなるものについては、その逆数を（２）式の演算に用いるようにする。
【００４２】
許容レベル決定項目としては、そのボリュームＶＯＬを提供するディスクデバイスの１秒当たりの回転数や、そのデータ入出力要求に対する応答時間、残理論最大入出力回数などが適用される。残理論最大入出力回数は、図４に示すように、ＲＡＩＤグループ６０を構成する複数のディスクデバイス６１が提供する記憶領域上に複数のボリュームＶＯＬが設定されている場合にのみ利用されるもので、そのＲＡＩＤグループ６０が対応可能な単位時間当たりの論理的な最大入出力回数から、かかる記憶領域上に設定された各ボリュームＶＯＬにおいて現在使用されている統計的な単位時間当たりのデータ入出力回数を引いた回数として計算することができる。
【００４３】
例えばこの図４に示すように、それぞれ１秒当たりの回転数が１０００回転の３つのディスクデバイス６１からＲＡＩＤグループ６０が構成されており、このＲＡＩＤグループ６０が提供する記憶領域上に、１秒当たりのデータ入出力回数が２００回の第１のボリューム（「論理ボリューム１」）ＶＯＬと、１秒当たりのデータ入出力回数が１００回の第２のボリューム（「論理ボリューム２」）ＶＯＬとが設定されている場合、残理論最大入出力回数Ｎは、次式
【数３】
2007140919.tif 000005
のように計算される。
【００４４】
図５は、上述のデータ要求レベル管理テーブル２１（図２）及びボリューム許容レベル管理テーブル２３（図３）の作成手順を示すフローチャートである。管理ホスト３のＣＰＵ１０（図１）は、階層ストレージ装置４から送信されるボリュームＶＯＬごとの稼働情報と、メモリ１１（図１）に格納されたテーブル作成プログラム１２（図１）とに基づき、この図５に示すテーブル作成処理手順ＲＴ１に従って、かかるデータ要求レベル管理テーブル２１及びボリューム許容レベル管理テーブル２２を作成する。
【００４５】
すなわちＣＰＵ１０は、一定時間ごとにこのテーブル作成処理手順ＲＴ１を開始し、まず、階層ストレージ装置４内のボリュームＶＯＬ（仮想化された外部ストレージ装置６内のボリュームＶＯＬも含む）に格納されているすべてのデータのデータ名及び対応するすべてのアプリケーションのアプリケーション名を取得する（ＳＰ１）。
【００４６】
具体的には、ＣＰＵ１０は、業務ホスト２にそれぞれに搭載されたアプリケーションのうち、階層ストレージ装置４内のいずれかのボリュームＶＯＬ（仮想化された外部ストレージ装置６内のボリュームＶＯＬも含む）を使用するアプリケーションのアプリケーション名と、そのアプリケーションが使用するボリュームＶＯＬに格納されるデータのデータ名とを予め各業務ホスト２に問い合わせ、かくして得られたアプリケーション名及びデータ名を図示しない所定のテーブル（以下、これをアプリケーション名等管理テーブルと呼ぶ）に格納して管理している。
【００４７】
そしてＣＰＵ１０は、かかるテーブル作成処理手順ＲＴ１のステップＳＰ１において、このアプリケーション名等管理テーブルを検索することにより、階層ストレージ装置４内のボリュームＶＯＬに格納されているすべてのデータのデータ名及び対応するすべてのアプリケーション名を取得する。
【００４８】
続いてＣＰＵ１０は、稼働情報取得プログラム１３（図１）に基づいて、階層ストレージ装置４に対して、ボリュームＶＯＬごとの稼働情報の転送要求（以下、これをボリューム稼働情報転送要求）を発行する。この結果、このボリューム稼働情報転送要求を受信した階層ストレージ装置４のコントローラ３１は、仮想化しているボリュームＶＯＬについては対応する外部ストレージ装置６に問い合わせるようにして、仮想化していない自ストレージ装置内に設定されたボリュームＶＯＬについては記憶している情報を読み出すようにして、既存技術により得られたボリュームＶＯＬごとの稼働情報を取得し、これを管理ホスト３に送信する。これによりこれらボリュームＶＯＬごとの稼働情報をＣＰＵ１０が取得することができる（ＳＰ２）。
【００４９】
この後ＣＰＵ１０は、上述のようにして得られたボリュームＶＯＬごとの稼働情報に基づいて、上述のようにデータごとのデータ要求レベルを算出する。そしてＣＰＵ１０は、この算出結果に基づいてデータ要求レベル管理テーブル２２を作成し、これをローカルディスク装置２０内に格納する（ＳＰ３）。
【００５０】
次いで、ＣＰＵ１０は、階層ストレージ装置４から送信されてきたボリュームＶＯＬごとの稼働情報の中から必要な情報を抽出し（ＳＰ４）、抽出したこれらの情報に基づいて、上述のようにしてボリュームＶＯＬごとのボリューム許容レベルをそれぞれ算出する。そしてＣＰＵ１０は、この算出結果に基づいてボリューム許容レベル管理テーブル２１を作成し、これをローカルディスク装置２０内に格納する（ＳＰ５）。
【００５１】
なお、ＣＰＵ１０は、データ要求レベル管理テーブル２１を作成し、これをローカルディスク装置２０に格納する際に（ＳＰ３）、データ同士の関連情報についても記録する。具体的には、ＣＰＵ１０は、同じアプリケーションが管理するデータ同士（これらのデータはそれぞれ異なるボリュームに格納されているものとする）は関連があると判断して、その情報（以下、これをデータ関連情報と呼ぶ）をデータ要求レベル管理テーブル２１と対応付けてローカルディスク装置２０に格納する。
【００５２】
このようなデータ間の関連は、アプリケーションと、当該アプリケーションが管理するデータを格納するボリュームＶＯＬとが予め設定により関連付けられている場合には、直ちに検出することができる。例えば図６のようにアプリケーションと、そのアプリケーションが使用するボリュームＶＯＬとが予め関連付けられている場合、「app1」というアプリケーションが使用している「0:3C」というボリューム番号のボリュームＶＯＬに格納されたデータと、「5:44」というボリューム番号のボリュームＶＯＬに格納されたデータとは関連があり、「app2」というアプリケーションが使用している「0:32」というボリューム番号のボリュームＶＯＬに格納されたデータと、「1:12」というボリューム番号のボリュームＶＯＬに格納されたデータとは関連があることが分かる。
【００５３】
そこでＣＰＵ１０は、データ要求レベル管理テーブル２１の作成後、各業務ホスト２対してアプリケーションとボリュームＶＯＬとを関連付ける設定がなされていないか否かを問い合わせ、１つのアプリケーションに複数のボリュームＶＯＬを関連付ける設定がなされていた場合には、これらのボリュームＶＯＬにそれぞれ格納されたデータ間に関連があるというデータ関連情報をローカルディスク装置２０に格納する。
【００５４】
また、例えば１つのアプリケーションがある処理を行なうために、幾つかのボリュームＶＯＬ（データ）に順番にアクセスしてゆくようなアクセスパターンがスケジュールされている場合には、そのスケジュール情報を取得することにより、関連のあるデータを検出することができる。
【００５５】
例えば、図７に示すようなスケジュールが立てられている場合、「app1」というアプリケーションが、「8:00」に「0:3C」というボリューム番号のボリュームＶＯＬにアクセスした後、「8:30」に「5:44」というボリューム番号のボリュームＶＯＬにアクセスすることがスケジュールされているため、これら２つのボリュームＶＯＬにそれぞれ格納されたデータ間に関連があると判断でき、また「app2」というアプリケーションが、「12:00」に「0:32」というボリューム番号のボリュームＶＯＬにアクセスした後、「12:05」に「1:22」というボリューム番号のボリュームＶＯＬにアクセスすることがスケジュールされているため、これら２つのボリュームＶＯＬにそれぞれ格納されたデータ間に関連があると判断できる。
【００５６】
そこでＣＰＵ１０は、データ要求レベル管理テーブル２１の作成後、各業務ホスト２対して、いずれかのアプリケーションについて、対応するボリュームＶＯＬに対するアクセスパターンがスケジュールされていないか否かを問い合わせ、かかるスケジュールが設定されていた場合には、対応するボリュームＶＯＬにそれぞれ格納されたデータ間に関連があるというデータ関連情報をローカルディスク装置２０に格納する。
【００５７】
さらに、データ間の関連は、ボリュームＶＯＬに対するアクセスパターンから統計的に検出することもできる。例えば各ボリュームＶＯＬに対するアクセスパターンとして、図８に示すような測定結果が得られた場合、この測定結果から「0:3C」というボリューム番号のボリュームＶＯＬにアクセスした後、その１秒以内に「5:44」というボリューム番号のボリュームＶＯＬにアクセスするパターンが短時間内で５回もあったことが分かる。これは、あるアプリケーションが何らかの処理を実行するために、「0:3C」というボリューム番号のボリュームＶＯＬ及び「5:44」というボリューム番号のボリュームＶＯＬに順番にアクセスしているものと考えられ、従って、これら２つのボリュームＶＯＬにそれぞれ格納されたデータ間に関連があると判断することができる。
【００５８】
そこでＣＰＵ１０は、データ要求レベル管理テーブル２１の作成後、ボリュームアクセスの統計情報（以下、これをボリュームアクセス統計情報と呼ぶ）の転送要求を階層ストレージ装置４に発行する。
【００５９】
この場合、階層ストレージ装置４のコントローラ３１は、いつどのボリュームＶＯＬにアクセスがあり、そのとき読み書きされたデータ量（データ書込み量（I/O write 量）やデータ読出し量（I/O read 量））がどれぐらいであったかといった統計情報を例えば１時間分だけ保持している。そして、コントローラ３１は、上述のボリュームアクセスログ情報の転送要求が与えられると、かかる保持した１時間分の統計情報をボリュームアクセス統計情報として管理ホスト３に送信する。
【００６０】
かくして管理ホスト３のＣＰＵ１０は、このログ情報と、テーブル作成プログラム１２（図１）とに基づき、図９に示す関連データ検出処理手順ＲＴ２に従って、関連のあるデータを検出する関連データ検出処理を実行する。
【００６１】
すなわち、ＣＰＵ１０は、図５について上述したテーブル作成処理手順ＲＴ１のステップＳＰ３に進むと、データ要求レベル管理テーブル２１を作成する一方、これと並行してこの関連データ検出処理手順ＲＴ２を開始し、階層ストレージ装置４に対してボリュームアクセス統計情報の転送要求を発行することにより、当該ボリュームアクセス統計情報を取得する（ＳＰ１０）。
【００６２】
続いてＣＰＵ１０は、ボリュームアクセス統計情報に基づき、データの入出力が行なわれたと認められるボリューム（以下、これを対象ボリュームと呼ぶ）ＶＯＬを１つ任意に選択し（ＳＰ１１）、その対象ボリュームＶＯＬにアクセスした後１秒以内にアクセスするというアクセスパターンが５回以上連続して発生したボリュームＶＯＬを検索する（ＳＰ１２）。
【００６３】
ＣＰＵ１０は、この後このようなボリュームＶＯＬが存在するか否かを判断し（ＳＰ１３）、この判断において否定結果を得ると（ＳＰ１３：ＮＯ）、ステップＳＰ１５に進み、これに対して肯定結果を得ると（ＳＰ１３：ＹＥＳ）、そのボリュームＶＯＬに格納されたデータは対象ボリュームＶＯＬに格納されたデータと関連があると判断して、このデータ関連情報をローカルディスク装置２０に記録する（ＳＰ１４）。
【００６４】
この後ＣＰＵ１０は、ボリュームアクセス統計情報に基づき、データの入出力が行なわれたと認められるすべてのボリュームＶＯＬについて同様の処理（ＳＰ１１〜ＳＰ１４）を行なったか否かを判断し（ＳＰ１５）、否定結果を得ると（ＳＰ１５：ＮＯ）、データの入出力が行なわれたと認められる残りのボリュームＶＯＬについても同様の処理を実行する。そしてＣＰＵ１０は、やがてかかるステップＳＰ１５の判断において肯定結果を得ると（ＳＰ１５：ＹＥＳ）、この関連データ検出処理を終了する。
【００６５】
一方、管理ホスト３のＣＰＵ１０は、この後要求レベル監視プログラム１４（図１）に基づき、図１０に示す要求レベル監視処理手順ＲＴ３に従って、データごとのデータ要求レベルの変動を監視する。
【００６６】
すなわちＣＰＵ１０は、図５について上述したテーブル作成処理手順ＲＴ１を終了すると、この後この要求レベル監視処理手順ＲＴ３を一定時間（例えば１時間）ごとを実行し、まず、稼働情報取得プログラム１３（図１）に基づいて、階層ストレージ装置４にボリューム稼働情報転送要求を発行することにより、ボリュームＶＯＬごとの稼働情報を取得する（ＳＰ２０）。
【００６７】
続いてＣＰＵ１０は、このボリュームＶＯＬごとの稼働情報の中から、データが格納されているボリューム（アプリケーションが使用しているボリューム）ＶＯＬごとの稼働情報を抽出し（ＳＰ２１）、この後この抽出した稼働情報に基づいて、データの保存先として使用されているボリュームＶＯＬごとのデータ要求レベルをそれぞれ計算する（ＳＰ２２）。なお、ここでは１つのボリュームＶＯＬに１種類のデータが格納されることを想定しているため、このボリュームＶＯＬごとのデータ要求レベルが、ボリュームＶＯＬに格納されたデータごとのデータ要求レベルとなる。
【００６８】
次いでＣＰＵ１０は、この計算により得られたデータごとのデータ要求レベルと、データ要求レベル管理テーブル２１に格納された対応するデータ要求レベルとをそれぞれ比較し、いずれかのデータ要求レベルに変動が生じているか否かを判断する（ＳＰ２３）。
【００６９】
ＣＰＵ１０は、この判断において否定結果を得ると（ＳＰ２３：ＮＯ）、この要求レベル監視処理を終了し、これに対して肯定結果を得ると（ＳＰ２３：ＹＥＳ）、データ要求レベル管理テーブル２１における対応するエントリの「要求レベル」フィールド４３（図２）に格納されている値をステップＳＰ２２において計算した現在のデータ要求レベルの値に変更する（ＳＰ２４）。
【００７０】
またＣＰＵ１０は、この後マイグレーション管理プログラム１５（図１）を起動して、データ要求レベルに変動が生じたデータを格納しているボリュームＶＯＬのボリューム番号を格納した、後述のマイグレーション管理処理を実行すべき旨の通知（以下、これをマイグレーション管理処理実行通知と呼ぶ）を当該マイグレーション管理プログラム１５に送信する（ＳＰ２５）。そしてＣＰＵ１０は、この後この要求レベル監視処理を終了する。
【００７１】
他方、ＣＰＵ１０は、上述のようにデータ要求レベル管理テーブル２１を更新した場合、マイグレーション管理プログラム１５（図１）に基づき、図１１に示すマイグレーション管理処理手順ＲＴ４に従って、データ要求レベルに変動があったデータと、これと関連のあるデータとをそれぞれ現在のボリュームＶＯＬから他のボリュームＶＯＬに移動させる。この際ＣＰＵ１０は、データ要求レベルの高いデータほどボリューム許容レベルが高いボリュームＶＯＬに移動するように制御する。
【００７２】
すなわちＣＰＵ１０は、要求レベル監視プログラム１４からのマイグレーション管理処理実行通知を受信すると、マイグレーション管理処理を開始し、まず、マイグレーション管理処理実行通知に含まれるデータ要求レベルの変動が生じたデータを格納しているボリュームＶＯＬのボリューム番号と、ローカルディスク装置２０に格納されているデータ関連情報とに基づいて、移動対象のデータ（データ要求レベルに変動が生じたデータ及びこれに関連するデータ）ごとの現在のデータ要求レベルをデータ要求レベル管理テーブル２１から読み出す（ＳＰ３０）。
【００７３】
続いてＣＰＵ１０は、階層ストレージ装置４内又は外部ストレージ装置６内に設定されたボリュームＶＯＬであって、データが格納されていない各ボリューム（以下、これを空きボリュームと呼ぶ）ＶＯＬのボリューム許容レベルをボリューム管理テーブル２２からそれぞれ読み出す（ＳＰ３１）。
【００７４】
次いでＣＰＵ１０は、移動対象のデータの中からデータ要求レベルが最上位のデータを、当該データが現在格納されているボリュームＶＯＬの容量と同じ又はそれ以上の容量を有する空きボリュームＶＯＬのうち、ボリューム許容レベルが最上位の空きボリュームＶＯＬに移動させる。またＣＰＵ１０は、これに付随して、各データの格納位置を管理するための図示しないデータ管理テーブルを更新するなどの各種処理を実行する（ＳＰ３２）。
【００７５】
なお、以下においては、このようなデータ移動処理と、当該データ移動に付随する各種処理とを含めたデータ移動のための一連の処理をマイグレーション処理と呼ぶものとする。また移動対象の各データのうち、データ要求レベルが最上位のデータの当該データ要求レベルを最上位データ要求レベルと呼び、ボリューム許容レベルが最上位の空きボリュームＶＯＬの当該ボリューム許容レベルを最上位ボリューム許容レベルと呼ぶものとする。
【００７６】
続いてＣＰＵ１０は、かかるデータ移動に応じてデータ要求レベル管理テーブル２１を更新する（ＳＰ３３）。具体的には、ＣＰＵ１０は、データ要求レベル管理テーブル２１における対応するエントリの「使用ボリューム」フィールド４４に格納されているボリューム番号を、データ移動後の新たなボリュームＶＯＬのボリューム番号に書き換える。
【００７７】
その後ＣＰＵ１０は、移動対象のデータであって、移動が行われていない未処理のデータが存在するか否かを判断する（ＳＰ３４）。そしてＣＰＵ１０は、この判断において否定結果を得ると（ＳＰ１０：ＮＯ）、このマイグレーション管理処理を終了する。
【００７８】
これに対してＣＰＵ１０は、かかる判断において肯定結果を得ると（ＳＰ１０：ＹＥＳ）、移動対象のデータであって、未処理のデータの中からデータ要求レベルが最も高いデータを選択する（ＳＰ３５）。
【００７９】
この後ＣＰＵ１０は、選択したデータの移動先となるボリュームＶＯＬが存在するか否かを、ボリューム許容レベル管理テーブル２２に基づいて判断する（ＳＰ３６）。
【００８０】
具体的にＣＰＵ１０は、まず、最上位データ要求レベルを「100」とした場合における、そのデータのデータ要求レベルの相対値（以下、これを相対データ要求レベルと呼ぶ）を算出する。例えば最上位データ要求レベルが「120」であり、移動対象のデータのデータ要求レベルが「60」であった場合、この移動対象のデータの相対データ要求レベルＬｒ´は、次式
【数４】
2007140919.tif 000006
のように「50」と算出される。
【００８１】
またＣＰＵ１０は、これと並行して最上位ボリューム許容レベルを「100」とした場合における、ボリューム許容レベル管理テーブル２２に登録されている各空きボリュームＶＯＬのボリューム許容レベルの相対値（以下、これを相対ボリューム許容レベルと呼ぶ）をそれぞれ算出する。例えば最上位ボリューム許容レベルが「80」であり、その空きボリュームＶＯＬのボリューム許容レベルが「50」であった場合、この空きボリュームＶＯＬの相対ボリューム許容レベルＬａ´は次式
【数５】
2007140919.tif 000007
のように「62.5」と算出される。
【００８２】
そしてＣＰＵ１０は、このようにして算出した移動対象のデータの相対データ要求レベルよりも相対ボリューム許容レベルが高く、かつそのデータが現在格納されているボリュームＶＯＬの容量と同じ又はそれ以上の容量を有する空きボリュームＶＯＬが存在するか否かを判断する（ＳＰ３６）。
【００８３】
ＣＰＵ１０は、この判断において肯定結果を得ると（ＳＰ３６：ＹＥＳ）、かかる移動対象のデータの相対データ要求レベルよりも相対ボリューム許容レベルが高く、かつそのデータが現在格納されているボリュームＶＯＬの容量と同じ又はそれ以上の容量を有する空きボリュームＶＯＬの中から１つの空きボリュームＶＯＬを移動先のボリュームＶＯＬとして選択する（ＳＰ３７）。
【００８４】
この際ＣＰＵ１０は、かかる条件を満たす空きボリュームＶＯＬが複数存在する場合には、最も相対ボリューム許容レベルが高い空きボリュームＶＯＬを移動先のボリュームＶＯＬとして選定する。またこのような最も相対ボリューム許容レベルが高い空きボリュームＶＯＬが複数存在する場合には、デバイス番号が最も小さいディスクデバイスにより提供されるボリュームＶＯＬを移動先のボリュームＶＯＬとして選択する。
【００８５】
そしてＣＰＵ１０は、この後移動対象のデータをこのステップＳＰ３７において選択した空きボリュームＶＯＬに移動させるマイグレーション処理を実行し（ＳＰ３８）、この後ステップＳＰ３３に戻って、データ要求レベル管理テーブル２１及びボリューム許容レベル管理テーブル２２を更新する（ＳＰ３３）。さらにＣＰＵ１０は、この後他の移動対象のデータについても同様の処理を繰り返す。
【００８６】
これに対してＣＰＵ１０は、ステップＳＰ３６の判断において否定結果を得ると（ＳＰ３６：ＮＯ）、移動対象のデータの相対データ要求レベルよりも相対ボリューム許容レベルが低く、かつ移動対象のボリュームＶＯＬの容量と同じ又はそれ以上の容量を有する空きボリュームＶＯＬが存在するか否かを判断する（ＳＰ３９）。
【００８７】
そしてＣＰＵ１０は、この判断において肯定結果を得ると（ＳＰ３９：ＹＥＳ）、かかる条件を満たす空きボリュームＶＯＬの中から１つの空きボリュームＶＯＬを移動先のボリュームＶＯＬとして選択する（ＳＰ４０）。この際ＣＰＵ１０は、かかる条件を満たす空きボリュームＶＯＬが複数存在する場合、その中で相対ボリューム許容レベルが最も高い空きボリュームＶＯＬを移動先のボリュームＶＯＬとして選定する。またこのような最も相対ボリューム許容レベルが高い空きボリュームＶＯＬが複数存在する場合には、デバイス番号が最も小さいディスクデバイスにより提供されるボリュームＶＯＬを移動先のボリュームＶＯＬとして選択する。
【００８８】
この後移動対象のデータをこの選択した空きボリュームＶＯＬに移動させるマイグレーション処理を実行し（ＳＰ４１）、この後ステップＳＰ３３に戻ってデータ要求レベル管理テーブル２１を更新する（ＳＰ３３）。さらにＣＰＵ１０は、この後他の移動対象のデータについても同様の処理を繰り返す。
【００８９】
一方、ＣＰＵ１０は、かかるステップＳＰ３９の判断において否定結果を得ると（ＳＰ３９：ＮＯ）、そのデータについてマイグレーション処理を実行しないことを決定し（ＳＰ４２）、この後これに応じたエラー報告をディスプレイに表示し、及び又はエラー報告を管理者に送信した後（ＳＰ４３）、このマイグレーション管理処理を終了する。
【００９０】
（３）本実施の形態の効果
以上の構成において、管理ホストは、各アプリケーションのデータのデータ要求レベル及び各ボリュームＶＯＬのボリューム要求レベルを管理すると共に、各データのデータ要求レベルを監視し、いずれかのデータのデータ要求レベルに変動があった場合に、当該データ要求レベルに変動があったデータ及びこれに関連するデータを、それぞれデータのデータ要求レベル（相対データ要求レベル）の高いものから順番にボリューム許容レベル（相対ボリューム許容レベル）が高い空きボリュームＶＯＬに移動させる。
【００９１】
従って、この記憶システム１では、データマイグレーション管理処理の後も、関連のあるデータ間において、データ要求レベルが高いデータほどボリューム許容レベルの高いボリュームＶＯＬに格納されるという相関関係を維持することができ、かくしてアプリケーションが管理するデータ間の相関関係を考慮した最適なデータ移動を行うことができる。
【００９２】
（４）他の実施の形態
なお上述の実施の形態においては、本発明を図１のように構成された記憶システム１に適用するようにした場合について述べたが、本発明はこれに限らず、この他種々の構成を有する記憶システムに広く適用することができる。
【００９３】
また上述の実施の形態においては、図１１について上述したマイグレーション管理処理において、移動対象のデータ（データ要求レベルに変動があったデータ及びこれに関連するデータ）の移動先の空きボリュームＶＯＬをすべて管理ホスト３が決定して、これら移動対象のデータを適当な空きボリュームＶＯＬに移動させるようにした場合について述べたが、本発明はこれに限らず、移動対象のデータについて計算したデータ要求レベル（又は相対データ要求レベル）と、各空きボリュームＶＯＬについてそれぞれ計算したボリューム許容レベル（又は相対ボリューム許容レベル）とに基づいて、例えば図１２に示すように、一部又は全部の移動対象のデータについて、当該データの移動先となり得るボリュームＶＯＬの候補を管理ホスト３のディスプレイ等に可視表示し、この可視表示された候補の中から移動先の空きボリュームＶＯＬをユーザ（管理者）が自由に選択できるようにしても良い。なお、この図１２の例は、最上位データ要求レベルのデータの移動先の空きボリュームＶＯＬが決定した後に、関連するデータの移動先となり得る空きボリュームＶＯＬの候補を表示した表示例である。
【００９４】
さらに上述の実施の形態においては、図１１について上述したマイグレーション管理処理の処理対象を、データ要求レベルに変動のあったデータ及びこれに関連するデータに限定するようにした場合について述べたが、本発明はこれに限らず、各ボリュームＶＯＬにそれぞれ格納されたすべてのデータを対象とするようにしても良い。この場合においては、関連のあるデータ間において、データ要求レベルの高いデータほどボリューム許容レベルが高い空きボリュームＶＯＬに移動させるようにすれば良い。
【００９５】
さらに上述の実施の形態においては、図１１について上述したマイグレーション管理処理を、いずれかのボリュームＶＯＬに格納されたデータのデータ要求レベルに変動があったときに行なうようにした場合について述べたが、本発明はこれに限らず、他のタイミング、例えば階層ストレージ装置４に新たな外部ストレージ装置６が接続されたときに同様のマイグレーション管理処理を実行するようにしても良い。この場合、そのとき各アプリケーションによりそれぞれ管理されているデータがこのマイグレーション管理処理の処理対象となる。
【産業上の利用可能性】
【００９６】
本発明は、種々の構成の記憶システムに広く適用することができる。
【図面の簡単な説明】
【００９７】
【図１】本実施の形態による記憶システムの構成を示すブロック図である。
【図２】データ要求レベル管理テーブルの説明に供する概念図である。
【図３】ボリューム許容レベル管理テーブルの説明に供する概念図である。
【図４】残理論最大入出力回数の説明に供する概念図である。
【図５】テーブル作成処理手順を示すフローチャートである。
【図６】データ間関連情報の説明に供する概念図である。
【図７】データ間関連情報の説明に供する概念図である。
【図８】データ間関連情報の説明に供する概念図である。
【図９】関連データ検出処理手順を示すフローチャートである。
【図１０】要求レベル監視処理手順を示すフローチャートである。
【図１１】マイグレーション管理処理手順を示すフローチャートである。
【図１２】他の実施の形態の説明に供する概念図である。
【符号の説明】
【００９８】
１……記憶システム、２……業務ホスト、３……管理ホスト、４……階層ストレージ装置、５……ネットワーク、６……外部ストレージ装置、１０……ＣＰＵ、１１……メモリ、１２……テーブル作成プログラム、１３……稼働情報取得プログラム、１４……データ要求レベル監視プログラム、１５……マイグレーション管理プログラム、２０……ローカルディスク装置、２１……データ要求レベル管理テーブル、２２……ボリューム許容レベル管理テーブル、ＶＯＬ……ボリューム。
【図１】
2007140919.tif 000008
【図２】
2007140919.tif 000009
【図３】
2007140919.tif 000010
【図４】
2007140919.tif 000011
【図５】
2007140919.tif 000012
【図６】
2007140919.tif 000013
【図７】
2007140919.tif 000014
【図８】
2007140919.tif 000015
【図９】
2007140919.tif 000016
【図１０】
2007140919.tif 000017
【図１１】
2007140919.tif 000018
【図１２】
2007140919.tif 000019