(57)【要約】【課題】要求レスポンス性能の付与されたファイルの実データを格納するページを、要求レスポンス性能を満たすプールボリュームに常時配置すること。【解決手段】ストレージ管理システム23210は、ホスト計算機10000からのアクセス要求に、ファイルの要求レスポンス性能が付加されていたときには、ファイルの要求レスポンス性能と、ページ20041に割り当てられていたプールボリュームのレスポンス性能とを比較し、比較したプールボリュームのレスポンス性能が、要求レスポンス性能を満たさないときには、プールボリュームの中から、そのレスポンス性能が、要求レスポンス性能を満たすものを選択し、選択したプールボリューム20070にページ20041を移動し、プールボリューム20070が割り当てられたページ20041にデータを格納する。【選択図】  図１
2011117925.tif 000002
【特許請求の範囲】
【請求項１】
アクセス要求元となるアクセス要求端末と通信ネットワークを介して接続されるストレージ装置であって、
レスポンス性能が異なる複数種類の記憶デバイスと、
仮想記憶領域を有する仮想ボリュームを前記アクセス要求元のアクセス対象として、前記仮想ボリュームの仮想記憶領域を複数のブロックに分割し、前記各ブロックを、前記アクセス要求元からのアクセス要求で指定されたファイルの実データを格納するためのページに対応づけて管理し、前記アクセス要求元からのアクセス要求に応答して、前記各ページに、前記いずれかの種類の記憶デバイスに形成された記憶領域をプールボリュームとして割り当てるコントローラと、を有し、
前記コントローラは、
前記アクセス要求元から、前記アクセス要求を受け、前記アクセス要求で指定されたファイルに付与された要求レスポンス性能が前記アクセス要求に含まれている場合には、前記アクセス要求で指定されたファイルに付与された前記要求レスポンス性能と、前記アクセス要求で指定されたファイルの実データを格納するためのページに割り当てられた第１プールボリュームのレスポンス性能とを比較し、前記第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを第２プールボリュームとして選択し、前記選択した前記第２プールボリュームに、前記第１プールボリュームに割り当てられていた前記ページを移動し、前記第２プールボリュームに移動した前記ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置。
【請求項２】
請求項１に記載のストレージ装置において、
前記コントローラは、
前記各種類の記憶デバイスの前記レスポンス性能を、前記各種類の記憶デバイスの論理的記憶領域を構成する複数の論理ボリュームに対応づけて管理するとともに、前記各ページに、前記複数の論理ボリュームのうちいずれかの種類の記憶デバイスに形成された論理ボリュームからその記憶領域を前記プールボリュームとして割り当て、前記ファイルの実データが複数のページに分割されている場合、前記各ページに要求される要求レスポンス性能と、前記各ページに割り当てられた前記各第１プールボリュームのレスポンス性能とを比較し、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを前記第２プールボリュームとして前記各ページに対応づけて選択し、前記選択した前記各第２プールボリュームに、前記各第１プールボリュームに割り当てられていた前記各ページを移動し、前記各第２プールボリュームに移動した前記各ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置。
【請求項３】
請求項１に記載のストレージ装置において、
前記コントローラは、
前記各種類の記憶デバイスの前記レスポンス性能を、前記各種類の記憶デバイスの論理的記憶領域を構成する複数の論理ボリュームに対応づけて管理するとともに、前記各ページに、前記複数の論理ボリュームのうちいずれかの種類の記憶デバイスに形成された論理ボリュームからその記憶領域を前記プールボリュームとして割り当て、前記ファイルの実データが複数のページに分割されている場合、前記各ページに要求される要求レスポンス性能と、前記各ページに割り当てられた前記第１プールボリュームのレスポンス性能とを比較し、前記各第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たし、かつ前記レスポンス性能としての応答時間が最も速いものを前記第２プールボリュームとして選択し、前記選択した前記各第２プールボリュームに、前記各第１プールボリュームに割り当てられていた前記各ページを移動し、前記各第２プールボリュームに移動した前記各ページに、前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置。
【請求項４】
請求項１に記載のストレージ装置において、
前記コントローラは、
前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものとして２以上のプールボリュームを選択したときには、前記選択した前記２以上のプールボリュームのうち前記レスポンス性能としての応答時間が最も遅いプールボリュームを前記第２プールボリュームとして選択することを特徴とするストレージ装置。
【請求項５】
請求項１に記載のストレージ装置において、
前記コントローラは、
前記アクセス要求元から、前記ファイルの実データを格納するためのページの記憶領域を変更する旨の通知と再実行の指示を受けたときには、前記変更されたページの記憶領域に関する情報を含むアクセス要求の送信を前記アクセス要求元に送信し、
前記アクセス要求元から、前記変更されたページの記憶領域に関する情報を含む前記アクセス要求を受けたときには、前記アクセス要求で変更されたページの記憶領域に対する要求レスポンス性能と、前記アクセス要求で変更されたページの記憶領域に割り当てられた、新たな第１プールボリュームのレスポンス性能とを比較し、前記新たな第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを、新たな第２プールボリュームとして選択し、前記選択した前記新たな第２プールボリュームに、前記新たな第１プールボリュームに割り当てられていた前記ページを移動し、前記新たな第２プールボリュームに移動した前記ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置。
【請求項６】
請求項１に記載のストレージ装置において、
前記コントローラは、
前記アクセス要求元から、前記ファイルの実データを格納するためのページの記憶領域を変更する旨の通知と再実行の指示とともに、前記変更されたページの記憶領域に関する情報を受けたときには、前記通知で変更されたページの記憶領域に対する要求レスポンス性能と、前記通知で変更されたページの記憶領域に割り当てられた、新たな第１プールボリュームのレスポンス性能とを比較し、前記新たな第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを、新たな第２プールボリュームとして選択し、前記選択した前記新たな第２プールボリュームに、前記新たな第１プールボリュームに割り当てられていた前記ページを移動し、前記新たな第２プールボリュームに移動した前記ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置。
【請求項７】
請求項１に記載のストレージ装置において、
前記コントローラは、
前記アクセス要求で指定されたページに関する要求レスポンス性能を保存し、
前記アクセス要求元から、前記アクセス要求で指定されたページの記憶領域を変更する旨の通知と再実行の指示を受けたときには、前記保存したページに対する要求レスポンス性能と、前記通知で変更されたページの記憶領域に割り当てられた、新たな第１プールボリュームのレスポンス性能とを比較し、前記新たな第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを、新たな第２プールボリュームとして選択し、前記選択した前記新たな第２プールボリュームに、前記新たな第１プールボリュームに割り当てられていた前記ページを移動し、前記新たな第２プールボリュームに移動した前記ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置。
【請求項８】
請求項１に記載のストレージ装置において、
前記コントローラは、
前記アクセス要求で指定されたファイルに関する要求レスポンス性能を保存し、
前記アクセス要求元から、前記ファイルの移動が指示されたときには、既に存在するファイルを移動元のファイルとし、前記移動元のファイルの移動先となるファイルを移動先のファイルとして、前記保存している要求レスポンス性能を前記移動元のファイルの要求レスポンス性能と前記移動先のファイルの要求レスポンス性能として管理し、かつ前記移動先のファイルの実データを格納するためのページを新たに設定して移動先のページとして管理し、前記移動先のページに、新たなプールボリュームとして第３プールボリュームを割り当て、前記移動元のファイルのデータを、前記複製先のページに移行することを特徴とするストレージ装置。
【請求項９】
レスポンス性能が異なる複数種類の記憶デバイスと、
仮想記憶領域を有する仮想ボリュームをアクセス要求元のアクセス対象として、前記仮想ボリュームの仮想記憶領域を複数のブロックに分割し、前記各ブロックを、前記アクセス要求元からのアクセス要求で指定されたファイルの実データを格納するためのページに対応づけて管理し、前記アクセス要求元からのアクセス要求に応答して、前記各ページに、前記いずれかの種類の記憶デバイスに形成された記憶領域をプールボリュームとして割り当てるコントローラと、を有するストレージ装置の制御方法であって、
前記コントローラは、
前記アクセス要求元から、前記アクセス要求を受け、前記アクセス要求で指定されたファイルに付与された要求レスポンス性能が前記アクセス要求に含まれている場合には、前記アクセス要求で指定されたファイルに付与された前記要求レスポンス性能と、前記アクセス要求で指定されたファイルの実データを格納するためのページに割り当てられた第１プールボリュームのレスポンス性能とを比較し、
前記第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを第２プールボリュームとして選択し、
前記選択した前記第２プールボリュームに、前記第１プールボリュームに割り当てられていた前記ページを移動し、前記第２プールボリュームに移動した前記ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置の制御方法。
【請求項１０】
請求項９に記載のストレージ装置の制御方法において、
前記コントローラは、
前記各種類の記憶デバイスの前記レスポンス性能を、前記各種類の記憶デバイスの論理的記憶領域を構成する複数の論理ボリュームに対応づけて管理するとともに、前記各ページに、前記複数の論理ボリュームのうちいずれかの種類の記憶デバイスに形成された論理ボリュームからその記憶領域を前記プールボリュームとして割り当て、
前記ファイルの実データが複数のページに分割されている場合、前記各ページに要求される要求レスポンス性能と、前記各ページに割り当てられた前記第１プールボリュームのレスポンス性能とを比較し、
前記各第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たし、かつ前記レスポンス性能としての応答時間が最も速いものを前記第２プールボリュームとして選択し、
前記選択した前記各第２プールボリュームに、前記各第１プールボリュームに割り当てられていた前記各ページを移動し、
前記各第２プールボリュームに移動した前記各ページに、前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置の制御方法。
【請求項１１】
請求項９に記載のストレージ装置の制御方法において、
前記コントローラは、
前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものとして２以上のプールボリュームを選択したときには、前記選択した前記２以上のプールボリュームのうち前記レスポンス性能としての応答時間が最も遅いプールボリュームを前記第２プールボリュームとして選択することを特徴とするストレージ装置の制御方法。
【請求項１２】
請求項９に記載のストレージ装置の制御方法において、
前記コントローラは、
前記アクセス要求元から、前記ファイルの実データを格納するためのページの記憶領域を変更する旨の通知と再実行の指示を受けたときには、前記変更されたページの記憶領域に関する情報を含むアクセス要求の送信を前記アクセス要求元に送信し、
前記アクセス要求元から、前記変更されたページの記憶領域に関する情報を含む前記アクセス要求を受けたときには、前記アクセス要求で変更されたページの記憶領域に対する要求レスポンス性能と、前記アクセス要求で変更されたページの記憶領域に割り当てられた、新たな第１プールボリュームのレスポンス性能とを比較し、
前記新たな第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを、新たな第２プールボリュームとして選択し、
前記選択した前記新たな第２プールボリュームに、前記新たな第１プールボリュームに割り当てられていた前記ページを移動し、
前記新たな第２プールボリュームに移動した前記ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置の制御方法。
【請求項１３】
請求項９に記載のストレージ装置の制御方法において、
前記コントローラは、
前記アクセス要求元から、前記ファイルの実データを格納するためのページの記憶領域を変更する旨の通知と再実行の指示とともに、前記変更されたページの記憶領域に関する情報を受けたときには、前記通知で変更されたページの記憶領域に対する要求レスポンス性能と、前記通知で変更されたページの記憶領域に割り当てられた、新たな第１プールボリュームのレスポンス性能とを比較し、
前記新たな第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを、新たな第２プールボリュームとして選択し、
前記選択した前記新たな第２プールボリュームに、前記新たな第１プールボリュームに割り当てられていた前記ページを移動し、
前記新たな第２プールボリュームに移動した前記ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置の制御方法。
【請求項１４】
請求項９に記載のストレージ装置の制御方法において、
前記コントローラは、
前記アクセス要求で指定されたページに関する要求レスポンス性能を保存し、
前記アクセス要求元から、前記アクセス要求で指定されたページの記憶領域を変更する旨の通知と再実行の指示を受けたときには、前記保存したページに対する要求レスポンス性能と、前記通知で変更されたページの記憶領域に割り当てられた、新たな第１プールボリュームのレスポンス性能とを比較し、
前記新たな第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、前記プールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを、新たな第２プールボリュームとして選択し、
前記選択した前記新たな第２プールボリュームに、前記新たな第１プールボリュームに割り当てられていた前記ページを移動し、
前記新たな第２プールボリュームに移動した前記ページに前記アクセス要求で指定されたファイルの実データを格納することを特徴とするストレージ装置の制御方法。
【請求項１５】
請求項９に記載のストレージ装置の制御方法において、
前記コントローラは、
前記アクセス要求で指定されたファイルに関する要求レスポンス性能を保存し、
前記アクセス要求元から、前記ファイルの移動が指示されたときには、既に存在するファイルを移動元のファイルとし、前記移動元のファイルの移動先となるファイルを移動先のファイルとして、前記保存している要求レスポンス性能を前記移動元のファイルの要求レスポンス性能と前記移動先のファイルの要求レスポンス性能として管理するととともに、前記移動先のファイルの実データを格納するためのページを新たに設定して移動先のページとして管理し、
前記移動先のページに、新たなプールボリュームとして第３プールボリュームを割り当て、前記移動元のファイルのデータを、前記複製先のページに移行することを特徴とするストレージ装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レスポンス速度が異なる複数の記憶装置の記憶領域に形成された複数の論理ボリュームが割り当てられる仮想ボリュームに、Thin Provisioningを適用してページ制御を行うストレージ装置及びその制御方法に関する。
【背景技術】
【０００２】
計算機システムにおいて、記憶容量の利用効率化のために、ストレージ装置が、サーバ計算機に提供する論理デバイスに対して動的に実記憶領域(以降、ページと呼ぶ)を割り当てる技術がある。以降、上記のように実現された論理デバイスを仮想ボリュームと呼ぶ。また、性能やビットコストの異なる複数のメディアを組み合わせたプールを構成するデバイス管理方式がある。【０００３】
仮想ボリュームに対して複数の論理リソースから構成されるプールを対応付けておき、仮想ボリュームに書き込まれたデータに対するホスト計算機からのI/O（Input/Output）状況に応じて、当該データを、その仮想ボリュームに対してセグメント（ページ）を割り当てている論理リソース(プールボリューム)から、他のプールボリュームのセグメントに移行させる運用が行われている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2007-66259号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来技術では、ストレージ管理システムが仮想ボリュームに書き込まれたデータに対応するセグメント（ページ）へのI/O数を一定時間計測し、計測結果から、I/O数の少ないセグメント（ページ）は、低速なメディアで構成される論理ボリューム(プールボリューム)に移行される。このため、I/O頻度は低いが、高速レスポンスを必要とするファイルの実データを格納するセグメント（ページ）は、I/O数が少ないので、単位時間当たりのアクセス頻度（IOPS）が小さい(MB/sが小さい)プールボリュームに移行される。【０００６】
この結果、実際にアプリケーションがファイルを使用する際、ファイルの実データが、低速なメディアで構成される論理ボリュームに格納されているときには、ファイル読み込み性能が要求レスポンス性能(MB/s)を満たさなくなり、アプリケーションの動作に遅延が生ずる可能性がある。【０００７】
本発明は、前記従来技術の課題に鑑みて為されたものであり、その目的は、要求レスポンス性能の付与されたファイルの実データを格納するためのページを、要求レスポンス性能を満たすプールボリュームに常時配置することができるストレージ装置およびストレージ装置の制御方法を提供することにある。
【課題を解決するための手段】
【０００８】
前記目的を達成するために、本発明は、アクセス要求元となるアクセス要求端末からアクセス要求を受け、前記アクセス要求に、ファイルに要求される要求レスポンス性能が含まれている場合には、前記要求レスポンス性能と、前記アクセス要求で指定されたファイルの実データを格納するためのページに割り当てられた第１プールボリュームのレスポンス性能とを比較し、前記第１プールボリュームのレスポンス性能が、前記要求レスポンス性能を満たさないことを条件に、複数のプールボリュームの中から、そのレスポンス性能が、前記要求レスポンス性能を満たすものを選択し、前記選択したプールボリュームを第２プールボリュームとし、前記第１プールボリュームに割り当てられた前記ページを前記第２プールボリュームに移動し、前記第２プールボリュームに移動した前記ページに前記ファイルの実データを格納することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、要求レスポンス性能の付与されたファイルの実データを格納するページを、要求レスポンス性能を満たすプールボリュームに常時配置することができ、アプリケーションの処理遅延や停止を防ぐことが可能になる。
【図面の簡単な説明】
【００１０】
【図１】本発明における計算機システムの概念を示す概念図である。
【図２】本発明における計算機システムの構成例を示す構成図である。
【図３】本発明におけるホスト計算機の物理構成例を示す構成図である。
【図４】本発明におけるストレージ装置の物理構成例を示す構成図である。
【図５】実施形態1におけるホスト計算機のメモリの論理構成例を示す構成図である。
【図６】実施形態1におけるストレージ装置のLMの論理構成例を示す構成図である。
【図７】実施形態1におけるユーザに入力もしくは、ホスト計算機上のファイル管理システムからストレージ装置内のストレージ管理システムに送信される入力情報の構成例を示す構成図である。
【図８】実施形態1におけるストレージ管理システムが具備する仮想ボリューム管理テーブルの構成例を示す構成図である。
【図９】実施形態1におけるストレージ管理システムが具備するプール管理テーブルの構成例を示す構成図である。
【図１０】実施形態1におけるストレージ管理システムが具備するプールボリューム管理テーブルの構成例を示す構成図である。
【図１１】実施形態1におけるストレージ管理システムが生成するファイル要求レスポンス性能リストの構成例を示す構成図である。
【図１２】実施形態1におけるストレージ管理システムが生成する移動候補ページリストの構成例を示す構成図である。
【図１３】実施形態1におけるストレージ管理システムが生成するプールボリューム空き容量推定テーブルの構成例を示す構成図である。
【図１４】実施形態1におけるストレージ管理システムが生成するページ移動可能プールボリュームリストの構成例を示す構成図である。
【図１５】実施形態1におけるホスト計算機が具備するLBA Range情報テーブルの構成例を示す構成図である。
【図１６】実施形態1におけるページの移動と通常マイグレーション時の制約制定のフローチャートである。
【図１７】実施形態1におけるページの移動と通常マイグレーション時の制約制定のフローチャートである。
【図１８】実施形態1におけるページの移動と通常マイグレーション時の制約制定のフローチャートである。
【図１９】実施形態1におけるページの移動と通常マイグレーション時の制約制定のフローチャートである。
【図２０】実施形態1におけるページの移動と通常マイグレーション時の制約制定のフローチャートである。
【図２１】実施形態1における仮想化されたホスト計算機の概念図である。
【図２２】実施形態1における仮想化されたホスト計算機のメモリの論理構成図である。
【図２３】実施形態1における入力情報の構成例を示す構成図である。
【図２４】実施形態１におけるストレージ管理システムが生成するVMファイル要求レスポンス性能リストの構成例を示す構成図である。
【図２５】実施形態1におけるホスト計算機のゲストOSが具備するVM LBA Range情報テーブルの構成例を示す構成図である。
【図２６】実施形態1におけるホスト計算機のホストOSが具備するVM ボリューム管理テーブルの構成例を示す構成図である。
【図２７】実施形態1におけるホスト計算機のゲストOSの論理ボリュームのLBAとホストOSの論理ボリュームのLBAの対付けを行う方法のフローチャートである。
【図２８】実施形態1におけるホスト計算機のゲストOSの論理ボリュームのLBAとホストOSの論理ボリュームのLBAの対付けを行う方法のフローチャートである。
【図２９】実施形態2におけるエージェントが常駐しているホスト計算機の概念図である。
【図３０】実施形態2におけるホスト計算機に常駐しているエージェントがファイルのLBAが変更されたことをストレージ管理システムに通知し、ストレージ管理システムが処理を開始するまでのフローチャートである。
【図３１】実施形態2におけるエージェントがLBA対応テーブルを生成する際のホスト計算機メモリの論理構成図である。
【図３２】実施形態2におけるエージェントが生成するLBA対応テーブルの構成図である。
【図３３】実施形態2におけるストレージ管理システムがエージェントから受け取ったLBA対応テーブルに基づきページ毎の要求レスポンス性能を抽出するフローチャートである。
【図３４】実施形態2におけるストレージ管理システムがエージェントから受け取ったLBA対応テーブルに基づきページ毎の要求レスポンス性能を抽出するフローチャートである。
【図３５】実施形態3におけるファイル分類管理システムが存在するホスト計算機の概念図である。
【図３６】実施形態3におけるホスト計算機のメモリの論理構成図である。
【図３７】実施形態3におけるファイル分類管理システム生成するファイル移動情報の構成例を示す構成図である。
【図３８】実施形態3におけるストレージ管理システムがファイル分類管理システムから受信したファイル移動情報に基づき、ページ毎の要求レスポンス性能抽出するフローチャートである。
【発明を実施するための最良の形態】
【００１１】
実施形態1
実施形態1は、ファイルの要求レスポンス性能（要求応答時間）と、ファイルの実データを格納するためのページに割り当てられている第１プールボリュームに設定された応答時間とを比較し、第１プールボリュームに設定された応答時間が、要求応答時間を満たさないときには、第１プールボリュームから切り出されたページを、応答時間が、要求応答時間を満たす第２プールボリュームから切り出されたページに移動させるものである。【００１２】
図1に、実施形態1における概念図を示めす。図1において、ストレージ装置20000は、通信ネットワーク（第１通信ネットワーク）300003を介してホスト計算機10000に接続されているとともに、管理用ネットワーク（第２通信ネットワーク）を介して、ホスト計算機10000と管理端末40000に接続されている。【００１３】
ストレージ装置20000は、ストレージ管理システム23210を起動してストレージ装置20000全体を統括制御するコントローラとして機能するマイクロプロセッサ（MP）23100を有する。【００１４】
このMP23100は、仮想記憶領域を有する仮想ボリューム20010を論理ボリューム10010としてホスト計算機10000に提供するとともに、仮想ボリューム20010をホスト計算機10000のアクセス対象として管理し、仮想ボリューム20010の仮想記憶領域を複数のブロック20011に分割し、各ブロック20011を、それぞれアクセス要求元、例えば、ホスト計算機10000のアクセス対象となるファイルの実データを格納するためのページ20041として設定して、複数のページ20041を含むプール20040を管理するとともに、性能、例えば、レスポンス性能としての応答時間が異なる複数種類の記憶デバイス（記憶装置）の応答時間を、各種類の記憶デバイスに形成された複数の論理ボリュームに対応付けて管理し、アクセス要求元からのアクセス要求に応答して、各ページ20041に、各種類の記憶デバイスに形成された複数の論理ボリュームうちいずれかの種類の記憶デバイスに形成された論理ボリュームからその記憶領域をプールボリューム20050、20060、20070として割り当てる。【００１５】
この際、MP23100は、アクセス要求元となる管理端末40000から、ユーザの操作による入力情報を含むアクセス要求、または、アクセス要求元となるホスト計算機10000から、ホスト計算機10000内のアプリケーション12110が利用し、かつ、ストレージ装置20000から提供された論理ボリューム10010に格納されているファイルをアクセス対象とするアクセス要求を受けたときに、受信したアクセス要求に、ファイルの要求レスポンス性能が付加されていたときには、ファイルの要求レスポンス性能（要求応答時間７GB/s）と、ページ20041に割り当てられているプールボリューム20050に設定された記憶デバイスの応答時間（１GB/s）とを比較する。【００１６】
このとき、比較したプールボリューム20050の応答時間が、要求応答時間を満たさないときには、MP23100は、プールボリュームの中から、その応答時間が、要求応答時間を満たすものを選択し、選択したプールボリューム、例えば、レスポンス性能８GB/sの記憶デバイスで構成されたプールボリューム20070を、新たなプールボリュームとして、新たなプルーブボリューム20070をページ20041に割り当て、即ち、プールボリューム20050に割り当てられていたページをデータをプルーブボリューム20070に移行し、プルーブボリューム20070に割り当てられたページ20041にファイルの実データを格納し、プールボリューム20050に割り当てられたページに、ファイルの実データが格納されるのを抑制する。【００１７】
つまり、MP23100は、ファイルの要求レスポンス性能（要求応答時間７GB/s）と、ページ20041に割り当てられているプールボリューム20050に設定された記憶デバイスの応答時間（１GB/s）とを比較し、比較したプールボリューム20050の応答時間が、要求応答時間を満たさないときには、プールボリューム20050から切り出されたページを、その応答時間が、要求応答時間を満たす記憶デバイス（レスポンス性能８GB/s）で構成されたプールボリューム20070から切り出されたページに移行させ、ファイルの実データの格納先をプールボリューム20050からプールボリューム20070に変更することとしている。【００１８】
図2に計算機システムの構成例を示す。ホスト計算機10000とストレージ装置20000は、IP（Internet  Protocol）/SAN（Storage  Area  Network）30000で接続され、ストレージ装置20000は、ホスト計算機10000に仮想ボリューム20010を提供する。また、ストレージ装置20000と外接ストレージ装置25000はSAN35000で接続され、ストレージ装置20000は外接ストレージ装置25000内の論理ボリュームを自機の論理ボリューム25010として使用する機能を有する。ホスト計算機10000とストレージ装置20000と管理端末40000は、管理用ネットワーク36000で接続され、各装置間の通信が可能である。【００１９】
なお、IP/SAN30000とSAN35000と管理用ネットワーク36000は同じネットワークであっても構わない。また、各装置の管理者は、管理用ネットワーク36000に接続されている管理端末40000を用いて各装置の操作を行う。管理端末40000には各装置が具備する管理システムが管理画面やコンソールを提供する。【００２０】
図3にホスト計算機10000の詳細な構成例を示す。ホスト計算機10000は、プロセッサ11000とメモリ12000とディスク13000と通信I/F14000と管理I/F15000を有し、各部が内部ネットワーク16000で接続され、相互に通信が可能である。また、プロセッサ11000は、メモリ12000を用いてディスク13000に格納されているアプリケーションソフトウェアを制御する。通信I/F14000は、IP/SAN30000でストレージ装置20000と接続され、ストレージ装置20000内の仮想ボリューム20010を論理ボリューム10010として取り込む。管理I/F15000は、管理用ネットワーク36000を介し、管理端末40000に管理画面やコンソールを提供する。また、管理I/F15000は、管理用ネットワーク36000を介し、ストレージ装置20000と管理情報の通信が可能である。【００２１】
図4にストレージ装置20000の詳細な構成例を示す。ストレージ装置20000は、ホストI/F部(FEPK：FrontEnd PacKage)21000とメディアI/F部(BEPK：BackEnd PacKage)22000と制御部(MPPK：Micro Processor PacKage)23000と共有メモリ部(CMPK：Cache Memory PacKage)24000を有し、各部が内部ネットワーク25000で接続され、相互に通信が可能である。【００２２】
FEPK21000は、複数のホストI/F21100を有し、IP/SAN30000でホスト計算機10000と接続されるとともに、内部ネットワーク25000と接続されており、ホスト計算機10000と論理ボリューム20010との間におけるリードまたはライト処理対象のデータの受け渡しを仲介する。【００２３】
また、BEPK22000は、複数のメディアI/F22100を有し、ケーブルを介して、SSD27010やHDD27020に接続されるとともに、SAN35000を介して外接ストレージ装置25000と接続される。さらに、BEPK22000は、内部ネットワーク25000と接続されており、内部ネットワーク25000側と、記憶デバイスあるいは記憶装置の一例としてのSolid State Drive(SSD)27010やHDD(ハードディスクドライブ)27020や、外接ストレージ装置25000内の論理ボリューム25010との間におけるリードまたはライト処理対象のデータの受け渡しを仲介する。【００２４】
記憶デバイスあるいは記憶装置として、性能、例えば、レスポンス性能としての応答時間が異なる２種類のものを示しているが、これらの他に、SAS（Serial  Attached  SCSI）Disks、SATA（Serial  ATA）Disks、FC（Fibre  Channel）Disksなどを用いることもできる。【００２５】
CMPK24000は、制御情報用メモリ24100とデータキャッシュ用メモリ24200を有し、情報制御用メモリ24100は処理に必要な情報、例えばメディア構成情報を格納し、また、データキャッシュ用メモリ24100は、HDD27020、或いはHDD27020からにライトするデータ、またはHDD27020からリードしたデータを一時的に格納(キャッシュ)する。データキャッシュ用メモリ24200と制御情報用メモリ24100は揮発メモリ、例えば、DRAM(Dynamic Random Access Memory)であってもよい。【００２６】
KPPK23000は、複数のMP(Micro Processor)23100とローカルメモリ(LM)23200を有し、MP23100とローカルメモリ(LM)23200がバス23300で接続されており、LM23200は、制御情報用メモリ24100に格納されている制御情報の一部を格納している。【００２７】
MP23100は、複数の同種のメディア（記憶デバイス）の組で構成された論理記憶領域(パリティグループ)を設定し、パリティグループ内の一部を論理記憶領域を示すLDEV(Logical DEVice)として切り出し、複数のLDEVを一つの論理記憶領域として纏めるプール20040を構成し(以降、プールを構成するLDEVをプールボリュームと呼ぶ)、前記プール20040から実容量が0の仮想ボリューム20010を切りだし、ホスト計算機10000に提供する。ホスト計算機10000は、提供された仮想ボリューム20010を論理ボリューム10010として使用する。ホスト計算機10000から仮想ボリューム20010にライト処理が行われると、MP23100は、仮想ボリューム20010にページが未割り当てであれば、プール20040からページ20041を割り当てる。【００２８】
図5にホスト計算機10000のメモリ12000内の論理構成例を示す。ファイル管理システム12140を起動するプロセッサ11000は、オペーレーションシステム(OS：Operation System)12100のファイル管理システム12120が管理するストレージ装置20000から提供された論理ボリューム10010を用いて、アプリケーション12110の使用するファイル12121をメモリ12000に格納する。また、ファイル管理システム12140は、ファイル12121を格納しているLBAを管理するLBA Range情報テーブル12141を有する。LBA Range情報テーブル12141の詳細については後述する。【００２９】
図6にMPPK24000内のLM23200の論理構成例を示す。ストレージ管理システム23210を起動するMP23100は、ストレージ装置20000内のページの移行制御を行う際、ファイル要求レスポンス性能リスト23270と、移動候補ページリスト23280と、プールボリューム空き容量推定テーブル23290を生成し、仮想ボリューム管理テーブル23220と、プール管理テーブル23230と、プールボリューム管理テーブル23250とページ移動可能プールボリュームリスト23240を使用する。【００３０】
ファイル要求レスポンス性能リスト23270と、移動候補ページリスト23280と、プールボリューム空き容量推定テーブル23290と、仮想ボリューム管理テーブル23220と、プール管理テーブル23230と、プールボリューム管理テーブル23250とページ移動可能プールボリュームリスト23240の詳細は後述する。【００３１】
図7に本実施形態で開示するフローで利用する入力情報であって、ユーザの操作による入力情報50000もしくは、ホスト計算機10000上のファイル管理システム12140からストレージ装置20000内のストレージ管理システム23210に送信される入力情報50000の一例を示す。ストレージ管理システム23210を起動するMP23100は、アクセス要求元からの入力情報50000として、ホスト名51000、ドライブ名53000、ディレクトリ名54000、ファイル名55000と当該ファイル要求レスポンス性能52000を受信する。なお、ストレージ管理システム23210を起動するMP23100による処理を、以下、ストレージ管理システム23210による処理として説明することもある。【００３２】
図8にストレージ管理システム23210が具備する仮想ボリューム管理テーブル23220の構成例を示す。仮想ボリューム管理テーブル23220は、ストレージ装置20000内で仮想ボリューム20010を一意に特定可能なIDとなる仮想ボリュームID欄23222と、仮想ボリューム20010に対応付けられているプール20040の名前となるプールID欄23224と、仮想ボリューム（論理ボリューム）10010が割り当てられているホスト計算機10000を計算機システム内で一意に特定可能なIDなる割り当てホスト名欄23226と、ホスト計算機10000内で割り当てられているドライブ名となる割り当てドライブ名欄23227と、仮想ボリュームの容量となる容量欄23228と、仮想ボリューム20010に割り当て済みの容量を示す使用量欄23229から構成されている。【００３３】
ストレージ装置20000の管理者により、仮想ボリューム20010が生成されると、ストレージ管理システム23210が、仮想ボリューム名欄23222、プール名欄23224、容量欄23228に生成された仮想ボリューム20010の情報を仮想ボリューム管理テーブル23220に登録する。また、管理者により、ホスト計算機10000に仮想ボリューム20010が割り当てられると、ストレージ管理システム23210が、仮想ボリューム管理テーブル23220のうち、割り当てホスト欄23226、割り当てドライブ名欄23227、使用量欄23229に、ホスト名、割り当てドライブ名、使用量を登録する。なお、使用量欄23229は、定期的もしくは、本発明で開示するフローが開始された際に、ストレージ管理システム23210が最新の情報に更新する。【００３４】
図9には、ストレージ管理システム23210が使用するプール管理テーブル23230の構成例を示す。プール管理テーブル23230は、ストレージ管理システム23210が、管理する対象であるプール20040をストレージ装置20000内で一意に特定可能なIDとなるプールID欄23231と、仮想ボリューム20010の実記憶領域であるページ20041をプール内で一意に特定可能なIDとなるページID欄23232と、プール20040を構成している論理ボリューム(プールボリューム20050、20060、20070)をストレージ装置20000内で一意に特定可能なIDとなるプールボリュームID欄23235と、ページ20041を割り当てられている論理ボリューム(プールボリューム20050、20060、20070)をストレージ装置20000内で一意に特定可能なIDとなる仮想ボリュームID欄23237と、該当するページ20041に格納されている論理ボリューム(プールボリューム20050、20060、20070)のLBAの範囲を示すLBA Range欄23238を含む。【００３５】
ストレージ装置20000の管理者により、プール20040が生成されると、ストレージ管理システム23210は、プールID欄23231に生成されたプール20040のIDをプール管理テーブル23230に登録し、ストレージ装置20000の管理者により、プール20040にプールボリューム（例えば、プールボリューム20050、20060、20070の中の一つのプールボリューム）が割り当てられると、ページID欄23232にプール20040を構成するページ20041を一意に特定できるIDを割付け、プールボリューム名欄23235に、プール20040に割り当てられたプールボリューム（例えば、プールボリューム20050、20060、20070の中の一つのプールボリューム）のIDを登録する。また、ストレージ管理者により、仮想ボリューム20010が切り出されると、ストレージ管理システム23210は、仮想ボリューム名欄23237に切り出された仮想ボリュームのIDをプール管理テーブル23230に登録する。【００３６】
また、ホスト計算機10000から仮想ボリューム20010に書き込みがあると、ページが未割り当てであれば、ストレージ管理システム23210は、プール20040から仮想ボリューム20010にページ20041を割り当て、ページ20041を割り当てた仮想ボリューム20010のLBAの開始番号をLBA Range欄のStart欄23243、終了番号をLBA Range欄のEND欄23244に登録する。【００３７】
図10にはストレージ管理システム23210が使用するプールボリューム管理テーブル23250の構成例を示す。プールボリューム管理テーブル23250は、プール20040を構成する論理ボリューム(プールボリューム20050、20060、20070)をストレージ装置20000内で一意に特定可能なIDとなるプールボリュームID欄23251と、プールボリューム20050、20060、20070の容量となる容量欄23252と、プールボリューム20050、20060、20070の空き容量を示す空き容量欄23253と、プールボリューム20050、20060、20070を構成するメディア（記憶デバイス）の種別を示すメディア種別欄23255と、プールボリューム20050、20060、20070が提供するレスポンス性能値(MB/s）が登録されるレスポンス性能欄23257から構成される。【００３８】
また、レスポンス性能は、プールボリュームを構成するメディアの種類や構成RAIDレベルによって異なり、レスポンス性能欄23257の値は、プールボリュームを生成した際に、メディアの種類と構成RAIDレベルを基準としたカタログ値を管理者もしくは、ストレージ管理システム23210が登録する。【００３９】
ストレージ装置20000の管理者により、プール20040にプールボリューム（例えば、プールボリューム20050、20060、20070の中の一つのプールボリューム）が割り当てられると、ストレージ管理システム23210は、プールボリュームID欄23251、容量欄23252、メディア種別欄23255、レスポンス性能欄23257、プール20040に割り当てられたすべてのプールボリュームの情報をプールボリューム管理テーブル23250に登録する。また、空き容量欄23253は、本発明で開示するフローが開始された際、ストレージ管理システム23210が更新する。【００４０】
図11にストレージ管理システム23210が生成するファイル要求レスポンス性能リスト23270の構成例を示す。ファイル要求レスポンス性能リスト23270は、計算機システムでホスト計算機10000を一意に特定可能なIDを登録するホスト名欄23271と、ホスト計算機10000内で論理ドライブを一意に特定可能なIDを登録するドライブ名欄23276と、ファイルが格納されているディレクトリ名を登録するディレクトリ名欄23277と、アプリケーションが利用するファイル名を登録するファイル名欄23278と、当該ファイルに要求されるレスポンス性能を登録する要求レスポンス性能欄23273と、当該ファイルを格納する論理ボリューム内で当該ファイルの実データが格納されている場所、すなわちLBA(Logical Block Addressing)における当該アドレス(以下、LBA Rangeと呼ぶ)を登録するLBA Range欄23275で構成される。【００４１】
ユーザの操作による入力情報50000もしくは、ホスト計算機10000上のファイル管理システム12140からストレージ装置20000内のストレージ管理システム23210に送信された入力情報50000をストレージ管理システム23210が受信すると、ストレージ管理システム23210は、受信した情報を、ファイル要求レスポンス性能リスト23270のホスト名欄23271、ドライブ名欄23276、ディレクトリ名欄23277、ファイル名欄23278、要求レスポンス性能欄23273にそれぞれ登録する。【００４２】
また、ストレージ管理システム23210は、ホスト計算機10000内のファイル管理システム12140から、ファイル12121の格納されているLBA Rangeを取得し、ファイル要求レスポンス性能リスト23270のLBA Range欄23275に、取得したLBA Rangeを登録する。【００４３】
図12に本実施形態のフローで生成する移動候補ページリスト23280の構成例を示す。移動候補ページリスト23280は、移動対象(すなわち、本実施形態で開示するフローの対象となる)ページ20041を一意に特定するIDを登録するページID欄23281と、当該ページ20041にかかる要求レスポンス性能を登録する要求レスポンス性能欄23283と、ページ20041の移動先候補となるプールボリュームをストレージ装置内で一意に特定可能なIDを登録する移動先候補プールボリューム欄23285と、ページ20041を実際に移動する移動先プールボリューム内で一意に特定可能なIDを登録する移動先プールボリューム欄23287から構成される。【００４４】
図13に本実施形態のフローで生成するプールボリューム空き容量推定テーブル23290の構成例を示す。プールボリューム空き容量推定テーブル23290は、プール20040を構成するプールボリューム20050、20060、20070のプールボリューム名となるプールボリューム名欄23291と、プールボリューム20050、20060、20070の空き容量となる空き容量欄23253を含む。【００４５】
図14に本実施形態のフローで生成するページ移動可能プールボリュームリスト23240の構成例を示す。ページ移動可能プールボリュームリスト23240は、移動対象のページ20041を一意に特定するIDとなるページID欄23241と、当該ページ20041の要求レスポンス性能となる要求レスポンス性能欄23243と、当該ページ20041が移動可能な移動可能プールボリューム欄23245を含む。【００４６】
この場合、例えば、ページID2241が「00001」のページ20041は、要求レスポンス性能が７G（MB/s）に対して、LDEV１のレスポンス性能（SSDのレスポンス性能）が８G（MB/s）であるので、LDEV１に移動可能である。ページID2241が「00002」のページ20041は、要求レスポンス性能が３G（MB/s）に対して、LDEV１とLDEV２のレスポンス性能（SSDとSASのレスポンス性能）が４G（MB/s）以上であるので、LDEV１とLDEV２に移動可能である。また、ページID2241が「00003」のページ20041は、要求レスポンス性能が０．８G（MB/s）に対して、LDEV１とLDEV２およびLDEV３のレスポンス性能（SSD、SAS、SATAのレスポンス性能）が１G（MB/s）以上であるので、LDEV１とLDEV２およびLDEV３に移動可能である。【００４７】
図15にホスト計算機10000の具備するLBA Range情報テーブル12141の構成例を示す。LBA  Range情報テーブル12141は、ファイル12121を一意に特定するための情報となるホスト名欄12143と、ドライブ名欄12146と、ディレクトリ名欄12147と、ファイル名欄12148と、当該ファイル12121の格納されている範囲を示すLBA Range欄12145を含む。【００４８】
ファイル管理システム12140は、論理ボリューム10010にデータを書き込んだ際、ホスト名欄12123、ドライブ名欄12126、ディレクトリ名欄12127、ファイル名欄12128を、書き込まれたファイル12121を一意に特定する情報としてLBA Range情報テーブル12141に登録し、当該ファイル12121が格納されている論理ボリューム10010のLBAをLBA Range欄12125に登録する。【００４９】
本実施形態では、ストレージ管理システム23210が、仮想ボリューム20010を割り当てたホスト計算機10000から、当該仮想ボリューム20010に格納されたファイル12121の要求レスポンス性能を取得し、当該ホスト計算機10000から、当該ファイル12121の仮想ボリューム(ホスト計算機上の論理ボリューム10010）20010におけるLBA Rangeを取得し、取得したファイル12121の要求レスポンス性能と、取得したLBA Rangeとから、仮想ボリューム20010を構成するページ20041とページ20041の要求レスポンス性能を抽出し、抽出したページ20041の要求レスポンス性能を満たすプールボリューム（例えば、プールボリューム20050、20060、20070の中の一つのプールボリューム）を特定し、抽出したページ20041を、特定したプールボリュームに移動し、ページ移動後に、要求レスポンス性能を満たさないプールボリュームへのページ移動を抑制する方法を提供する。以下、前記方法の詳細を図16から図22に示すフローチャートを用いて説明する。【００５０】
本実施形態では、ストレージ管理システム23210が、管理端末40000を扱うユーザやホスト計算機上のファイル管理システム12140からのアクセス要求に付加された入力情報50000の受信を契機に処理を開始する(F0000)。次に、ストレージ管理システム23210は、図７に示す入力情報50000より、ホスト名、ドライブ名、ディレクトリ名、ファイル名および要求レスポンス性能を抽出し(F0010)、ステップF0010で抽出した情報を、図１１に示すファイル要求レスポンス性能リスト23270に登録する(F0015)。【００５１】
次に、ステップF0020からF0120までのLoop１の処理では、ストレージ管理システム23210は、ファイル要求レスポンス性能リスト23270に登録されたファイルの実データを格納するページ20041を特定し、当該ページ20041の要求レスポンス性能を算出する。【００５２】
具体的には、ストレージ管理システム23210は、ファイル要求レスポンス性能リスト23270からファイルa（複数のファイル12121の中の一つのファイルを単にファイルａと称する。）を選出し(F0020)、選出したファイルaのホスト名欄23271に登録されたホスト計算機1000上のファイル管理システム12140に対して、LBA Rangeの通知要求を送信する(F0030)。【００５３】
この際、ストレージ管理システム23210は、ファイル要求レスポンス性能リスト23270の項目23276から23278に登録されたドライブ名、ディレクトリ名、ファイル名を指定した、ファイルaの実データが格納されているホスト計算機10000上の論理ボリューム10010におけるLBA Rangeの通知要求を送信する。【００５４】
要求を受信した、ホスト計算機10000上のファイル管理システム12140は、図１５に示すLBA Range情報テーブル12141から、指示されたファイルのLBA Rangeを抽出し(H0000)、抽出したLBA Rangeをストレージ管理システム23210に通知する(H0010)。【００５５】
次に、ストレージ管理システム23210は、ホスト計算機10000のファイル管理システム12140からファイルaのLBA Rangeを受信し(F0040)、ファイル要求レスポンス性能リスト23270のLBA Range欄23275に、受信したLBA Rangeを登録する(F0045)。【００５６】
次に、ストレージ管理システム23210は、ファイルaのホスト名およびドライブ名をトリガに、図８に示す仮想ボリューム管理テーブル23220の割り当てホスト名欄23226と割り当てドライブ欄23227に一致する値を特定し、ファイルaを格納している仮想ボリュームIDと当該仮想ボリュームにページを割り当てているプールIDを取得する(F0047)。例えば、ホスト名が「HOST1」で、ドライブ名が「E」であれば、仮想ボリュームIDとして、「V-VOL1」を取得し、プールIDとして、「POOL1」を取得する。【００５７】
次に、ステップF0050からF0110までのLoop2の処理では、ファイルaの実データを格納するページを抽出し、抽出したページの要求レスポンス性能を算出する。【００５８】
具体的には、ストレージ管理システム23210は、ファイル要求レスポンス性能リスト23270内のLBA Range23275に登録されている値からLBA(b)を選出し(F0050)、選出したLBA(b)が、図９に示すプール管理テーブル23230のLBA  Range欄23238の中に含まれることを条件に、図９に示すプール管理テーブル23230のプールID欄23231の値とステップF0047で取得したプールIDが一致するとともに、プール管理テーブル23230の仮想ボリュームID欄23237の値とステップF0047で取得した仮想ボリュームIDが一致するページIDを抽出する(F0060)。例えば、LBA(b)が、LBA  Range欄23238のStart23243とEnd23244で示される範囲「01000」〜「01999」にあるときには、「00001」が、ファイルａに対応したページのページIDとして抽出される。【００５９】
次に、ストレージ管理システム23210は、抽出したページIDが、図１２に示す移動候補ページリスト23280のページID欄23281に登録された値と一致するものがあるか判別する(F0070)。ストレージ管理システム23210は、抽出したページIDが、移動候補ページリスト23280のページID欄23281に登録された値と一致するものがない場合(F0070で“No”の場合)は、抽出したページIDと、ページIDで特定されるページが格納するLBAの要求レスポンス性能を、ページの要求レスポンス性能として移動候補ページリスト23280のページID欄と要求レスポンス性能欄に新規に登録し(F0090)、ステップF0110に進む。【００６０】
また、ストレージ管理システム23210は、抽出したページIDが移動候補ページリスト23280のページID欄23281に登録された値と一致するものがある場合(F0070で“Yes”の場合)、LBA(b)の要求レスポンス性能と移動候補ページリスト23280に登録されているLBA(b)を格納するページの要求レスポンス性能とを比較する(F0080)。ステップF0080でLBA(b)の要求レスポンス性能が、登録されている当該ページの要求レスポンス性能より大きい場合、ストレージ管理システム23210は、移動候補ページリスト23280の当該ページの要求レスポンス性能欄23283をLBA(b)の要求レスポンス性能に書き換え(F0100)、ステップF0110に進む。【００６１】
ストレージ管理システム23210は、ステップF0110では、ステップF0050で選出したLBA(b)をLoop2の処理済とし、ファイル要求レスポンス性能リスト23270に登録されたLoop2が未処理のLBAを選出し、選出したLBAをLBA(b)として、ステップF0060に戻り、ファイル要求レスポンス性能リスト23270に登録された全LBAに関してLoop2の処理を実施する。【００６２】
次に、ストレージ管理システム23210は、Loop2の処理が完了すると、ファイル要求レスポンス性能リスト23270に登録されたLoop1が未処理のファイルを選出し、選出したファイルをファイルaとしてF0020に戻り、ファイル要求レスポンス性能リスト23270に登録された全ファイルに関してLoop1の処理を実施する。【００６３】
具体的には、ストレージ管理システム23210は、図１２に示す移動候補ページリスト23280からページc（複数のページ20041の中の一つのページを単にページcと称する。）を抽出する(F0130)。例えば、ストレージ管理システム23210は、ページIDが「00003」のページを抽出し、抽出したページcの要求レスポンス性能（０．８G（MB/s））を基に、図１０に示すプールボリューム管理テーブル23250のレスポンス性能欄23257の値が上回るプールボリューム（LDEV１、LDEV２、LDEV３）を全て抽出し(F0140)、抽出したプールボリュームを移動候補ページリスト23280の移動先候補プールボリューム欄23285に登録する(F0150)。【００６４】
次に、ストレージ管理システム23210は、ページcをLoop3の処理済とし23280に登録されているLoop3が未処理なページ（例えば、ページIDが「00002」のページ）をページcとして、F0140にも戻り、移動候補ページリスト23280の全てのページに対し、Loop3を実施する。即ち、ファイルaのデータが複数のページに亘って配置されていることを考慮し、ファイルaに属する全てのページに対して、Loop3を実施する。【００６５】
次に、図19および図20のLoop4(F0180からF0250まで)の処理 により、移動候補ページリスト23280に登録されたページの移動先プールボリュームを選定する。【００６６】
具体的には、ストレージ管理システム23210は、移動候補ページリスト23280から、要求レスポンス性能欄23283の値が最も低いページから順にページ(ページdとして)を抽出し(F0180)、抽出したページdの移動先候補プールボリューム欄23285に登録されているプールボリュームの中から最もレスポンス性能の低い(すなわち、図10に示すプールボリューム管理テーブル23250のレスポンス性能欄23250の値が最も小さい）プールボリュームe（複数のプールボリューム20050、20060、20070の中の一つのプールボリュームを単にプールボリュームeと称する。）を抽出する(F0190)。【００６７】
次に、ストレージ管理システム23210は、プールボリューム空き容量推定テーブル23290でプールボリュームｅにページ容量以上の空き容量があるか調べる(F0200)。【００６８】
ページ容量以上の空き容量がない場合(F0200で“No”の場合)は、ストレージ管理システム23210は、ステップF0240に進み、ページdの移動候補プールボリューム欄23285に登録されており、Loop5が未処理で、かつプールボリュームeの次にレスポンス性能が低いプールボリュームを新たなプールボリュームeとして選出し、ステップF0200に戻る。【００６９】
一方、プールボリュームeにページ容量以上の空き容量がある場合(F0200で“Yes”の場合)は、ストレージ管理システム23210は、移動候補ページリスト23280のページdの移動先プールボリューム欄23287にプールボリュームeを登録し(F0220)、次に、プールボリューム空き容量推定テーブル23290において、ページdが格納されているプールボリュームの空き容量欄23293の値にページ容量分を加算し、プールボリュームeの空き容量欄23293の値にページ容量分を減算し、Loop5を抜ける(F0230)。【００７０】
次に、ストレージ管理システム23210は、移動候補ページリスト23280のページdの移動先プールボリューム欄23287に移動先プールボリュームが登録されているかを調べ(F0450)、ページdの移動先プールボリュームが登録されていない場合(F0245で“No”の場合)、ストレージ管理者に移動先候補プールボリューム欄23285に登録されているプールボリュームのいずれかにメディアを追加するよう管理者に通知し(F0210)、全ての処理を終了する(F0340)。【００７１】
ページdの移動先プールボリュームが登録されている場合は(F0245で“Yes”の場合)、ストレージ管理システム23210は、ステップF0250に進み、ステップF0250では、ページdをLoop4の処理済とし、移動候補ページリスト23280から、ページdの次に要求レスポンス性能欄23283の値が小さいページを新たなページdとしてF0190に戻り、移動候補ページリスト23280に登録された全てのページに対してLoop4を実施する。【００７２】
次に、Loop6(F0260からF0330まで)の処理によって、移動候補ページリスト23280に登録されているページをLoop4で選出したプールボリュームに移動する。【００７３】
具体的には、ストレージ管理システム23210は、移動候補ページリスト23280の要求レスポンス性能欄23283に登録されている値で最も低い値を持つページfを選択し(F0260)、選択したページfの移動先プールボリューム欄23287に登録されているプールボリュームにページfを移動する(F0270)。【００７４】
次に、ストレージ管理システム23210は、図１４に示すページ移動可能プールボリュームリスト23240のページID欄23281にページfのIDを登録し、さらにページfの移動候補プールボリューム欄の値を移動可能プールボリューム欄23245に登録する(F0280)。ストレージ管理システム23210は、ステップF0330では、ページfをLoop6の処理済とし、ページfの次に要求レスポンス性能欄23283の値が低いページを新たなページfとして、ステップF0270に戻り、移動候補ページリスト23280に登録された全ページに関してLoop6を実施すると、本実施形態の処理を終了する(F0340)。【００７５】
この後、ストレージ管理システム23210は、プール20040に対し、新たにプールボリュームが追加された場合、追加されたプールボリュームのレスポンス性能と、ページ移動可能プールボリュームリスト23240の要求レスポンス性能欄23243に登録されているページ毎の要求レスポンス性能とを比較し、当該ページの要求レスポンス性能を満たせば、移動可能プールボリューム欄23245に、追加されたプールボリュームを登録する。【００７６】
また、実施形態1では、図21に示す通り、ホスト計算機10000が仮想化されている場合でも、ゲストOS12210にホストOS12200が割り当てた仮想ボリューム12213でのファイルの実データの格納場所を示すLBA(以降、VM LBA Rangeと呼ぶ)と、ホストOS12200にストレージ管理システム23210が割り当てた論理ボリューム12221での格納場所を示すLBAとの対応をとれば、本実施形態のフローチャートF0050から実行することが可能である。【００７７】
図22にホスト計算機10000が仮想化されている場合のメモリ内の論理構成例を示す。メモリ12200には、ホストOS12200が格納され、ホストOS12200では、ゲストOS12110とホストファイル管理システム12220が稼働する。ゲストOS12200のホストファイル管理システム12220は、ストレージ装置20000から提供された論理ボリューム12221を用いて、ゲストOS12110に仮想ボリューム12213を提供する。ゲストOS12110のファイル管理システム12212は、ホストOS12200にから提供された仮想ボリューム12213にアプリケーション12111の使用するファイルを格納する。【００７８】
また、ファイル管理システム12140は、前記ファイルを格納しているLBAを管理するVM LBA Range情報テーブル12250を有し、ホストファイル管理システム12220は、ゲストOS12200に提供した仮想ボリューム12213を管理するVMボリューム管理テーブル12260を有する。VM LBA Range情報テーブル12250およびVMボリューム管理テーブル12260の詳細については後述する。【００７９】
図23にユーザの操作によって入力される入力情報59000もしくは、ホスト計算機10000上のファイル管理システム14150からストレージ装置20000内のストレージ管理システム23210に送信される入力情報59000の一例を示す。この場合、ストレージ管理システム23210は、図7の入力情報50000に加え、ホスト計算機10000において仮想マシンを一意に特定するIDとなるVM名を、ホスト計算機10000から受信する。【００８０】
図24にストレージ管理システム23210が生成するVMファイル要求レスポンス性能リスト23279の構成例を示す。ファイル要求レスポンス性能リスト23279は、図11に示すファイル要求レスポンス性能リスト23270に加えて、ホスト計算機10000において仮想マシンを一意に特定可能なIDとなるVM名欄23272を含む。【００８１】
ストレージ管理システム23210は、ユーザの操作による入力情報59000もしくは、ホスト計算機10000上のファイル管理システム12140から送信された入力情報59000を受信すると、受信した入力情報59000を、VMファイル要求レスポンス性能リスト23279のホスト名欄23271、VM名欄23272、ドライブ名欄23276、ディレクトリ名欄23277、ファイル名欄23278、要求レスポンス性能欄23273に登録する。また、ストレージ管理システム23210は、ゲストOS12110内のホストファイル管理システム12220からゲストOS12110で使用されているファイルの格納されているLBA Rangeを受信すると、VMファイル要求レスポンス性能リスト23279のLBA Range欄23275に情報を登録する。【００８２】
図25にホスト計算機10000内のゲストOS12110の具備するVM LBA Range情報テーブル12250の構成例を示す。VM LBA Range情報テーブル12250は、ファイルを一意に特定するための情報となるVM名欄12252、ドライブ名欄12253、ディレクトリ名欄12254、ファイル名欄12255と、当該ファイルの格納されている範囲を示すVM LBA Range欄12256を含む。【００８３】
ファイル管理システム12212は、仮想ボリューム12213にデータを書き込んだ際、VM名欄12252、ドライブ名欄12253、ディレクトリ名欄12254、ファイル名欄12255を、書き込まれたファイルを一意に特定する情報としてVM LBA Range情報テーブル12250に登録し、当該ファイルが格納されている論理ボリューム12213のLBAをLBA Range欄に登録する。【００８４】
図26にホスト計算機10000内のホストOSの具備するVMボリューム管理テーブル12260の構成例を示す。VMボリューム管理テーブル12260は、ホストOS内で仮想ボリューム12213を一意に特定可能なIDとなる仮想ボリューム名欄12261と、仮想ボリューム12213が割り当てられている仮想マシンを一意に特定可能なIDとなる割り当て仮想マシン名欄12263と、仮想ボリューム12213に割り当てられているドライブ名となる割り当てVMドライブ名欄12264と、仮想ボリューム12213でデータの格納されている領域を示すVM LBA Range欄12265と、VM LBA Range欄12265に登録されているLBAに対応する論理ボリューム12221のLBAの範囲を示すLBA Range欄12266を有する。【００８５】
ホストファイル管理システム12220は、ホスト計算機10000の管理者により仮想ボリュームが生成されると、VMボリューム管理テーブル12260の仮想ボリューム名欄12261に仮想ボリューム名を登録する。管理者によりゲストOSに仮想ボリュームが割り当てられると、ホストファイル管理システム12220は、仮想マシン名12263と割り当てVMドライブ名12264をVMボリューム管理テーブル12260に登録し、ゲストOS12200のファイル管理システム12212により、仮想ボリューム12213に書き込みがあると、仮想ボリューム12213の書き込まれた領域を示すVM LBA Rangeと、対応する論理ボリューム12221の領域を示すLBA RangeをVMボリューム管理テーブル12260に登録する。【００８６】
図27と図28に、ゲストOS12210にホストOS12200が割り当てた論理ボリューム12213でのファイルの実データの格納場所を示すLBAとホストOS12200にストレージ管理システム23210が割り当てた論理ボリューム12221での格納場所を示すLBAの対応をとる方法のフローチャートを示す。【００８７】
まず、ストレージ管理システム23210は、ホスト計算機10000から入力情報55000を受信すると、処理を開始する(F0500)。次にストレージ管理システム23210は、入力情報55000を解析し(F0510)、VMファイル要求レスポンス性能リスト23279に、ホスト名、VM名、ドライブ名、ディレクトリ名、ファイル名、および要求レスポンス性能を登録する(F0515)。【００８８】
次に、Loop7(F0520からF0600まで)の処理により、ストレージ管理システム23210は、VMファイル要求レスポンス性能リストに登録されているファイルに対し、当該ファイルの格納されているゲストOSに割り当てられている仮想ボリューム12213のLBAを基に、ホストOS12200にストレージ管理システム23210から割り当てられている論理ボリューム12221のLBAに変換し、LBA毎の要求レスポンス性能を策定する。【００８９】
具体的には、ストレージ管理システム23210は、VMファイル要求レスポンス性能リスト23279からファイルkを抽出し(F0520)、ホスト計算機10000内のゲストOS12210のファイル管理システム12212に対して、ファイルkの格納されているVM LBA Rangeの通知要求を送信する(F0530)。【００９０】
ストレージ管理システム23210からVM LBA Rangeの通知要求を受けたホスト計算機10000のファイル管理システム12212は、図２５に示すVM LBA Range情報テーブル12250からドライブ名、ディレクトリ名、ファイル名の一致するVM LBA Rangeを抽出し(H0020)、抽出したVM LBA Rangeをストレージ管理システム23210に通知する(H0030)。【００９１】
ストレージ管理システム23210は、ホスト計算機10000内のゲストOS12210のファイル管理システム12212からVM LBA Rangeを受信する(F0540)。【００９２】
次に、F0550からF0590までのLoop8の処理では、ホスト計算機10000内のゲストOS12210のファイル管理システム12212から受信したVM LBA Rangeに対応するLBA Rangeを、ホストOS12200のホストファイル管理システム12220から取得する。【００９３】
具体的には、ストレージ管理システム23210は、受信したVM LBA RangeからVM LBA(e)を抽出し(F0550)、ホストファイル管理システム12220にLBA Rangeの通知要求する(F0560)。【００９４】
ストレージ管理システム23210からLBA Rangeの通知要求を受けたホストファイル管理システム12220は、VMボリューム管理テーブル 12260からVM LBA(e)が割り当てられている割り当て仮想マシン名、割り当てVMドライブ名が一致するVM LBA Rangeに対応するLBA Rangeを抽出し(H0040)、抽出したLBA Rangeをストレージ管理システム23210に通知する(H0050)。【００９５】
次に、ストレージ管理システム23210は、ホストファイル管理システム12220からLBA Rangeを受信したときに、受信したLBA RangeをVMファイル要求レスポンス性能リスト23279に登録し(F0580)、未処理のVM LBA(e+1)をVM LBA (e)とし、ステップF0550からF0590までを実行する。【００９６】
ストレージ管理システム23210は、受信したVM LBA RangeにF0550からF0590を実行すると、Loop8を終了し、VMファイル要求レスポンス性能リスト23279に登録されている全てのファイルに対し、F0520からF0600を実行すると、Loop7も終了し、ステップF0047へ進む。以降、前記と同様のため、説明を省略する。【００９７】
本実施形態において、ホスト計算機10000がメインフレームの場合、ファイルとデータセット、ディレクトリをカタログと置き換えると同様に適応できる。【００９８】
本実施形態によれば、アクセス要求元から、ファイルをアクセス対象とするアクセス要求を受けたときに、受信したアクセス要求に、ファイルの要求レスポンス性能が付加されていたときには、ファイルの要求レスポンス性能とページ20041に割り当てられていたプールボリューム（第１プールボリューム）の応答時間とを比較し、比較したプールボリュームの応答時間が、要求応答時間を満たさないときには、プールボリュームの中から、その応答時間が、要求応答時間を満たすものを選択し、選択したプールボリューム、例えば、プールボリューム20070を新たなプールボリューム（第２プールボリューム）として、新たなプルーブボリューム20070をページ20041に割り当て、プールボリューム20050に割り当てられていたページ20041をプルーブボリューム20070に移行することができ、プルーブボリューム20070に割り当てられたページ20041に、ファイルの実データを格納することができる。【００９９】
また、本実施形態によれば、ファイルの要求レスポンス性能（要求応答時間７GB/s）と、ページ20041に割り当てられているプールボリューム20050に対応する記憶デバイスの応答時間（１GB/s）とを比較し、比較した記憶デバイスの応答時間が、要求応答時間を満たさないときには、プールボリューム20050から切り出されたページを、その応答時間が、要求応答時間を満たす記憶デバイス（レスポンス性能８GB/s）に対応したプールボリューム20070から切り出されたページに移行させ、ファイルの実データの格納先をプールボリューム20050からプールボリューム20070に変更するようにしているので、ファイルの実データを常にSSD27010に格納することができる。【０１００】
また、本実施形態によれば、ページ20041の実測I/O数だけでなく、ページ20041に格納された実データに係る要求レスポンス性能も、ページ移行の基準とすることで、要求レスポンス性能の付与されたファイル12121の実データを格納するページ20041を、要求レスポンス性能を満たすプールボリューム20070に常時配置できるため、ストレージ装置20000からのレスポンス遅延が原因となるアプリケーション12110の処理遅延や停止を防ぐことが可能となる。【０１０１】
実施形態2
実施形態2では、実施形態1のフローを少なくとも1回実施した後、図29に示す通り、ホスト計算機10000内のエージェント12900が、ホスト計算機10000内のファイル管理システム12140を監視し、アプリケーション12110の使用するファイル12121の格納LBAの変更を検知したときに、エージェント12900は、ストレージ管理システム23210に実施形態1のフローチャートF0020からの再実行を指示する。ストレージ管理システム23210は、要求レスポンス性能を付与されたファイル12121の実データを格納するページ20041を抽出し、抽出したページ20041の要求レスポンス性能を満たすプールボリューム（例えば、プールボリューム20050、20060、20070の中の一つのプールボリューム）を特定し、抽出したページ20041のデータを、要求レスポンス性能を満たすプールボリューム、例えば、プールボリューム20070に移行し、抽出したページ20041のデータが、抽出したページ20041の要求レスポンス性能を満たさないプールボリューム、例えば、プールボリューム20060へ移行するのを抑止する方法の詳細を説明する。【０１０２】
図30にホスト計算機10000の管理者がホストに割り当てられている論理ボリューム10010に対し、デフラグメンテーション(デフラグ)を行い、ファイル管理システム12140によってLBA Range情報テーブル12141のLBA Range欄12125が更新されたことをエージェント12900が検知し、エージェント12900が、ストレージ管理システム23210に実施形態1のフローチャートF0020からの再実行を指示し、ストレージ管理システム23210が、ファイル要求レスポンス性能リスト23270のLBA Range欄の値を削除する方法のフローチャートを示す。【０１０３】
まず、ホスト計算機10000の管理者が、ホスト計算機10000に提供されている論理ボリューム10010に対し、デフラグ（LBA Range欄12125の内容を変更する処理）を行い、ファイル管理システム12140によって、LBA Range情報テーブル12141のLBA Range欄12125が更新されると、フローが開始される(H1000)。【０１０４】
次に、エージェント12900は、LBA Range情報テーブル12141のLBA Range欄12125が更新されたこと検知すると (H1020)、ストレージ管理システム23210に、LBA Range情報テーブル12141のLBA Range欄12125が更新されたことを通知するとともに、実施形態1のフローチャートF0020からの再実行を指示する(H1020)。【０１０５】
ストレージ管理システム23210は、実施形態1のフローチャートF0020からの再実行の指示を受け取り(F1000)、図１１に示すファイル要求レスポンス性能リスト23270のLBA Range欄23275の値を削除し(F1010)、図１６に示すステップF0020へ進む。【０１０６】
即ち、ストレージ管理システム23210は、LBA Range情報テーブル12141のLBA Range欄12125が更新されたことに伴って、全てのファイルに関するLBA Rangeの通知要求をホスト計算機10000に再度送信し、ホスト計算機10000から、更新されたLBA Rangeを受信したときに、受信したLBA Rangeの値を、ファイル要求レスポンス性能リスト23270のLBA Range欄23275に登録する。以降、実施形態1と同様のため、説明は省略する。【０１０７】
また、実施形態2では、ホスト計算機10000の管理者が、ホスト計算機10000に割り当てられている論理ボリューム10010に対し、LBA Rangeの空き領域を整理するためのデフラグを行い、ファイル管理システムの具備するLBA Range情報テーブル12141のLBA Range欄12125の更新を行う前後のLBAの対応を示すLBA対応テーブル12910を生成することができる。この場合、生成したLBA対応テーブルを、ホスト計算機10000からストレージ管理システム23210に送信することで、ストレージ管理システム23210が、実施形態1のフローチャートのステップF0130からの処理を再実行することも可能である。【０１０８】
図31にホスト計算機10000のメモリ12000内の論理構成例を示す。実施形態1と同様に、メモリ12000には、OS12100やエージェント12900などが格納されている。OS12100では、ファイル管理システム12140と、アプリケーション12110、ファイルシステム12120が稼働する。OS12100のファイル管理システム12140は、ストレージ装置20000から提供された論理ボリューム10010を用いて、アプリケーション12110の使用するファイル12121を格納する。【０１０９】
また、ファイル管理システム12140は、アプリケーション12110が使用するファイル12121を格納しているLBAを管理するLBA Range情報テーブル12141を有する。また、メモリ12000が有するエージェント12900は、OS12100内のファイル管理システム12140を監視し、LBA Range情報テーブル12141の変更を検知したときに、LBA対応テーブル12910を生成する。LBA Range情報テーブル12141は、ホスト計算機10000の管理者によりデフラグが行われた際、LBA Range欄12125が更新される。 LBA対応テーブル12910については、図32で詳細に説明する。【０１１０】
図32にエージェント12900が生成するLBA対応テーブル12910の構成例を示す。LBA対応テーブル12910は、変更前LBA Range欄12911と、変更前LBA Range欄12913を含む。【０１１１】
ホスト計算機10000の管理者により論理ボリューム10010に対してデフラグが行われ、ファイル管理システム12140によってLBA Range情報テーブル12141のLBA Range欄12125が更新されたことをエージェント12900が検知すると、エージェント12900は、移動したデータの格納されていたLBAを、LBA対応テーブル12910の変更前LBA Range欄、当該LBAに格納されているデータが移動した先のLBAを、LBA対応テーブル12910の変更後LBA Range欄に登録する。【０１１２】
図33と図34に、エージェントが、論理ボリュームに格納されているデータの格納領域が変更されたことを検知し、生成したLBA Rangeの変更前後の対応をストレージ管理システム23210に通知することで、ストレージ管理システム23210が、送付されたLBA Rangeの対応に基づき、ページ毎の要求レスポンス性能を更新する方法のフローチャートを示す。【０１１３】
まず、ホスト計算機10000の管理者が、ホスト計算機10000に提供されている論理ボリューム10010に対し、デフラグを行い、ファイル管理システム12140によって、LBA Range情報テーブル12141のLBA Range欄12125が更新されたことをエージェント12900が検知することを契機に処理が開始される(H1000)。【０１１４】
次に、エージェント12900は、ホスト計算機10000のファイル管理システム12140によって変更されたLBA Range情報テーブル12141のLBA Range欄12125の変更前と変更後の値を取得し、取得したLBA Range欄12125の変更前と変更後の値をLBA対応テーブル12910に登録し(H1030)、LBA Range欄12125の変更前と変更後の値が登録されたLBA対応テーブル12910をストレージ管理システム23210に送信する(H1040)。【０１１５】
ストレージ管理システム23210は、LBA Range欄12125の変更前と変更後の値が新たに登録されたLBA対応テーブル12910を受信(F1050)すると、次に、Loop9(F1051からF1140まで)において、移動候補ページリスト23280を、受信したLBA対応テーブル12910に基づき更新する。【０１１６】
具体的には、ストレージ管理システム23210は、受信したLBA対応テーブル12910の変更前LBA Range欄12911からLBA(g)を抽出し(F1051)、抽出したLBA(g)が、図９に示すプール管理テーブル23230のLBA Range欄23238のStart欄23243の値とEnd欄23244の値の範囲に含まれるページIDを抽出する(F1052)。【０１１７】
次に、ストレージ管理システム23210は、図１４に示すページ移動可能プールボリュームリスト23240のページID欄23241の値と抽出したページIDが一致する要求レスポンス性能を抽出する(F1053)。【０１１８】
次に、ストレージ管理システム23210は、LBA対応テーブル12910からLBA(g)の変更後のLBAを抽出し(F1054)、抽出したLBAが、プール管理テーブル23230のLBA Range欄23238のStart欄23243の値とEnd欄23244の値の範囲に含まれるページIDを抽出し(F1055)、LBA(g)を格納するページの要求レスポンス性能を、LBA(g)の変更後のLBAの格納されるページの要求レスポンス性能とする(F1056)。【０１１９】
次に、ストレージ管理システム23210は、LBA(g)の変更後のLBAの格納されるページのページIDが移動候補ページリスト23280のページID欄23281に登録された値と一致するものがあるか調べる(F1100)。LBA(g)の変更後のLBAの格納されるページのページIDが、移動候補ページリスト23280のページID欄23281に登録された値と一致するものがない場合(F1100で“No”の場合)は、ストレージ管理システム23210は、LBA(g)の変更後のLBAの格納されるページのページIDとLBA(g)の変更後のLBAの格納されるページの要求レスポンス性能を、移動候補ページリスト23280のページID欄23281と要求レスポンス性能欄23283に登録する(F1120)。【０１２０】
また、LBA(g)の変更後のLBAの格納されるページのページIDが移動候補ページリスト23280のページID欄23281に登録された値と一致するものがある場合(F1100で“Yes”の場合)、ストレージ管理システム23210は、LBA(g)の変更後のLBAの格納されるページの要求レスポンス性能と移動候補ページリスト23280に登録されている要求レスポンス性能とを比較する(F1110)。【０１２１】
LBA(g)の変更後のLBAの格納されるページの要求レスポンス性能が登録されている当該ページの要求レスポンス性能より大きい場合(F1110で“Yes”の場合)、ストレージ管理システム23210は、移動候補ページリスト23280の当該ページの要求レスポンス性能欄23283をLBA(g)の変更後のLBAの格納されるページの要求レスポンス性能に書き換え(F1130)、ステップF1140に進む。【０１２２】
また、LBA(g)の変更後のLBAの格納されるページの要求レスポンス性能が登録されている要求レスポンス性能と同じもしくは小さい場合(F1110で“No”の場合)は、ストレージ管理システム23210は、ステップF1140に進み、ステップF1140では、LBA(g)をLoop9の処理済みとし、LBA対応テーブル12910に登録されているLoop9が未処理のLBAを選出し、それをLBA(g)としてF1051に戻り、LBA対応テーブル12910に登録された全てのファイルに関してLoop9の処理を実施し、F0130へ進む。以降、実施形態1と同様のため、説明は省略する。【０１２３】
本実施形態によれば、ホスト計算機10000内のエージェント12900が、ファイル12121を格納するLBAの変更を検知したときに、ストレージ管理システム23210が、実施形態1におけるステップF0020からステップF0340の処理を再実行することで、ファイル12121を格納するLBAが変更されても、要求レスポンス性能の付与されたページのデータを、要求レスポンス性能を満たすプールボリューム（第２プールボリューム）に移行させることができ、要求レスポンス性能の付与されたページのデータが、要求レスポンス性能を満たさないプールボリューム（第１プールボリューム）へ移行するのを抑制できる。【０１２４】
また、本実施形態によれば、ホスト計算機10000内のエージェント12900が、ファイル12121を格納するLBAの変更を検知したときに、エージェント12900からストレージ管理システム23210にLBA対応テーブル12910の情報を送信することで、ストレージ管理システム23210は、実施形態1におけるステップF0130からステップF0340の処理を再実行するで、ファイル12121を格納するLBAが変更されても、要求レスポンス性能の付与されたページのデータを、要求レスポンス性能を満たすプールボリューム（第２プールボリューム）に移行させることができ、要求レスポンス性能の付与されたページのデータが、要求レスポンス性能を満たさないプールボリューム（第１プールボリューム）へ移行するのを抑制できる。【０１２５】
実施形態3
実施形態3では、実施形態1のフローを少なくとも1回実施した後、図35に示す通り、ホスト計算機10000内のホスト計算機10000のファイル分類管理システム70000が、ファイル12121を移動したことをストレージ管理システム23210に通知し、通知を受けたストレージ管理システム23210は、移動されるファイル12121の要求レスポンス性能を抽出し、移動先のファイル12121の実データが格納されるページを、要求レスポンス性能を満たすプールボリュームに移動し、移動先のファイル12121の実データが格納されるページが、要求レスポンス性能を満たさないプールボリュームへ移動するのを抑止する方法の詳細を説明する。【０１２６】
ファイル分類管理システム70000は、管理者によって定められたファイル分類のためのプロパティ（例えば、アクセスの状況）とプロパティ値に基づきファイル12121にプロパティ値を設定し、プロパティに基づきファイル12121の移動を行う。【０１２７】
図36にホスト計算機10000のメモリ12000内の論理構成例を示す。メモリ12000には、OS12100が格納されている。OS12100では、ファイル管理システム12140と、ファイルシステム12120と、ファイル分類管理システム71000が稼働する。OS12100のファイル管理システム12140は、ストレージ装置20000から提供され、異なるドライブに割り当てられている複数の論理ボリューム10010にファイルを格納する。ファイル分類管理システム70000は、ファイル管理システム12140が管理するファイルに付与されたユーザの定義したプロパティ値に基づき、ファイルを移動し、ファイル移動情報テーブル71000を生成する。ファイル管理システム12140は、ファイルを格納しているLBAを管理するLBA Range情報テーブル12141を有する。ファイル移動情報テーブル71000の詳細については後述する。【０１２８】
図37にファイル分類管理システム70000が、ファイルの移動を実行した際に生成するファイル移動情報テーブル71000の構成例を示す。ファイル移動情報テーブル71000は、移動元ファイルを一意に特定可能な情報となる移動元ファイル情報欄71100と、移動先ファイルを一意に特定可能な情報となる移動先ファイル情報欄71200を含む。【０１２９】
移動元ファイル情報欄71100は、ホスト名欄71110、ドライブ名欄71120、ディレクトリ名欄71130、ファイル名欄71140から構成され、移動元ファイルに関するファイル情報として、ホスト名、ドライブ名、ディレクトリ名、ファイル名を含む。移動先ファイル情報欄71200は、ホスト名欄71210、ドライブ名欄71220、ディレクトリ名欄71230、ファイル名欄71240から構成され、移動先ファイルに関するファイル情報として、ホスト名、ドライブ名、ディレクトリ名、ファイル名を含む。【０１３０】
図38にファイル分類管理システム70000が、ファイルを移動したことをストレージ管理システム23210に通知し、ストレージ管理システム23210が、移動前のファイルの要求レスポンス性能を抽出し、移動後のファイルの要求レスポンス性能とする方法のフローチャートを示す。【０１３１】
まず、ファイル分類管理システム70000が、管理者によって定められたファイル分類のためのプロパティとプロパティ値に基づきファイルにプロパティ値を設定し、プロパティに基づきファイルの移動を行い、フローが開始する(H2000)。【０１３２】
次に、ファイル分類管理システム70000は、ファイル移動情報テーブル71000を生成し(H2010)、生成したファイル移動情報テーブル71000をストレージ管理システム23210に送信する(H2020)。【０１３３】
次に、ストレージ管理システム23210は、ステップF2001からF2004までのLoop10で、移動前のファイルの要求レスポンス性能を抽出し、移動後のファイルの要求レスポンス性能とする。【０１３４】
具体的には、ストレージ管理システム23210は、ホスト計算機10000のファイル分類管理システム70000からファイル移動情報テーブル71000を受信したときには、受信したファイル移動情報テーブル71000の移動元ファイル情報欄に登録されているファイルiを抽出する(F2001)。【０１３５】
次に、ストレージ管理システム23210は、図１１に示すファイル要求レスポンス性能リスト23270からファイルiのホスト名、ドライブ名、ディレクトリ名、ファイル名の一致するファイルの要求レスポンス性能を抽出し(F2002)、ファイル移動情報テーブル71000のファイルiの移動先ファイル情報欄に登録されているホスト名、ドライブ名、ディレクトリ名、ファイル名と、抽出した要求レスポンス性能をファイル要求レスポンス性能リスト23270に登録する(F2003)。【０１３６】
次に、ストレージ管理システム23210は、登録したファイルiをファイルaとして、ステップF0047からF0110を実行し(F2004)、ステップF2005に進み、ステップF2005では、ファイルiをLoop10の処理済みとし、ファイル移動情報テーブル71000に登録されたLoop10が未処理のファイルを選出し、それをファイルiとしてF2001に戻り、ファイル移動情報テーブル71000に登録された全てのファイルに関してLoop10の処理を実施する。【０１３７】
以降、ストレージ管理システム23210は、図１８に示すステップF0130から、図２０に示すステップF0340を実行することで、移動元ファイルに関する情報を移動先ファイルに関する情報として管理することができるので、要求レスポンス性能の付与されたページを、要求レスポンス性能を満たすプールボリュームに移動させることができ、要求レスポンス性能の付与されたページが、要求レスポンス性能を満たさないプールボリュームへ移動するのを抑制できる。【０１３８】
即ち、ストレージ管理システム23210は、アクセス要求で指定されたファイルに付与された要求レスポンス性能を保存し、アクセス要求元から、ファイルの移動が指示されたときには、既に存在するファイルを移動元のファイルとし、移動元のファイルの移動先となるファイルを移動先のファイルとして、保存している要求レスポンス性能を、移動元のファイルの要求レスポンス性能と移動先のファイルの要求レスポンス性能として管理し、かつ移動先のファイルの実データを格納するためのページを新たに設定して移動先のページとして管理し、移動先のページに、新たなプールボリューム（第３プールボリューム）を割り当て、移動元のファイルのデータを、複製先のページに移行することができる。【０１３９】
なお、ステップF0130からF0340については、前述したため、説明は省略する。【０１４０】
本実施形態によれば、移動先のファイル12121の実データが格納されるページを、要求レスポンス性能を満たすプールボリューム（第３プールボリューム）に移動させることができ、移動先のファイル12121の実データが格納されるページが、要求レスポンス性能を満たさないプールボリュームへ移動するのを抑止することができる。【０１４１】
なお、前記各実施形態において、複数のプールボリュームを格納するプールとして、複数のプールが存在する場合、各プールのプールボリュームも一括して管理することができる。
【符号の説明】
【０１４２】
10000：ホスト計算機
11000：プロセッサ
12000：メモリ 
12141：LBA Range情報テーブル
12130：アプリケーション管理システム
12140：ファイル管理システム
12250：VM LBA Range情報テーブル
12260：VMボリューム管理テーブル
12900：エージェント
12910：LBA対応テーブル
13000：ディスク
14000：通信I/F
15000：管理I/F
16000：内部ネットワーク
20000：ストレージ装置
21000：FEPK(Front End PacKage)
22000：BEPK(Back End PacKage)
23000：MPPK(Micro Processor PacKage)
23210：ストレージ管理システム
23220：仮想ボリューム管理テーブル
23230：プール管理テーブル
23240：ページ移動可能プールボリュームリスト
23250：プールボリューム管理テーブル
23270：ファイル要求レスポンス性能リスト
23279：VMファイル要求レスポンス性能リスト
23280：ページ移動候補リスト
23290：プールボリューム空き容量推定テーブル
24000：CMPK(Cache Memory PacKage)
25000：外接ストレージ装置
30000：IP/SAN
35000：SAN
36000：管理用ネットワーク
40000：管理端末
50000：入力情報
70000：ファイル分類管理システム
71000：ファイル移動情報テーブル
【図１】
2011117925.tif 000003
【図２】
2011117925.tif 000004
【図３】
2011117925.tif 000005
【図４】
2011117925.tif 000006
【図５】
2011117925.tif 000007
【図６】
2011117925.tif 000008
【図７】
2011117925.tif 000009
【図８】
2011117925.tif 000010
【図９】
2011117925.tif 000011
【図１０】
2011117925.tif 000012
【図１１】
2011117925.tif 000013
【図１２】
2011117925.tif 000014
【図１３】
2011117925.tif 000015
【図１４】
2011117925.tif 000016
【図１５】
2011117925.tif 000017
【図１６】
2011117925.tif 000018
【図１７】
2011117925.tif 000019
【図１８】
2011117925.tif 000020
【図１９】
2011117925.tif 000021
【図２０】
2011117925.tif 000022
【図２１】
2011117925.tif 000023
【図２２】
2011117925.tif 000024
【図２３】
2011117925.tif 000025
【図２４】
2011117925.tif 000026
【図２５】
2011117925.tif 000027
【図２６】
2011117925.tif 000028
【図２７】
2011117925.tif 000029
【図２８】
2011117925.tif 000030
【図２９】
2011117925.tif 000031
【図３０】
2011117925.tif 000032
【図３１】
2011117925.tif 000033
【図３２】
2011117925.tif 000034
【図３３】
2011117925.tif 000035
【図３４】
2011117925.tif 000036
【図３５】
2011117925.tif 000037
【図３６】
2011117925.tif 000038
【図３７】
2011117925.tif 000039
【図３８】
2011117925.tif 000040
【国際調査報告】
2011117925.tif 000041
2011117925.tif 000042