(57)【要約】【課題】アプリケーションを新たに追加する場合に適切な負荷分散を図る。【解決手段】記憶装置に対してデータ入出力を要求する複数のアプリケーションが動作している情報処理装置と、前記記憶装置を管理する管理ホストと、を備える情報処理システムにおいて、前記情報処理装置は、前記アプリケーションからのアクセス要求を監視し、前記アプリケーション毎に該アクセス要求に関する情報を取得するアクセス監視部を備え、前記管理ホストは、新たなアプリケーションの指定を受け付ける受付部と、前記アクセス監視部によって取得された情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出する予想負荷算出部と、前記予想負荷算出部によって算出された予想負荷データを出力する負荷データ出力部と、を備える。【選択図】  図２
2005149283.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置に対してデータ入出力を要求する複数のアプリケーションが動作している情報処理装置と、前記記憶装置を管理する管理ホストと、を備える情報処理システムにおいて、
前記記憶装置及び前記情報処理装置によって、前記アプリケーションからのアクセス要求を処理するアクセス処理部が構成され、
前記情報処理装置は、前記アプリケーションからのアクセス要求を監視し、前記アプリケーション毎に該アクセス要求に関する情報を取得するアクセス監視部を備え、
前記管理ホストは、
新たなアプリケーションの指定を受け付ける受付部と、
前記アクセス監視部によって取得された情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出する予想負荷算出部と、
前記予想負荷算出部によって算出された予想負荷データを出力する負荷データ出力部と、を備えることを特徴とする情報処理システム。
【請求項２】
前記管理ホストは、前記アクセス監視部によって取得された情報に基づいて現在の負荷データを算出する現在負荷算出部を備え、
前記予想負荷算出部は、前記現在負荷算出部によって算出された現在負荷データ及び前記アクセス監視部によって取得された情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記アクセス処理部は、前記アクセス要求の異なる段階を処理する第１アクセス処理部及び第２アクセス処理部を少なくとも含んで構成され、
前記予想負荷算出部は、新たなアプリケーションを追加した場合の、前記第１のアクセス処理部における予想負荷データと、前記第２のアクセス処理部における予想負荷データとの各々を算出することを特徴とする請求項１に記載の情報処理システム。
【請求項４】
前記第１アクセス処理部及び前記第２アクセス処理部の各々は、同様の機能を有する複数の構成を含んでおり、
前記第１アクセス処理部及び前記第２アクセス処理部の構成のうち、前記アクセス要求を処理可能な組み合わせに関する情報を記憶する構成情報記憶部を備え、
前記予想負荷算出部は、前記第１アクセス処理部及び前記第２アクセス処理部の構成のうち、前記可能な組み合わせについて予想負荷データを算出することを特徴とする請求項３に記載の情報処理システム。
【請求項５】
データベースを記憶する記憶装置と、前記記憶装置に対してデータ入出力を要求するアプリケーションが動作している複数の情報処理装置と、前記記憶装置を管理する管理ホストと、を備える情報処理システムにおいて、
前記情報処理装置は、
前記アプリケーションから前記データベースへのアクセス要求を処理するデータベース管理システムと、
前記アプリケーションから前記データベース管理システムに送られるアクセス要求を監視し、該アクセス要求に関する情報を取得するアクセス監視部と、
該アクセス要求に関する情報を収集し、前記アプリケーション毎に集計するアクセス情報出力部と、を備え、
前記管理ホストは、
新たなアプリケーションの指定を受け付ける受付部と、
前記アクセス監視部によって取得された情報に基づいて現在の負荷データを算出する現在負荷算出部と、
前記現在負荷算出部によって算出された現在負荷データ及び前記アクセス監視部によって取得された情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出する予想負荷算出部と、
前記予想負荷算出部によって算出された予想負荷データを出力する負荷データ出力部と、
前記予想負荷算出部によって算出された予想負荷データに基づいて前記記憶装置の構成の変更を設定する構成設定部と、を備えることを特徴とする情報処理システム。
【請求項６】
ファイルを記憶する記憶装置と、前記記憶装置に対してファイルに記憶されたデータの入出力を要求するアプリケーションが動作している複数の情報処理装置と、前記記憶装置を管理する管理ホストと、を備える情報処理システムにおいて、
前記情報処理装置は、
前記アプリケーションから前記ファイルへのアクセス要求を処理するファイルシステムと、
前記ファイルシステムから前記記憶装置に送られるアクセス要求を監視し、該アクセス要求に関する情報を取得するアクセス監視部と、
該アクセス要求に関する情報を収集し、前記アプリケーション毎に集計するアクセス情報出力部と、を備え、
前記管理ホストは、
新たなアプリケーションの指定を受け付ける受付部と、
前記アクセス監視部によって取得された情報に基づいて現在の負荷データを算出する現在負荷算出部と、
前記現在負荷算出部によって算出された現在負荷データ及び前記アクセス監視部によって取得された情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出する予想負荷算出部と、
前記予想負荷算出部によって算出された予想負荷データを出力する負荷データ出力部と、
前記予想負荷算出部によって算出された予想負荷データに基づいて前記記憶装置の構成の変更を設定する構成設定部と、を備えることを特徴とする情報処理システム。
【請求項７】
記憶装置に対してデータ入出力を要求する複数のアプリケーションが動作している情報処理装置と、前記記憶装置を管理する管理ホストと、を備える情報処理システムの制御方法において、
前記アプリケーションからのアクセス要求を監視し、前記アプリケーション毎に該アクセス要求に関する情報を取得し、
前記取得されたアクセス要求に関する情報に基づいて現在の負荷データを算出し、
新たなアプリケーションの指定を受け付け、
前記取得されたアクセス要求に関する情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出し、
前記算出された現在負荷データ及び前記取得されたアクセス要求に関する情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出し、
前記算出された予想負荷データを出力することを特徴とする情報処理システムの制御方法。
【請求項８】
前記予想負荷の算出においては、
新たなアプリケーションを追加した場合の予想負荷データを、前記アクセス要求を直列的に処理する第１アクセス処理部と第２アクセス処理部との各々に対して算出し、
さらに、前記第１アクセス処理部及び前記第２アクセス処理部の構成の可能な組み合わせについて予想負荷データを算出することを特徴とする請求項７に記載の情報処理システムの制御方法。
【請求項９】
記憶装置に対してデータ入出力を要求する複数のアプリケーションが動作している情報処理装置と、前記記憶装置を管理する管理ホストと、を備える情報処理システムにおいて負荷データを算出させるプログラムであって、
前記アプリケーションからのアクセス要求を監視し、前記アプリケーション毎に該アクセス要求に関する情報を取得する手段と、
前記取得されたアクセス要求に関する情報に基づいて現在の負荷データを算出する手段と、
新たなアプリケーションの指定を受け付ける手段と、
前記取得されたアクセス要求に関する情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出する手段と、
前記算出された現在負荷データ及び前記取得されたアクセス要求に関する情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出する手段と、
前記算出された予想負荷データを出力する手段として機能させることを特徴とするプログラム。
【請求項１０】
前記予想負荷を算出する手段は、
新たなアプリケーションを追加した場合の予想負荷データを、前記アクセス要求を直列的に処理する第１アクセス処理部と第２アクセス処理部との各々に対して算出し、
さらに、前記第１アクセス処理部及び前記第２アクセス処理部の構成の可能な組み合わせについて予想負荷データを算出することを特徴とする請求項９に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理システムの制御方法、及びプログラムに関し、特に、記憶装置の最適化に関する。
【背景技術】
【０００２】
従来、 複数の論理ボリュームに分割した論理ボリュームグループを有するボリューム割当てシステムにおいて、Ｉ／Ｏ構成情報管理手段より論理ボリューム構成情報を割当済論理ボリュームごとに取得し、割当済リストに割当済ボリュームを含む同一論理ボリュームグループ内の他の論理ボリュームを設定し、Ｉ／Ｏ構成情報管理手段から論理ボリューム構成情報を割当済論理ボリュームごとに取得して、割当て候補ボリューム群の中からＩ／Ｏ負荷が最も低い論理ボリュームを選択し同一ボリュームグループの他の論理ボリュームを割当て対象外とすることによって、ボリューム割当ての最適化を図り、アクセスレスポンスの向上、スループットの向上を図る技術が提案されている（例えば、特許文献１参照。）。
【０００３】
また、ポート制御部にホストからの要求を受けるだけでなく、他の記憶制御装置に対し、要求を発行できる機能を合わせ持つことによりオンライン／バックアップ同時処理を可能とする。また、複数ポート時は負荷に応じたポート選択やスケジューリングを行う事によりバックアップによるオンライン業務へのパフォーマンスの劣化の割合を低減する技術が提案されている（例えば、特許文献２参照。）。
【特許文献１】特開平１０−３２０１２６号公報
【特許文献１】特開２００２−２５９０６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前述した従来の技術では、記憶装置側から負荷情報を得ているので、記憶装置全体としての負荷の情報は取得できるが、記憶装置を使用するアプリケーション毎の負荷情報が分からなかった。また、アプリケーションからの記憶装置へのアクセスは時間の経過に伴って変化するものであるところ、特定の時間帯に特定のハードウェア資源にアクセスが集中することがあり、アクセスを最適に分散することは考慮されていなかった。そのため、ストレージリソース割当管理プログラムを用いてアプリケーションを指定して、ファイルシステムにおける新規ディレクトリを追加する際の新規ボリュームの割り当て時に、既存のアプリケーションの実行に影響を生じることがあった。
【０００５】
本発明は、アプリケーション毎に負荷を算出することによって、どのアプリケーションによるどのハードウェア資源の負荷が大きくなり、ボトルネックとなるかを知ることができ、アプリケーションを新たに追加する場合に適切な負荷分散を図ることを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、記憶装置に対してデータ入出力を要求する複数のアプリケーションが動作している情報処理装置と、前記記憶装置を管理する管理ホストと、を備える情報処理システムにおいて、前記記憶装置及び前記情報処理装置によって、前記アプリケーションからのアクセス要求を処理するアクセス処理部が構成され、前記情報処理装置は、前記アプリケーションからのアクセス要求を監視し、前記アプリケーション毎に該アクセス要求に関する情報を取得するアクセス監視部を備え、前記管理ホストは、新たなアプリケーションの指定を受け付ける受付部と、前記アクセス監視部によって取得された情報に基づいて、該新たなアプリケーションを追加した場合の予想負荷データを算出する予想負荷算出部と、前記予想負荷算出部によって算出された予想負荷データを出力する負荷データ出力部と、を備える。
【発明の効果】
【０００７】
本発明では、ファイルシステムにおける新規ディレクトリを追加する際の新規ボリュームの割り当て時に、既存のアプリケーションの実行に影響を生じることなく、適切な負荷分散を図ることができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態を図面を参照して説明する。
【０００９】
図１は、本実施の形態の情報処理システムの全体構成を示すブロック図である。
【００１０】
情報処理システムは、少なくとも１台の情報処理装置（ホストコンピュータ）１０、少なくとも１台の記憶装置（STORAGE）２０及び少なくとも１台の管理ホスト３０を含んで構成される。なお、図１には、３台の情報処理装置１０、１台の記憶装置２０及び１台の管理ホスト３０を備える情報処理システムを示したが、これ以外の台数の情報処理装置１０、記憶装置２０及び管理ホスト３０を備える情報処理システムであってもよい。
【００１１】
情報処理装置１０には、ネットワーク（例えば、ＳＡＮ：Storage Area Network）４０を介して、記憶装置２０が接続されている。情報処理装置１０と記憶装置２０との間のＳＡＮを介する通信は、ファイバチャネルプロトコル（Fibre Channel Protocol）に従って行われる。すなわち、情報処理装置１０から、記憶装置２０に対して、ブロック単位のデータアクセス要求がファイバチャネルプロトコルに従って送信される。
【００１２】
なお、ＳＡＮ４０には、情報処理装置１０と記憶装置２０とを接続するファイバチャネルスイッチ４５が設けられているが、ファイバチャネルスイッチ４５を設けることなく、情報処理装置１０と記憶装置２０とを直接接続してもよい。
【００１３】
また、情報処理装置１０は、ネットワーク（例えば、ＬＡＮ：Local Area Network）５０を介して、記憶装置２０及び管理ホスト３０と接続されている。このＬＡＮを介して、情報処理装置１０から管理ホスト３０に対してＡＰアクセス情報（アプリケーションからのストレージへのアクセスに関する情報）が通知される。また、記憶装置２０から管理ホスト３０に対して構成情報（記憶装置の構成に関する情報）が通知される。さらに、管理ホスト３０から情報処理装置１０及び記憶装置２０に対して設定情報（記憶装置の構成を変更するための情報）が通知される。
【００１４】
管理ホスト３０は、情報処理装置１０及び記憶装置２０と通信して、記憶装置２０の構成情報を管理し、記憶装置２０内のディスクコントローラ部等の動作状況（障害等）を監視し、ディスクコントローラ部等のデータアクセスの負荷情報やキャッシュメモリの使用率情報等を収集する。
【００１５】
図２は、本実施の形態の情報処理システムの情報処理装置（ホスト）１０を中心とした機能ブロック図である。
【００１６】
情報処理装置（ホスト）１０は、ＣＰＵ（Central Processing Unit）やメモリ等を備え、ＬＡＮによって接続されたクライアント端末からの指示によって、記憶装置２０に記憶されたデータにアクセスしながら、各種アプリケーションプログラム１１０を実行する。
【００１７】
ＤＢドライバ１２０は、アプリケーション１１０とデータベース管理システム（ＤＢＭＳ）１３０とのインターフェースとなるドライバである。すなわち、アプリケーション１１０は、ＤＢドライバ１２０へアクセスすることによって、ＤＢドライバ１２０がＤＢＭＳ１３０を起動して、データベースへアクセスする。また、ＤＢドライバ１２０は、ＤＢＭＳ１３０を介したストレージ（データベース）へのアクセスを監視するアクセス監視部として機能する。
【００１８】
データベース管理システム（ＤＢＭＳ：DataBase Manegment System）１３０は、データベースに関する一連の処理・管理を行うソフトウェアである。このＤＢＭＳ１３０によって、データベース自体はアプリケーション１１０と独立して動作して、複数のアプリケーションからの同時の要求に応えることができる。ＤＢＭＳ１３０は、後述するデバイスファイル１５０にアクセスすることによって、ディスク（データベース）へアクセスする。
【００１９】
アプリケーション１１０からストレージ１８０へのアクセスには、前述したＤＢＭＳを介するものの他、ファイルシステム１４０を介する方法がある。ファイルシステム１４０は、データの読み出し、書き込みをファイル単位で管理するソフトウェアで、階層状のディレクトリを構成することによって、ストレージ１８０のどこに何のファイルが記録されているのかを管理している。すなわち、アプリケーション１１０は、ファイルシステム１４０の情報に基づいてファイルが記憶されているディレクトリを特定して、後述するデバイスファイル１５０にアクセスすることによって、ファイルを読み出したり、書き込んだりする。
【００２０】
デバイスファイル１５０は、デバイスドライバを呼び出すためのファイルである。アプリケーション１１０がデバイスファイル１５０にアクセスすることによって、ＯＳのカーネルに組み込まれたデバイスドライバが起動されて、ストレージ１８０へのアクセスが実現されている。
【００２１】
アクセス監視部１６０は、デバイスファイル１５０から論理ユニット１７０へのアクセスを監視するもので、特に、ファイルシステム１４０を介したファイルのアクセスを監視している。すなわち、アクセス監視部１６０は、デバイスファイル１５０によって起動されたデバイスドライバによって発行されるコマンドを監視して、どのファイルにアクセスがされ、そのアクセスに関して入出力されるデータ量等の情報を取得する。
【００２２】
論理ユニット１７０は、アプリケーション１１０からのデータの入出力要求の対象となる単位で、ストレージ１８０を制御上の論理範囲によって分割して定義されている。
【００２３】
ストレージ（STORAGE）１８０は、情報処理装置１０に提供される記憶資源（物理デバイス）であって、主にハードディスク装置が用いられるが、その他、フレキシブルディスク装置や半導体記憶装置等、様々な記憶媒体を用いることができる。
【００２４】
ＴＡＢＬＥ１は、ＡＰ−ＳＴＯＲＡＧＥ対応情報が記憶されているテーブルであって、デバイスファイル名に対応させてファイルシステム名、アプリケーション名（AP Name）が記憶されている（図３）。よって、アクセス監視部１６０は、ストレージ１８０にアクセスされたデバイスファイル又はファイルシステムから、どのアプリケーション１１０がＩＯ要求を発行したのかを知ることができる。なお、このＴＡＢＬＥ１が保持される記憶媒体は、ストレージ１８０と異なるものであっても、同じものを用いてもよい。
【００２５】
アクセス情報出力部１（２００）は、アクセス監視部１６０（又は、１２０）が、ストレージ１８０へのアクセスを監視した結果から、ストレージ１８０にアクセスした時刻及びデータ量をバッファメモリ２１０に書き込み、ＴＡＢＬＥ２を生成する。
【００２６】
バッファメモリ２１０には、ＴＡＢＬＥ２が保持される。ＴＡＢＬＥ２は、アプリケーション１１０によってストレージ１８０に対するアクセスがされた時刻（Time）及び当該アクセスに係るデータ量（DataSize）を一時的に記憶する（図４）。すなわち、アプリケーション１１０がファイルシステム１４０を使用してストレージ１８０にアクセスをしたときは、ＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）を参照して、アクセス監視部１６０によってデバイスドライバが発行したコマンドから抽出されたアクセス対象のファイルが存在するディレクトリから、該アクセス要求を発行したアプリケーションを特定し、該アクセス要求の処理時刻及びデータ量をＴＡＢＬＥ２に記憶する。一方、アプリケーション１１０がＤＢＭＳ１３０を使用してストレージ１８０にアクセスをしたときは、ＤＢドライバ１２０によってアクセス要求を発行したアプリケーションを特定し（又は、ＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）を参照して、アクセス要求を発行したアプリケーションを特定し）、該アクセス要求の処理時刻及びデータ量をＴＡＢＬＥ２に記憶する。
【００２７】
アクセス情報出力部２（２２０）は、バッファメモリ２１０のＴＡＢＬＥ２から読み出したアクセス要求毎にアプリケーションが特定された記憶されたアクセス情報を集計して、アクセス情報テーブル（ＴＡＢＬＥ３）に記憶する。
【００２８】
ＴＡＢＬＥ３は、アクセス情報を記憶するテーブルであって、アプリケーション１１０が、ストレージ１８０にアクセスした時刻（Time）及びデータ量（DataSize）が記憶されている（図５）。なお、このＴＡＢＬＥ３が保持される記憶媒体は、ストレージ１８０やＴＡＢＬＥ１が保持される記憶媒体と異なるものであっても、同じものを用いてもよい。
【００２９】
アクセス情報通知部２４０は、ＴＡＢＬＥ３の形式に集計されたアクセス情報を管理プログラム２５０に送信する。
【００３０】
管理プログラム２５０は、管理ホスト３０で動作しているソフトウェアで記憶装置２０の構成を管理する。
【００３１】
図６は、本発明の実施の形態の予想負荷の算出の説明図である。
【００３２】
図６に示す状態では、複数の情報処理装置（ホスト）で一つ又は複数のアプリケーションが動作している。具体的には、ホスト１ではアプリケーション１（ＡＰ１）とアプリケーション２（ＡＰ２）とが動作しており、ホスト２ではアプリケーション２（ＡＰ２）が動作しており、ホスト３ではアプリケーション３（ＡＰ３）が動作している。
【００３３】
記憶装置２０は、複数のディスク装置をアレイグループＡＧ１、ＡＧ２に分けて管理している。このアレイグループは、複数の物理的なディスク装置を冗長性を持たせて一つの領域に見せているものであり、パリティグループ（ParityGroup）と呼ばれる場合もある。
【００３４】
図６に示す例では、ホスト１及びホスト２は、アレイグループ１（ＡＧ１）にアクセスしており、ホスト３は、アレイグループ２（ＡＧ２）にアクセスしている。
【００３５】
ここで、新規ホストを追加することによって、アプリケーション１（ＡＰ１）が追加されるとき、この新規ホストをアレイグループ１にアクセスさせるか、アレイグループ２にアクセスさせるかが問題となる。
【００３６】
新規ホストを追加した場合のアレイグループの予想負荷は、現在の負荷に新規ホストで動作するアプリケーション１の負荷を加えた値となる。すなわち、図７に示すように、アレイグループ１の現在の負荷はアプリケーション１による負荷とアプリケーション２による負荷の２倍とを加えたものとなるので、この現在の負荷にアプリケーション１による負荷を加えたものが、新規ホストをアレイグループ１に接続した場合の予想負荷となる。また、新規ホストをアレイグループ２に接続した場合には、図８に示すように、アレイグループ２の現在の負荷はアプリケーション３による負荷となるので、この現在の負荷にアプリケーション１による負荷を加えたものが予想負荷となる。
【００３７】
図９は、本発明の実施の形態の別の予想負荷の算出の説明図である。
【００３８】
記憶装置２０は、複数のディスク装置及び複数のファイバチャネルポートＦＣ１、ＦＣ２が設けられている。ホスト１及びホスト２は、ポート１（ＦＣ１）を介してディスク装置にアクセスしており、ホスト３は、ポート２（ＦＣ２）を介してディスク装置にアクセスしている。
【００３９】
ここで、アプリケーション１（ＡＰ１）が動作している新規ホストを追加するとき、この新規ホストをポート１を介してアクセスさせるか、ポート２を介してアクセスさせるかが問題となる。新規ホストを追加した場合のポートの予想負荷は、現在の負荷に新規ホストで動作するアプリケーション１の負荷を加えた値となる。
【００４０】
新規ホストを追加した場合のアレイグループの予想負荷は、現在の負荷に新規ホストで動作するアプリケーション１の負荷を加えた値となる。すなわち、図７に示すように、ポート１の現在の負荷はアプリケーション１による負荷とアプリケーション２による負荷の２倍とを加えたものとなるので、この現在の負荷にアプリケーション１による負荷を加えたものが、新規ホストをポート１に接続した場合の予想負荷となる。また、新規ホストをポート２に接続した場合には、図８に示すように、ポート２の現在の負荷はアプリケーション３による負荷となるので、この現在の負荷にアプリケーション１による負荷を加えたものが予想負荷となる。
【００４１】
なお、本実施の形態では、アレイグループ毎又はポート毎の現在の負荷状況及び予想負荷状況を算出する例を示すが、これに限らず、記憶装置２０に設けられるコントローラ（Host Bus Adaptor）毎、ストレージから読み出すデータを一時的に記憶するキャッシュメモリ毎に現在の負荷状況及び予想負荷状況を算出してもよい。
【００４２】
このように、ハードウェアの構成単位毎に現在の負荷状況及び予想負荷状況を算出することによって、ストレージアクセスにおけるハードウェアの障害箇所（ボトルネック）を発見して、新たに追加されるアプリケーションを負荷の低いハードウェアに割り当てて、適切な負荷分散を図ることができる。
【００４３】
図１０は、本発明の実施の形態のＤＢドライバ１２０によるデータ読み出し処理のフローチャートであり、アプリケーション１１０がＤＢＭＳ１３０を介してストレージ１８０からデータを読み出す場合の処理を示す。
【００４４】
まず、ＤＢドライバ１２０は、アプリケーション１１０から、ストレージ１８０からデータを読み出すアクセス要求（読出要求）を受信する（Ｓ１０１）。そして、ＤＢドライバ１２０は、ＤＢＭＳ１３０にアクセスして、該読出要求において指定されるデータが存在するディレクトリを特定する。そして、該ディレクトリにアクセスするためのデバイスファイル１５０を特定し、該特定されたデバイスファイル１５０からデータを読み出す（Ｓ１０２）。そして、処理が終了したアクセス要求に関して、該アクセス要求を発行したアプリケーション名及び該アクセス要求に関するデータ量をアクセス情報出力部１（２２０）に出力する（Ｓ１０３）。
【００４５】
図１１は、本発明の実施の形態のＤＢドライバ１２０によるデータ書き込み処理のフローチャートであり、アプリケーション１１０がＤＢＭＳ１３０を介してストレージ１８０からデータを読み出す処理を示す。
【００４６】
まず、ＤＢドライバ１２０は、アプリケーション１１０から、ストレージ１８０にデータを書き込むアクセス要求（書込要求）、及びストレージ１８０に書き込まれるデータを受信する（Ｓ１１１）。そして、ＤＢドライバ１２０は、該アクセス要求を発行したアプリケーション名及び該アクセス要求に関するデータ量をアクセス情報出力部１（２２０）に出力する（Ｓ１１２）。そして、ＤＢＭＳ１３０にアクセスして、該データを書き込むファイルが存在するディレクトリを特定する。そして、該ディレクトリにアクセスするためのデバイスファイル１５０を特定し、該特定されたデバイスファイル１５０にデータを書き込む（Ｓ１１３）。
【００４７】
図１２は、本発明の実施の形態のデータ読み出しの監視処理のフローチャートであり、アプリケーション１１０がファイルシステム１４０を介してストレージ１８０からデータを読み出す際の監視処理（アクセス監視処理１）を示す。
【００４８】
まず、アクセス監視部１６０は、デバイスファイル１５０からストレージ１８０に対するデータ読出要求（アクセス要求）を受信する（Ｓ１２１）。そして、該アクセス要求から読み出し対象のファイルが存在するディレクトリを抽出する。このディレクトリはファイルシステム１４０によって特定されている。
【００４９】
そして、ＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）を参照して、該アクセス要求に関係するディレクトリから、該アクセス要求を発行したアプリケーションを特定する（Ｓ１２２）。デバイスファイル１５０からの論理ユニット１７０へのアクセス（Ｓ１２３）が終了すると、該アクセス要求を発行したアプリケーション名及び該アクセス要求に関するデータ量をアクセス情報出力部１（２２０）に出力する（Ｓ１２４）。
【００５０】
図１３は、本発明の実施の形態のデータ書き込みの監視処理のフローチャートであり、アプリケーション１１０がファイルシステム１４０を介してストレージ１８０にデータを書き込む際の監視処理（アクセス監視処理２）を示す。
【００５１】
まず、アクセス監視部１６０は、デバイスファイル１５０からストレージ１８０に対するデータ書込要求（アクセス要求）を受信する（Ｓ１３１）。そして、該アクセス要求からデータを書き込むファイルが存在するディレクトリを抽出する。このディレクトリはファイルシステム１４０によって特定されている。
【００５２】
そして、ＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）を参照して、該アクセス要求に関係するディレクトリから、該アクセス要求を発行したアプリケーションを特定する（Ｓ１３２）。該アクセス要求を発行したアプリケーション名及び該アクセス要求に関するデータ量をアクセス情報出力部１（２２０）に出力して（Ｓ１３３）、デバイスファイル１５０からの論理ユニットへのアクセスを許可する（Ｓ１３４）。
【００５３】
図１０〜図１３に示すように、アプリケーション１１０によるストレージ１８０へのアクセスがＤＢＭＳによる場合も、ファイルシステムによる場合も、アクセス監視部１６０が監視することによって（又は、ＤＢドライバ１２０がアクセス監視部として機能することによって）、アプリケーション毎のアクセス情報を取得する。
【００５４】
図１４は、本発明の実施の形態のアクセス情報出力部１の処理のフローチャートである。
【００５５】
まず、ＤＢドライバ１２０又はアクセス監視部１６０からアクセス情報が送信されると、アクセス情報出力部１（２２０）はこれを受信する（Ｓ１４１）。そして、アクセス要求を発行したアプリケーション名及び該アクセス要求に関するデータ量の情報を抽出して、バッファメモリ２３０に出力する（Ｓ１４２）。このアクセス情報は、バッファメモリ２３０にＴＡＢＬＥ２の形式で書き込まれて記憶される。
【００５６】
図１５は、本発明の実施の形態のアクセス情報出力部２の処理のフローチャートである。
【００５７】
まず、アクセス情報出力部２（２４０）は、バッファメモリ２３０に記憶されたＴＡＢＬＥ２を参照する（Ｓ１５１）。そして、バッファメモリ２３０（ＴＡＢＬＥ２）にデータ（アクセス情報）が記憶されているか否かを判定する（Ｓ１５２）。この判定の結果、バッファメモリ２３０にデータが記憶されていなければ、一定時間休止して（Ｓ１５５）、ステップＳ１５１に戻る。
【００５８】
一方、バッファメモリ２３０にデータが記憶されていれば、バッファメモリ２３０に記憶されているデータを読み出す。そして、読み出したデータをアプリケーションプログラム毎に連続するアクセスをまとめて集計し、アプリケーションプログラム毎の総データ量を算出する（Ｓ１５３）。そして、アプリケーション毎にアクセス要求の処理時間及び該アクセス要求に関するデータ量をＴＡＢＬＥ３に書き込んで（Ｓ１５４）、バッファメモリに記憶されているデータを消去する。その後、一定時間休止して（Ｓ１５５）、ステップＳ１５１に戻る。
【００５９】
図１６は、本発明の実施の形態の管理プログラム２５０の機能ブロック図である。この管理プログラム２５０は管理ホスト３０で動作している。
【００６０】
構成情報３００は、記憶装置の構成に関する情報として（ＴＡＢＬＥ５、ＴＡＢＬＥ８、ＴＡＢＬＥ９）を記憶している。すなわち構成情報は、記憶装置、ポート、論理ユニット、論理ボリューム、アレイグループの対応を記憶している。
【００６１】
ストレージアクセス部３１０は、現在負荷算出部３３０からの要求に従って、現在の負荷状況の算出に必要な構成情報を読み出す。また、ストレージ構成設定部３２０からの要求に従って、構成情報を設定する。
【００６２】
ホストエージェントアクセス部３２０は、情報処理装置（ホスト）１０に記憶された情報（ＴＡＢＬＥ１、ＴＡＢＬＥ３、ＴＡＢＬＥ４）を取得して、現在負荷算出部３３０に送る。
【００６３】
現在負荷算出部３３０は、アクセス監視部１６０（又は、ＤＢドライバ１２０）によって監視されたストレージのアクセスの状況に基づいて、ストレージのアクセス状況を集計して、アレイグループ毎又はポート毎の現在の負荷状況を算出して、現在負荷データ（ＴＡＢＬＥ６）を生成する。
【００６４】
予想負荷算出部３４０は、現在負荷算出部３３０によって算出された現在の負荷状況に基づいて、アプリケーションを追加したときのストレージのアクセス状況を算出して、アレイグループ毎又はポート毎の負荷状況の予想値を算出して、予想負荷データ（ＴＡＢＬＥ７）を生成する。
【００６５】
負荷データ出力部３７０は、予想負荷算出部３４０によって算出された予想負荷を、ユーザが認識可能な態様で、例えばディスプレイ装置に表示する。
【００６６】
自動設定制御部３８０は、予想負荷算出部３４０によって算出された予想負荷に基づいて、アプリケーションを追加するのに最適なハードウェアを選択して、ストレージ構成設定部３９０に指示をする。
【００６７】
ストレージ構成設定部３９０は、ユーザからの指示又は自動設定制御部３８０からの指示に基づいて、アプリケーションの追加に伴って変化したストレージの構成の情報をストレージアクセス部３１０に送り、構成情報３００に設定する。また、変化したストレージの構成の情報をホストエージェントアクセス部３２０に送り、情報処理装置１０に記憶された情報を更新する。
【００６８】
図１７は、本発明の実施の形態の現在負荷算出処理１のフローチャートである。
【００６９】
まず、ホストエージェントアクセス部２７０は、ＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）、アクセス情報（ＴＡＢＬＥ３）及びストレージとの接続情報（ＴＡＢＬＥ４）を取得する（Ｓ１６１）。ＴＡＢＬＥ４は、図１８に示すように、デバイスファイルとストレージの情報の対応が記載されている。このストレージの情報としては、ストレージ名（ＳＡ１）、ポート名（ＣＬ１−Ａ）、及び論理ユニット番号（ＬＵＮ１）が、デバイスファイルに対応して記憶されている。
【００７０】
そして、現在負荷算出部３３０は、取得したＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）に記載されているデバイスファイル名を読み出す（Ｓ１６２）。そして、ＴＡＢＬＥ４を参照して読み出したデバイスファイルに対応するポート名を取得する（Ｓ１６３）。再び、ＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）を参照してデバイスファイルに対応するアプリケーション名を取得する（Ｓ１６４）。
【００７１】
そして、現在負荷算出部３３０は、ＴＡＢＬＥ３を参照して、アプリケーション名に対応するアクセス処理の時間、データ量を取得して（Ｓ１６５）、アクセス処理時間に対応してアプリケーション名、データ量及びポート（又は、論理ユニット）を記載した現在負荷データ（ＴＡＢＬＥ６）を生成する（Ｓ１６６）。
【００７２】
なお、現在負荷算出処理１では、アプリケーション毎にまとめられたアクセス処理時間及びデータ量を集計して、ポート毎のアクセス処理時間、データ量を算出したが、アクセス情報出力部１（２００）において、当該アクセスを処理するコントローラを特定し、ポート毎にまとめられたアクセス処理時間及びデータ量を用いて現在の負荷状況を算出してもよい。
【００７３】
この現在負荷算出処理１によって生成される現在負荷データ（ＴＡＢＬＥ６）の例を図１９、図２０に示す。
【００７４】
図１９は、アプリケーション名に対応するアクセス処理時間、データ量を、各アプリケーションによって使用されるポートに関連してまとめたものである。このＴＡＢＬＥ６−１（図１９）を用いることによって、各ポート毎に処理されたデータ量を、時刻を変数として集計することができ、ポート毎の現在の負荷状況を時間の関数として算出することができる。
【００７５】
図２０は、アプリケーション名に対応するアクセス処理時間、データ量を、各アプリケーションによって使用されるアレイグループに関連してまとめたものである。このＴＡＢＬＥ６−２（図２０）を用いることによって、各アレイグループ毎に処理されたデータ量を時刻を変数として集計することができ、アレイグループ毎の現在の負荷状況を時間の関数として算出することができる。
【００７６】
図２１は、本発明の実施の形態の現在負荷算出処理２のフローチャートである。
【００７７】
まず、ホストエージェントアクセス部２７０は、ＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）、アクセス情報（ＴＡＢＬＥ３）及びストレージとの接続情報（ＴＡＢＬＥ４）を取得する（Ｓ１７１）。続いて、ストレージアクセス部３１０は、構成情報３００からＴＡＢＬＥ５、ＴＡＢＬＥ８を取得する（Ｓ１７２）。構成情報３００のうちＴＡＢＬＥ５（図２２）には、ストレージ名（ＳＡ１）、ポート名（ＣＬ１−Ａ）、論理ユニット番号（１０）、及び論理ボリューム（ＬＤＥＶ１）が、アレイグループ毎に記憶されている。また、構成情報３００のうちＴＡＢＬＥ８（図２３）には、アレイグループ名と論理ボリュームとの対応が記憶されている。
【００７８】
そして、現在負荷算出部３３０は、取得したＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）に記載されているデバイスファイル名を読み出し（Ｓ１７３）、ＴＡＢＬＥ４を参照して読み出したデバイスファイルに対応するポート名を取得する（Ｓ１７４）。そして、ＴＡＢＬＥ５を参照して取得したポートに対応する論理ボリューム名を取得する（Ｓ１７５）。さらに、ＴＡＢＬＥ８を参照して取得した論理ボリュームに対応するアレイグループ名を取得する（Ｓ１７６）
そして、現在負荷算出部３３０は、ＴＡＢＬＥ３を参照して、アプリケーション名に対応するアクセス処理の時間、データ量を取得して（Ｓ１７７）、アクセス処理時間に対応してアプリケーション名、データ量及びポート（又は、論理ユニット）を記載した現在負荷データ（ＴＡＢＬＥ６）を生成する（Ｓ１７８）。この現在負荷算出処理２によって生成される現在負荷データ（ＴＡＢＬＥ６）は図１９、図２０に示したものと同じである。
【００７９】
図２４は、本発明の実施の形態の予想負荷算出処理のフローチャートである。
【００８０】
まず、ユーザは、ファイルシステムにおける新規ディレクトリの追加等に伴う新規ボリュームの割り当て時に、ストレージリソース割当管理プログラムを用いてアプリケーションを指定する。これにより新たなボリュームが割り当てられ、ファイルシステム１４０によって新たなディレクトリが追加される。ここで、ユーザがアプリケーションを指定することによって、どのアプリケーションのデータを用いて予想負荷を算出するかが決定される。なお、実際に使用されるアプリケーションと異なるアプリケーションをユーザが選択し、該選択されたアプリケーションを用いて予想負荷を算出するように構成することもできる。例えば、予想負荷を算出しようとするアプリケーションの負荷状況データがない場合に、負荷状況が近いことが推定されるアプリケーションの負荷データを用いて予想負荷を算出することができる。
【００８１】
予想負荷算出部３４０は、ユーザによって指定された追加するアプリケーションの名前を取得する（Ｓ１８１）。続いて、現在負荷データ（ＴＡＢＬＥ６）を取得する（Ｓ１８２）。
【００８２】
さらに、予想負荷算出部３４０は、現在負荷データ（ＴＡＢＬＥ６）から指定されたアプリケーションによって生じる負荷の情報を抽出する（Ｓ１８３）。そして、現在負荷データ（ＴＡＢＬＥ６）に、指定されたアプリケーションによって生じる負荷の情報を加算して、予想負荷データ（ＴＡＢＬＥ７）を生成する（Ｓ１８４）。
【００８３】
この予想負荷算出処理によって生成される予想負荷データ（ＴＡＢＬＥ７）の例を図２５、図２６に示す。
【００８４】
図２５は、アプリケーション名に対応するアクセス処理時間、データ量を、各アプリケーションによって使用されるポートに関連してまとめたものである。このＴＡＢＬＥ７−１（図２５）を用いることによって、各ポート毎に処理されるデータ量を、時刻を変数として集計することができ、ポート毎の負荷状況の予想値を算出することができる。
【００８５】
すなわち、アプリケーション１（ＡＰ１）が指定された場合には、アプリケーション１によって処理されたデータ量が、その処理時間に加算される。具体的には、図１９に示す現在負荷データ（ＴＡＢＬＥ６−１）の第１行がアプリケーション１（ＡＰ１）によって処理されたデータなので、このデータ量をもう一つ加算する（アプリケーション１によって処理されたデータ量を２倍する）ことによって、図２５に示す予想負荷データ（ＴＡＢＬＥ７−１）の第１行が生成される。
【００８６】
図２６は、アプリケーション名に対応するアクセス処理時間、データ量を、各アプリケーションによって使用されるアレイグループに関連してまとめたものである。このＴＡＢＬＥ７−２（図２６）を用いることによって、各アレイグループで処理されるデータ量を時刻を変数として集計することができ、アレイグループ毎の負荷状況の予想値を算出することができる。
【００８７】
図２７は、本発明の実施の形態のパス設定処理１のフローチャートである。
【００８８】
負荷データ出力部３８０は、予想負荷データ（ＴＡＢＬＥ７）を取得し、予想負荷を縦軸に時間を横軸にしたグラフ（図７、図８参照）を表示する（Ｓ１９１）。そして、ユーザに、追加するアプリケーションが使用するポートと、アレイグループの選択を促す。
【００８９】
ユーザからの指示は、ストレージ構成設定部３２０に入力される（Ｓ１９２）。ストレージ構成設定部３２０は、ホストエージェントアクセス部２７０及びストレージアクセス部３１０にアクセスして、ユーザが選択したポート及びアレイグループに関する設定をする（Ｓ１９３）。具体的には、ホスト・エージェントアクセス部２７０は、新たに追加されるアプリケーションに対応して新たなデバイスファイルが必要であったり、新たに追加されるアプリケーションが使用する新たなディレクトリが必要であれば、ＡＰ−ＳＴＯＲＡＧＥ対応情報（ＴＡＢＬＥ１）に新たなデバイスファイルやディレクトリを設定する。
追加アプリケーションが既に利用されているものであれば、デバイスファイル、ファイルシステム（ディレクトリ）を追加する必要がないのではないか。
【００９０】
図２８は、本発明の実施の形態のパス設定処理２のフローチャートであり、前述したパス設定処理１（図２７）と異なり、ハードウェア上の制限からポートとアレイグループの関係に制約が設けられている場合の処理を示す。
【００９１】
負荷データ出力部３８０は、予想負荷データ（ＴＡＢＬＥ７）を取得し、予想負荷を縦軸に時間を横軸にしたグラフ（図７、図８参照）を表示する（Ｓ２０１）。そして、ユーザに、追加するアプリケーションが使用するポートと、アレイグループの選択を促す。このユーザによる選択は、ストレージ構成設定部３２０に入力される（Ｓ２０２）。
【００９２】
その後、ストレージ構成設定部３２０は、構成情報３００のうちＴＡＢＬＥ９を取得する。ＴＡＢＬＥ９には、図２９に示すように、ポートとアレイグループの対応関係が規定されており、ＴＡＢＬＥ９に規定されているポートを介して対応するアレイグループにアクセスすることができる。
【００９３】
そして、ストレージ構成設定部３２０は、ＴＡＢＬＥ９を参照して、ユーザに選択されたポートとアレイグループのうち可能なポートとアレイグループの組み合わせを抽出する。負荷データ出力部３８０は、抽出されたポートとアレイグループの組み合わせを表示する。そして、追加するアプリケーションが使用するポートとアレイグループの組み合わせの選択を、ユーザに促す（Ｓ２０４）。このユーザによる選択は、ストレージ構成設定部３２０に入力される（Ｓ２０５）。
【００９４】
ストレージ構成設定部３２０は、ホスト・エージェントアクセス部２７０及びストレージアクセス部３１０にアクセスして、ユーザが選択したポート及びアレイグループに関する設定をする（Ｓ２０６）。
【図面の簡単な説明】
【００９５】
【図１】本発明の実施の形態の情報処理システムの全体構成を示すブロック図である。
【図２】本実施の形態の情報処理システムのホスト１０を中心とした機能ブロック図である。
【図３】本発明の実施の形態のＡＰ−ＳＴＯＲＡＧＥ対応情報テーブル（TABLE1）の説明図である。
【図４】本発明の実施の形態のバッファメモリ２１０に記憶されるアクセス情報（TABLE2）の説明図である。
【図５】本発明の実施の形態のアクセス情報テーブル（TABLE3）の説明図である。
【図６】本発明の実施の形態の予想負荷の算出の説明図である。
【図７】本発明の実施の形態のアレイグループ１（ポートＦＣ１）の予想負荷の説明図である。
【図８】本発明の実施の形態のアレイグループ２（ポートＦＣ２）の予想負荷の説明図である。
【図９】本発明の実施の形態の別の予想負荷の算出の説明図である。
【図１０】本発明の実施の形態のＤＢドライバによるデータ読み出し処理のフローチャートである。
【図１１】本発明の実施の形態のＤＢドライバによるデータ書き込み処理のフローチャートである。
【図１２】本発明の実施の形態のファイルシステムを用いたデータ読み出しの監視処理のフローチャートである。
【図１３】本発明の実施の形態のファイルシステムを用いたデータ書き込みの監視処理のフローチャートである。
【図１４】本発明の実施の形態のアクセス情報出力部１の処理のフローチャートである。
【図１５】本発明の実施の形態のアクセス情報出力部２の処理のフローチャートである。
【図１６】本発明の実施の形態の管理プログラム２５０の機能ブロック図である。
【図１７】本発明の実施の形態の現在負荷算出処理１のフローチャートである。
【図１８】本発明の実施の形態のストレージとの接続情報（TABLE4）の説明図である。
【図１９】本発明の実施の形態の現在負荷データ（TABLE6-1）の説明図である。
【図２０】本発明の実施の形態の現在負荷データ（TABLE6-2）の説明図である。
【図２１】本発明の実施の形態の現在負荷算出処理２のフローチャートである。
【図２２】本発明の実施の形態の構成情報（TABLE5）の説明図である。
【図２３】本発明の実施の形態の構成情報（TABLE8）の説明図である。
【図２４】本発明の実施の形態の予想負荷算出処理のフローチャートである。
【図２５】本発明の実施の形態の現在負荷データ（TABLE7-1）の説明図である。
【図２６】本発明の実施の形態の現在負荷データ（TABLE7-2）の説明図である。
【図２７】本発明の実施の形態のパス設定処理１のフローチャートである。
【図２８】本発明の実施の形態のパス設定処理２のフローチャートである。
【図２９】本発明の実施の形態の構成情報（TABLE9）の説明図である。
【符号の説明】
【００９６】
１０  情報処理装置（ホストコンピュータ）
２０  記憶装置
３０  管理ホスト
４０  ＳＡＮ（Storage Area Network）
４５  ファイバチャネルスイッチ
５０  ＬＡＮ（Local Area Network）
１１０  アプリケーション
１２０  ＤＢドライバ（アクセス監視部）
１３０  データベース管理システム（ＤＢＭＳ）
１４０  ファイルシステム
１５０  デバイスファイル
１６０  アクセス監視部
１７０  論理ユニット
１８０  ストレージ（STORAGE）
２００  アクセス情報出力部１
２１０  バッファメモリ（ＴＡＢＬＥ２）
２２０  アクセス情報出力部２
２４０  アクセス情報通知部
２５０  管理プログラム
３００  構成情報
３１０  ストレージアクセス部
３２０  ホストエージェントアクセス部
３４０  予想負荷算出部
３７０  負荷データ出力部
３８０  自動設定制御部
３９０  ストレージ構成設定部
ＴＡＢＬＥ１  ＡＰ−ＳＴＯＲＡＧＥ対応情報
ＴＡＢＬＥ２  バッファメモリ
ＴＡＢＬＥ３  アクセス情報
ＴＡＢＬＥ４  ストレージとの接続情報
ＴＡＢＬＥ５  構成情報
ＴＡＢＬＥ６  現在負荷データ
ＴＡＢＬＥ７  予想負荷データ
ＴＡＢＬＥ８  構成情報
ＴＡＢＬＥ９  構成情報
【図１】
2005149283.tif 000003
【図２】
2005149283.tif 000004
【図３】
2005149283.tif 000005
【図４】
2005149283.tif 000006
【図５】
2005149283.tif 000007
【図６】
2005149283.tif 000008
【図７】
2005149283.tif 000009
【図８】
2005149283.tif 000010
【図９】
2005149283.tif 000011
【図１０】
2005149283.tif 000012
【図１１】
2005149283.tif 000013
【図１２】
2005149283.tif 000014
【図１３】
2005149283.tif 000015
【図１４】
2005149283.tif 000016
【図１５】
2005149283.tif 000017
【図１６】
2005149283.tif 000018
【図１７】
2005149283.tif 000019
【図１８】
2005149283.tif 000020
【図１９】
2005149283.tif 000021
【図２０】
2005149283.tif 000022
【図２１】
2005149283.tif 000023
【図２２】
2005149283.tif 000024
【図２３】
2005149283.tif 000025
【図２４】
2005149283.tif 000026
【図２５】
2005149283.tif 000027
【図２６】
2005149283.tif 000028
【図２７】
2005149283.tif 000029
【図２８】
2005149283.tif 000030
【図２９】
2005149283.tif 000031