IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特許7598012差分出力方法、および差分出力プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-03
(45)【発行日】2024-12-11
(54)【発明の名称】差分出力方法、および差分出力プログラム
(51)【国際特許分類】
   G06F 11/30 20060101AFI20241204BHJP
【FI】
G06F11/30 151
G06F11/30 140A
【請求項の数】 8
(21)【出願番号】P 2021034180
(22)【出願日】2021-03-04
(65)【公開番号】P2022134784
(43)【公開日】2022-09-15
【審査請求日】2023-11-09
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100104190
【弁理士】
【氏名又は名称】酒井 昭徳
(72)【発明者】
【氏名】近藤 玲子
(72)【発明者】
【氏名】白石 崇
(72)【発明者】
【氏名】上野 仁
【審査官】松平 英
(56)【参考文献】
【文献】特開2000-003347(JP,A)
【文献】特開2011-113123(JP,A)
【文献】特開2014-191120(JP,A)
【文献】特開2013-125467(JP,A)
【文献】近藤 玲子 他,マイクロサービス運用支援のためのコンテナからインフラまでの構成差分検出技術の開発,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2020年05月07日,Vol.120 No.18,pp.7-12,[ISSN]2432-6380
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/00-8/38
8/60-8/77
9/44-9/445
9/451
11/07
11/28-11/36
(57)【特許請求の範囲】
【請求項1】
システム構成の変更の時点それぞれに、当該変更の前後での前記システム構成の差分を対応付けて記憶する記憶部を参照して、所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分を足し合わせて、前記所定期間の前後での前記システム構成の差分を生成しておき、
前記所定期間の前後での前記システム構成の差分を生成した後に、対象期間の前後での前記システム構成の差分を出力する要求を受け付けた際、前記対象期間に前記所定期間が含まれれば、前記記憶部を参照して、生成しておいた前記差分と、前記対象期間のうち前記所定期間以外の残余期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とを足し合わせることにより、前記対象期間の前後での前記システム構成の差分を生成し、
生成した前記対象期間の前後での前記システム構成の差分を出力する、
処理をコンピュータが実行することを特徴とする差分出力方法。
【請求項2】
前記対象期間の前後での前記システム構成の差分を生成する処理は、
前記要求を受け付けた際、前記対象期間に前記所定期間が含まれなければ、前記記憶部を参照して、前記対象期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記対象期間の前後での前記システム構成の差分を生成する、ことを特徴とする請求項1に記載の差分出力方法。
【請求項3】
前記システム構成の変更の第1の時点から、前記第1の時点より後の前記システム構成の変更の第2の時点までの期間の前後での前記システム構成の差分を生成する際の処理時間が閾値以上であれば、当該期間を前記所定期間に設定する、
処理を前記コンピュータが実行し、
前記所定期間の前後での前記システム構成の差分を生成する処理は、
前記記憶部を参照して、設定した前記所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記所定期間の前後での前記システム構成の差分を生成する、ことを特徴とする請求項1または2に記載の差分出力方法。
【請求項4】
前記システム構成の変更の時点が所定数現れる都度、前記所定数現れた前記システム構成の変更の時点のうち先頭の時点から末尾の時点までの期間を前記所定期間に設定する、
処理を前記コンピュータが実行し、
前記所定期間の前後での前記システム構成の差分を生成する処理は、
前記所定期間を設定する都度、前記記憶部を参照して、前記所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記所定期間の前後での前記システム構成の差分を生成する、ことを特徴とする請求項1~3のいずれか一つに記載の差分出力方法。
【請求項5】
前記所定期間の前後での前記システム構成の差分を生成する処理は、
所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分のうち、先頭の前記システム構成の差分に、後続の前記システム構成の差分を順に足し合わせることにより、前記所定期間の前後での前記システム構成の差分を生成しておき、
前記対象期間の前後での前記システム構成の差分を生成する処理は、
生成しておいた前記差分と、前記残余期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とのうち、先頭の前記システム構成の差分に、後続の前記システム構成の差分を順に足し合わせることにより、前記対象期間の前後での前記システム構成の差分を生成して出力する、ことを特徴とする請求項1~4のいずれか一つに記載の差分出力方法。
【請求項6】
前記記憶部は、さらに、複数の時点それぞれでの前記システム構成を記憶し、
前記記憶部を参照して、前記対象期間の末尾の時点より前の時点での前記システム構成と、当該時点から前記対象期間の末尾の時点までの期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とに基づいて、前記対象期間の末尾の時点での前記システム構成を特定し、
特定した前記対象期間の末尾の時点での前記システム構成を出力する、
処理を前記コンピュータが実行することを特徴とする請求項1~5のいずれか一つに記載の差分出力方法。
【請求項7】
前記記憶部は、さらに、複数の時点それぞれでの前記システム構成を記憶し、
前記記憶部を参照して、前記対象期間の先頭の時点より前の時点での前記システム構成と、当該時点から前記対象期間の先頭の時点までの期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とに基づいて、前記対象期間の先頭の時点での前記システム構成を特定し、
特定した前記対象期間の先頭の時点での前記システム構成を出力する、
処理を前記コンピュータが実行することを特徴とする請求項1~6のいずれか一つに記載の差分出力方法。
【請求項8】
システム構成の変更の時点それぞれに、当該変更の前後での前記システム構成の差分を対応付けて記憶する記憶部を参照して、所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分を足し合わせることにより、前記所定期間の前後での前記システム構成の差分を生成しておき、
前記所定期間の前後での前記システム構成の差分を生成した後に、対象期間の前後での前記システム構成の差分を出力する要求を受け付けた際、前記対象期間に前記所定期間が含まれれば、前記記憶部を参照して、生成しておいた前記差分と、前記対象期間のうち前記所定期間以外の残余期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とを足し合わせることにより、前記対象期間の前後での前記システム構成の差分を生成し、
生成した前記対象期間の前後での前記システム構成の差分を出力する、
処理をコンピュータに実行させることを特徴とする差分出力プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、差分出力方法、および差分出力プログラムに関する。
【背景技術】
【0002】
従来、複数の機器を接続して形成されたシステムの管理者は、システムに障害が発生した場合、障害の原因を特定するために、システム構成が、いつどのように変化したのかを把握することを望む場合がある。これに対し、定期的にシステム構成を記録しておき、障害発生時のシステム構成と、正常動作時のシステム構成との差分を出力する技術がある。
【0003】
先行技術としては、例えば、障害イベントにより通知された障害部位を基に、障害が発生した部位が他の部位に影響を及ぼす範囲を格納した影響範囲特定テーブル部を参照して、障害により影響がある仮想マシンを特定するものがある。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2010-009411号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、異なるシステム構成間の差分を出力する要求に応じて、当該差分を生成して出力する際にかかる処理時間の増大化を招く場合がある。例えば、記録したシステム構成が多くなるほど、障害発生時のシステム構成と、正常動作時のシステム構成とを検索し、それぞれのシステム構成間の差分を生成して出力する際にかかる処理時間が増大してしまう。
【0006】
1つの側面では、本発明は、異なるシステム構成間の差分を出力する要求に応じて、当該差分を生成して出力する際にかかる処理時間の短縮化を図ることを目的とする。
【課題を解決するための手段】
【0007】
1つの実施態様によれば、システム構成の変更の時点それぞれに、当該変更の前後での前記システム構成の差分を対応付けて記憶する記憶部を参照して、所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記所定期間の前後での前記システム構成の差分を生成しておき、対象期間の前後での前記システム構成の差分を出力する要求を受け付けた際、前記対象期間に前記所定期間が含まれれば、前記記憶部を参照して、生成しておいた前記差分と、前記対象期間のうち前記所定期間以外の残余期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とに基づいて、前記対象期間の前後での前記システム構成の差分を生成し、生成した前記対象期間の前後での前記システム構成の差分を出力する差分出力方法、および差分出力プログラムが提案される。
【発明の効果】
【0008】
一態様によれば、異なるシステム構成間の差分を出力する要求に応じて、当該差分を生成して出力する際にかかる処理時間の短縮化を図ることが可能になる。
【図面の簡単な説明】
【0009】
図1図1は、実施の形態にかかる差分出力方法の一実施例を示す説明図である。
図2図2は、差分出力システム200の一例を示す説明図である。
図3図3は、情報処理装置100のハードウェア構成例を示すブロック図である。
図4図4は、情報処理装置100の機能的構成例を示すブロック図である。
図5図5は、情報処理装置100の具体的な機能的構成例を示すブロック図である。
図6図6は、情報処理装置100の第1動作例を示す説明図である。
図7図7は、情報処理装置100の第2動作例を示す説明図である。
図8図8は、隣接時刻間構成差分情報を生成する一例を示す説明図である。
図9図9は、隣接時刻間構成差分情報を足し合わせる一例を示す説明図である。
図10図10は、全構成情報を取得する具体例を示す説明図である。
図11図11は、隣接時刻間構成差分情報を生成する具体例を示す説明図である。
図12図12は、期間差分情報を生成する具体例を示す説明図(その1)である。
図13図13は、期間差分情報を生成する具体例を示す説明図(その2)である。
図14図14は、期間差分情報を生成する別の具体例を示す説明図である。
図15図15は、2つの時刻の指定を受け付ける具体例を示す説明図である。
図16図16は、任意時刻間構成差分情報を生成する具体例を示す説明図である。
図17図17は、任意時刻間構成差分情報を把握可能に出力する具体例を示す説明図である。
図18図18は、定期実行処理手順の一例を示すフローチャートである。
図19図19は、応答実行処理手順の一例を示すフローチャートである。
図20図20は、構成情報取得処理手順の一例を示すフローチャートである。
図21図21は、構成差分算出処理手順の一例を示すフローチャートである。
図22図22は、期間差分算出処理手順の一例を示すフローチャートである。
図23図23は、期間差分算出処理手順の別の例を示すフローチャートである。
図24図24は、構成差分可視化処理手順の一例を示すフローチャートである。
図25図25は、構成差分合成処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下に、図面を参照して、本発明にかかる差分出力方法、および差分出力プログラムの実施の形態を詳細に説明する。
【0011】
(実施の形態にかかる差分出力方法の一実施例)
図1は、実施の形態にかかる差分出力方法の一実施例を示す説明図である。情報処理装置100は、あるシステムについて、ある期間の前後でのシステム構成の差分を生成するためのコンピュータである。
【0012】
システムは、例えば、複数の機器、および、機器同士を接続する接続装置を含み、複数の機器を接続することにより形成される。機器は、例えば、サーバである。接続装置は、例えば、物理スイッチである。システムは、例えば、機器上で動作するアプリ、仮想マシン、または、コンテナなどを含む。システムは、例えば、クラウドシステムである。システム構成は、例えば、システムに含まれる要素それぞれを特定可能に示す。要素は、例えば、機器、または、接続装置などである。要素は、例えば、アプリ、仮想マシン、または、コンテナなどである。
【0013】
ここで、あるシステムについて、システム構成が変更されることがある。例えば、システムに含まれる要素が、システムに追加され、または、システムから削除されることがある。具体的には、システムを形成する機器が、システムに追加され、または、システムから削除されることがある。より具体的には、システムの保守管理のために、システムを形成する機器が、システムに追加され、または、システムから削除されることがある。また、より具体的には、システムの利用者の要望に従って、システムの機能を変更し、または、システムの性能を向上するために、システムを形成する機器が、システムに追加され、または、システムから削除されることがある。
【0014】
ここで、システムの管理者は、システムに障害が発生した場合、障害の原因を特定するために、システム構成が、いつどのように変化したのかを把握することを望むことがある。しかしながら、従来では、システム構成が、いつどのように変化したのかを示す、異なるシステム構成間の差分を生成して出力する際にかかる処理時間の増大化を招いてしまうことがある。このため、障害の原因を特定する際、システムの管理者にかかる作業時間および作業負担の増大化を招いてしまい、障害の解消にかかる所要時間の増大化を招いてしまうことがあるという問題がある。
【0015】
例えば、システム構成の履歴を残しておき、システム構成の履歴の中から、ある期間の前後でのシステム構成を検索して比較することにより、ある期間の前後でのシステム構成の差分を生成する手法が考えられる。この手法では、システム構成が、いつどのように変化したのかを示す、異なるシステム構成間の差分を生成して出力する際にかかる処理時間の増大化を招いてしまう。
【0016】
例えば、システムの規模が大きくなり、システムに含まれる要素の数が多くなるほど、システム構成の履歴のサイズが大きくなる傾向がある。例えば、近年では、システムに含まれる要素として、仮想マシンおよびコンテナなども存在し、システムに含まれる要素の種類が比較的多くなっているため、システムの規模が大きくなり易い。このため、ある期間の前後でのシステム構成を検索して比較する際にかかる処理時間が長くなる傾向がある。例えば、システム構成を比較するにあたり、システムに含まれる要素を比較することになるところ、比較する要素の数が膨大になり、処理時間が長くなることがある。そして、ある期間の前後でのシステム構成の差分を生成して出力する際にかかる処理時間の増大化を招き、システムの管理者にかかる作業時間および作業負担の増大化を招くことになる。
【0017】
これに対し、例えば、システム構成の変更ごとに、当該変更の前後でのシステム構成の差分を残しておき、ある期間内の変更ごとの差分を検索して足し合わせることにより、ある期間の前後でのシステム構成の差分を生成する手法が考えられる。この手法でも、システム構成が、いつどのように変化したのかを示す、異なるシステム構成間の差分を生成して出力する際にかかる処理時間の増大化を招いてしまう。
【0018】
例えば、ある期間の前後でのシステム構成の差分を生成する際、ある期間が長いほど、検索して足し合わせる差分の数が多くなる傾向がある。このため、ある期間が長いほど、ある期間の前後でのシステム構成の差分を生成して出力する際にかかる処理時間の増大化を招くことになる。そして、システムの管理者にかかる作業時間および作業負担の増大化を招くことになる。
【0019】
そこで、本実施の形態では、ある期間の前後でのシステム構成の差分を生成して出力する際にかかる処理時間の短縮化を図ることができる差分出力方法について説明する。
【0020】
図1において、情報処理装置100は、システム構成の変更の時点それぞれに、当該変更の前後でのシステム構成の差分を対応付けて記憶する記憶部を有する。差分は、例えば、システムを形成する要素が追加、削除、または、変更されたことを示す情報である。図1の例では、下向きの実線矢印、および、下向きの点線矢印が、システム構成の変更の時点を示す。記憶部は、例えば、システム構成の変更の時点time_xに対応付けて、当該変更の前後でのシステム構成の差分diff_xを記憶する。
【0021】
(1-1)情報処理装置100は、記憶部を参照して、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分に基づいて、所定期間の前後でのシステム構成の差分を生成しておく。図1の例では、所定期間は、システム構成の変更の時点time_a以後、システム構成の変更の時点time_b以前の期間である。情報処理装置100は、生成した差分を、所定期間に対応付けて記憶部に記憶しておく。情報処理装置100は、例えば、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を順に足し合わせて、所定期間の前後でのシステム構成の差分diff_abを生成しておく。情報処理装置100は、例えば、生成した差分diff_abを、所定期間に対応付けて記憶部に記憶しておく。
【0022】
(1-3)情報処理装置100は、対象期間の前後でのシステム構成の差分を出力する要求を受け付ける。要求は、対象期間を特定可能にする情報を含む。図1の例では、情報処理装置100は、システム構成の変更の時点time_x以後、システム構成の変更の時点time_y以前の期間を、対象期間として示す、対象期間の前後でのシステム構成の差分を出力する要求を受け付ける。
【0023】
(1-4)情報処理装置100は、要求を受け付けた際、対象期間に所定期間が含まれるか否かを判定する。ここで、情報処理装置100は、対象期間に所定期間が含まれれば、記憶部を参照して、対象期間のうち所定期間以外の残余期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得する。そして、情報処理装置100は、生成しておいた差分と、取得した差分それぞれとに基づいて、対象期間の前後でのシステム構成の差分を生成する。情報処理装置100は、例えば、生成しておいた差分と、取得した差分それぞれとのうち、先頭の差分に、後続の差分を順に足し合わせることにより、対象期間の前後でのシステム構成の差分diff_xyを生成する。
【0024】
一方で、情報処理装置100は、対象期間に所定期間が含まれなければ、記憶部を参照して、対象期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得する。そして、情報処理装置100は、取得した差分に基づいて、対象期間の前後でのシステム構成の差分を生成する。情報処理装置100は、例えば、取得した差分それぞれのうち、先頭の差分に、後続の差分を順に足し合わせることにより、対象期間の前後でのシステム構成の差分を生成する。
【0025】
(1-5)情報処理装置100は、生成した対象期間の前後でのシステム構成の差分を出力する。情報処理装置100は、例えば、生成した差分diff_xyを、システムの管理者が参照可能に出力する。これにより、情報処理装置100は、要求を受け付けてから、対象期間の前後でのシステム構成の差分を出力するまでにかかる処理時間の短縮化を図ることができる。そして、情報処理装置100は、システムの管理者にかかる作業時間および作業負担の低減化を図ることができる。
【0026】
情報処理装置100は、システム構成の差分を利用するため、システム構成の履歴をすべて記憶しておく場合に比べて、記憶領域の使用量の増大化を抑制することができる。情報処理装置100は、例えば、システムの規模が比較的大きく、システムに含まれる要素の数が比較的多くなっても、記憶領域の使用量の増大化を抑制することができる。このため、情報処理装置100は、対象期間の前後でのシステム構成の差分を生成して出力する際にかかる処理時間の短縮化を図ることができる。
【0027】
情報処理装置100は、対象期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分のうち、一部の差分を利用せずに済ませることができる。このため、情報処理装置100は、対象期間の前後でのシステム構成の差分を生成して出力する際にかかる処理時間の短縮化を図ることができる。
【0028】
また、情報処理装置100は、システムの管理者が、対象期間の前後でのシステム構成の差分を参照して、システムに発生した障害の原因を特定可能にすることができる。そして、情報処理装置100は、システムの管理者にかかる作業時間および作業負担の低減化を図ることができ、障害の解消にかかる所要時間の短縮化を図ることができる。
【0029】
ここでは、システムの管理者が、対象期間の前後でのシステム構成の差分を参照して、システムに発生した障害の原因を特定する場合について説明したが、これに限らない。例えば、システムの管理者が、対象期間の前後でのシステム構成の差分を、システムに発生した障害の原因を特定する用途以外のために参照する場合があってもよい。
【0030】
(差分出力システム200の一例)
次に、図2を用いて、図1に示した情報処理装置100を適用した、差分出力システム200の一例について説明する。
【0031】
図2は、差分出力システム200の一例を示す説明図である。図2において、差分出力システム200は、情報処理装置100と、1以上のノード装置201と、管理者側装置202とを含む。
【0032】
差分出力システム200において、情報処理装置100とノード装置201とは、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。また、情報処理装置100と管理者側装置202とは、有線または無線のネットワーク210を介して接続される。
【0033】
情報処理装置100は、システム220を管理するコンピュータである。情報処理装置100は、システム220のシステム構成に関する情報を、ノード装置201それぞれから収集する。情報処理装置100は、収集した情報に基づいて、システム220のシステム構成を特定する。
【0034】
情報処理装置100は、システム220のシステム構成の変更ごとに、当該変更の前後でのシステム220のシステム構成の差分を生成して記憶しておく。情報処理装置100は、所定期間ごとに、所定期間内のシステム220のシステム構成の変更の時点それぞれに対応する差分に基づいて、所定期間の前後でのシステム220のシステム構成の差分を生成して記憶しておく。
【0035】
情報処理装置100は、対象期間の前後でのシステム220のシステム構成の差分を出力する要求を、管理者側装置202から受信する。要求は、対象期間を特定可能にする情報を含む。情報処理装置100は、要求を受信すると、対象期間に所定期間が含まれるか否かを判定する。
【0036】
情報処理装置100は、対象期間に所定期間が含まれれば、対象期間のうち所定期間の前後でのシステム220のシステム構成の差分を取得する。また、情報処理装置100は、対象期間のうち所定期間以外の残余期間内のシステム220のシステム構成の変更の時点それぞれに対応する差分を取得する。そして、情報処理装置100は、取得した差分を、時間順に足し合わせることにより、対象期間の前後でのシステム220のシステム構成の差分を生成して出力する。出力は、例えば、管理者側装置202への送信である。
【0037】
情報処理装置100は、対象期間に所定期間が含まれなければ、対象期間内のシステム220のシステム構成の変更の時点それぞれに対応する差分を取得する。そして、情報処理装置100は、取得した差分を、時間順に足し合わせることにより、対象期間の前後でのシステム220のシステム構成の差分を生成して出力する。情報処理装置100は、例えば、サーバ、または、PC(Personal Computer)などである。
【0038】
ノード装置201は、システム220を形成するコンピュータである。ノード装置201は、アプリ、仮想マシン、または、コンテナなどを実行する。ノード装置201は、システム220のシステム構成に関する情報を、情報処理装置100に送信する。ノード装置201は、例えば、サーバ、または、PC、タブレット端末、スマートフォンなどである。
【0039】
管理者側装置202は、システム220の管理者によって用いられるコンピュータである。管理者側装置202は、対象期間の前後でのシステム220のシステム構成の差分を出力する要求を、情報処理装置100に送信する。管理者側装置202は、送信した結果、対象期間の前後でのシステム220のシステム構成の差分を、情報処理装置100から受信する。
【0040】
管理者側装置202は、対象期間の前後でのシステム220のシステム構成の差分を、管理者が参照可能に出力する。管理者側装置202は、例えば、サーバ、または、PC、タブレット端末、スマートフォンなどである。
【0041】
ここでは、情報処理装置100が、管理者側装置202とは異なる装置である場合について説明したが、これに限らない。例えば、情報処理装置100が、管理者側装置202としての機能を有する場合があってもよい。この場合、差分出力システム200は、管理者側装置202を含まなくてもよい。
【0042】
また、ここでは、情報処理装置100が、ノード装置201とは異なる装置である場合について説明したが、これに限らない。例えば、情報処理装置100が、ノード装置201としての機能を有する場合があってもよい。
【0043】
(情報処理装置100のハードウェア構成例)
次に、図3を用いて、情報処理装置100のハードウェア構成例について説明する。
【0044】
図3は、情報処理装置100のハードウェア構成例を示すブロック図である。図3において、情報処理装置100は、CPU(Central Processing Unit)301と、メモリ302と、ネットワークI/F(Interface)303と、記録媒体I/F304と、記録媒体305とを有する。また、各構成部は、バス300によってそれぞれ接続される。
【0045】
ここで、CPU301は、情報処理装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることにより、コーディングされている処理をCPU301に実行させる。
【0046】
ネットワークI/F303は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F303は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F303は、例えば、モデムやLANアダプタなどである。
【0047】
記録媒体I/F304は、CPU301の制御に従って記録媒体305に対するデータのリード/ライトを制御する。記録媒体I/F304は、例えば、ディスクドライブ、SSD(Solid State Drive)、USB(Universal Serial Bus)ポートなどである。記録媒体305は、記録媒体I/F304の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体305は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体305は、情報処理装置100から着脱可能であってもよい。
【0048】
情報処理装置100は、上述した構成部の他、例えば、キーボード、マウス、ディスプレイ、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を複数有していてもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を有していなくてもよい。
【0049】
(ノード装置201のハードウェア構成例)
ノード装置201のハードウェア構成例は、具体的には、図3に示した情報処理装置100のハードウェア構成例と同様であるため、説明を省略する。
【0050】
(管理者側装置202のハードウェア構成例)
管理者側装置202のハードウェア構成例は、具体的には、図3に示した情報処理装置100のハードウェア構成例と同様であるため、説明を省略する。
【0051】
(情報処理装置100の機能的構成例)
次に、図4を用いて、情報処理装置100の機能的構成例について説明する。
【0052】
図4は、情報処理装置100の機能的構成例を示すブロック図である。情報処理装置100は、記憶部400と、取得部401と、第1生成部402と、第2生成部403と、第3生成部404と、出力部405とを含む。
【0053】
記憶部400は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域によって実現される。以下では、記憶部400が、情報処理装置100に含まれる場合について説明するが、これに限らない。例えば、記憶部400が、情報処理装置100とは異なる装置に含まれ、記憶部400の記憶内容が情報処理装置100から参照可能である場合があってもよい。
【0054】
取得部401~出力部405は、制御部の一例として機能する。取得部401~出力部405は、具体的には、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶されたプログラムをCPU301に実行させることにより、または、ネットワークI/F303により、その機能を実現する。各機能部の処理結果は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶される。
【0055】
記憶部400は、各機能部の処理において参照され、または更新される各種情報を記憶する。記憶部400は、システム構成の変更の時点それぞれに、当該変更の前後でのシステム構成の差分を対応付けて記憶する。システムは、複数の要素を含む。要素は、物理的、または、仮想的である。要素は、例えば、機器、または、物理スイッチなどである。要素は、例えば、アプリ、仮想マシン、または、コンテナなどである。差分は、システムを形成する要素が追加、削除、または、変更されたことを示す情報である。記憶部400は、例えば、システム構成の変更の時点それぞれに、第1生成部402によって生成される当該変更の前後でのシステム構成の差分を対応付けて記憶する。
【0056】
記憶部400は、所定期間それぞれに、当該所定期間の前後でのシステム構成の差分を対応付けて記憶する。所定期間それぞれは、例えば、互いに重複しないことが好ましい。所定期間それぞれは、例えば、他の所定期間と隣接することが好ましい。所定期間は、例えば、一定期間である。
【0057】
所定期間は、例えば、動的に長さが変更される期間であってもよい。所定期間は、具体的には、システムの変更の時点が所定回数現れた期間であってもよい。所定期間は、例えば、第2生成部403によって設定される。記憶部400は、例えば、所定期間それぞれに、第2生成部403によって生成される当該所定期間の前後でのシステム構成の差分を対応付けて記憶する。
【0058】
記憶部400は、対象期間に、当該対象期間の前後でのシステム構成の差分を対応付けて記憶する。対象期間は、システムの管理者によって指定される。記憶部400は、例えば、対象期間に、第3生成部404によって生成される当該対象期間の前後でのシステム構成の差分を対応付けて記憶する。
【0059】
記憶部400は、複数の時点それぞれでのシステム構成を記憶する。システム構成を記憶する時点の数は、システム構成の変更の時点の数よりも少ないことが好ましい。
【0060】
取得部401は、各機能部の処理に用いられる各種情報を取得する。取得部401は、取得した各種情報を、記憶部400に記憶し、または、各機能部に出力する。また、取得部401は、記憶部400に記憶しておいた各種情報を、各機能部に出力してもよい。取得部401は、例えば、利用者の操作入力に基づき、各種情報を取得する。取得部401は、例えば、情報処理装置100とは異なる装置から、各種情報を受信してもよい。
【0061】
取得部401は、システム構成に関する情報を取得する。システム構成に関する情報は、システム構成を特定可能にする情報である。システム構成に関する情報は、例えば、システムに含まれる少なくともいずれかの要素を特定可能にする情報である。
【0062】
取得部401は、例えば、システム構成に関する情報を、ノード装置201から受信することにより取得する。取得部401は、具体的には、定期的に、システム構成に関する情報を、ノード装置201から受信することにより取得する。また、取得部401は、具体的には、システム構成の変更ごとに、システム構成に関する情報をノード装置201から受信することにより取得してもよい。
【0063】
取得部401は、システム構成を取得する。取得部401は、例えば、ある時点に取得したシステム構成に関する情報を纏めることにより、システム構成を特定することにより取得する。取得部401は、例えば、取得したシステム構成を、当該時点に対応付けて記憶部400に記憶する。
【0064】
取得部401は、対象期間の前後でのシステム構成の差分を出力する要求を取得する。要求は、例えば、対象期間を特定可能にする情報を含む。要求は、具体的には、対象期間の先頭の時点と、対象期間の末尾の時点とを指定する情報を含む。取得部401は、例えば、要求を、管理者側装置202から受信することにより取得する。
【0065】
取得部401は、いずれかの機能部の処理を開始する開始トリガーを受け付けてもよい。開始トリガーは、例えば、利用者による所定の操作入力があったことである。開始トリガーは、例えば、他のコンピュータから、所定の情報を受信したことであってもよい。開始トリガーは、例えば、いずれかの機能部が所定の情報を出力したことであってもよい。
【0066】
取得部401は、例えば、システム構成を取得したことを、第1生成部402の処理を開始する開始トリガーとして受け付けてもよい。取得部401は、例えば、所定期間が経過したことを、検索部と第2生成部403との処理を開始する開始トリガーとして受け付けてもよい。取得部401は、例えば、要求を取得したことを、検索部と第3生成部404との処理を開始する開始トリガーとして受け付けてもよい。
【0067】
第1生成部402は、システム構成の変更の時点ごとに、当該変更の前後でのシステム構成の差分を生成し、当該変更の時点に対応付けて記憶部400に記憶する。第1生成部402は、例えば、システム構成を取得する都度、今回取得したシステム構成と、前回取得したシステム構成とを比較し、今回取得したシステム構成と、前回取得したシステム構成との差分を生成する。次に、第1生成部402は、システム構成の変更の時点として、今回システム構成を取得した時点を採用する。そして、第1生成部402は、例えば、生成したシステム構成の差分を、今回システム構成を取得した時点と対応付けて記憶部400に記憶する。これにより、第1生成部402は、変更の前後でのシステム構成の差分を記憶しておくことができ、ある期間の前後でのシステム構成の差分を生成する際に利用可能にすることができる。
【0068】
第1生成部402は、例えば、システム構成を取得する都度、今回取得したシステム構成と、前回取得したシステム構成とを比較し、システム構成の変更があるか否かを判定してもよい。ここで、第1生成部402は、例えば、システム構成の変更があれば、今回取得したシステム構成と、前回取得したシステム構成との差分を生成し、今回システム構成を取得した時点と対応付けて記憶部400に記憶する。一方で、第1生成部402は、システム構成の変更がなければ、今回取得したシステム構成と、前回取得したシステム構成との差分を生成せずに済ませる。これにより、第1生成部402は、変更の前後でのシステム構成の差分を記憶する際の記憶領域のサイズの低減化を図ることができる。
【0069】
第2生成部403は、記憶部400を参照して、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分に基づいて、所定期間の前後でのシステム構成の差分を生成しておく。所定期間は、例えば、一定期間である。第2生成部403は、例えば、一定期間が経過する都度、経過した一定期間を、所定期間に設定する。
【0070】
第2生成部403は、例えば、記憶部400を参照して、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得する。そして、第2生成部403は、例えば、取得したシステム構成の差分のうち、先頭のシステム構成の差分に、後続のシステム構成の差分を時間順に足し合わせることにより、所定期間の前後でのシステム構成の差分を生成しておく。これにより、第2生成部403は、要求に応じて、所定期間を含む対象期間の前後でのシステム構成の差分を生成して出力する際にかかる処理時間を短縮可能にすることができる。
【0071】
第2生成部403は、例えば、システム構成の変更の第1の時点から、システム構成の変更の第2の時点までの期間について、当該期間の前後でのシステム構成の差分を生成する際の処理時間を算出する。第1の時点は、例えば、いずれかの所定期間の末尾の時点である。第1の時点は、例えば、前回いずれかの所定期間の前後でのシステム構成の差分を生成した時点である。第2の時点は、例えば、第1の時点より後である。ここで、第2生成部403は、例えば、算出した処理時間が閾値以上であれば、当該期間を所定期間に設定する。一方で、第2生成部403は、例えば、算出した処理時間が閾値未満であれば、当該期間を所定期間に設定しない。
【0072】
閾値は、例えば、異なるシステム構成の差分を生成する際の処理時間に基づいて設定される。閾値は、具体的には、比較的長い期間の前後でのシステム構成の差分を生成する際の処理時間が設定される。閾値は、具体的には、実際に、ある期間内のシステム構成の変更の時点それぞれに対応付けられた当該変更の前後でのシステム構成の差分を足し合わせることにより、当該期間の前後でのシステム構成の差分を生成する際の処理時間が設定される。閾値は、具体的には、変更の前後でのシステム構成の差分を足し合わせることにより、ある期間の前後でのシステム構成の差分を生成することが好ましくないほど、処理時間が長くなっていることを示すことが考えられる。
【0073】
第2生成部403は、具体的には、所定時点ごとに、システム構成の変更の第1の時点として、前回いずれかの所定期間の前後でのシステム構成の差分を生成した時点を設定する。所定時点は、例えば、システム構成の変更のタイミングである。所定時点は、例えば、一定の時間間隔で現れるタイミングであってもよい。また、第2生成部403は、具体的には、第1の時点より後のシステム構成の変更の第2の時点として、直近のシステム構成の変更の時点を設定する。次に、第2生成部403は、具体的には、第1の時点から第2の時点までの期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を足し合わせた場合の処理時間を算出する。
【0074】
そして、第2生成部403は、具体的には、算出した処理時間を、当該期間の前後でのシステム構成の差分を生成する際の処理時間に設定し、閾値以上であるか否かを判定する。ここで、第2生成部403は、具体的には、設定した処理時間が閾値以上であれば、当該期間を所定期間に設定する。一方で、第2生成部403は、具体的には、設定した処理時間が閾値未満であれば、当該期間を所定期間に設定しない。これにより、第2生成部403は、所定期間を動的に設定するため、処理時間の短縮化と、記憶領域の使用量の低減化とを考慮して、適切なタイミングで、所定期間の前後でのシステム構成の差分を生成可能にすることができる。
【0075】
第2生成部403は、例えば、システム構成の変更の第1の時点から、システム構成の変更の第2の時点までの期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分についてのデータ量に関する指標値を算出する。第2の時点は、例えば、第1の時点より後である。指標値は、例えば、最大値、最小値、平均値、中央値、最頻値などである。指標値は、例えば、合計値であってもよい。指標値は、例えば、分散であってもよい。ここで、第2生成部403は、例えば、算出した指標値が閾値以上であれば、当該期間を所定期間に設定する。一方で、第2生成部403は、例えば、算出した指標値が閾値未満であれば、当該期間を所定期間に設定しない。
【0076】
第2生成部403は、具体的には、所定時点ごとに、システム構成の変更の第1の時点として、前回いずれかの所定期間の前後でのシステム構成の差分を生成した時点を設定する。所定時点は、例えば、システム構成の変更のタイミングである。所定時点は、例えば、一定の時間間隔で現れるタイミングであってもよい。また、第2生成部403は、具体的には、第1の時点より後のシステム構成の変更の第2の時点として、直近のシステム構成の変更の時点を設定する。次に、第2生成部403は、具体的には、第1の時点から第2の時点までの期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分のデータ量の合計値を算出する。
【0077】
そして、第2生成部403は、具体的には、算出した合計値が閾値以上であるか否かを判定する。ここで、第2生成部403は、具体的には、設定した合計値が閾値以上であれば、当該期間を所定期間に設定する。一方で、第2生成部403は、具体的には、設定した合計値が閾値未満であれば、当該期間を所定期間に設定しない。これにより、第2生成部403は、所定期間を動的に設定するため、合計値の短縮化と、記憶領域の使用量の低減化とを考慮して、適切なタイミングで、所定期間の前後でのシステム構成の差分を生成可能にすることができる。
【0078】
また、第2生成部403は、例えば、システム構成の変更の時点が所定数現れる都度、所定数現れたシステム構成の変更の時点のうち、先頭の時点から末尾の時点までの期間を所定期間に設定する。所定数は、例えば、予め管理者によって設定される。これにより、第2生成部403は、所定期間を動的に設定するため、処理時間の短縮化と、記憶領域の使用量の低減化とを考慮して、適切なタイミングで、所定期間の前後でのシステム構成の差分を生成可能にすることができる。
【0079】
第2生成部403は、例えば、所定期間を設定する都度、記憶部400を参照して、設定した所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得する。第2生成部403は、取得した差分に基づいて、所定期間の前後でのシステム構成の差分を生成する。
【0080】
第2生成部403は、具体的には、記憶部400を参照して、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得する。そして、第2生成部403は、具体的には、取得したシステム構成の差分のうち、先頭のシステム構成の差分に、後続のシステム構成の差分を時間順に足し合わせることにより、所定期間の前後でのシステム構成の差分を生成しておく。これにより、第2生成部403は、要求に応じて、所定期間を含む対象期間の前後でのシステム構成の差分を生成して出力する際にかかる処理時間を短縮可能にすることができる。
【0081】
第3生成部404は、要求を受け付けた際、対象期間に所定期間が含まれれば、記憶部400を参照して、対象期間のうち所定期間以外の残余期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得する。また、第3生成部404は、要求を受け付けた際、対象期間に所定期間が含まれれば、記憶部400を参照して、生成しておいた所定期間の前後でのシステム構成の変更の差分を取得する。そして、第3生成部404は、取得した差分に基づいて、対象期間の前後でのシステム構成の差分を生成する。
【0082】
第3生成部404は、例えば、取得した差分を、時間順に足し合わせることにより、対象期間の前後でのシステム構成の差分を生成する。第3生成部404は、具体的には、取得した差分のうち、先頭のシステム構成の差分に、後続のシステム構成の差分を時間順に足し合わせることにより、対象期間の前後でのシステム構成の差分を生成する。これにより、第3生成部404は、要求に応じて、対象期間の前後でのシステム構成の差分を素早く生成することができる。
【0083】
第3生成部404は、要求を受け付けた際、対象期間に所定期間が含まれなければ、記憶部400を参照して、対象期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得する。そして、第3生成部404は、取得した差分に基づいて、対象期間の前後でのシステム構成の差分を生成する。
【0084】
第3生成部404は、例えば、取得した差分を、時間順に足し合わせることにより、対象期間の前後でのシステム構成の差分を生成する。第3生成部404は、具体的には、取得した差分のうち、先頭のシステム構成の差分に、後続のシステム構成の差分を時間順に足し合わせることにより、対象期間の前後でのシステム構成の差分を生成する。これにより、第3生成部404は、要求に応じて、所定期間を含まない対象期間の前後でのシステム構成の差分を生成することができる。
【0085】
第3生成部404は、記憶部400を参照して、対象期間の末尾の時点より前の時点でのシステム構成と、当該時点から対象期間の末尾の時点までの期間内のシステム構成の変更の時点それぞれに対応付けられた当該変更の前後でのシステム構成の差分とを取得する。第3生成部404は、取得したシステム構成と、取得した差分それぞれとに基づいて、対象期間の末尾の時点でのシステム構成を特定する。
【0086】
第3生成部404は、例えば、取得したシステム構成に、取得した差分それぞれを、時間順に足し合わせることにより、対象期間の末尾の時点でのシステム構成を特定する。これにより、第3生成部404は、対象期間の前後でのシステム構成の差分の他、対象期間の末尾の時点でのシステム構成を利用可能にすることができる。
【0087】
第3生成部404は、記憶部400を参照して、対象期間の先頭の時点より前の時点でのシステム構成と、当該時点から対象期間の先頭の時点までの期間内のシステム構成の変更の時点それぞれに対応付けられた当該変更の前後でのシステム構成の差分とを取得する。第3生成部404は、取得したシステム構成と、取得した差分それぞれとに基づいて、対象期間の先頭の時点でのシステム構成を特定する。
【0088】
第3生成部404は、例えば、取得したシステム構成に、取得した差分それぞれを、時間順に足し合わせることにより、対象期間の先頭の時点でのシステム構成を特定する。これにより、第3生成部404は、対象期間の前後でのシステム構成の差分の他、対象期間の先頭の時点でのシステム構成を利用可能にすることができる。
【0089】
第3生成部404は、特定した対象期間の先頭の時点でのシステム構成と、対象期間内のシステム構成の変更の時点それぞれに対応付けられた当該変更の前後でのシステム構成の差分とに基づいて、対象期間の末尾の時点でのシステム構成を特定してもよい。第3生成部404は、例えば、特定した対象期間の先頭の時点でのシステム構成に、取得した差分それぞれを、時間順に足し合わせることにより、対象期間の末尾の時点でのシステム構成を特定する。これにより、第3生成部404は、対象期間の前後でのシステム構成の差分の他、対象期間の末尾の時点でのシステム構成を利用可能にすることができる。
【0090】
出力部405は、少なくともいずれかの機能部の処理結果を出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F303による外部装置への送信、または、メモリ302や記録媒体305などの記憶領域への記憶である。これにより、出力部405は、少なくともいずれかの機能部の処理結果を利用者に通知可能にし、情報処理装置100の利便性の向上を図ることができる。
【0091】
出力部405は、生成した対象期間の前後でのシステム構成の差分を出力する。出力部405は、例えば、対象期間の前後でのシステム構成の差分を、管理者側装置202に送信することにより、管理者側装置202で表示させる。これにより、出力部405は、要求を受け付けてから、対象期間の前後でのシステム構成の差分を出力するまでにかかる処理時間の短縮化を図ることができる。そして、出力部405は、システムの管理者が、対象期間の前後でのシステム構成の差分を把握可能にすることができ、システムの管理者にかかる作業時間および作業負担の低減化を図ることができる。
【0092】
出力部405は、特定した対象期間の末尾の時点でのシステム構成を出力する。出力部405は、例えば、対象期間の末尾の時点でのシステム構成を、管理者側装置202に送信することにより、管理者側装置202で表示させる。これにより、出力部405は、システムの管理者が、対象期間の末尾の時点でのシステム構成を把握可能にすることができ、システムの管理者にかかる作業時間および作業負担の低減化を図ることができる。
【0093】
出力部405は、特定した対象期間の先頭の時点でのシステム構成を出力する。出力部405は、例えば、対象期間の先頭の時点でのシステム構成を、管理者側装置202に送信することにより、管理者側装置202で表示させる。これにより、出力部405は、システムの管理者が、対象期間の先頭の時点でのシステム構成を把握可能にすることができ、システムの管理者にかかる作業時間および作業負担の低減化を図ることができる。
【0094】
ここでは、情報処理装置100が、第1生成部402を含む場合について説明したが、これに限らない。例えば、情報処理装置100が、第1生成部402を含まない場合があってもよい。この場合、取得部401は、例えば、システム構成の変更の時点ごとに、当該変更の前後でのシステム構成の差分を取得し、当該変更の時点に対応付けて記憶部400に記憶する。取得部401は、具体的には、システム構成の変更の時点ごとに、当該変更の前後でのシステム構成の差分を、他のコンピュータから受信し、当該変更の時点に対応付けて記憶部400に記憶する。他のコンピュータは、例えば、いずれかのノード装置201である。
【0095】
(情報処理装置100の具体的な機能的構成例)
次に、図5を用いて、情報処理装置100の具体的な機能的構成例について説明する。
【0096】
図5は、情報処理装置100の具体的な機能的構成例を示すブロック図である。情報処理装置100は、構成情報取得部501と、構成差分算出部502と、期間差分算出部503と、構成差分可視化部504と、構成差分合成部505とを含む。また、情報処理装置100は、構成情報蓄積用DB(DataBase)510と、可視化用DB511とを有する。
【0097】
構成情報取得部501は、定期的に、システム220を形成するノード装置201と通信し、システム構成に関する情報を収集し、システム220の全構成情報を取得する。全構成情報は、例えば、システム220のシステム構成を示す。全構成情報は、具体的には、システム220を形成するノードを示すノード情報と、ノード間を接続するエッジを示すエッジ情報とを含む。構成情報取得部501は、システム構成の変更の際、システム220を形成するノード装置201から、システム構成に関する情報を受信し、システム220の全構成情報を取得してもよい。
【0098】
構成情報取得部501は、取得した全構成情報を、構成差分算出部502に出力する。構成情報取得部501は、取得した全構成情報を、構成情報蓄積用DB510に記憶してもよい。全構成情報を取得する一例については、具体的には、図10を用いて後述する。構成情報取得部501は、具体的には、図20を用いて後述する構成情報取得処理を実行する。構成情報取得部501は、具体的には、取得部401を実現する。
【0099】
構成差分算出部502は、前回取得した全構成情報と、今回取得した全構成情報とを比較した結果に基づいて、隣接時刻間構成差分情報を生成する。隣接時刻間構成差分情報は、例えば、前回取得した全構成情報が示すシステム構成と、今回取得した全構成情報が示すシステム構成との間での、ノードの差分を示すノード差分情報と、ノード間を接続するエッジの差分を示すエッジ差分情報とを含む。また、隣接時刻間構成差分情報は、例えば、比較した全構成情報それぞれを取得した時刻を含む。
【0100】
構成差分算出部502は、生成した隣接時刻間構成差分情報を、期間差分算出部503に出力する。構成差分算出部502は、生成した隣接時刻間構成差分情報を、構成情報蓄積用DB510に記憶してもよい。隣接時刻間構成差分情報を生成する一例については、具体的には、図11を用いて後述する。構成差分算出部502は、具体的には、図21を用いて後述する構成差分算出処理を実行する。構成差分算出部502は、具体的には、第1生成部402を実現する。
【0101】
期間差分算出部503は、所定時刻以降で、所定指標値が期間設定値を超えたか否かを判定する。所定指標値は、例えば、システム構成の変更の回数である。所定指標値は、例えば、経過時間であってもよい。期間設定値は、例えば、所定指標値に対する閾値である。所定時刻は、例えば、期間差分情報を前回生成した時刻である。所定時刻は、例えば、システム220を運用開始した時刻であってもよい。
【0102】
ここで、期間差分算出部503は、所定指標値が期間設定値を超えていれば、所定時刻から、現在時刻までの期間内のそれぞれの時点で生成された隣接時刻間構成差分情報を取得する。期間差分算出部503は、取得した隣接時刻間構成差分情報を時間順に足し合わせて、期間差分情報を生成する。期間差分情報は、例えば、所定時刻から、現在時刻までの期間の前後での、ノードの差分を示すノード差分情報と、ノード間を接続するエッジの差分を示すエッジ差分情報とを含む。また、期間差分情報は、例えば、所定時刻から、現在時刻までの期間を含む。一方で、期間差分算出部503は、所定指標値が期間設定値を超えていなければ、期間差分情報を生成せずに済ませる。期間差分算出部503は、生成した期間差分情報を、構成情報蓄積用DB510に記憶しておく。
【0103】
期間差分算出部503は、所定時刻から、現在時刻までの期間内のそれぞれの時点で生成された隣接時刻間構成差分情報を取得する。期間差分算出部503は、取得した隣接時刻間構成差分情報を時間順に足し合わせて、期間差分情報を生成する際にかかる所要時間を算出する。期間差分算出部503は、算出した所要時間が期間設定値より長ければ、期間差分情報を生成する。期間設定値は、例えば、所要時間に対する閾値である。
【0104】
一方で、期間差分算出部503は、算出した所要時間が期間設定値以下であれば、期間差分情報を生成せずに済ませる。期間差分算出部503は、生成した期間差分情報を、構成情報蓄積用DB510に記憶しておく。期間差分情報を生成する一例については、具体的には、図13および図14を用いて後述する。期間差分算出部503は、具体的には、図22および図23を用いて後述する期間差分算出処理を実行する。期間差分算出部503は、具体的には、第2生成部403を実現する。
【0105】
構成差分可視化部504は、2つの時刻それぞれでのシステム構成の差分を示す任意時刻間構成差分情報を生成する要求を受け付ける。要求は、2つの時刻を指定する情報を含む。構成差分可視化部504は、2つの時刻を、構成差分合成部505に出力する。構成差分可視化部504は、任意時刻間構成差分情報を、構成差分合成部505から受信する。構成差分可視化部504は、受信した任意時刻間構成差分情報を可視化する。
【0106】
構成差分可視化部504は、例えば、受信した任意時刻間構成差分情報を示す画面を生成し、管理者側装置202に送信し、管理者側装置202で表示させる。任意時刻間構成差分情報を可視化する一例については、具体的には、図17を用いて後述する。構成差分可視化部504は、具体的には、図24を用いて後述する構成差分可視化処理を実行する。構成差分可視化部504は、具体的には、取得部401と、出力部405とを実現する。
【0107】
構成差分合成部505は、2つの時刻を受信する。構成差分合成部505は、2つの時刻の間に、所定期間が含まれるか否かを判定する。構成差分合成部505は、所定期間が含まれれば、所定期間に対応付けられた期間差分情報を取得する。また、構成差分合成部505は、所定期間が含まれれば、2つの時刻の間のうち、所定期間以外の残余期間内でのシステム構成の変更の時点それぞれに対応付けられた、隣接時刻間差分情報を取得する。構成差分合成部505は、取得した期間差分情報と、取得した隣接時刻間差分情報とを足し合わせることにより、任意時刻間構成差分情報を生成する。
【0108】
構成差分合成部505は、例えば、2つの時刻のうち前方の時刻から、所定期間の先頭の時刻までの間に、システム構成の変更の時点が存在すれば、当該変更の時点それぞれに対応付けられた隣接時刻間構成差分情報を取得する。そして、構成差分合成部505は、例えば、取得した隣接時刻間構成差分情報を時間順に足し合わせた後、所定期間に対応付けられた期間差分情報を足し合わせる。構成差分合成部505は、足し合わせた結果得られた中間差分情報を、一時的に記憶する。
【0109】
ここで、構成差分合成部505は、例えば、所定期間の末尾の時刻から、2つの時刻のうち後方の時刻までの間に、システム構成の変更の時点が存在すれば、さらに、当該変更の時点それぞれに対応付けられた隣接時刻間構成差分情報を取得する。構成差分合成部505は、一時的に記憶しておいた中間差分情報に、取得した隣接時刻間構成差分情報を時間順に足し合わせることにより、任意時刻間構成差分情報を生成する。一方で、構成差分合成部505は、例えば、所定期間の末尾の時刻から、2つの時刻のうち後方の時刻までの間に、システム構成の変更の時点が存在しなければ、一時的に記憶しておいた中間差分情報を、任意時刻間構成差分情報に採用する。
【0110】
また、構成差分合成部505は、例えば、2つの時刻のうち前方の時刻から、所定期間の先頭の時刻までの間に、システム構成の変更の時点が存在しなければ、所定期間に対応付けられた期間差分情報を取得する。
【0111】
ここで、構成差分合成部505は、例えば、所定期間の末尾の時刻から、2つの時刻のうち後方の時刻までの間に、システム構成の変更の時点が存在すれば、さらに、当該変更の時点それぞれに対応付けられた隣接時刻間構成差分情報を取得する。構成差分合成部505は、取得した期間差分情報に、取得した隣接時刻間構成差分情報を時間順に足し合わせることにより、任意時刻間構成差分情報を生成する。一方で、構成差分合成部505は、例えば、所定期間の末尾の時刻から、2つの時刻のうち後方の時刻までの間に、システム構成の変更の時点が存在しなければ、期間差分情報を、任意時刻間構成差分情報に採用する。
【0112】
構成差分合成部505は、例えば、2つの時刻のうち前方の時刻でのシステム構成を生成してもよい。構成差分合成部505は、具体的には、前方の時刻より前のある時刻でのシステム構成を取得する。また、構成差分合成部505は、具体的には、当該ある時刻から前方の時刻までの期間内のシステム構成の変更時点それぞれに対応付けられた隣接時刻間構成差分情報と、当該期間内の所定期間に対応付けられた期間差分情報とを取得する。そして、構成差分合成部505は、具体的には、取得したシステム構成に、取得した隣接時刻間構成差分情報、および、期間差分情報を足し合わせることにより、前方の時刻でのシステム構成を生成する。
【0113】
構成差分合成部505は、例えば、2つの時刻のうち後方の時刻でのシステム構成を生成してもよい。構成差分合成部505は、具体的には、後方の時刻より前のある時刻でのシステム構成を取得する。また、構成差分合成部505は、具体的には、当該ある時刻から後方の時刻までの期間内のシステム構成の変更時点それぞれに対応付けられた隣接時刻間構成差分情報と、当該期間内の所定期間に対応付けられた期間差分情報とを取得する。そして、構成差分合成部505は、具体的には、取得したシステム構成に、取得した隣接時刻間構成差分情報、および、期間差分情報を足し合わせることにより、後方の時刻でのシステム構成を生成する。
【0114】
そして、構成差分合成部505は、例えば、生成した前方の時刻でのシステム構成に比べて、生成した後方の時刻でのシステム構成が、どのように変更されているのかを特定し、任意時刻間構成差分情報を生成する。任意時刻間構成差分情報を生成する一例については、具体的には、図16を用いて後述する。構成差分合成部505は、具体的には、図25を用いて後述する構成差分合成処理を実行する。構成差分合成部505は、具体的には、第3生成部404を実現する。
【0115】
(情報処理装置100の第1動作例)
次に、図6を用いて、情報処理装置100の第1動作例について説明する。第1動作例は、所定期間の長さが固定された場合における情報処理装置100の動作の一例である。
【0116】
図6は、情報処理装置100の第1動作例を示す説明図である。図6において、(6-1)情報処理装置100は、システム構成の変更の時刻ごとに、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報を生成しておく。図6の例では、下向きの実線矢印、および、下向きの点線矢印が、システム構成の変更の時刻を示す。図6の例では、情報処理装置100は、具体的には、システム構成の変更の時刻time_xについて、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報(time_x)を生成しておく。
【0117】
情報処理装置100は、システム構成の変更の時刻ごとに、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報を対応付けて記憶しておく。図6の例では、情報処理装置100は、具体的には、システム構成の変更の時刻time_xに対応付けて、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報(time_x)を記憶しておく。情報処理装置100が、隣接時刻間構成差分情報を生成する一例については、具体的には、図8を用いて後述する。
【0118】
(6-2)情報処理装置100は、所定期間が経過する都度、経過した所定期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報に基づいて、所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報を生成しておく。所定期間は、長さが固定である。所定期間は、複数存在してもよい。所定期間は、他の所定期間と隣接する。所定期間は、例えば、システム構成の変更のいずれかの時刻の直後から、当該時刻より後におけるシステム構成の変更のいずれかの時刻までの期間である。
【0119】
図6の例では、所定期間は、具体的には、システム構成の変更の時刻time_xより前の直近の期間差分情報を生成した時刻の直後から、システム構成の変更の時刻time_aの直後までの期間である。所定期間は、具体的には、システム構成の変更の時刻time_aの直後から、システム構成の変更の時刻time_bまでの期間である。所定期間は、具体的には、システム構成の変更の時刻time_bの直後から、システム構成の変更の時刻time_cまでの期間である。情報処理装置100は、生成した期間差分情報を、所定期間に対応付けて記憶しておく。
【0120】
図6の例では、情報処理装置100は、具体的には、所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報(time_a)を生成済みとする。情報処理装置100は、具体的には、システム構成の変更の時刻time_aの直後からシステム構成の変更の時刻time_bまでの所定期間が経過した際、所定期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。次に、情報処理装置100は、具体的には、取得した隣接時刻間構成差分情報を時間順に足し合わせることにより、所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報(time_b)を生成しておく。そして、情報処理装置100は、具体的には、生成した期間差分情報(time_b)を、システム構成の変更の時刻time_aの直後から、システム構成の変更の時刻time_bまでの所定期間に対応付けて記憶しておく。
【0121】
情報処理装置100は、具体的には、システム構成の変更の時刻time_bの直後からシステム構成の変更の時刻time_cまでの所定期間が経過した際、所定期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。次に、情報処理装置100は、具体的には、取得した隣接時刻間構成差分情報を時間順に足し合わせることにより、所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報(time_c)を生成しておく。そして、情報処理装置100は、具体的には、生成した期間差分情報(time_c)を、システム構成の変更の時刻time_bの直後から、システム構成の変更の時刻time_cまでの所定期間に対応付けて記憶しておく。情報処理装置100が、隣接時刻間構成差分情報を足し合わせる一例については、具体的には、図9を用いて後述する。
【0122】
(6-3)情報処理装置100は、2つの時刻それぞれでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成して出力する要求を受け付ける。要求は、2つの時刻それぞれを特定可能にする情報を含む。2つの時刻間は、例えば、数か月、または、数年であってもよい。図6の例では、情報処理装置100は、システム構成の変更の時刻time_xと、システム構成の変更の時刻time_yとでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成して出力する要求を受け付ける。
【0123】
(6-4)情報処理装置100は、要求を受け付けた際、2つの時刻間に所定期間が含まれるか否かを判定する。ここで、情報処理装置100は、2つの時刻間に所定期間が含まれれば、2つの時刻間のうち所定期間以外の残余期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。情報処理装置100は、2つの時刻間に所定期間が含まれれば、2つの時刻間のうち所定期間それぞれに対応付けられた期間差分情報を取得する。そして、情報処理装置100は、取得した期間差分情報それぞれと、取得した隣接時刻間構成差分情報それぞれとを足し合わせることにより、2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成する。
【0124】
一方で、情報処理装置100は、2つの時刻間に所定期間が含まれなければ、2つの時刻間のうちシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。そして、情報処理装置100は、取得した隣接時刻間構成差分情報それぞれを足し合わせることにより、2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成する。
【0125】
図6の例では、情報処理装置100は、具体的には、要求を受け付けた際、システム構成の変更の時刻time_xから、システム構成の変更の時刻time_yまでの期間内に、所定期間が含まれると判定する。このため、情報処理装置100は、具体的には、システム構成の変更の時刻time_aの直後から、システム構成の変更の時刻time_bまでの所定期間に対応付けられた期間差分情報(time_b)を取得する。また、情報処理装置100は、具体的には、システム構成の変更の時刻time_bの直後から、システム構成の変更の時刻time_cまでの所定期間に対応付けられた期間差分情報(time_c)を取得する。
【0126】
また、情報処理装置100は、具体的には、システム構成の変更の時刻time_xから、システム構成の変更の時刻time_aまでの期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。情報処理装置100は、より具体的には、隣接時刻間構成差分情報(time_x)~隣接時刻間構成差分情報(time_a)を取得する。また、情報処理装置100は、具体的には、システム構成の変更の時刻time_cから、システム構成の変更の時刻time_yまでの期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。情報処理装置100は、より具体的には、隣接時刻間構成差分情報(time_c+1)~隣接時刻間構成差分情報(time_y)を取得する。
【0127】
そして、情報処理装置100は、具体的には、隣接時刻間構成差分情報(time_x)~隣接時刻間構成差分情報(time_a)を時間順に足し合わせる。情報処理装置100は、具体的には、足し合わせた結果に、さらに、期間差分情報(time_b)を足し合わせる。情報処理装置100は、具体的には、足し合わせた結果に、さらに、期間差分情報(time_c)を足し合わせる。情報処理装置100は、具体的には、足し合わせた結果に、さらに、隣接時刻間構成差分情報(time_c+1)~隣接時刻間構成差分情報(time_y)を時間順に足し合わせる。
【0128】
これにより、情報処理装置100は、システム構成の変更の時刻time_xと、システム構成の変更の時刻time_yとでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成する。情報処理装置100が、期間差分情報、および、隣接時刻間構成差分情報を足し合わせる一例については、具体的には、図9を用いて後述する。
【0129】
(6-5)情報処理装置100は、生成した2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を出力する。図6の例では、情報処理装置100は、システム構成の変更の時刻time_xと、システム構成の変更の時刻time_yとでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を、管理者側装置202に送信する。これにより、情報処理装置100は、要求を受け付けてから、2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成して出力するまでにかかる処理時間の短縮化を図ることができる。そして、情報処理装置100は、システム220の管理者にかかる作業時間および作業負担の低減化を図ることができる。
【0130】
(情報処理装置100の第2動作例)
次に、図7を用いて、情報処理装置100の第2動作例について説明する。第2動作例は、所定期間の長さが変動する場合における情報処理装置100の動作の一例である。
【0131】
図7は、情報処理装置100の第2動作例を示す説明図である。図7において、(7-1)情報処理装置100は、システム構成の変更の時刻ごとに、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報を生成しておく。図7の例では、下向きの実線矢印、および、下向きの点線矢印が、システム構成の変更の時刻を示す。図7の例では、情報処理装置100は、具体的には、システム構成の変更の時刻time_xについて、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報(time_x)を生成しておく。
【0132】
情報処理装置100は、システム構成の変更の時刻ごとに、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報を対応付けて記憶しておく。図7の例では、情報処理装置100は、具体的には、システム構成の変更の時刻time_xに対応付けて、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報(time_x)を記憶しておく。情報処理装置100が、隣接時刻間構成差分情報を生成しておく一例については、具体的には、図8を用いて後述する。
【0133】
(7-2)情報処理装置100は、所定期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報に基づいて、所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報を生成しておく。所定期間は、長さが変動する。所定期間は、複数存在してもよい。所定期間は、他の所定期間と隣接する。所定期間は、例えば、システム構成の変更のいずれかの時刻の直後から、当該時刻より後におけるシステム構成の変更のいずれかの時刻までの期間である。情報処理装置100は、生成した期間差分情報を、所定期間に対応付けて記憶しておく。
【0134】
情報処理装置100は、例えば、システム構成の変更のいずれかの時刻の直後から、当該時刻より後のシステム構成の変更のいずれかの時刻までの期間について、期間差分情報を生成する場合の所要時間を算出する。情報処理装置100は、ある期間について算出した所要時間i秒が所定閾値j秒以上である場合、当該期間を、所定期間として設定する。情報処理装置100は、所定期間を設定する都度、設定した所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報を生成しておく。
【0135】
図7の例では、情報処理装置100は、システム構成の変更の時刻time_xより前の時刻から、システム構成の変更の時刻time_aまでの所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報(time_a)を生成済みとする。
【0136】
情報処理装置100は、具体的には、システム構成の変更の時刻になる都度、期間差分情報(time_a)を前回生成した、システム構成の変更の時刻time_aの直後から、今回のシステム構成の変更の時刻までの期間を特定する。情報処理装置100は、具体的には、特定した期間について、期間差分情報を生成する場合の所要時間i秒を算出し、閾値j秒以上であるか否かを判定する。ここで、情報処理装置100は、具体的には、システム構成の変更の時刻time_aの直後から、所要時間i秒が閾値j秒以上になったシステム構成の変更の時刻time_bまでの期間を、所定期間として設定する。
【0137】
情報処理装置100は、具体的には、設定した所定期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。次に、情報処理装置100は、具体的には、取得した隣接時刻間構成差分情報を時間順に足し合わせることにより、所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報(time_b)を生成しておく。そして、情報処理装置100は、具体的には、生成した期間差分情報(time_b)を、システム構成の変更の時刻time_aの直後から、システム構成の変更の時刻time_bまでの所定期間に対応付けて記憶しておく。
【0138】
情報処理装置100は、具体的には、システム構成の変更の時刻になる都度、期間差分情報(time_b)を前回生成した、システム構成の変更の時刻time_bの直後から、今回のシステム構成の変更の時刻までの期間を特定する。情報処理装置100は、具体的には、特定した期間について、期間差分情報を生成する場合の所要時間i秒を算出し、閾値j秒以上であるか否かを判定する。ここで、情報処理装置100は、具体的には、システム構成の変更の時刻time_bの直後から、所要時間i秒が閾値j秒以上になったシステム構成の変更の時刻time_cまでの期間を、所定期間として設定する。
【0139】
情報処理装置100は、具体的には、システム構成の変更の時刻time_bの直後から、システム構成の変更の時刻time_cまでの所定期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。次に、情報処理装置100は、具体的には、取得した隣接時刻間構成差分情報を時間順に足し合わせることにより、所定期間の前後でのシステム構成の差分を特定可能にする期間差分情報(time_c)を生成しておく。そして、情報処理装置100は、具体的には、生成した期間差分情報(time_c)を、システム構成の変更の時刻time_bの直後から、システム構成の変更の時刻time_cまでの所定期間に対応付けて記憶しておく。
【0140】
これにより、情報処理装置100は、所定期間を動的に設定することができ、処理時間の短縮化と、記憶領域の使用量の低減化とを考慮して、適切なタイミングで、所定期間の前後でのシステム構成の差分を生成可能にすることができる。このため、情報処理装置100は、記憶領域の使用量の増大化を抑制しつつ、処理時間を短縮可能にすることができる。情報処理装置100が、隣接時刻間構成差分情報を足し合わせる一例については、具体的には、図9を用いて後述する。
【0141】
(7-3)情報処理装置100は、2つの時刻それぞれでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成して出力する要求を受け付ける。情報処理装置100は、例えば、図6の例と同様に、要求を受け付ける。
【0142】
(7-4)情報処理装置100は、要求を受け付けた際、2つの時刻間に所定期間が含まれるか否かを判定した結果に基づいて、2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成する。情報処理装置100は、例えば、図6の例と同様に、要求を受け付けた際、2つの時刻間に所定期間が含まれるか否かを判定し、判定した結果に基づいて、2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成する。
【0143】
(7-5)情報処理装置100は、生成した2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を出力する。情報処理装置100は、例えば、図6の例と同様に、生成した2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を出力する。これにより、情報処理装置100は、要求を受け付けてから、2つの時刻間でのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成して出力するまでにかかる処理時間の短縮化を図ることができる。そして、情報処理装置100は、システム220の管理者にかかる作業時間および作業負担の低減化を図ることができる。
【0144】
(隣接時刻間構成差分情報を生成する一例)
次に、図8を用いて、情報処理装置100が、隣接時刻間構成差分情報を生成する一例について説明する。
【0145】
図8は、隣接時刻間構成差分情報を生成する一例を示す説明図である。図8において、情報処理装置100は、全構成情報(time1)を取得する。全構成情報(time1)は、グラフ801に示すシステム構成を特定可能にする。グラフ801において、楕円は、システム220に含まれるノードを示す。ノードは、システム220に含まれる要素に対応する。グラフ801において、楕円同士を接続する矢印は、ノード間を接続するエッジを示す。
【0146】
情報処理装置100は、システム構成の変更があった時刻time2に、全構成情報(time2)を取得する。全構成情報(time2)は、グラフ802に示すシステム構成を特定可能にする。情報処理装置100は、全構成情報(time1)と、全構成情報(time2)とを比較し、隣接時刻間構成差分情報(time2)を生成する。隣接時刻間構成差分情報(time2)は、グラフ811に示すシステム構成の差分を表す。隣接時刻間構成差分情報(time2)は、ノードが追加または削除されたことを示すノード差分情報と、エッジが追加または削除されたことを示すエッジ差分情報とを含む。情報処理装置100は、生成した全構成情報(time2)を、システム構成の変更があった時刻time2に対応付けて記憶しておく。
【0147】
情報処理装置100は、システム構成の変更があった時刻time3に、全構成情報(time3)を取得する。全構成情報(time3)は、グラフ803に示すシステム構成を特定可能にする。情報処理装置100は、全構成情報(time2)と、全構成情報(time3)とを比較し、隣接時刻間構成差分情報(time3)を生成する。隣接時刻間構成差分情報(time3)は、グラフ812に示すシステム構成の差分を表す。隣接時刻間構成差分情報(time3)は、ノードが追加または削除されたことを示すノード差分情報と、エッジが追加または削除されたことを示すエッジ差分情報とを含む。情報処理装置100は、生成した全構成情報(time3)を、システム構成の変更があった時刻time3に対応付けて記憶しておく。
【0148】
情報処理装置100は、システム構成の変更があった時刻time4に、全構成情報(time4)を取得する。全構成情報(time4)は、グラフ804に示すシステム構成を特定可能にする。情報処理装置100は、全構成情報(time3)と、全構成情報(time4)とを比較し、隣接時刻間構成差分情報(time4)を生成する。隣接時刻間構成差分情報(time4)は、グラフ813に示すシステム構成の差分を表す。隣接時刻間構成差分情報(time4)は、ノードが追加または削除されたことを示すノード差分情報と、エッジが追加または削除されたことを示すエッジ差分情報とを含む。情報処理装置100は、生成した全構成情報(time4)を、システム構成の変更があった時刻time4に対応付けて記憶しておく。
【0149】
以降、情報処理装置100は、同様に、システム構成の変更があった時刻ごとに、全構成情報を取得し、隣接時刻間構成差分情報を生成し、システム構成の変更があった時刻に対応付けて記憶しておく。これにより、情報処理装置100は、システム構成の変更があった時刻ごとに、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報を記憶しておくことができる。情報処理装置100は、隣接時刻間構成差分情報を、2つの時刻それぞれでのシステム構成の差分を生成する際に利用可能にすることができる。
【0150】
(隣接時刻間構成差分情報を足し合わせる一例)
次に、図9を用いて、情報処理装置100が、隣接時刻間構成差分情報を足し合わせる一例について説明する。
【0151】
図9は、隣接時刻間構成差分情報を足し合わせる一例を示す説明図である。図9において、情報処理装置100は、一例として期間差分情報を生成するために、隣接時刻間構成差分情報を足し合わせる。情報処理装置100が、期間差分情報を生成する以外の目的で隣接時刻間構成差分情報を足し合わせる場合があってもよい。図9の例では、情報処理装置100は、隣接時刻間構成差分情報(time2)と、隣接時刻間構成差分情報(time3)と、隣接時刻間構成差分情報(time4)とを時間順に足し合わせて、期間差分情報(time4)を生成する。
【0152】
情報処理装置100は、具体的には、隣接時刻間構成差分情報を時間順に足し合わせる際、比較的古い隣接時刻間構成差分情報に含まれるノードの差分を示す情報を、比較的新しい隣接時刻間構成差分情報に含まれる同一のノードの差分を示す情報で上書きする。情報処理装置100は、具体的には、隣接時刻間構成差分情報を時間順に足し合わせる際、比較的古い隣接時刻間構成差分情報に含まれるエッジの差分を示す情報を、比較的新しい隣接時刻間構成差分情報に含まれる同一のエッジの差分を示す情報で上書きする。
【0153】
図9の例では、情報処理装置100は、より具体的には、隣接時刻間構成差分情報(time2)が示す「n1:delete」を、隣接時刻間構成差分情報(time4)が示す「n1:add」で上書きすることになる。これにより、情報処理装置100は、2つの時刻それぞれでのシステム構成の差分を特定可能にする期間差分情報を生成することができる。
【0154】
情報処理装置100は、任意時刻間構成差分情報を生成する際も、同様に、隣接時刻間構成差分情報を足し合わせる。情報処理装置100は、任意時刻間構成差分情報を生成する際、複数の隣接時刻間構成差分情報の代わりに、複数の隣接時刻間構成差分情報を纏めた期間差分情報を足し合わせてもよい。これにより、情報処理装置100は、2つの時刻それぞれでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成することができる。
【0155】
(情報処理装置100の具体的動作例)
次に、図10図17を用いて、情報処理装置100の具体的動作例について説明する。まず、図10を用いて、情報処理装置100が、全構成情報を取得する具体例について説明する。
【0156】
図10は、全構成情報を取得する具体例を示す説明図である。図10において、情報処理装置100は、システム構成の変更の都度、当該変更の後でのシステム構成を特定可能にする全構成情報を取得する。
【0157】
全構成情報は、例えば、システム220に含まれるノードを特定可能にするノード情報を含む。ノードは、システム220に含まれる要素に対応する。ノード情報は、ノード名と、IDとのフィールドを有する。ノード名のフィールドには、ノード名が設定される。IDのフィールドには、ノードに割り振られたIDが設定される。
【0158】
全構成情報は、例えば、ノード間を接続するエッジを特定可能にするエッジ情報を含む。エッジは、向きを有する。エッジは、向きを有さなくてもよい。エッジ情報は、sourceと、destinationとのフィールドを有する。sourceのフィールドには、エッジの接続元のノードに割り振られたIDが設定される。destinationのフィールドには、エッジの接続先のノードに割り振られたIDが設定される。
【0159】
図10の例では、情報処理装置100は、システム構成の変更の時刻time1に、当該変更の後でのシステム構成を特定可能にする全構成情報(time1)を取得する。全構成情報(time1)は、グラフ1001に示すシステム構成を特定可能にする。楕円は、システム220に含まれるノードを示す。楕円同士を接続する矢印は、ノード間を接続するエッジを示す。
【0160】
次に、情報処理装置100は、システム構成の変更の時刻time2に、当該変更の後でのシステム構成を特定可能にする全構成情報(time2)を取得する。全構成情報(time2)は、グラフ1002に示すシステム構成を特定可能にする。その後、情報処理装置100は、同様に、システム構成の変更の時刻ごとに、当該変更の後でのシステム構成を特定可能にする全構成情報を取得する。次に、図11の説明に移行する。
【0161】
図11は、隣接時刻間構成差分情報を生成する具体例を示す説明図である。図11において、情報処理装置100は、システム構成の変更の都度、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報を生成する。
【0162】
隣接時刻間構成差分情報は、例えば、システム構成の変更の前後での、システム220に含まれるノードの差分を特定可能にするノード差分情報を含む。ノード差分情報は、ノード名と、IDと、statusとのフィールドを有する。ノード名のフィールドには、ノード名が設定される。IDのフィールドには、ノードに割り振られたIDが設定される。statusのフィールドには、ノードが追加または削除されたことを示す情報が設定される。addは、ノードが追加されたことを示す情報である。deleteは、ノードが削除されたことを示す情報である。
【0163】
隣接時刻間構成差分情報は、例えば、システム構成の変更の前後での、ノード間を接続するエッジの差分を特定可能にするエッジ差分情報を含む。エッジは、向きを有する。エッジは、向きを有さなくてもよい。エッジ差分情報は、sourceと、destinationと、statusとのフィールドを有する。sourceのフィールドには、エッジの接続元のノードに割り振られたIDが設定される。destinationのフィールドには、エッジの接続先のノードに割り振られたIDが設定される。statusのフィールドには、エッジが追加または削除されたことを示す情報が設定される。addは、エッジが追加されたことを示す情報である。deleteは、エッジが削除されたことを示す情報である。
【0164】
隣接時刻間構成差分情報は、例えば、システム構成の変更の前後の時刻のペアを特定可能にする時刻情報を含む。時刻情報は、IDと、pastと、nowとのフィールドを有する。IDのフィールドには、時刻のペアに割り振られたIDが設定される。pastのフィールドには、システム構成の変更前の時刻が設定される。pastのフィールドには、例えば、前回のシステム構成の変更の時刻が設定される。nowのフィールドには、システム構成の変更後の時刻が設定される。nowのフィールドには、例えば、今回のシステム構成の変更の時刻が設定される。
【0165】
図11の例では、情報処理装置100は、システム構成の変更の時刻time2に、当該変更の前でのシステム構成を特定可能にする全構成情報(time1)と、当該変更の後でのシステム構成を特定可能にする全構成情報(time2)とを比較する。情報処理装置100は、比較した結果、隣接時刻間構成差分情報(time2)を生成して記憶しておく。隣接時刻間構成差分情報(time2)は、グラフ1001に示すシステム構成とグラフ1002に示すシステム構成との差分となるグラフ1100に示すシステム構成の差分を特定可能にする。破線の楕円は、削除されたノードを示す。楕円同士を接続する破線の矢印は、削除されたエッジを示す。
【0166】
その後、情報処理装置100は、同様に、システム構成の変更の時刻ごとに、当該変更の前後でのシステム構成の差分を特定可能にする隣接時刻間構成差分情報を生成して記憶しておく。これにより、情報処理装置100は、記憶領域の使用量の低減化を図ることができる。次に、図12および図13の説明に移行する。
【0167】
図12および図13は、期間差分情報を生成する具体例を示す説明図である。図12において、情報処理装置100は、所定期間が経過する都度、経過した所定期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を取得する。図12の例では、情報処理装置100は、時刻time30に対応付けられた隣接時刻間構成差分情報(ID:T030)から、時刻time80に対応付けられた隣接時刻間構成差分情報(ID:T080)までを取得する。次に、図13の説明に移行する。
【0168】
図13において、情報処理装置100は、取得した所定期間内のシステム構成の変更の時刻それぞれに対応付けられた隣接時刻間構成差分情報を時間順に足し合わせることにより、期間差分情報を生成する。
【0169】
期間差分情報は、例えば、所定期間の前後での、システム220に含まれるノードの差分を特定可能にするノード差分情報を含む。ノード差分情報は、ノード名と、IDと、statusとのフィールドを有する。ノード名のフィールドには、ノード名が設定される。IDのフィールドには、ノードに割り振られたIDが設定される。statusのフィールドには、ノードが追加または削除されたことを示す情報が設定される。addは、ノードが追加されたことを示す情報である。deleteは、ノードが削除されたことを示す情報である。
【0170】
期間差分情報は、例えば、所定期間の前後での、ノード間を接続するエッジの差分を特定可能にするエッジ差分情報を含む。エッジは、向きを有する。エッジは、向きを有さなくてもよい。エッジ差分情報は、sourceと、destinationと、statusとのフィールドを有する。sourceのフィールドには、エッジの接続元のノードに割り振られたIDが設定される。destinationのフィールドには、エッジの接続先のノードに割り振られたIDが設定される。statusのフィールドには、エッジが追加または削除されたことを示す情報が設定される。addは、エッジが追加されたことを示す情報である。deleteは、エッジが削除されたことを示す情報である。
【0171】
期間差分情報は、例えば、所定期間を特定可能にする期間識別情報を含む。期間識別情報は、IDと、ID1と、ID2と、section timeとのフィールドを有する。IDのフィールドには、所定期間に割り振られたIDが設定される。ID1のフィールドには、所定期間の先頭の時刻に割り振られたIDが設定される。ID2のフィールドには、所定期間の末尾の時刻に割り振られたIDが設定される。section timeのフィールドには、所定期間の長さが設定される。
【0172】
図13の例では、情報処理装置100は、時刻time30に対応付けられた隣接時刻間構成差分情報(ID:T030)から、時刻time80に対応付けられた隣接時刻間構成差分情報(ID:T080)までを時間順に足し合わせる。これにより、情報処理装置100は、期間差分情報(ID:S080)を生成する。期間差分情報(ID:S080)は、グラフ1300に示すシステム構成の差分を特定可能にする。破線の楕円は、削除されたノードを示す。楕円同士を接続する破線の矢印は、削除されたエッジを示す。
【0173】
これにより、情報処理装置100は、所定期間を含む2つの時刻それぞれでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成する際、期間差分情報を利用可能にすることができる。このため、情報処理装置100は、任意時刻間構成差分情報を生成する際にかかる処理時間の短縮化を図ることができる。次に、図14の説明に移行する。
【0174】
図14は、期間差分情報を生成する別の具体例を示す説明図である。図14において、情報処理装置100は、システム構成の変更の都度、前回期間差分情報を生成した時刻から、現在の時刻までの期間について、期間差分情報を生成する際の所要時間を算出し、表1400を更新する。表1400は、IDと、ID1と、ID2と、section timeと、calc. timeとのフィールドを有する。
【0175】
IDのフィールドには、前回期間差分情報を生成した時刻から、現在の時刻までの期間に割り振られたIDが設定される。ID1のフィールドには、前回期間差分情報を生成した時刻に割り振られたIDが設定される。ID2のフィールドには、現在の時刻に割り振られたIDが設定される。section timeのフィールドには、前回期間差分情報を生成した時刻から、現在の時刻までの期間の長さが設定される。calc. timeのフィールドには、前回期間差分情報を生成した時刻から、現在の時刻までの期間について、期間差分情報を生成する際の所要時間が設定される。
【0176】
図14の例では、表1400は、システム構成の変更の時刻time80における状態を表す。情報処理装置100は、前回期間差分情報を生成した時刻から、現在の時刻までの期間について、期間差分情報を生成する際の所要時間30.2が、閾値30を超えたことを検出すると、期間差分情報を生成する。
【0177】
図14の例では、期間識別情報は、IDと、ID1と、ID2と、section timeと、calc. timeとのフィールドを有する。IDのフィールドには、所定期間に割り振られたIDが設定される。ID1のフィールドには、所定期間の先頭の時刻に割り振られたIDが設定される。ID2のフィールドには、所定期間の末尾の時刻に割り振られたIDが設定される。section timeのフィールドには、所定期間の長さが設定される。calc. timeのフィールドには、所定期間について、期間差分情報を生成する際の所要時間が設定される。
【0178】
図14の例では、情報処理装置100は、隣接時刻間構成差分情報(ID:T030)から、時刻time80に対応付けられた隣接時刻間構成差分情報(ID:T080)までを時間順に足し合わせて、期間差分情報(ID:S080)を生成する。
【0179】
これにより、情報処理装置100は、所定期間を含む2つの時刻それぞれでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成する際、期間差分情報を利用可能にすることができる。このため、情報処理装置100は、任意時刻間構成差分情報を生成する際にかかる処理時間の短縮化を図ることができる。また、情報処理装置100は、所定期間を動的に設定するため、処理時間の短縮化と、記憶領域の使用量の低減化とを考慮して、適切なタイミングで、期間差分情報を生成することができる。次に、図15の説明に移行する。
【0180】
図15は、2つの時刻の指定を受け付ける具体例を示す説明図である。情報処理装置100は、入力画面1500を、管理者側装置202に表示させる。入力画面1500は、始点となる時刻1の入力欄と、終点となる時刻2の入力欄と、実行ボタンとを含む。管理者側装置202は、入力画面1500を表示し、時刻1と時刻2との入力を受け付け、実行ボタンのクリックに応じて、時刻1と時刻2とを情報処理装置100に送信する。情報処理装置100は、時刻1と時刻2とを、任意時刻間構成差分情報を生成する対象として受信する。次に、図16の説明に移行する。
【0181】
図16は、任意時刻間構成差分情報を生成する具体例を示す説明図である。図16において、情報処理装置100は、時刻1と時刻2とのペアとして、時刻time4と時刻time7とのペアを受信する。情報処理装置100は、時刻time4より前の時刻time1に対応付けられた全構成情報(time1)を取得する。
【0182】
情報処理装置100は、全構成情報(time1)に、時刻time2に対応付けられた隣接時刻間構成差分情報(time2)から、時刻time4に対応付けられた隣接時刻間構成差分情報(time4)までを順番に足し合わせる。この際、情報処理装置100は、時刻time1直後から時刻time4以前までに所定期間が含まれ、期間差分情報が生成済みであれば、全構成情報(time1)に、所定期間の分の隣接時刻間構成差分情報に代わり、期間差分情報を足し合わせてもよい。これにより、情報処理装置100は、時刻time4に対応する全構成情報(time4)を生成する。全構成情報(time4)は、グラフ1601に示すシステム構成を示す。
【0183】
情報処理装置100は、時刻time5に対応付けられた隣接時刻間構成差分情報(time5)から、時刻time7に対応付けられた隣接時刻間構成差分情報(time7)を足し合わせる。この際、情報処理装置100は、時刻time4直後から時刻time7以前までに所定期間が含まれ、期間差分情報が生成済みであれば、所定期間の分の隣接時刻間構成差分情報に代わり、期間差分情報を足し合わせてもよい。これにより、情報処理装置100は、任意時刻間構成差分情報(time7)を生成する。
【0184】
情報処理装置100は、時刻time4に対応する全構成情報(time4)に、任意時刻間構成差分情報(time7)を適用し、時刻time7に対応する全構成情報(time7)を生成する。情報処理装置100は、全構成情報(time4)と、任意時刻間構成差分情報(time7)と、全構成情報(time7)とに基づいて、グラフ1602を示す可視化情報(time4+time7)を生成する。
【0185】
グラフ1602は、例えば、全構成情報(time4)が示すシステム構成には存在するものの、全構成情報(time7)が示すシステム構成には存在しないノードおよびエッジを破線で示す。また、グラフ1602は、例えば、全構成情報(time4)が示すシステム構成には存在せず、全構成情報(time7)が示すシステム構成には存在するノードおよびエッジを太線で示してもよい。これにより、グラフ1602は、任意時刻間構成差分情報(time7)を、直感的に把握し易く表すことができる。次に、図17の説明に移行する。
【0186】
図17は、任意時刻間構成差分情報を把握可能に出力する具体例を示す説明図である。図17において、情報処理装置100は、任意時刻間構成差分情報を直感的に把握し易く表すグラフ1700を生成する。グラフ1700において、削除されたノードおよびエッジは、破線で示す。追加されたノードおよびエッジは、太線で示す。情報処理装置100は、グラフ1700を、管理者側装置202に送信する。
【0187】
管理者側装置202は、グラフ1700を含む出力画面1710を、システム220の管理者が把握可能に表示する。これにより、情報処理装置100は、要求を受け付けてから、2つの時刻それぞれでのシステム構成の差分を特定可能にする任意時刻間構成差分情報を生成して出力するまでにかかる処理時間の短縮化を図ることができる。そして、情報処理装置100は、システム220の管理者にかかる作業時間および作業負担の低減化を図ることができる。
【0188】
情報処理装置100は、任意時刻間構成差分情報を、システム220の管理者が直感的に把握し易く表すことができる。このため、情報処理装置100は、システム220の管理者が、2つの時刻それぞれでのシステム構成の差分を参照して、システム220に発生した障害の原因を特定可能にすることができる。そして、情報処理装置100は、システム220の管理者にかかる作業時間および作業負担の低減化を図ることができ、障害の解消にかかる所要時間の短縮化を図ることができる。
【0189】
ここでは、情報処理装置100が、リアルタイムにシステム構成の変更の都度、隣接時刻間構成差分情報を生成する場合について説明したが、これに限らない。例えば、情報処理装置100が、あるタイミングで、過去のシステム構成の変更の時刻それぞれについて隣接時刻間構成差分情報を生成する場合があってもよい。
【0190】
ここでは、情報処理装置100が、リアルタイムに所定期間が経過する都度、所定期間について期間差分情報を生成する場合について説明したが、これに限らない。例えば、情報処理装置100が、あるタイミングで、所定期間それぞれについて期間差分情報を生成する場合があってもよい。
【0191】
(定期実行処理手順の一例)
次に、図18を用いて、情報処理装置100が実行する、定期実行処理手順の一例について説明する。定期実行処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0192】
図18は、定期実行処理手順の一例を示すフローチャートである。図18において、情報処理装置100は、所定タイミングであるか否かを判定する(ステップS1801)。ここで、所定タイミングではない場合(ステップS1801:No)、情報処理装置100は、ステップS1801の処理に戻る。一方で、所定タイミングである場合(ステップS1801:Yes)、情報処理装置100は、ステップS1802の処理に移行する。
【0193】
ステップS1802では、情報処理装置100は、図20に後述する構成情報取得処理を実行する(ステップS1802)。次に、情報処理装置100は、図21に後述する構成差分算出処理を実行する(ステップS1803)。そして、情報処理装置100は、図22または図23に後述する期間差分算出処理を実行する(ステップS1804)。
【0194】
その後、情報処理装置100は、ステップS1801の処理に戻る。これにより、情報処理装置100は、定期的に、全構成情報を生成し、隣接時刻間構成差分情報を生成し、任意時刻間構成差分情報を生成する準備を実施することができる。
【0195】
(応答実行処理手順の一例)
次に、図19を用いて、情報処理装置100が実行する、応答実行処理手順の一例について説明する。応答実行処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0196】
図19は、応答実行処理手順の一例を示すフローチャートである。図19において、情報処理装置100は、リクエストを受け付けたか否かを判定する(ステップS1901)。ここで、リクエストを受け付けていない場合(ステップS1901:No)、情報処理装置100は、ステップS1901の処理に戻る。一方で、リクエストを受け付けている場合(ステップS1901:Yes)、情報処理装置100は、ステップS1902の処理に移行する。
【0197】
ステップS1902では、情報処理装置100は、図24に後述する構成差分可視化処理を実行する(ステップS1902)。そして、情報処理装置100は、ステップS1901の処理に戻る。これにより、情報処理装置100は、任意時刻間構成差分情報を生成し、システム220の管理者が把握可能に出力することができる。
【0198】
(構成情報取得処理手順の一例)
次に、図20を用いて、情報処理装置100が実行する、構成情報取得処理手順の一例について説明する。構成情報取得処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0199】
図20は、構成情報取得処理手順の一例を示すフローチャートである。図20において、情報処理装置100は、システムに関する情報を取得する(ステップS2001)。システムに関する情報は、システムに含まれるノード、または、ノード間を接続するエッジの少なくともいずれかを特定可能に示す。
【0200】
次に、情報処理装置100は、取得した情報に基づいて、システムに含まれるノードを示すノード情報と、ノード間を接続するエッジを示すエッジ情報とを含む全構成情報を生成する(ステップS2002)。そして、情報処理装置100は、構成情報取得処理を終了する。
【0201】
(構成差分算出処理手順の一例)
次に、図21を用いて、情報処理装置100が実行する、構成差分算出処理手順の一例について説明する。構成差分算出部は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0202】
図21は、構成差分算出処理手順の一例を示すフローチャートである。図21において、情報処理装置100は、前回生成した全構成情報と、今回生成した全構成情報とを比較する(ステップS2101)。
【0203】
次に、情報処理装置100は、比較した結果に基づいて、ノードの差分を示すノード差分情報と、ノード間を接続するエッジの差分を示すエッジ差分情報と、比較した時刻とを含む、隣接時刻間構成差分情報を生成する(ステップS2102)。そして、情報処理装置100は、構成差分算出処理を終了する。これにより、情報処理装置100は、隣接時刻間構成差分情報を生成し、期間差分情報を生成する際、および、任意時刻間構成差分情報を生成する際に利用可能にすることができる。
【0204】
(期間差分算出処理手順の一例)
次に、図22を用いて、情報処理装置100が実行する、期間差分算出処理手順の一例について説明する。期間差分算出部は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0205】
図22は、期間差分算出処理手順の一例を示すフローチャートである。図22において、情報処理装置100は、前回期間差分情報を生成した時刻を取得する(ステップS2201)。
【0206】
次に、情報処理装置100は、前回期間差分情報を生成した時刻以降で、所定指標値が期間設定値を超えたか否かを判定する(ステップS2202)。ここで、所定指標値が期間設定値を超えていない場合(ステップS2202:No)、情報処理装置100は、ステップS2201の処理に戻る。一方で、所定指標値が期間設定値を超えている場合(ステップS2202:Yes)、情報処理装置100は、ステップS2203の処理に移行する。
【0207】
ステップS2203では、情報処理装置100は、前回期間差分情報を生成した時刻から、現在の時刻までの期間における、隣接時刻間構成差分情報それぞれを取得する(ステップS2203)。次に、情報処理装置100は、取得した隣接時刻間構成差分情報を足し合わせて、ノードの差分を示すノード差分情報と、ノード間を接続するエッジの差分を示すエッジ差分情報と、期間とを含む期間差分情報を生成する(ステップS2204)。
【0208】
そして、情報処理装置100は、期間差分算出処理を終了する。これにより、情報処理装置100は、期間差分情報を生成することができ、任意時刻間構成差分情報を生成する際に利用可能にすることができ、任意時刻間構成差分情報を素早く生成し易くすることができる。
【0209】
(期間差分算出処理手順の別の例)
次に、図23を用いて、情報処理装置100が実行する、期間差分算出処理手順の別の例について説明する。期間差分算出部は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0210】
図23は、期間差分算出処理手順の別の例を示すフローチャートである。図23において、情報処理装置100は、前回期間差分情報を生成した時刻を取得する(ステップS2301)。次に、情報処理装置100は、前回期間差分情報を生成した時刻から、現在の時刻までの期間について、期間差分情報を生成する場合の所要時間を算出する(ステップS2302)。
【0211】
そして、情報処理装置100は、算出した所要時間が期間設定値より大きいか否かを判定する(ステップS2303)。ここで、所要時間が期間設定値以下である場合(ステップS2303:No)、情報処理装置100は、ステップS2302の処理に戻る。一方で、所要時間が期間設定値より大きい場合(ステップS2303:Yes)、情報処理装置100は、ステップS2304の処理に移行する。
【0212】
ステップS2304では、情報処理装置100は、前回期間差分情報を生成した時刻から、現在の時刻までの期間における、隣接時刻間構成差分情報それぞれを取得する(ステップS2304)。次に、情報処理装置100は、取得した隣接時刻間構成差分情報を足し合わせて、ノードの差分を示すノード差分情報と、ノード間を接続するエッジの差分を示すエッジ差分情報と、期間とを含む期間差分情報を生成する(ステップS2305)。
【0213】
そして、情報処理装置100は、期間差分算出処理を終了する。これにより、情報処理装置100は、期間差分情報を生成することができ、任意時刻間構成差分情報を生成する際に利用可能にすることができ、任意時刻間構成差分情報を素早く生成し易くすることができる。また、情報処理装置100は、動的に長さが変動する期間について期間差分情報を生成することができ、効率よく期間差分情報を記憶しておくことができる。
【0214】
(構成差分可視化処理手順の一例)
次に、図24を用いて、情報処理装置100が実行する、構成差分可視化処理手順の一例について説明する。構成差分可視化処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0215】
図24は、構成差分可視化処理手順の一例を示すフローチャートである。図24において、情報処理装置100は、2つの時刻の指定を受け付ける(ステップS2401)。
【0216】
次に、情報処理装置100は、指定された時刻間について、図25に後述する構成差分合成処理を実行する(ステップS2402)。そして、情報処理装置100は、任意時刻間構成差分情報を出力する(ステップS2403)。その後、情報処理装置100は、構成差分可視化処理を終了する。これにより、情報処理装置100は、任意時刻間構成差分情報を、システム220の管理者が把握可能に出力することができる。
【0217】
(構成差分合成処理手順の一例)
次に、図25を用いて、情報処理装置100が実行する、構成差分合成処理手順の一例について説明する。構成差分合成部は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0218】
図25は、構成差分合成処理手順の一例を示すフローチャートである。図25において、情報処理装置100は、指定された時刻間について、期間差分情報が生成されているか否かを判定する(ステップS2501)。ここで、期間差分情報が生成されていない場合(ステップS2501:No)、情報処理装置100は、ステップS2505の処理に移行する。一方で、期間差分情報が生成されている場合(ステップS2501:Yes)、情報処理装置100は、ステップS2502の処理に移行する。
【0219】
ステップS2502では、情報処理装置100は、指定された時刻間について生成されている期間差分情報を取得する(ステップS2502)。次に、情報処理装置100は、指定された時刻間について生成されているが、期間差分情報に纏められていない隣接時刻間構成差分情報を取得する(ステップS2503)。そして、情報処理装置100は、取得した期間差分情報と、取得した隣接時刻間構成差分情報とに基づいて、任意時刻間構成差分情報を生成する(ステップS2504)。その後、情報処理装置100は、構成差分合成処理を終了する。
【0220】
ステップS2505では、情報処理装置100は、指定された時刻間について生成されている隣接時刻間構成差分情報を取得する(ステップS2505)。次に、情報処理装置100は、取得した隣接時刻間構成差分情報に基づいて、任意時刻間構成差分情報を生成する(ステップS2506)。そして、情報処理装置100は、構成差分合成処理を終了する。これにより、情報処理装置100は、任意時刻間構成差分情報を生成することができる。
【0221】
以上説明したように、情報処理装置100によれば、記憶部を参照して、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分に基づいて、所定期間の前後でのシステム構成の差分を生成することができる。情報処理装置100によれば、対象期間の前後でのシステム構成の差分を出力する要求を受け付けた際、対象期間に所定期間が含まれるか否かを判定することができる。情報処理装置100によれば、対象期間に所定期間が含まれれば、記憶部を参照して、生成しておいた差分を取得することができる。情報処理装置によれば、対象期間に所定期間が含まれれば、対象期間のうち所定期間以外の残余期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得することができる。情報処理装置100によれば、取得した差分に基づいて、対象期間の前後でのシステム構成の差分を生成することができる。情報処理装置100によれば、生成した対象期間の前後でのシステム構成の差分を出力することができる。
【0222】
これにより、情報処理装置100は、要求を受け付けてから、所定期間を含む対象期間の前後でのシステム構成の差分を素早く生成して出力可能にすることができる。情報処理装置100は、例えば、対象期間の前後でのシステム構成の差分を生成するにあたり、予め所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を纏めた差分を活用することができる。このため、情報処理装置100は、対象期間の前後でのシステム構成の差分を生成するにあたり、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を1つ1つ処理せずに済ませることができる。結果として、情報処理装置100は、対象期間の前後でのシステム構成の差分を素早く生成して出力可能にすることができる。
【0223】
情報処理装置100によれば、要求を受け付けた際、対象期間に所定期間が含まれなければ、記憶部を参照して、対象期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得することができる。情報処理装置100によれば、取得した差分に基づいて、対象期間の前後でのシステム構成の差分を生成することができる。これにより、情報処理装置100は、所定期間を含まない対象期間の前後でのシステム構成の差分を生成し、利用可能にすることができる。
【0224】
情報処理装置100によれば、システム構成の変更の第1の時点から、第1の時点より後のシステム構成の変更の第2の時点までの期間の前後でのシステム構成の差分を生成する際の処理時間が閾値以上であれば、当該期間を所定期間に設定することができる。情報処理装置100によれば、記憶部を参照して、設定した所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分に基づいて、所定期間の前後でのシステム構成の差分を生成することができる。これにより、情報処理装置100は、処理時間の短縮化と、記憶領域の使用量の低減化とを考慮して、適切なタイミングで、所定期間の前後でのシステム構成の差分を生成可能にすることができる。
【0225】
情報処理装置100によれば、システム構成の変更の時点が所定数現れる都度、所定数現れたシステム構成の変更の時点のうち先頭の時点から末尾の時点までの期間を所定期間に設定することができる。情報処理装置100によれば、所定期間を設定する都度、記憶部を参照して、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分に基づいて、所定期間の前後でのシステム構成の差分を生成することができる。これにより、情報処理装置100は、処理時間の短縮化と、記憶領域の使用量の低減化とを考慮して、適切なタイミングで、所定期間の前後でのシステム構成の差分を生成可能にすることができる。
【0226】
情報処理装置100によれば、所定期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分のうち、先頭のシステム構成の差分に、後続のシステム構成の差分を順に足し合わせることができる。情報処理装置100によれば、生成した差分と、残余期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分とのうち、先頭のシステム構成の差分に、後続のシステム構成の差分を順に足し合わせることができる。これにより、情報処理装置100は、所定期間の前後でのシステム構成の差分を正確に示すことができる。情報処理装置100は、対象期間の前後でのシステム構成の差分を正確に示すことができる。
【0227】
情報処理装置100によれば、記憶部を参照して、対象期間の末尾の時点より前の時点でのシステム構成を取得することができる。情報処理装置100によれば、当該時点から対象期間の末尾の時点までの期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得することができる。情報処理装置100によれば、取得したシステム構成と、取得した差分それぞれとに基づいて、対象期間の末尾の時点でのシステム構成を特定することができる。情報処理装置100によれば、特定した対象期間の末尾の時点でのシステム構成を出力することができる。これにより、情報処理装置100は、対象期間の末尾の時点でのシステム構成を把握可能にすることができ、利便性の向上を図ることができる。
【0228】
情報処理装置100によれば、記憶部を参照して、対象期間の先頭の時点より前の時点でのシステム構成を取得することができる。情報処理装置100によれば、当該時点から対象期間の先頭の時点までの期間内のシステム構成の変更の時点それぞれに対応付けられた、当該変更の前後でのシステム構成の差分を取得することができる。情報処理装置100によれば、取得したシステム構成と、取得した差分それぞれとに基づいて、対象期間の先頭の時点でのシステム構成を特定することができる。情報処理装置100によれば、特定した対象期間の先頭の時点でのシステム構成を出力することができる。これにより、情報処理装置100は、対象期間の先頭の時点でのシステム構成を把握可能にすることができ、利便性の向上を図ることができる。
【0229】
情報処理装置100によれば、システム構成の変更の時点ごとに、当該変更の前後でのシステム構成の差分を生成し、当該変更の時点に対応付けて記憶部に記憶することができる。これにより、情報処理装置100は、記憶部の記憶内容を適切な状態に維持することができる。
【0230】
情報処理装置100によれば、差分として、システムを形成する要素が追加、削除、または、変更されたことを示す情報を生成することができる。これにより、情報処理装置100は、差分に基づいて、システムを形成する要素が追加、削除、または、変更されたことを把握可能にすることができる。
【0231】
情報処理装置100によれば、閾値を、異なるシステム構成の差分を生成する際の処理時間に基づいて設定することができる。これにより、情報処理装置100は、適切な閾値を用いることができ、処理時間の短縮化と、記憶領域の使用量の低減化とを考慮して、適切なタイミングで、所定期間の前後でのシステム構成の差分を生成し易くすることができる。
【0232】
なお、本実施の形態で説明した差分出力方法は、予め用意されたプログラムをPCやワークステーションなどのコンピュータで実行することにより実現することができる。本実施の形態で説明した差分出力プログラムは、コンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。記録媒体は、ハードディスク、フレキシブルディスク、CD(Compact Disc)-ROM、MO(Magneto Optical disc)、DVD(Digital Versatile Disc)などである。また、本実施の形態で説明した差分出力プログラムは、インターネットなどのネットワークを介して配布してもよい。
【0233】
上述した実施の形態に関し、さらに以下の付記を開示する。
【0234】
(付記1)システム構成の変更の時点それぞれに、当該変更の前後での前記システム構成の差分を対応付けて記憶する記憶部を参照して、所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記所定期間の前後での前記システム構成の差分を生成しておき、
対象期間の前後での前記システム構成の差分を出力する要求を受け付けた際、前記対象期間に前記所定期間が含まれれば、前記記憶部を参照して、生成しておいた前記差分と、前記対象期間のうち前記所定期間以外の残余期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とに基づいて、前記対象期間の前後での前記システム構成の差分を生成し、
生成した前記対象期間の前後での前記システム構成の差分を出力する、
処理をコンピュータが実行することを特徴とする差分出力方法。
【0235】
(付記2)前記対象期間の前後での前記システム構成の差分を生成する処理は、
前記要求を受け付けた際、前記対象期間に前記所定期間が含まれなければ、前記記憶部を参照して、前記対象期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記対象期間の前後での前記システム構成の差分を生成する、ことを特徴とする付記1に記載の差分出力方法。
【0236】
(付記3)前記システム構成の変更の第1の時点から、前記第1の時点より後の前記システム構成の変更の第2の時点までの期間の前後での前記システム構成の差分を生成する際の処理時間が閾値以上であれば、当該期間を前記所定期間に設定する、
処理を前記コンピュータが実行し、
前記所定期間の前後での前記システム構成の差分を生成する処理は、
前記記憶部を参照して、設定した前記所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記所定期間の前後での前記システム構成の差分を生成する、ことを特徴とする付記1または2に記載の差分出力方法。
【0237】
(付記4)前記システム構成の変更の時点が所定数現れる都度、前記所定数現れた前記システム構成の変更の時点のうち先頭の時点から末尾の時点までの期間を前記所定期間に設定する、
処理を前記コンピュータが実行し、
前記所定期間の前後での前記システム構成の差分を生成する処理は、
前記所定期間を設定する都度、前記記憶部を参照して、前記所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記所定期間の前後での前記システム構成の差分を生成する、ことを特徴とする付記1~3のいずれか一つに記載の差分出力方法。
【0238】
(付記5)前記所定期間の前後での前記システム構成の差分を生成する処理は、
所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分のうち、先頭の前記システム構成の差分に、後続の前記システム構成の差分を順に足し合わせることにより、前記所定期間の前後での前記システム構成の差分を生成しておき、
前記対象期間の前後での前記システム構成の差分を生成する処理は、
生成しておいた前記差分と、前記残余期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とのうち、先頭の前記システム構成の差分に、後続の前記システム構成の差分を順に足し合わせることにより、前記対象期間の前後での前記システム構成の差分を生成して出力する、ことを特徴とする付記1~4のいずれか一つに記載の差分出力方法。
【0239】
(付記6)前記記憶部は、さらに、複数の時点それぞれでの前記システム構成を記憶し、
前記記憶部を参照して、前記対象期間の末尾の時点より前の時点での前記システム構成と、当該時点から前記対象期間の末尾の時点までの期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とに基づいて、前記対象期間の末尾の時点での前記システム構成を特定し、
特定した前記対象期間の末尾の時点での前記システム構成を出力する、
処理を前記コンピュータが実行することを特徴とする付記1~5のいずれか一つに記載の差分出力方法。
【0240】
(付記7)前記記憶部は、さらに、複数の時点それぞれでの前記システム構成を記憶し、
前記記憶部を参照して、前記対象期間の先頭の時点より前の時点での前記システム構成と、当該時点から前記対象期間の先頭の時点までの期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とに基づいて、前記対象期間の先頭の時点での前記システム構成を特定し、
特定した前記対象期間の先頭の時点での前記システム構成を出力する、
処理を前記コンピュータが実行することを特徴とする付記1~6のいずれか一つに記載の差分出力方法。
【0241】
(付記8)前記システム構成の変更の時点ごとに、当該変更の前後での前記システム構成の差分を生成し、当該変更の時点に対応付けて前記記憶部に記憶する、
処理を前記コンピュータが実行することを特徴とする付記1~7のいずれか一つに記載の差分出力方法。
【0242】
(付記9)前記差分は、システムを形成する要素が追加、削除、または、変更されたことを示す情報である、ことを特徴とする付記1~6のいずれか一つに記載の差分出力方法。
【0243】
(付記10)前記閾値は、異なるシステム構成の差分を生成する際の処理時間に基づいて設定される、ことを特徴とする付記3に記載の差分出力方法。
【0244】
(付記11)システム構成の変更の時点それぞれに、当該変更の前後での前記システム構成の差分を対応付けて記憶する記憶部を参照して、所定期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分に基づいて、前記所定期間の前後での前記システム構成の差分を生成しておき、
対象期間の前後での前記システム構成の差分を出力する要求を受け付けた際、前記対象期間に前記所定期間が含まれれば、前記記憶部を参照して、生成しておいた前記差分と、前記対象期間のうち前記所定期間以外の残余期間内の前記システム構成の変更の時点それぞれに対応付けられた、当該変更の前後での前記システム構成の差分とに基づいて、前記対象期間の前後での前記システム構成の差分を生成し、
生成した前記対象期間の前後での前記システム構成の差分を出力する、
処理をコンピュータに実行させることを特徴とする差分出力プログラム。
【符号の説明】
【0245】
100 情報処理装置
200 差分出力システム
201 ノード装置
202 管理者側装置
210 ネットワーク
220 システム
300 バス
301 CPU
302 メモリ
303 ネットワークI/F
304 記録媒体I/F
305 記録媒体
400 記憶部
401 取得部
402 第1生成部
403 第2生成部
404 第3生成部
405 出力部
501 構成情報取得部
502 構成差分算出部
503 期間差分算出部
504 構成差分可視化部
505 構成差分合成部
510 構成情報蓄積用DB
511 可視化用DB
801~804,811~813,1001,1002,1100,1300,1601,1602,1700 グラフ
1400 表
1500 入力画面
1710 出力画面
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25