(57)【要約】【課題】負荷変動を予測可能なシステムの性能を効率的に最適化する。【解決手段】管理対象計算機１５００Ａ１，１５００Ａ２の記憶装置には、管理対象システムのプログラム１５１１Ａ〜１５１３Ａ、管理対象システムの実行環境を定める管理対象パラメータを外部からの命令に応じて動的に変更するパラメータ変更モジュール１５１１Ｃ〜１５１３Ｃが格納されている。一方、管理計算機１７００の記憶装置には、管理対象パラメータの変更スケジュールデータ１７１３、スケジュールデータに従ってパラメータ変更命令をパラメータ変更モジュール１５１１Ｃ〜１５１３Ｃに与える制御モジュールプログラム１７１１が格納されている。【選択図】  図１
2005043984.tif 000002
【特許請求の範囲】
【請求項１】
パラメータの設定値により定まる環境で実行される管理対象システムを管理する情報処理装置であって、
前記パラメータへの設定が予定された第１の設定値と、当該第１の設定値の設定が予定された期間を示す予定期間情報とを含むスケジュールデータが格納される記憶手段と、
前記スケジュールデータに含まれる前記予定期間情報が示す期間の始期が経過した場合に、前記スケジュールデータに含まれる前記第１の設定情報を含む、前記パラメータの設定変更を指示するための第一の命令を出力する演算処理手段と、
を有することを特徴とする情報処理装置。
【請求項２】
請求項１記載の情報処理装置であって、
前記演算処理手段は、
前記スケジュールデータに含まれる前記予定期間情報が示す期間の終期が経過した場合に、前記第１の設定値の設定前の設定値を前記パラメータに設定することを指示する第２の命令を出力する、
ことを特徴とする情報処理装置。
【請求項３】
請求項１または２記載の情報処理装置であって、
期間と当該期間に前記パラメータに設定される第２の設定値との指定とを受け付ける指定受付手段を有し、
前記演算処理手段は、前記指定受付手段が指定を受け付けた前記第２の設定値及び前記期間を前記第１の設定値及び前記予定期間情報として含むスケジュールデータを前記記憶手段に格納する、
ことを特徴とする情報処理装置。
【請求項４】
請求項１記載の情報処理装置であって、
前記管理システムの性能に関するシチュエーションの選択と、当該シチューションが発生する期間を示す期間情報との入力を受け付ける入力受付手段を有し、
前記記憶手段には、さらに、シチュエーションごとに、前記パラメータに設定される第３の設定値が格納され、
前記演算処理手段は、前記入力受付手段が選択を受け付けたシチューションに対応付けられた第３の設定値及び前記入力受付手段が受け付けた期間情報を前記第１の設定値及び前記予定期間情報として含むスケジュールデータを前記記憶手段に格納する、
ことを特徴とする情報処理装置。
【請求項５】
請求項１、２、３及び４のいずれか１項に記載の情報処理装置であって、
前記記憶手段には、前記パラメータの初期値が格納され、
前記演算処理手段は、前記管理対象システムからの要求に応じて、前記記憶手段から前記初期値を読みだし、当該初期値を、前記管理対象システムに与えるべく出力する、
ことを特徴とする情報処理装置。
【請求項６】
請求項１記載の情報処理装置と、
前記管理対象システムが実装された管理対象情報処理装置と、
を有し、
前記管理対象情報処理装置は、
前記情報処理装置からの前記第１の命令を前記管理対象システムの実行中に受け付けた場合、前記管理対象システムの実行中に、前記パラメータの現在の設定値を、前記パラメータ変更命令に含まれる前記第１の設定値に変更するパラメータ変更手段、
を有することを特徴とする情報処理システム。
【請求項７】
請求項１記載の情報処理装置と、
ファイルに記述された、前記パラメータの設定値により定まる環境で前記管理対象システムを起動する管理対象情報処理装置と、
を有し、
前記管理対象計算機は、
前記ファイルが格納された記憶手段と、
前記情報処理装置からの前記第１の命令を前記管理対象システムの実行中に受け付けた場合、当該パラメータ変更命令に含まれる前記第１の設定値で、前記ファイルに記述された、前記パラメータの設定値を書きかえて、前記管理対象システムを再起動するパラメータ変更手段と、
を有することを特徴とする情報処理システム。
【請求項８】
請求項６または７記載の情報処理システムであって、
前記管理対象システムには、計算機のハードウェア、及び、計算機が実行するプログラムのうちの少なくとも一方が含まれることを特徴とする運用管理システム。
【請求項９】
パラメータの設定値により定まる環境で管理対象システムを実行する情報処理装置であって、
前記パラメータに新たに設定するための第１の設定値を含む、前記パラメータの設定変更を指示するための第１の命令を、前記管理対象システムの実行中に受け付けた場合、前記パラメータの現在の設定値を、前記管理対象システムの実行中に、前記第１の命令に含まれる前記第１の設定値に動的に変更するパラメータ変更手段を有することを特徴とする情報処理装置。
【請求項１０】
パラメータの設定値により定まる環境で実行される管理対象システムの管理を情報処理装置に実行させるシステム管理方法であって、
前記パラメータへの設定が予定された第１の設定値と、当該第１の設定値の設定が予定された期間を示す予定期間情報とを含むスケジュールデータがあらかじめ記憶装置に格納され、
当該システム管理方法は、
前記情報処理装置が、前記スケジュールデータに含まれる前記予定期間情報が示す期間の始期が経過した場合に、前記スケジュールデータに含まれる前記第１の設定値を前記記憶装置から取りだし、当該第１の設定値を含む、前記パラメータの設定変更を指示するための第１の命令を出力する処理を、
を含むことを特徴とするシステム管理方法。
【請求項１１】
請求項１０記載のシステム管理方法であって、
前記スケジュールデータに含まれる前記予定期間情報が示す期間の終期が経過した場合に、前記情報処理装置が、前記第１の設定値の設定前の設定値を前記パラメータに設定することを指示する第２の命令を出力する処理を含むことを特徴とするシステム管理方法。
【請求項１２】
請求項１０または１１記載のシステム管理方法であって、
前記記憶装置にはさらに前記パラメータの初期値が格納され、
当該システム管理方法は、
前記情報処理装置が、前記管理対象システムからの要求に応じて、前記記憶装置から前記初期値を読みだし、当該初期値を、前記管理対象システムに与えるべく出力する処理を含むことを特徴とするシステム管理方法。
【請求項１３】
パラメータの設定値により定まる環境で実行される管理対象システムの管理を情報処理装置に実行させるプログラムであって、
前記パラメータへの設定が予定された第１の設定値と、当該第１の設定値の設定が予定された期間を示す予定期間情報とを含むスケジュールデータがあらかじめ記憶装置に格納されている場合に、
前記情報処理装置に、
前記スケジュールデータに含まれる前記予定期間情報が示す期間の始期が経過した場合に、前記スケジュールデータに含まれる前記第１の設定値を含む、前記パラメータの設定変更を指示する第１の命令を出力する演算処理手段を実現することを特徴とするプログラム。
【請求項１４】
請求項１３記載のプログラムであって、
前記スケジュールデータに含まれる前記予定期間情報が示す期間の終期が経過した場合に、前記演算処理手段が、前記第１の設定値の設定前の設定値を前記パラメータに設定することを指示する第２の命令を出力する、
ことを特徴とするプログラム。
【請求項１５】
請求項１２または１３記載のプログラムであって、
期間と当該期間に前記パラメータに設定するための第２の設定値との指定を受け付ける指定受付手段を前記情報処理装置に実現させ、
前記演算処理手段に、
前記指定受付手段が指定を受け付けた前記第２の設定値及び前記期間を前記第１の設定値及び前記予定期間情報として含むスケジュールデータを前記記憶装置に格納する処理を実行させる、
ことを特徴とするプログラム。
【請求項１６】
請求項１３記載のプログラムであって、
あらかじめ定められたシチュエーションにおいて前記パラメータに設定される第３の設定値が前記記憶装置に格納され、
当該プログラムは、
シチュエーションの選択と当該シチューションが発生する期間を示す期間情報の入力とを受け付ける入力受付手段を前記情報処理装置に実現させ、
前記演算処理手段に、
前記入力受付手段が選択を受け付けたシチューションに対応付けられた第３の設定値を前記記憶装置から読み出す処理と、
前記読み出した第３の設定値及び前記入力受付手段が入力を受け付けた期間情報を前記第１の設定値及び前記予定期間情報として含むスケジュールデータを前記記憶装置に格納する処理と、
を実行させることを特徴とするプログラム。
【請求項１７】
請求項１３、１４、１５及び１６のいずれか１項に記載のプログラムであって、
前記記憶装置に前記パラメータの初期値が格納され、
当該プログラムは、
前記管理対象システムからの要求に応じて、前記記憶装置から前記初期値を読みださせ、当該初期値を、前記管理対象システムに与えるべく出力する処理を前記演算処理手段に実行させる、
ことを特徴とするプログラム。
【請求項１８】
パラメータの設定値により定まる環境で管理対象システムを実行する情報処理装置により実行されるプログラムであって、
前記情報処理装置に、
前記パラメータに新たに設定するための第１の設定値を含む、前記パラメータの設定変更を指示するための第１の命令を前記管理対象システムの実行中に受け付けた場合に、前記パラメータの現在のせって値を、前記管理対象システムの実行中に、前記第１の命令に含まれる前記第１の設定値に動的に変更するパラメータ変更手段を実現させることを特徴とするプログラム。
【請求項１９】
請求項１３、１４、１５、１６、１７及び１８のいずれか１項に記載のプログラムが格納されたことを特徴とする、機械読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、システムの性能に影響するパラメータの設定値を、あらかじめ定めたスケジュールにしたがって管理する技術に関する。
【０００２】
【従来の技術】
コンピュータシステムのシステム性能を最適化するための技術が特許文献１に記載されている。この技術によれば、コンピュータシステムのパラメータ設定値を徐々に増加させながらシステム性能の測定が行われ、最終的に、最適なシステム性能を与える値がコンピュータシステムのパラメータに設定される。コンピュータシステムのシステム性能の尺度の例として、トランザクションベースシステムについてはレスポンスタイム、バッチ式作業負荷を実行するシステムについてはスループットが挙げられている。
【０００３】
また、非特許文献１には、過去のデータからベースラインを定め、システムの異常状態を監視するための変動型の閾値を、そのベースラインに基づき定める運用管理ツールが記載されている。
【特許文献１】
特開２００２−１１６９３０号公報
【非特許文献１】
”ＮＥＴｅＸＰＥＲＴ  Ａｓｓｕｒａｎｃｅ”、［ｏｎｌｉｎｅ］、２００２年、アジレント・テクノロジー（Ａｇｉｌｅｍｔ  Ｔｅｃｈｎｏｌｏｇｙｓ）、［２００３年１月１０日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｃｐ．ｌｉｔｅｒａｔｕｒｅ．ａｇｌｉｍｅｎｔ．ｄｏｍ／ｌｉｔｗｅｂ／ｐｄｆ／５９８８−７５４３ＥＮ．ｐｄｆ＞
【０００４】
【発明が解決しようとする課題】
ところが、特許文献１記載の技術は、最適なシステム性能を与える値をパラメータに設定するためには、管理対象システムのシステム性能を監視している必要がある。
【０００５】
一方、非特許文献１記載の運用管理ツールは、管理対象システムの性能の異常状態を検知するものであり、管理対象システムの性能を最適化するものではない。
【０００６】
そこで、本発明は、負荷変動を予測可能な管理対象システムの性能を効率的に最適化することを目的とする。
【０００７】
【課題を解決するための手段】
本発明は、
パラメータの設定値により定まる環境で実行される管理対象システムを管理する情報処理装置において、上記課題を解決するために、
前記パラメータへの設定が予定された第１の設定値と、当該第１の設定値が前記パラメータに設定される期間を示す予定期間情報とを含むスケジュールデータが格納される記憶手段と、
前記スケジュールデータに含まれる前記予定期間情報が示す期間の始期が経過した場合に、前記スケジュールデータに含まれる前記第１の設定情報を含む、前記パラメータの設定変更を指示するための第一の命令を出力する演算処理手段と、
を設ける。
【０００８】
【発明の実施の形態】
以下、添付の図面を参照しながら、本発明に係る実施の一形態について説明する。
【０００９】
まず、本実施の形態に係る計算機システムの全体構成について説明する。
【００１０】
図１は、本実施の形態に係る計算機システムの全体構成の概略を示した図である。
【００１１】
本実施の形態に係る計算機システムは、複数（ここでは、３台）の情報処理装置１５００Ａ１，１５００Ａ２，１７００、情報処理装置１５００Ａ１，１５００Ａ２，１７００を相互に接続するＬＡＮ（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）等のネットワーク１２００、を有している。ここでは、情報処理装置を３台としているが、必ずしも３台である必要はない。このことは、以下に挙げる他の計算機システムについても同様である。
【００１２】
複数の情報処理装置１５００Ａ１，１５００Ａ２，１７００のうち、少なくとも１台の情報処理装置１７００は、管理対象となるシステム（管理対象システム）の実行環境を定めるパラメータのうち、管理対象システムの性能評価基準として定められた値（ここでは、スループット、応答時間）に影響を与える動的変更可能なパラメータ（管理対象パラメータ）の設定値を、あらかじめ登録されたスケジュールにしたがって管理する情報処理装置（管理計算機）である。管理対象パラメータとなり得るパラメータとしては、例えば、Ｗｅｂサーバのキュー数及び同時実行数、Ｗｅｂアプリケーションサーバの最大スレッド数及び使用可能な最大メモリ量、ＪＤＢＣドライバのコネクションプール数、ストレージシステムのキャッシュサイズ及びキャッシュモデル、等が挙げられる。
【００１３】
また、他の２台の情報処理装置１５００Ａ１，１５００Ａ２は、プログラムの実行により管理対象システムとして機能する情報処理装置（管理対象計算機）である。ここでは、管理対象計算機を２台としているが、管理対象計算機の台数には特に限定はない。このことは、以下に挙げる他の計算機システムについても同様である。
【００１４】
つぎに、これら各計算機１５００Ａ１，１５００Ａ２，１７００の詳細について説明する。
【００１５】
図１に示したように、管理計算機１７００は、プログラム等が格納された記憶媒体（ＣＤ−ＲＯＭ等）が装着されるドライブ（不図示）、ネットワーク１２００を介した通信を制御する通信装置１７６０、各種情報（プログラム、データ）が格納された記憶装置１７１０、メモリ１７３０、記憶装置１７１０からメモリ１７３０にロードされたプログラムを実行するＣＰＵ１７２０、これらを相互に接続するバス、等を有している。さらに、管理計算機１７００には、各種情報を表示する表示装置１７４０、プログラムへの入力データ等を管理者から受け付ける入力装置（キーボード、マウス等）１７５０、等が接続されている。
【００１６】
記憶装置１７１０内の情報群には、管理対象パラメータの変更スケジュールを表すスケジュールデータが登録されるスケジュールデータテーブル１７１３、スケジュールデータテーブル１７１３へのスケジュールデータの登録作業を支援するスケジュール設定モジュールプログラム１７１２、スケジュールデータテーブル１７１３のスケジュールデータにしたがってパラメータ変更命令を管理対象計算機に送信する制御モジュールプログラム１７１１、が格納されている。ここで挙げたプログラム１７１２，１７１１は、１枚または別々の記録媒体（ＣＤ−ＲＯＭ等）に記録されて配布され、ドライブを介して記憶装置にインストールされるものであってもよいし、ネットワーク１２００を介して他の計算機から配信され、記憶装置にインストールされるものであってもよい。このことは、以下に挙げる他の計算機システムの管理計算機の記憶装置に格納されたプログラムについても同様である。
【００１７】
図２に、Ｗｅｂサーバ、Ｗｅｂアプリケーションサーバ及びＪＤＢＣドライバを管理対象システムとした場合のスケジュールデータテーブル１７１３のデータ構造を示す。
【００１８】
スケジュールデータテーブル１７１３の各ロー１７１３ａ１〜１７１３ａｎには、スケジュールデータが格納される。各スケジュールデータには、スケジュールＩＤ１７１３ｂ５、各管理対象システムの管理対象パラメータへの適用が予定されたパラメータ値１７１３ｂ２〜１７１３ｂ４、パラメータ値１７１３ｂ２〜１７１３ｂ４の適用が予定された期間（予定期間）を示す予定期間情報（日付、開始時刻及び終了時刻）１７１３ｂ１、が含まれている。
【００１９】
このスケジュールテーブル１７１３のカラムのうち、第１カラムには、各スケジュールデータのスケジュールＩＤが格納され、カラム名１７１３ｃとして「ＩＤ」が付されている。また、第２カラムには、各スケジュールデータの予定期間情報１７１３ｂ１が格納され、カラム名１７１３ｃとして「日時」が付されている。その他のカラムには、同じ管理対象システムの同じ管理対象パラメータのパラメータ値が整理され、カラム名１７１３ｃとして、管理対象システムのＩＤ及びパラメータ名が付けられている。
【００２０】
このスケジュールテーブル１７１３に登録されるスケジュールデータには、管理対象パラメータへの適用が予定されたパラメータ値１７１３ｂ２〜１７１３ｂ４が含まれているが、図５に示すように、パラメータ値１７１３ｂ２〜１７１３ｂ４の代わりに、管理対象パラメータの初期値に対する増分値１７１３ｂ２’〜１７１３ｂ４’をスケジュールデータに含めてもよい。
【００２１】
なお、図２及び図５のスケジュールデータテーブルには、Ｗｅｂサーバの管理対象パラメータであるキュー数と同時実行数、Ｗｅｂアプリケーションサーバの管理対象パラメータである最大スレッド数及び最大メモリ量、ＪＤＢＣドライバの管理対象パラメータであるコネクションプール数が登録されているが、実用に際して、いずれかのパラメータを管理対象パラメータから除いてもよいし、他のパラメータを管理対象パラメータとして加えてもよい。また、管理対象パラメータは、管理対象システムの種類に応じて適宜変更することが可能である。例えば、ストレージシステムを管理対象システムとした場合には、キャッシュサイズ、キャッシュモデル及びアクセスパスをを管理対象パラメータとすればよい。このことは、以下に挙げる他の態様に係る計算機システムについても同様である。
【００２２】
このようなスケジュールデータテーブル１７１３に対するデータ登録作業を支援するため、スケジュール設定モジュールプログラム１７１２は、表示装置１７４０にスケジュール設定用ＧＵＩを表示する。このスケジュール設定用ＧＵＩ上のレイアウト例を図３に示す。
【００２３】
図３に示すように、このスケジュール設定用ＧＵＩ上には、予定期間情報の入力を受け付けるフィールド群３１００、管理対象パラメータごとにそれぞれ予定期間内に適用されるパラメータ値（または、パラメータ初期値に対する増分値）の入力を受け付けるフィールド群３６００と、スケジュール追加ボタン３３００と、が配置されている。管理者は、予定期間情報設定フィールド群３１００において、ラジオボタン３１１０のいずれか１つの選択により予定期間の繰り返し周期を設定し、フィールド３１２０のいずれかに日付、フィールド３１３０に予定期間の開始時刻及び終了時刻を設定することができる。パラメータ設定フィールド群３６００は、管理対象システムのＩＤの選択を受け付けるフィールド３４００と、パラメータ値設定フィールド３２００とからなる。なお、図３には、管理対象システムのＩＤ選択を受け付けるフィールドが３つの場合を示したが、管理対象追加ボタン３５００の押下によって、管理対象システムのＩＤの選択を受け付けるフィールド３４００が１つ追加される。そこでシステムＩＤを１つ選択すると、そのシステムＩＤに対応する管理対象システムに設定すべきパラメータ値設定フィールド３２００が新たに表示される。このため、管理対象システムの数は３つに限定されない。
【００２４】
このスケジュール設定用ＧＵＩ上において、管理者が、予定期間設定フィールド群３１００及びパラメータ値設定フィールド群３６００を設定した後、スケジュール追加ボタン３３００を押下すると、スケジュール設定モジュールプログラム１７１２は、ラジオボタン３１１０、各フィールド３１２０，３１３０の値、および、各システムごとにフィールド３４００，３２００に入力されたデータに基づきスケジュールデータを生成し、それをテーブルにスケジュールデータを登録する。具体的には、スケジュールデータテーブルで未使用のスケジュールＩＤと、フィールド３１００で指定された予定期間情報と、フィールド３４００の入力データ（システムＩＤ）に対応付けられたフィールド群３２００の入力データ（パラメータ値、または、パラメータ初期値に対する増分値）とを含むスケジュールデータを、スケジュールテーブルの新たなローとして追加する。
【００２５】
管理者は、負荷変動を予測可能な管理対象システムについて、管理対象パラメータの変更を要する期間及びその期間に適用されることが好ましいパラメータ値を含むスケジュールデータを、このスケジュール設定用ＧＵＩ及び入力装置１７５０を利用して簡単に登録することができる。例えば、人事管理システムにおいては、更新系の業務処理が日常的にほぼ一定の頻度で発生し、参照系の業務処理が給料日の直後等の特定期間に集中的に発生する。このようなシステムの管理対象パラメータには、日常的には、更新系の業務処理のレスポンスを優先したパラメータ値が設定され、特定期間には、参照系の業務処理のスループットを優先したパラメータ値が設定されることが、業務効率向上の点から望ましい。そこで、管理者は、このような人事システムについては、参照系の業務処理の集中が予測される特定期間内にだけ、管理対象パラメータのパラメータ値を、特定参照系の業務処理のスループットを優先したパラメータ値に変更するスケジュールを、このスケジュール設定用ＧＵＩを利用して簡単に登録することができる。
【００２６】
なお、ここでは、スケジュールデータテーブルへのデータ登録作業を支援するためのスケジュール設定用ＧＵＩだけを挙げたが、スケジュールデータテーブル１７１３からのデータ削除作業、スケジュールデータテーブル１７１３のデータ更新作業を支援するＧＵＩを設けてもよい。このことは、以下に挙げる他の態様に係る計算機システムについても同様である。
【００２７】
一方、各管理対象計算機１５００Ａ１，１５００Ａ２は、図１に示したように、いずれも、プログラム等が格納された記憶媒体（ＣＤ−ＲＯＭ等）が装着されるドライブ（不図示）、ネットワーク１２００を介した通信を制御する通信装置１５６０、各種情報（プログラム、データ）が格納された記憶装置１５１０、メモリ１５３０、記憶装置１５１０からメモリ１５３０にロードされたプログラムを実行するＣＰＵ１５２０、これらを相互に接続するバス、等を有している。さらに、各管理対象計算機１５００Ａ１，１５００Ａ２には、プログラムへの入力データ等をユーザから受け付ける入力装置（キーボード、マウス等）１５５０、プログラムの実行結果等の各種情報を表示する表示装置１５４０、が接続されている。
【００２８】
そして、各管理対象計算機１５００Ａ１，１５００Ａ２の記憶装置１５１０内の情報群には、管理対象システムを実現するための管理対象プログラムが１つ以上含まれている。さらに、各管理対象計算機１５００Ａ１，１５００Ａ２の記憶装置１５１０内の情報群には、管理対象プログラムごとに、管理対象プログラムの起動時にその実行環境を定めるパラメータの初期値セットが記述されたパラメータ設定ファイル、および、管理計算機１７００上の制御モジュールプログラム１７１１からのパラメータ変更命令に応じて管理対象パラメータの設定値を管理対象プログラムの実行中に動的に変更するパラメータ変更モジュールプログラムが含まれている。
【００２９】
ここでは、一方の管理対象計算機１５００Ａ１の記憶装置１５１０には、２つの管理対象プログラム１５１１Ａ，１５１２Ａ、各管理対象プログラムごとにそれぞれ準備されたパラメータ設定ファイル１５１１Ｂ，１５１２Ｂ及びパラメータ変更モジュールプログラム１５１１Ｃ，１５１２Ｃが格納され、他方の管理対象計算機１５００Ａ２の記憶装置１５１０には、管理対象プログラム１５１３Ａ、管理対象プログラム１５１３Ａについて準備されたパラメータ設定ファイル１５１３Ｂ及びパラメータ変更モジュールプログラム１５１３Ｃが格納されている。
【００３０】
これらの、管理対象プログラム、パラメータ変更モジュール及びパラメータ設定ファイルは、１枚または別々の記録媒体（ＣＤ−ＲＯＭ等）に記録されて配布されてもよいし、ネットワーク１２００を介して配信されてもよい。このことは、以下に挙げる他の計算機システムについても同様である。
【００３１】
つぎに、管理計算機１７００上の制御モジュール１７１１が実行する処理について説明する。
【００３２】
管理計算機１７００上では、制御モジュールプログラム１７１１が、タイマによって定期的に起動される。制御モジュールプログラム１７１１が起動されると、図４に示すシステム管理処理を実行するプロセスを実現する。
【００３３】
制御モジュール１７１１は、入力装置１７５０からの入力をチェックする（Ｓ４０１０）。そして、入力装置１７５０から終了指示が入力されたときには処理を終了する（Ｓ４０４０）。一方、入力装置１７５０から続行指示が入力されたときには、以下の処理を続行する。
【００３４】
制御モジュール１７１１は、以下の条件（１）を満たすスケジュールデータ及び以下の条件（２）を満たすスケジュールデータを、スケジュールデータテーブル１７１３で検索する（Ｓ４０２０）。
（１）現在の日時が、予定期間情報１７１３ｂ１が示す予定期間に含まれる。
（２）現在の日時が、予定期間情報１７１３ｂ１の終了時刻を経過している。
【００３５】
スケジュールデータテーブル１７１３の検索の結果、（１）の条件を満たすスケジュールデータが得られたときには、制御モジュール１７１１は、ログファイルを参照し、そのスケジュールデータによるパラメータ変更が実行中であるか否か（例えば、そのスケジュールデータのスケジュールＩＤに対応付けられた最新の日時情報がスケジュール実行日時情報であるか否か）をチェックする。その結果、実行中でなければ、制御モジュール１７１１は、そのスケジュールデータのスケジュールＩＤに対応付けて現在の日時をスケジュール実行日時情報としてログファイルに記述するとともに、そのスケジュールデータを含むパラメータ変更命令を、通信装置１７６０からブロードキャストする。各管理対象計算機１５００Ａ１，１５００Ａ２上では、受信したパラメータ変更命令のなかに自機上の管理対象システムのシステムＩＤが含まれていたら、そのシステムＩＤにより特定される管理対象システムのパラメータ変更モジュールプログラムが起動される。
【００３６】
例えば、管理対象計算機１５００Ａ２では、管理対象システム１５１３ＡのシステムＩＤを含むパラメータ変更命令を受信したときには、そのシステムＩＤにより特定される管理対象システム１５１３Ａのパラメータ変更モジュールプログラム１５１３Ｃが起動される。このとき、パラメータ変更モジュール１５１３Ｃには、パラメータ変更命令に含まれていた、管理対象パラメータのパラメータ値（または増減値）が渡される。パラメータ変更モジュールは、メモリ上にすでにロードされて有効となっている管理対象パラメータ値を、このとき渡されたパラメータ値で動的に変更してから、処理を終了する。なお、管理対象パラメータの増分値が渡されたときには、管理対象パラメータの現設定値とその増分値との和で、メモリにすでにロードされている管理対象パラメータ値を動的に変更してから、処理を終了する（Ｓ４０３０）。
【００３７】
また、（２）の条件を満たすスケジュールデータが得られたときには、制御モジュール１７１１は、ログファイルを参照し、そのスケジュールデータによるパラメータ変更が実行中であるか否かをチェックする。その結果、実行中であれば、制御モジュール１７１１は、そのスケジュールデータのスケジュールＩＤに対応付けて現在の日時をスケジュール終了日時としてログファイルに記述するとともに、そのスケジュールを含むパラメータ復旧命令を、通信装置１７６０からブロードキャストする。管理対象計算機１５００Ａ１，１５００Ａ２は、受信したパラメータ復旧命令のなかに自機上の管理対象システムのシステムＩＤが含まれていたら、そのシステムＩＤにより特定される管理対象システムのパラメータ変更モジュールプログラムが起動される。これに応じて、パラメータ変更モジュールは、パラメータ設定ファイルから管理対象パラメータの初期値を読みだし、メモリにすでにロードされている管理対象パラメータの値を初期値に動的に変更してから、処理を終了する（Ｓ４０３０）。
【００３８】
制御モジュール１７１１は、各管理対象システムが実装された管理対象計算機に対するパラメータ変更命令またはパラメータ復旧命令の送信が終了したら、処理を終了させる。
【００３９】
このような処理によれば、負荷変動を予測可能な管理対象システムの管理対象パラメータの変更を要する期間及びその期間に適用されることが好ましいパラメータ値があらかじめスケジュールデータに設定されているため、負荷変動を予測可能な管理対象システムについては、システム性能の監視を行わなくても、このスケジュールデータにしたがってパラメータ値の変更を行うだけでシステム性能を最適化することができる。すなわち、負荷変動を予測可能な管理対象システムのシステム性能を効率的に最適化することができる。例えば、上述の人事管理システムについては、日常的には、更新処理のレスポンスを優先したパラメータ値が用いられるため、更新系業務の効率を向上させることができ、給料日直後の特定期間等には、参照処理のスループットを優先したパラメータ値が用いられるため、参照系業務の効率を向上させることができる。
【００４０】
以上、本発明の一実施形態について説明したが、本発明の実施形態は、以上説明したものに限られない。以下、本発明の他の実施形態について説明する。
【００４１】
図１の計算機システムにおいては、管理者が、スケジューリングの際に、個々の管理対象パラメータにそれぞれパラメータ値または差分値を設定するようにしているが、必ずしも、このようにする必要はない。例えば、特定のシチュエーションごとに最適なパラメータ値のセットをあらかじめ準備しておき、管理者が、スケジューリングの際に、それらのセットのなかからいずれかのセットを選択するようにしてもよい。このようにすれば、管理者は、個々の管理対象パラメータのパラメータ値または増分値を、初期値との関係等についての詳細な検討を行わずに一括で設定することができる。このため、管理者の負担を軽減することができる。以下、図６により、このようした場合の計算機システムについて説明する。ただし、図６と図１とにおいて共通の符号が付された構成には変わるところはないため、ここでは説明を省略する。
【００４２】
一方、管理計算機１７００’の記憶装置１７１０’には、図６に示すように、制御モジュールプログラム１７１１’、スケジュール設定モジュールプログラム１７１２’、スケジュールデータテーブル１７１３’の他、さらにパラメータ値セットテーブル１７１４が格納されている。
【００４３】
図８に示すように、パラメータ値セットテーブル１７１４の各ロー１７１４ａ１〜１７１４ａ４には、それぞれ、どのようなシステム性能が優先されるシチュエーションにあるかを特定する文字情報（インデックス情報）１７１４ｂ１及び各管理対象システムの管理対象システムのパラメータ値セット１７１４ｂ２〜１７１４ｂ４が格納されている。
【００４４】
このスケジュールテーブル１７１４のカラムのうち、第１カラムには、各シチュエーションのインデックス情報１７１４ｂ１が整理されており、カラム名１７１４ｃとして「インデックス」が付されている。ここでは、インデックス情報として、シチュエーションを表す文字情報を用いているが、文字情報の代わりに数値等を用いてもよい。
【００４５】
その他のカラムには、同じ管理対象システムの同じ管理対象パラメータのパラメータ値セット１７１４ｂ２〜１７１４ｂ４が整理され、カラム名１７１４ｃとして、管理対象システムのＩＤ及びパラメータ名が付けられている。ここでは、パラメータ値セット１７１４ｂ２〜１７１４ｂ４として、参照処理のレスポンスを優先するときのパラメータ値セット、参照処理のスループットを優先するときのパラメータ値セット、更新処理のレスポンスを優先するときのパラメータ値セット、及び、更新処理のスループットを優先するときのパラメータ値セットを格納してある。しかし、パラメータ値セットテーブル１７１４に格納されるパラメータ値セットは、必ずしも、これら４種類のものである必要はない。
【００４６】
なお、ここでは、スケジュールテーブル１７１４にパラメータ値セット１７１４ｂ２〜１７１４ｂ４が登録されているが、パラメータ値セット１７１４ｂ２〜１７１４ｂ４に代えて、パラメータの増分値セットが格納されていてもよい。
【００４７】
この場合のスケジュールデータテーブル１７１３’の各ローには、図７に示すように、予定期間情報１７１３ｂ１、予定期間情報が示す予定期間について指定されたインデックス情報１７１３ｂ５が含まれている。
【００４８】
このようなスケジュールデータテーブル１７１３’に対するデータ登録作業及びデータ更新作業を支援するため、この場合のスケジュール設定モジュールプログラム１７１２’は、図９に示すスケジュール設定用ＧＵＩを表示装置１７４０に表示する。
【００４９】
このスケジュール設定用ＧＵＩには、図３のスケジュール設定用ＧＵＩと同様なフィールド３１００、パラメータ値セットテーブル１７１４の各インデックス情報に対応するシチュエーションを表す文字情報が付されたラジオボタン群３２００’、図３のスケジュール設定用ＧＵＩと同様な追加ボタン３３００が配置されている。
【００５０】
このスケジュール設定用ＧＵＩ上において、各フィールド３１２０，３１３０へのデータ入力及びいずれかラジオボタン３１１０，３２００’の選択がなされ、さらに追加ボタン３３００がクリックされると、スケジュール設定モジュールプログラム１７１２’は、フィールドの入力データ及びラジオボタンの値を取り出して、それらのデータに基づきスケジュールデータを生成し、それをテーブル１７１３’にスケジュールデータを登録する。
【００５１】
そして、制御モジュールプログラム１７１１’は、定期的に起動され、図４に示したフローチャートにしたがって処理を実行するが、Ｓ４０３０においてだけ、図１の制御モジュールプログラム１７１１とは異なる以下の処理を実行する。
【００５２】
制御モジュールプログラム１７１１’は、Ｓ４０２０の検索の結果、（２）の条件を満たすスケジュールデータを得たときには、図１の制御モジュールプログラム１７１１と同様な処理を実行する。
【００５３】
一方、Ｓ４０２０の検索の結果、（１）の条件を満たすスケジュールデータを得たときには、そのスケジュールデータに含まれるシステムＩＤ及びインデックス情報に対応するパラメータ値セットをパラメータ値セットテーブル１７１４から取りだし、このとき取り出したパラメータ値セットとシステムＩＤとを含むパラメータ変更命令を通信装置１７６０からブロードキャストする。
【００５４】
このような計算機システムによれば、管理者は、スケジューリングの際、スケジュール設定用ＧＵＩ上のラジオボタン群３２００’のなかから、所望のシチュエーションに対応するラジオボタンを選択するだけで、そのシチュエーションに適したパラメータ値を、管理対象システムの各管理対象パラメータのパラメータ値として一括設定することができる。このため、スケジューリング作業負担が軽減される。また、管理対象パラメータのパラメータ値とシステム性能との関係に関する知識を有していない者でも、スケジューリングを行うことができる。
【００５５】
なお、ここでは、すべての管理対象システムについて共通のインデックス情報が選択されるようにしているが、各管理対象システムについて別々のインデックス情報が選択できるようにしてもよい。この場合には、スケジュールデータテーブルを、各管理対象システムごとのインデックス情報が登録できるものにする必要がある。
【００５６】
図１及び図６の計算機システムにおいては、管理対象パラメータの初期値が記述されたパラメータ設定ファイル１５１１Ｂ，１５１２Ｂ，１５１３Ｂが管理対象計算機１５００Ａ１，１５００Ａ２の記憶装置に格納されているが、必ずしも、このようにする必要はない。例えば、管理計算機が管理対象パラメータを一元管理するようにしてもよい。以下、図１０により、このようした場合の計算機システムについて説明する。ただし、図１０と図１等とにおいて共通の符号が付された構成には変わるところはないため、ここでは説明を省略する。
【００５７】
この場合における管理対象計算機１５００’Ａ１，１５００’Ａ２の記憶装置には、管理対象プログラム１５１１Ａ’，１５１２Ａ’，１５１３Ａ’及び各管理対象プログラムごとにそれぞれ準備されたパラメータ変更モジュールプログラム１５１１Ｃ，１５１２Ｃ，１５１２Ｃが格納されているが、パラメータ設定ファイルは格納されていない。管理対象プログラム１５１１Ａ’，１５１２Ａ’，１５１３Ａ’は、図１等の管理対象プログラム１５１１Ａ，１５１２Ａ，１５１３Ａとは異なり、起動時に、システムＩＤを含むパラメータ初期値送信要求を管理計算機１７００’’に送信し、管理計算機１７００’’から返信されたパラメータ値を管理対象パラメータの初期値として用いる。
【００５８】
一方、管理計算機１７００’’の記憶装置１７１０’’には、制御モジュールプログラム１７１１’’、スケジュール設定モジュールプログラム１７１２及びスケジュールデータテーブル１７１３’’が格納されている。
【００５９】
スケジュールデータテーブル１７１３’’は、図１１に示すように、
図１のスケジュールデータテーブル１７１３（図２参照）の第１ローとして、管理対象プログラムの起動時用のスケジュールデータ１７１３ａが挿入された構造を有する。起動時用のスケジュールデータ１７１３ａには、第一カラムのデータとして、デフォルトのスケジュールデータであることを示す情報、その他のカラムのデータとして、各管理対象プログラムの起動時に適用されるパラメータ初期値が含まれている。なお、管理者は、図３のスケジュール設定用ＧＵＩ及び入力装置を用いて、このようなスケジュールデータテーブル１７１３’’へのデータ登録を行うことができる。
【００６０】
そして、制御モジュールプログラム１７１１’’は、管理計算機が管理対象計算機からのパラメータ初期値送信要求を受け付けたときに起動され、以下の処理を実行する。まず、第一カラムの情報がデフォルトのスケジュールデータであることを示すスケジュールデータ１７１３ａをスケジュールデータテーブル１７１３’’から取り出し、このスケジュールデータ１７１３ａから、パラメータ初期値送信要求内のシステムＩＤに対応するパラメータ初期値を取り出す。そして、このとき取りだしたパラメータ初期値を管理対象システムに返信する。このとき返信されたパラメータ初期値は、上述したように、管理対象プログラムにより、管理対象パラメータの初期値として用いられる。
【００６１】
また、制御モジュールプログラム１７１１’’は、管理計算機が管理対象計算機からのパラメータ初期値送信要求を受け付けたときに以外にも定期的に起動され、図４に示したフローチャートにしたがって処理を実行するが、Ｓ４０３０においてだけ、図１の制御モジュールプログラム１７１１とは異なる以下の処理を実行する。
【００６２】
制御モジュールプログラム１７１１’’は、Ｓ４０２０の検索の結果、（１）の条件を満たすスケジュールデータを得たときには、図１の制御モジュールプログラム１７１１と同様な処理を実行する。
【００６３】
一方、Ｓ４０２０の検索の結果、（２）の条件を満たすスケジュールデータを得たとき、制御モジュールプログラム１７１１’’は、デフォルトのスケジュールデータ１７１３ａから、各管理対象システムのパラメータ初期値をそれぞれ取りだす。さらに、制御モジュールプログラム１７１１’’は、各管理対象システムについて取り出したパラメータ初期値及びシステムＩＤとを含むパラメータ変更命令を、通信装置１７６０からブロードキャストする。各管理対象計算機１５００Ａ１，１５００Ａ２上では、受信したパラメータ変更命令のなかに自機上の管理対象システムのシステムＩＤが含まれていたら、そのシステムＩＤにより特定される管理対象システムのパラメータ変更モジュールプログラムが起動される。これにより、メモリ上にすでにロードされて有効となっている管理対象パラメータ値が、このとき渡されたパラメータ初期値で動的に変更される。
【００６４】
なお、ここでは、管理者が、スケジューリングの際に、個々の管理対象パラメータのパラメータ値を指定するようにしているが、図６の計算機システムのように、特定のシチュエーションごとに最適なパラメータ値のセットをあらかじめ準備しておき、管理者が、スケジューリングの際に、それらのセットのなかからいずれかのセットを選択するようにしてもよい。この場合には、図６の管理計算機１７００’の記憶装置１７１０’内のパラメータ値セットテーブル１７１４と同様なデータ構造のパラメータ値セットテーブルテーブルを、管理計算機１７００’’の記憶装置１７１０’’にも格納する必要がある。ただし、このパラメータ値セットテーブルテーブルの第一ローには、デフォルトのスケジュールデータであることを示すインデックス情報、及び、各管理対象プログラムの起動時に適用されるパラメータ初期値セットが挿入されている必要がある。さらに、スケジュールデータテーブル１７１３’’を、図７のスケジュールデータテーブル１７１３’と同様なデータ構造にする必要がある。
【００６５】
なお、以上述べた各計算機システムにおいては、管理計算機の記憶装置には管理対象プログラム等を格納していないが、管理計算機の記憶装置にも管理対象プログラム等をインストールし、その管理対象プログラムの管理対象パラメータを制御モジュールに管理させるようにしてもよい。また、個々の管理対象計算機の記憶装置に制御モジュールプログラム等をインストールし、管理対象計算機ごとに、管理対象システムの管理対象パラメータの管理が行われるようにしてもよい。
【００６６】
また、以上述べた各計算機システムにおいては、管理対象計算機の記憶装置に格納されたプログラムを管理対象としているが、管理対象計算機のハードウェアを管理対象としてもよい。
【００６７】
また、以上述べた各計算機システムにおいては、パラメータ変更モジュールプログラムが、メモリにロードされた管理対象パラメータのパラメータ値を動的に変更するようになっているが、必ずしも、このようにする必要はない。例えば、パラメータ変更モジュールが、パラメータ変更命令に含まれているパラメータ値で、パラメータ設定ファイルに記述されたパラメータ値を書き換えて、管理対象プログラムが、書換え後のパラメータ設定ファイルに記述されたパラメータ値を有効にするようにしてもよい。ただし、このようにする場合には、一般的に、管理対象システムの再起動が必要となる。したがって、パラメータ設定ファイルの書き換えの発生タイミング等に、パラメータ変更モジュールが、管理対象システムを再起動させるイベントを上げるようにする。
【００６８】
また、以上述べた各計算機システムにおいては、各管理対象プログラムごとに専用のパラメータ変更モジュールプログラムを設けているが、必ずしも、このようにする必要はない。例えば、複数の管理対象プログラムのパラメータ値を動的に変更することができる汎用のパラメータ変更モジュールを１つだけ設けるようにしてもよい。
【００６９】
【発明の効果】
本発明によれば、負荷変動を予測可能なシステムの性能を効率的に最適化することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る計算機システムの概略構成図である。
【図２】本発明の実施の形態に係るスケジュールテーブルのデータ構造を概念的に示した図である。
【図３】本発明の実施の形態に係るスケジュール設定ＧＵＩのレイアウトを示した図である。
【図４】本発明の実施の形態に係る制御モジュールが実行するシステム管理処理のフローチャートである。
【図５】本発明の実施の形態に係るスケジュールデータテーブルのデータ構造を概念的に示した図である。
【図６】本発明の実施の形態に係る計算機システムの概略構成図である。
【図７】本発明の実施の形態に係るスケジュールデータテーブルのデータ構造を概念的に示した図である。
【図８】本発明の実施の形態に係るパラメータ値セットテーブルのデータ構造を概念的に示した図である。
【図９】本発明の実施の形態に係るスケジュール設定ＧＵＩのレイアウトを示した図である。
【図１０】本発明の実施の形態に係る計算機システムの概略構成図である。
【図１１】本発明の実施の形態に係るスケジュールデータテーブルのデータ構造を概念的に示した図である。
【符号の説明】
１５００Ａ１，１５００Ａ２，１５００’Ａ１，１５００’Ａ３…管理対象計算機、１７００，１７００’，１７００’’…管理計算機、１７１１，１７１１’…制御モジュールプログラム、１７１２，１７１２’…スケジュール設定モジュールプログラム、１７１３，１７１３’，１７１３’’…スケジュールデータテーブル、１５１１Ａ〜１５１３Ａ，１５１１’Ａ〜１５１３’Ａ…管理対象プログラム、１５１１Ｂ〜１５１３Ｂ…パラメータ設定ファイル、１５１１Ｃ〜１５１３Ｃ…パラメータ変更モジュールプログラム
【図１】
2005043984.tif 000003
【図２】
2005043984.tif 000004
【図３】
2005043984.tif 000005
【図４】
2005043984.tif 000006
【図５】
2005043984.tif 000007
【図６】
2005043984.tif 000008
【図７】
2005043984.tif 000009
【図８】
2005043984.tif 000010
【図９】
2005043984.tif 000011
【図１０】
2005043984.tif 000012
【図１１】
2005043984.tif 000013