(57)【特許請求の範囲】
【請求項１】
分散処理システム上に配置された複数のコンポーネントの内、コンポーネント間に依存関係がある変更対象コンポーネントの負荷実測値を観測する観測部と、
前記変更対象コンポーネントの前記負荷実測値に基づき、全ての変更対象コンポーネントの変更処理が完了するまでの負荷予測値を算出する予測部と、
前記負荷予測値が閾値を超えた場合に変更処理前の変更対象コンポーネントに対して、変更処理の開始を指示する変更指示の送信間隔を調整する調整部と、
前記調整部にて調整された前記送信間隔に基づき、変更処理前の変更対象コンポーネントに対して前記変更指示を指示する指示部と
を有することを特徴とする情報処理装置。
【請求項２】
前記指示部は、
前記コンポーネントに対する処理の変更操作を検出すると、前記変更操作のコンポーネントに関わる依存関係に基づき、前記変更対象コンポーネントを特定し、特定された前記変更対象コンポーネントからの処理結果を使用する依存元コンポーネントに対して変更処理の開始を優先的に指示することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記観測部は、
前記コンポーネントに対する処理の変更操作を検出すると、前記変更操作のコンポーネントに関わる依存関係に基づき、前記変更対象コンポーネントを特定し、特定された前記変更対象コンポーネントの負荷実測値を観測することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記予測部は、
前記変更対象コンポーネントの送信間隔毎の負荷実測値と、前記変更対象コンポーネントの変更処理の進捗状況とに基づき、前記全ての変更対象コンポーネントの変更処理が完了するまでの前記送信間隔毎の負荷予測値を算出することを特徴とする請求項１〜３の何れか一つに記載の情報処理装置。
【請求項５】
前記予測部は、
前記変更対象コンポーネントの送信間隔毎の負荷実測値と、前記変更対象コンポーネントの変更処理の進捗状況とに基づき、前記全ての変更対象コンポーネントの変更処理が完了するまでの前記送信間隔毎の変更処理後の定常負荷予測値及び変更処理中のピーク負荷予測値を算出し、
前記調整部は、
前記ピーク負荷予測値が前記閾値以内になるように、変更処理前の各変更対象コンポーネントに対する前記変更指示の送信間隔を調整することを特徴とする請求項１〜３の何れか一つに記載の情報処理装置。
【請求項６】
前記調整部は、
前記負荷予測値が閾値を超え、かつ、前記負荷予測値を超える時間が所定時間継続する場合に、変更対象コンポーネントに対する変更処理の中止を出力することを特徴とする請求項１〜５の何れか一つに記載の情報処理装置。
【請求項７】
前記指示部は、
前記依存関係に基づき、変更処理前の前記変更対象コンポーネントに対する変更指示を指示する順序を変更することを特徴とする請求項１〜６の何れか一つに記載の情報処理装置。
【請求項８】
複数のコンポーネントが配置された分散処理システムと、前記分散処理システムを管理する情報処理装置とを有する分散システムであって、
前記情報処理装置は、
前記複数のコンポーネントの内、コンポーネント間に依存関係がある変更対象コンポーネントの負荷実測値を観測する観測部と、
前記変更対象コンポーネントの前記負荷実測値に基づき、全ての変更対象コンポーネントの変更処理が完了するまでの負荷予測値を算出する予測部と、
前記負荷予測値が閾値を超えた場合に、変更処理前の変更対象コンポーネントに対して、変更処理の開始を指示する変更指示の送信間隔を調整する調整部と、
前記調整部にて調整された前記送信間隔に基づき、変更処理前の変更対象コンポーネントに対して前記変更指示を指示する指示部と
を有することを特徴とする分散システム。
【請求項９】
分散処理システム上に配置された複数のコンポーネントの内、コンポーネント間に依存関係がある変更対象コンポーネントの負荷実測値を観測し、
前記変更対象コンポーネントの前記負荷実測値に基づき、全ての変更対象コンポーネントの変更処理が完了するまでの負荷予測値を算出し、
前記負荷予測値が閾値を超えた場合に変更処理前の変更対象コンポーネントに対して、変更処理の開始を指示する変更指示の送信間隔を調整し、
調整された前記送信間隔に基づき、変更処理前の変更対象コンポーネントに対して前記変更指示を指示する
処理を情報処理装置に実行させることを特徴とする変更制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、分散システム及び変更制御プログラムに関する。
【背景技術】
【０００２】
例えば、製造や流通等でのＩｏＴ（Internet  of  Thing）活用として、実世界の人や機器等の事物の状態をデジタル上にリアルタイムに再現する「デジタルツイン」が期待されている。デジタル上に再現する人や事物等の大量のデータを処理するには、例えば、１箇所で集中的に処理するのではなく、複数のコンポーネントを利用して処理を分散する分散処理システムが重要となる。図１８は、コンポーネント依存関係の一例を示す説明図である。図１８に示す分散処理システムでは、例えば、複数のコンポーネントの内、依存元コンポーネント２００Ｂの処理結果が依存先コンポーネント２００Ａの処理結果に依存するため、コンポーネント間で依存関係がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−１２９５１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
分散処理システムでは、運用中のコンポーネントの処理内容に変更が生じ、当該コンポーネントの処理内容を変更する変更制御を実行する。しかしながら、分散処理システムでは、コンポーネント間で依存関係があるため、例えば、運用中の依存先コンポーネントの処理内容に変更が生じた場合、依存先コンポーネントの処理結果を集約する依存元コンポーネントに負荷が集中する場合がある。従って、運用中でも変更処理に係る負荷変動を抑制することが求められている。
【０００５】
一つの側面では、変更処理に係る負荷変動を抑制できる情報処理装置等を提供することにある。
【課題を解決するための手段】
【０００６】
一つの態様では、情報処理装置が、観測部と、予測部と、調整部と、指示部とを有する。観測部は、分散処理システム上に配置された複数のコンポーネントの内、コンポーネント間に依存関係がある変更対象コンポーネントの負荷実測値を観測する。予測部は、変更対象コンポーネントの負荷実測値に基づき、全ての変更対象コンポーネントの変更処理が完了するまでの負荷予測値を算出する。調整部は、負荷予測値が閾値を超えた場合に変更処理前の変更対象コンポーネントに対して、変更処理の開始を指示する変更指示の送信間隔を調整する。指示部は、調整部にて調整された前記送信間隔に基づき、変更処理前の変更対象コンポーネントに対して前記変更指示を指示する。
【発明の効果】
【０００７】
一つの側面として、変更処理に係る負荷変動を抑制できる。
【図面の簡単な説明】
【０００８】
【図１】図１は、本実施例の分散システムの一例を示す説明図である。
【図２】図２は、情報処理装置のハードウェア構成の一例を示す説明図である。
【図３】図３は、情報処理装置の機能構成の一例を示す説明図である。
【図４】図４は、情報処理装置の機能構成の詳細な一例を示す説明図である。
【図５】図５は、分散処理システム内のコンポーネントの依存関係の一例を示す説明図である。
【図６】図６は、負荷予測値の進捗率に応じた推移の一例を示す説明図である。
【図７】図７は、負荷超過の負荷予測値の進捗率に応じた推移の一例を示す説明図である。
【図８】図８は、正常な負荷予測値の進捗率に応じた推移の一例を示す説明図である。
【図９】図９は、観測処理に関わる観測部の処理動作の一例を示すフロー図である。
【図１０】図１０は、予測判定処理に関わる予測部の処理動作の一例を示すフロー図である。
【図１１】図１１は、変更制御処理に関わる変更制御部の処理動作の一例を示すフロー図である。
【図１２】図１２は、予測部の閾値判定方法の一例を示す説明図である。
【図１３】図１３は、ピーク負荷予測値と送信間隔との対応関係の一例を示す説明図である。
【図１４】図１４は、処理追加の変更操作を検出した場合の変更対象コンポーネントの一例を示す説明図である。
【図１５】図１５は、変更処理が相互に依存してない場合の一例を示す説明図である。
【図１６】図１６は、変更処理が相互に依存している場合の一例を示す説明図である。
【図１７】図１７は、変更制御プログラムを実行する情報処理装置の一例を示す説明図である。
【図１８】図１８は、コンポーネント依存関係の一例を示す説明図である。
【発明を実施するための形態】
【０００９】
以下、図面に基づいて、本願の開示する情報処理装置等の実施例を詳細に説明する。尚、本実施例により、開示技術が限定されるものではない。また、以下に示す各実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
【実施例】
【００１０】
図１は、本実施例の分散システム１の一例を示す説明図である。図１に示す分散システム１は、複数のコンポーネント２を配置した分散処理システム３と、分散処理システム３内の各コンポーネント２を管理する情報処理装置４と、運用管理者が分散処理システム３の状況を管理するダッシュボード５とを有する。分散処理システム３内の各コンポーネント２は、相互に通信接続することで依存関係にあり、各種処理を各コンポーネント２に分散して各種サービスを実現している。ダッシュボード５は、情報処理装置４と接続し、情報処理装置４からの各種情報を表示する表示部や、情報処理装置４への変更操作等の各種指示を入力する操作部等を有する。運用管理者は、例えば、ダッシュボード５の表示部の表示内容を視認しながら、分散処理システム３内のコンポーネント２の変更処理を変更する変更操作を実行する。
【００１１】
図２は、情報処理装置４のハードウェア構成の一例を示す説明図である。図２に示す情報処理装置４は、通信装置１１と、ＨＤＤ（Hard  Disk  Drive）１２と、ＲＯＭ(Read  Only  Memory)１３と、ＲＡＭ(Random  Access  Memory)１４と、ＣＰＵ(Central  Processing  Unit)１５と、バス１６とを有する。通信装置１１は、例えば、分散処理システム３内の各コンポーネント２と通信接続する装置である。ＨＤＤ１２は、各種情報を記憶する記憶領域である。ＲＯＭ１３は、各種プログラム等の情報を記憶する記憶領域である。ＲＡＭ１４は、各種情報を記憶する記憶領域である。ＣＰＵ１５は、情報処理装置４全体を制御する。バス１６は、通信装置１１、ＨＤＤ１２、ＲＯＭ１３、ＲＡＭ１４及びＣＰＵ１５との間でデータを送受信する通信線である。
【００１２】
図３は、情報処理装置４の機能構成の一例を示す説明図である。図３に示す情報処理装置４は、制御部２０と、記憶部３０とを有する。制御部２０は、例えば、ＣＰＵ１５に対応する。制御部２０は、ＲＯＭ１３に格納された変更制御プログラムをＲＡＭ１４上に展開し、ＲＡＭ１４上に展開された変更制御プログラムを変更制御プロセスとして実行することで、例えば、観測部２１、予測部２２及び変更制御部２３を機能として実行する。記憶部３０は、例えば、ＨＤＤ１２、ＲＯＭ１３及びＲＡＭ１４等に対応する。記憶部３０は、第１の記憶部３１と、第２の記憶部３２とを有する。第１の記憶部３１は、例えば、後述する変更操作毎の観測定義情報を記憶する領域である。第２の記憶部３２は、例えば、後述する変更操作毎の負荷予測値の推移を記憶する領域である。
【００１３】
図４は、情報処理装置４内の機能構成の詳細な一例を示す説明図である。図４に示す観測部２１は、決定部２１Ａと、負荷観測部２１Ｂとを有する。決定部２１Ａは、変更操作に対応した変更処理の内容と、依存性情報とに基づき、分散処理システム３上の変更操作に対応した変更処理のコンポーネント２として変更対象コンポーネントを特定する。図５は、分散処理システム３内の各コンポーネント２の依存関係の一例を示す説明図である。図５に示す分散処理システム３は、コンポーネント“Ｂ”、“Ｃ”、“Ｅ”、“Ｆ”及び“Ｇ”の処理結果がコンポーネント“Ａ”の処理結果に依存する依存関係にある。この場合、コンポーネント“Ａ”は依存元コンポーネント、コンポーネント“Ｂ”、“Ｃ”、“Ｅ”、“Ｆ”及び“Ｇ”は依存先コンポーネントである。尚、依存性情報は、分散処理システム３上に配置された各コンポーネント２の論理的な接続関係を示し、変更処理に伴って負荷が変動するコンポーネント２の関係を示す情報であって、分散処理システム３が管理する依存関係を示す情報である。決定部２１Ａは、変更対象コンポーネントから依存元コンポーネントを特定する。尚、依存元コンポーネントは、変更対象コンポーネントの処理結果の影響を受けるコンポーネントである。
【００１４】
決定部２１Ａは、依存性情報、変更対象コンポーネント、依存元コンポーネント及び観測周期を含む観測定義情報を変更操作毎に生成し、変更操作毎の観測定義情報を第１の記憶部３１に記憶する。観測定義情報は、観測対象コンポーネントのリスト、観測対象コンポーネントを観測する際の観測周期、変更処理開始から時間経過に応じて負荷が変化する際の関数や、負荷観測を終了する際の終了条件等を有する。尚、終了条件とは、例えば、変更対象コンポーネントに対して全ての変更処理が完了した場合、一定時間が経過した場合、又は負荷変動量が所定値以下となった場合等である。
【００１５】
負荷観測部２１Ｂは、観測定義情報に基づき、分散処理システム３上の変更対象コンポーネントを観測対象コンポーネントとし、観測対象コンポーネントに対して観測依頼を通知する。分散処理システム３は、観測依頼に応じて観測ＡＰＩ（Application  Programming  Interface）を立ち上げ、観測ＡＰＩを通じて観測対象コンポーネントの負荷値を測定する。尚、負荷値とは、観測対象コンポーネントが使用する、例えば、ＣＰＵの稼働率や、メモリの使用量等の負荷情報である。観測ＡＰＩは、観測対象コンポーネントの負荷値を負荷実測値として負荷観測部２１Ｂに通知する。負荷観測部２１Ｂは、観測ＡＰＩからの観測対象コンポーネントの負荷実測値を受信する。負荷観測部２１Ｂは、負荷実測値を受信した場合、負荷実測値を予測部２２に通知する。
【００１６】
予測部２２は、計算部２２Ａと、判定部２２Ｂとを有する。計算部２２Ａは、観測部２１から受信した各観測対象コンポーネントの負荷実測値を受信した場合、現在の変更処理の進捗率に応じて現在の進捗率の負荷実測値から進捗率が１００％になるまでの負荷予測値を算出する。図６は、負荷予測値の進捗率に応じた推移の一例を示す説明図である。尚、負荷予測値は、現在の進捗率から進捗率が１００％になるまでの負荷値の推移である。計算部２２Ａは、例えば、線形近似法や最小二乗法等の時系列予測法を使用しても良い。計算部２２Ａは、進捗率１００％になるまでの負荷予測値の推移を第２の記憶部３２に記憶する。
【００１７】
判定部２２Ｂは、進捗率１００％になるまでの負荷予測値が閾値を超えるか否かを判定する。判定部２２Ｂは、進捗率１００％になるまでの負荷予測値が閾値を超えた場合、負荷予測値が閾値を超えた状態が所定時間継続したか否かを判定する。図７は、負荷超過の負荷予測値の進捗率に応じた推移の一例を示す説明図である。判定部２２Ｂは、図７に示すように、進捗率１００％になるまでの負荷予測値が閾値を超え、かつ、負荷予測値が閾値を超えた状態が所定時間継続しない場合、負荷予測値を含む負荷超過通知を変更制御部２３及びダッシュボード５に通知する。判定部２２Ｂは、進捗率１００％になるまでの負荷予測値が閾値を超え、かつ、負荷予測値が閾値を超えた状態が所定時間継続した場合、変更処理の中止を示す変更中止を変更制御部２３及びダッシュボード５に通知する。図８は、正常な負荷予測値の進捗率に応じた推移の一例を示す説明図である。判定部２２Ｂは、図８に示すように、進捗率１００％になるまでの負荷予測値が閾値を超えない場合、負荷予測値を含む負荷通知を変更制御部２３に通知する。
【００１８】
変更制御部２３は、調整部２３Ａと、指示部２３Ｂとを有する。調整部２３Ａは、ダッシュボード５からの変更操作を検出した場合、変更操作に対応した変更処理内容及び依存性情報から変更対象コンポーネントを特定する。更に、調整部２３Ａは、変更対象コンポーネントから依存元コンポーネントを特定し、依存元コンポーネントに対して変更指示を通知する。そして、依存元コンポーネントは、変更指示に応じて変更処理を実行する。調整部２３Ａは、依存元コンポーネントに対する変更処理を実行した後、変更対象コンポーネントの次の依存元コンポーネントに対して変更指示を通知する。
【００１９】
調整部２３Ａは、予測部２２内の判定部２２Ａから負荷超過通知を受信した場合、負荷超過通知内の負荷予測値及び現在の進捗率に応じて変更指示の送信間隔が長くなるように、変更指示の送信間隔を調整する。また、調整部２３Ａは、判定部２２Ａから負荷通知を受信した場合、負荷通知内の負荷予測値及び現在の進捗率に応じて変更指示の送信間隔が短くなるように、変更指示の送信間隔を調整又は、現在の送信間隔を維持する。調整部２３Ａは、調整後の送信間隔又は現状維持の送信間隔を指示部２３Ｂに通知する。
【００２０】
指示部２３Ｂは、調整部２３Ａからの送信間隔に応じて変更処理前の変更対象コンポーネントに対して変更指示を指示する。その結果、分散処理システム３上の各変更対象コンポーネントは、変更制御部２３からの変更指示に応じて変更処理を実行する。
【００２１】
次に本実施例の分散システム１の動作について説明する。図９は、観測処理に関わる観測部２１の処理動作の一例を示すフロー図である。図９において観測部２１内の決定部２１Ａは、ダッシュボード５から変更操作を検出したか否かを判定する（ステップＳ１１）。決定部２１Ａは、変更操作を検出した場合（ステップＳ１１肯定）、分散処理システム３から依存性情報を取得する（ステップＳ１２）。尚、依存性情報は、分散処理システム３内の各コンポーネント２の依存関係を示す情報である。
【００２２】
決定部２１Ａは、変更操作の変更内容及び依存性情報から、分散処理システム３内の変更対象コンポーネント２を特定する（ステップＳ１３）。更に、決定部２１Ａは、変更対象コンポーネントから変更制御の影響を最後に受ける依存元コンポーネントを特定する（ステップＳ１４）。決定部２１Ａは、変更対象コンポーネントを観測対象コンポーネントと特定し（ステップＳ１５）、観測対象コンポーネント毎の観測周期を決定する（ステップＳ１６）。
【００２３】
決定部２１Ａは、観測対象コンポーネントである変更対象コンポーネント、依存元コンポーネント、コンポーネント毎の観測周期を含む、変更操作毎の観測定義情報を生成する（ステップＳ１７）。負荷観測部２１Ｂは、観測定義情報に基づき、分散処理システム３に対して観測対象コンポーネントの負荷量の観測を依頼する観測依頼を通知する（ステップＳ１８）。尚、分散処理システム３は、観測依頼に応じて観測ＡＰＩを立ち上げ、観測ＡＰＩで観測対象コンポーネントの負荷量を観測周期毎に収集する。観測ＡＰＩは、観測対象コンポーネントの負荷量を負荷実測値として負荷観測部２１Ｂに通知する。
【００２４】
負荷観測部２１Ｂは、観測ＡＰＩからの観測対象コンポーネントの負荷実測値を取得したか否かを判定する（ステップＳ１９）。負荷観測部２１Ｂは、観測対象コンポーネントからの負荷実測値を取得した場合（ステップＳ１９肯定）、観測対象コンポーネントの負荷実測値を予測部２２に送信する（ステップＳ２０）。負荷観測部２１Ｂは、観測対象コンポーネントの観測が完了したか否かを判定する（ステップＳ２１）。負荷観測部２１Ｂは、観測対象コンポーネントの観測が完了した場合（ステップＳ２１肯定）、図９に示す処理動作を終了する。負荷観測部２１Ｂは、観測対象コンポーネントの観測が完了しなかった場合（ステップＳ２１否定）、負荷実測値を取得したか否かを監視すべく、ステップＳ１９に移行する。負荷観測部２１Ｂは、観測対象コンポーネントから負荷実測値を取得しなかった場合（ステップＳ１９否定）、観測終了したか否かを判定すべく、ステップＳ２１に移行する。決定部２１Ａは、変更操作を検出しなかった場合（ステップＳ１１否定）、図９に示す処理動作を終了する。
【００２５】
図１０は、予測判定処理に関わる予測部２２の処理動作の一例を示すフロー図である。図１０において予測部２２内の計算部２２Ａは、観測部２１から負荷実測値を受信したか否かを判定する（ステップＳ３１）。計算部２２Ａは、負荷実測値を受信した場合（ステップＳ３１肯定）、分散処理システム３から変更操作に対応した変更処理の進捗率を取得する（ステップＳ３２）。
【００２６】
計算部２２Ａは、負荷実測値と進捗率とに基づき、進捗率が１００％になる、すなわち変更処理が完了するまでの負荷予測値の推移を算出する（ステップＳ３３）。予測部２２内の判定部２２Ｂは、進捗率が１００％になるまでに負荷予測値が閾値を超えるか否かを判定する（ステップＳ３４）。
【００２７】
判定部２２Ｂは、進捗率が１００％になるまでに負荷予測値が閾値を超えない場合（ステップＳ３４否定）、その負荷予測値を含む負荷通知を変更制御部２３に通知し（ステップＳ３５）、図１０に示す処理動作を終了する。
【００２８】
判定部２２Ｂは、負荷予測値が閾値を超えた場合（ステップＳ３４肯定）、負荷予測値が閾値を超える時間が所定時間継続するか否かを判定する（ステップＳ３６）。判定部２２Ｂは、負荷予測値が閾値を超える時間が所定時間継続した場合（ステップＳ３６肯定）、変更処理の中止を指示する変更中止通知を変更制御部２３及びダッシュボード５に通知し（ステップＳ３７）、図１０に示す処理動作を終了する。
【００２９】
判定部２２Ｂは、負荷予測値が閾値を超える時間が所定時間継続しない場合（ステップＳ３６否定）、負荷予測値を含む負荷超過通知を変更制御部２３及びダッシュボード５に通知し（ステップＳ３８）、図１０に示す処理動作を終了する。計算部２２Ａは、観測部２１から負荷実測値を受信しなかった場合（ステップＳ３１否定）、図１０に示す処理動作を終了する。
【００３０】
図１１は、変更制御処理に関わる変更制御部２３の処理動作の一例を示すフロー図である。図１１において変更制御部２３内の調整部２３Ａは、ダッシュボード５からの変更操作を検出したか否かを判定する（ステップＳ４１）。変更制御部２３内の指示部２３Ｂは、変更操作を検出した場合（ステップＳ４１肯定）、依存元コンポーネントに対して変更処理を指示する変更指示を通知する（ステップＳ４２）。尚、依存元コンポーネントは、変更指示に応じて変更処理を実行することになる。
【００３１】
調整部２３Ａは、予測部２２から負荷超過通知を受信したか否かを判定する（ステップＳ４３）。調整部２３Ａは、負荷超過通知を受信した場合（ステップＳ４３肯定）、負荷超過通知内の負荷予測値及び現在の進捗率に応じて、変更処理を指示する変更指示の送信間隔を長くするように調整する（ステップＳ４４）。尚、送信間隔を長くした場合、変更処理前のコンポーネントへの変更指示の送信間隔が長くなるため、変更処理に伴う負荷量が小さくなる。
【００３２】
指示部２３Ｂは、調整後の送信間隔で変更処理前のコンポーネントに対して変更指示を通知する（ステップＳ４５）。そして、指示部２３Ｂは、変更操作に対応する全変更処理が完了したか否かを判定する（ステップＳ４６）。指示部２３Ｂは、変更操作に対応する全変更処理が完了した場合（ステップＳ４６肯定）、図１１に示す処理動作を終了する。
【００３３】
指示部２３Ｂは、変更操作に対応する全変更処理が完了しなかった場合（ステップＳ４６否定）、負荷超過通知を受信したか否かを判定すべく、ステップＳ４３に移行する。調整部２３Ａは、変更操作を検出しなかった場合（ステップＳ４１否定）、図１１に示す処理動作を終了する。
【００３４】
調整部２３Ａは、負荷超過通知を受信しなかった場合（ステップＳ４３否定）、観測部２１から負荷通知を受信したか否かを判定する（ステップＳ４７）。調整部２３Ａは、負荷通知を受信した場合（ステップＳ４７肯定）、負荷通知内の負荷予測値及び現在の進捗率に応じて変更指示の送信間隔が短くなるように調整する、又は現在の送信間隔を維持する（ステップＳ４８）。そして、指示部２３Ｂは、調整後若しくは維持中の送信間隔で変更処理前のコンポーネントに対して変更指示を送信すべく、ステップＳ４５に移行する。
【００３５】
調整部２３Ａは、負荷通知を受信しなかった場合（ステップＳ４７否定）、変更中止通知を受信したか否かを判定する（ステップＳ４９）。指示部２３Ｂは、変更中止通知を受信した場合（ステップＳ４９肯定）、変更中止を分散処理システム３に送信し（ステップＳ５０）、図１１に示す処理動作を終了する。また、変更制御部２３は、変更中止通知を受信しなかった場合（ステップＳ４９否定）、変更操作に対応する変更処理が完了したか否かを判定すべく、ステップＳ４６に移行する。
【００３６】
情報処理装置４は、変更対象コンポーネントの負荷実測値に基づき、全ての変更対象コンポーネントの変更処理が完了するまでの負荷予測値を算出し、負荷予測値が閾値を超えた場合に変更処理前の変更対象コンポーネントに対して変更指示の送信間隔を調整する。その結果、変更処理に係る負荷変動を抑制できる。
【００３７】
情報処理装置４は、依存性情報に基づき、変更対象コンポーネントからの処理結果を使用する依存元コンポーネントに対して変更指示を優先的に指示する。その結果、変更対象コンポーネントの内、変更操作に応じて処理負荷の大きい依存元コンポーネントから変更処理を実行できる。
【００３８】
情報処理装置４は、変更対象コンポーネントの送信間隔毎の負荷実測値と、変更対象コンポーネントの変更処理の進捗率とに基づき、全ての変更対象コンポーネントの変更処理が完了するまでの送信間隔毎の負荷予測値を算出する。その結果、情報処理装置４は、負荷実測値と進捗率に応じて変更処理が完了するまでの送信間隔毎の負荷予測値を算出できる。
【００３９】
情報処理装置４では、運用中の大量のコンポーネントに対する変更操作を検知した場合でも、変更操作に応じて発生する各コンポーネントの負荷変動を最小限に抑制しながら、変更操作に対応する各コンポーネントの変更処理を実行できる。
【００４０】
情報処理装置４は、負荷予測値に応じて変更指示を送信する送信間隔を動的に調整するため、大量のコンポーネントに対する変更処理の高速化を実現できる。
【００４１】
情報処理装置４は、変更対象コンポーネントの負荷予測値及び依存関係に基づき、変更対象コンポーネントに対して変更処理を順次実行する。その結果、運用管理者は、変更対象コンポーネントの処理状況を意識する必要がないため、大量コンポーネントに対する変更処理を実現できる。
【００４２】
尚、上記実施例の予測部２２は、観測部２１からの変更対象コンポーネントの負荷実測値及び、分散処理システム３からの現在の進捗率に応じて進捗率１００％になるまでの負荷予測値の推移を算出し、負荷予測値が閾値を超えたか否かを判定した。そこで、予測部２２の閾値判定方法の一例につき、詳細に説明する。図１２は、予測部２２の閾値判定方法の一例を示す説明図である。
【００４３】
観測部２１は、変更対象コンポーネントの負荷実測値として送信間隔毎の変更処理中の負荷実測値及び変更処理後の負荷実測値を観測する。尚、変更処理中の負荷実測値は、変更処理実行中の一時負荷を含む負荷実測値である。変更処理後の負荷実測値は、変更処理実行後の定常負荷である負荷実測値である。
【００４４】
予測部２２は、送信間隔ｐ毎の変更処理中の負荷実測値ｙ１と、送信間隔毎の変更処理後の負荷実測値ｙ２とに基づき、一時負荷、すなわち変更処理中の継続時間Ｌを推定する。予測部２２は、負荷実測値ｙ１、送信間隔ｐ及び継続時間Ｌに基づき、Ｌ×ｙ１÷ｐでピーク負荷予測値を算出する。更に、予測部２２は、コンポーネント台数ｎ×ｙ２で定常負荷予測値を算出する。予測部２２は、観測対象コンポーネント毎の変更処理中の負荷実測値ｙ１、変更処理後の負荷実測値ｙ２及び継続時間Ｌを推定する場合、全観測対象コンポーネントの負荷実測値ｙ１の平均値、負荷実測値ｙ２の平均値及び継続時間Ｌの平均値から推定しても良い。
【００４５】
予測部２２は、ピーク負荷予測値が閾値を超え、かつ、ピーク負荷予測値が閾値を超える時間が所定時間継続しなかった場合、ピーク負荷予測値を含む負荷超過通知を変更制御部２３に通知する。図１３は、ピーク負荷予測値と送信間隔との対応関係の一例を示す説明図である。変更制御部２３は、図１３に示すように、ピーク負荷予測値が閾値以下になるように送信間隔を調整する。
【００４６】
尚、上記実施例の分散処理システムは、変更対象コンポーネントの負荷観測をコンポーネント単位で実行したが、コンポーネント内で実行する処理単位で実行しても良く、適宜変更可能である。図１４は、処理追加の変更操作を検出した場合の変更対象コンポーネントの一例を示す説明図である。尚、説明の便宜上、処理Ａ及び処理Ｂを追加する変更操作を検出した場合、処理Ａ１及び処理Ｂ１を依存先コンポーネントとしてコンポーネント“１”〜“４”に追加する。更に、処理Ａ１に依存する処理Ａ２の依存元コンポーネントはコンポーネント“５”、処理Ｂ１に依存する処理Ｂ２の依存元コンポーネントはコンポーネント“６”とする。
【００４７】
観測部２１は、処理Ａの変更操作を検知した場合、依存関係に基づき、変更対象コンポーネントが“１”、“２”、“３”、“４”及び“５”であるため、これら変更対象コンポーネントの負荷実測値を観測する。また、観測部２１は、処理Ｂの変更操作を検知した場合、依存関係に基づき、変更対象コンポーネントが“１”、“２”、“３”、“４”及び“６”  であるため、これら変更対象コンポーネントの負荷実測値を観測する。
【００４８】
情報処理装置４は、変更処理が相互に依存してない場合、独立して同時並行に処理を進めることになる。図１５は、変更処理が相互に依存してない場合の一例を示す説明図である。
【００４９】
図１５に示す依存関係では、例えば、コンポーネント“１”〜“４”を有し、コンポーネント“１”の処理Ａ１はコンポーネント“３”の処理Ａ２の依存先、コンポーネント“１”の処理Ｂ１はコンポーネント“４”の処理Ｂ２の依存先である。更に、コンポーネント“２”の処理Ａ１はコンポーネント“３”の処理Ａ２の依存先、コンポーネント“２”の処理Ｂ１はコンポーネント“４”の処理Ｂ２の依存先である。
【００５０】
情報処理装置４は、変更処理が相互に依存していない場合、処理Ａ１及び処理Ａ２の変更操作に対応した処理Ａ１及び処理Ａ２の変更処理と、処理Ｂ１及び処理Ｂ２の変更操作に対応した処理Ｂ１及び処理Ｂ２の変更処理とを同時並列に実行することになる。
【００５１】
情報処理装置４は、変更処理が相互に依存している場合、例えば、一方の変更処理を実行した後、他方の変更処理を実行する。図１６は、変更処理が相互に依存している場合の一例を示す説明図である。
【００５２】
図１６に示す依存関係では、コンポーネント“１”〜“４”を有し、コンポーネント“１”の処理Ａ１はコンポーネント“３”の処理Ａ２の依存先、コンポーネント“１”の処理Ａ１はコンポーネント“１”内の処理Ｂ１の依存先である。更に、コンポーネント“１”の処理Ｂ１はコンポーネント“４”内の処理Ｂ２の依存先である。
【００５３】
コンポーネント“２”の処理Ａ１はコンポーネント“３”の処理Ａ２及びコンポーネント“２”内の処理Ｂ１の依存先である。更に、コンポーネント“２”の処理Ｂ１はコンポーネント“４”内の処理Ｂ２の依存先である。
【００５４】
情報処理装置４は、変更処理が相互に依存している場合、例えば、処理Ａ１及び処理Ａ２の変更操作に対応した処理Ａ１及び処理Ａ２の変更処理を実行した後、処理Ｂ１及び処理Ｂ２の変更操作に対応した処理Ｂ１及び処理Ｂ２の変更処理を実行することになる。
【００５５】
情報処理装置４は、変更操作を検出した場合、変更操作に対応した処理の依存関係から変更処理の依存元コンポーネントを特定し、依存元コンポーネントから優先的に変更処理を開始する。情報処理装置４は、依存元コンポーネントの変更処理後、変更処理前の変更対象コンポーネントに対して変更処理を順次実行する。この際、情報処理装置４は、観測対象コンポーネントの負荷予測値に応じて変更指示の送信間隔を動的に調整する。
【００５６】
尚、上記実施例の情報処理装置４は、観測対象コンポーネントの負荷予測値に応じて変更指示の送信間隔を動的に調整したが、送信間隔に加えて、変更処理前の変更対象コンポーネントに対する変更処理の実行順序を動的に調整しても良く、適宜変更可能である。
【００５７】
情報処理装置４は、例えば、物理リソースに対する負荷の偏りが生じないように、異なるリソースに配置されている変更対象コンポーネントに対して変更処理を順次実行しても良い。情報処理装置４は、過去変更時の負荷発生実績を管理しておき、その負荷発生実績に基づき、変更対象コンポーネントに対する変更処理を順次実行しても良い。情報処理装置４は、各コンポーネントの状態値に応じて変更対象コンポーネントに対する変更処理を順次実行しても良い。
【００５８】
尚、変更制御部２３は、負荷予測値に応じて変更対象コンポーネントに対する送信間隔を動的に調整した。しかしながら、送信間隔を動的に調整するだけではなく、変更対象コンポーネントへの変更指示の順序を動的に変更しても良く、適宜変更可能である。
【００５９】
変更制御部２３は、負荷超過通知を受信した場合、負荷超過通知内の負荷予測値及び現在の進捗率に応じて変更指示の送信間隔が長くなるように調整したが、これに限定されるものではない。例えば、変更制御部２３は、負荷超過通知を受信した場合、変更処理の中止を指示するようにしても良く、適宜変更可能である。また、ダッシュボード５は、予測部２２からの負荷超過通知を受信した場合、変更処理の中止を報知出力しても良い。
【００６０】
判定部２２Ｂが使用する閾値は、事前に設定した固定値としたが、例えば、分散システム１全体の負荷量や物理リソースの状況から動的に変更しても良く、適宜変更可能である。更に、閾値は、コンポーネント毎に異なる閾値を設定しても良い。  
【００６１】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【００６２】
更に、各装置で行われる各種処理機能は、ＣＰＵ（Central  Processing  Unit）（又はＭＰＵ（Micro  Processing  Unit）、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良いことは言うまでもない。
【００６３】
ところで、本実施例で説明した各種の処理は、予め用意されたプログラムを情報処理装置で実行することで実現できる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行する情報処理装置の一例を説明する。図１７は、変更制御プログラムを実行する情報処理装置の一例を示す説明図である。
【００６４】
図１７に示す変更制御プログラムを実行する情報処理装置１００では、通信装置１１０と、表示装置１２０と、操作装置１３０と、ＨＤＤ１４０と、ＲＯＭ１５０と、ＲＡＭ１６０と、ＣＰＵ１７０と、バス１８０とを有する。
【００６５】
そして、ＲＯＭ１５０には、上記実施例と同様の機能を発揮する変更制御プログラムが予め記憶されている。尚、変更制御プログラムは、必ずしも最初からＲＯＭ１５０に記憶させておかなくても良く、図示せぬドライブで読取可能な記録媒体に変更制御プログラムが記録されていても良い。また、記録媒体としては、例えば、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、ＵＳＢメモリ、ＳＤカードやＩＣカード等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ等でも良い。情報処理装置１００が記録媒体に記憶中の変更制御プログラムを読み出して実行するようにしても良い。また、変更制御プログラムとしては、図１７に示すように、観測プログラム１５０Ａ、予測プログラム１５０Ｂ、調整プログラム１５０Ｃ及び指示プログラム１５０Ｄが含まれる。尚、プログラム１５０Ａ〜１５０Ｄについては、適宜統合又は分散しても良い。
【００６６】
そして、ＣＰＵ１７０は、これらのプログラム１５０Ａ〜１５０ＤをＲＯＭ１５０から読み出し、これら読み出された各プログラムをＲＡＭ１６０のワークエリア上に展開する。そして、ＲＡＭ１６０は、展開した各プログラム１５０Ａ〜１５０Ｄを、観測プロセス１６０Ａ、予測プロセス１６０Ｂ、調整プロセス１６０Ｃ及び指示プロセス１６０Ｄとして機能する。
【００６７】
ＣＰＵ１７０は、分散処理システム上に配置された複数のコンポーネントの内、コンポーネント間に依存関係がある変更対象コンポーネントの負荷実測値を観測する。ＣＰＵ１７０は、変更対象コンポーネントの負荷実測値に基づき、全ての変更対象コンポーネントの変更処理が完了するまでの負荷予測値を算出する。ＣＰＵ１７０は、負荷予測値が閾値を超えた場合に変更処理前の変更対象コンポーネントに対して、変更処理の開始を指示する変更指示の送信間隔を調整する。ＣＰＵ１７０は、調整された送信間隔に基づき、変更処理前の変更対象コンポーネントに対して変更指示を指示する。その結果、変更処理に係る負荷変動を抑制できる。
【符号の説明】
【００６８】
１  分散システム
２  コンポーネント
３  分散処理システム
４  情報処理装置
２１  観測部
２２  予測部
２３  変更制御部
２３Ａ  調整部
２３Ｂ  指示部
【図１】
0006988537.tif 000002
【図２】
0006988537.tif 000003
【図３】
0006988537.tif 000004
【図４】
0006988537.tif 000005
【図５】
0006988537.tif 000006
【図６】
0006988537.tif 000007
【図７】
0006988537.tif 000008
【図８】
0006988537.tif 000009
【図９】
0006988537.tif 000010
【図１０】
0006988537.tif 000011
【図１１】
0006988537.tif 000012
【図１２】
0006988537.tif 000013
【図１３】
0006988537.tif 000014
【図１４】
0006988537.tif 000015
【図１５】
0006988537.tif 000016
【図１６】
0006988537.tif 000017
【図１７】
0006988537.tif 000018
【図１８】
0006988537.tif 000019