説明

類似度算出プログラムおよび類似度算出装置

【課題】異なるデータベースの統合を行う場合に、統合されるデータベース各々に保持される構成要素間の対応付けの生成に要する時間を短縮することを課題とする。
【解決手段】類似度算出装置は、複数のデータベースにおいて、情報システムが有する構成要素の関係性を記憶する関係情報記憶部を有する。そして、類似度算出装置は、複数のデータベース間で、各データベースの任意の構成要素が有する属性値を比較し、一致する属性値の数を計数する。続いて、類似度算出装置は、複数のデータベース間で、任意の構成要素と所定の関係性を有する構成要素を関係情報記憶部から取得し、取得した構成要素が保持する属性値を比較し、一致する属性値の数を計数する。その後、類似度算出装置は、計数された属性値の数を用いて、属性値が計数された構成要素間の類似度を算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、類似度算出プログラムおよび類似度算出装置に関する。
【背景技術】
【0002】
従来、企業や個人などのユーザは、ハードウエア、ソフトウエア、データなどを自身で管理してきたが、近年では、管理運用コストを削減するために、これらを外部企業に委託することが行われている。
【0003】
このような外部委託の手法として、クラウドコンピューティングが広く利用されつつある。クラウドコンピューティングとは、ハードウエア、ソフトウエア、データなどを外部のデータセンターなどで一括管理し、ユーザはWebブラウザ等を用いて、これらを利用することができるサービス形態である。例えば、クラウドコンピューティングとしては、SaaS(Software as a Service)、PaaS(Platform as a Service)やIaaS(Infrastructure as a Service)などが該当する。
【0004】
そして、上述したクラウドコンピューティングを用いてユーザにサービスを提供する企業では、異業種のデータをデータセンターなどで管理する手法として、FCMDB(Federated Configuration Management Database)の導入を進めている。FCMDBとは、ITIL(Information Technology Infrastructure Library)で提案されているCMDBを用いて、複数の異種DBを仮想的に統合し、複数システムのシームレスな連携が可能となる技術である。
【0005】
例えば、FCMDBは、図28に示すように、構成情報管理システム(A−XML)とサービス管理システム(B−XML)とのそれぞれに記憶されるデータ(構成要素:Configuration Item)を仮想的に統合して管理することができる。そして、FCMDBは、異なるDB各々が同種の情報を保持している場合に、構成要素の同期や一貫性を保つために、構成要素間の対応付けを生成して保持する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2007−304796号公報
【特許文献2】特開平8−249338号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上述した従来の技術では、異なるデータベースの統合を行う場合に、統合されるデータベース各々に保持される構成要素間の対応付けを生成するのに非常に多くの時間を要するという課題があった。
【0008】
具体的には、近年のコンピュータの高性能化に伴い、データベースが保持するデータ量は膨大になるとともに、複雑な構成を有していることが多い。このようなデータベースを仮想統合する場合でも、従来では、構成要素間の対応付けがユーザによる手作業で行われていたため、非常に多くの時間を要していた。
【0009】
開示の技術は、上記に鑑みてなされたものであって、異なるデータベースの統合を行う場合に、統合されるデータベース各々に保持される構成要素間の対応付けの生成に要する時間を短縮することが可能である類似度算出プログラムおよび類似度算出装置を提供することを目的とする。
【課題を解決するための手段】
【0010】
本願の開示する類似度算出プログラムは、一つの態様において、情報システムが有する構成要素を記憶する複数のデータベース間で、各データベースの任意の構成要素が有する属性値を比較し、一致する属性値の数を計数する第一計数手順を有する。そして、前記複数のデータベース間で、前記任意の構成要素と所定の関係性を有する構成要素が保持する属性値を比較し、一致する属性値の数を計数する第二計数手順を有する。そして、前記第一計数手順によって計数された属性値の数と、前記第二計数手順によって計数された属性値の数とを用いて、前記第一計数手順または前記第二計数手順によって属性値が計数された構成要素間の類似度を算出する類似度算出手順を有する。
【発明の効果】
【0011】
本願の開示する類似度算出プログラムおよび類似度算出装置の一つの態様によれば、異なるデータベースの統合を行う場合に、統合されるデータベース各々に保持される構成要素間の対応付けの生成に要する時間を短縮することが可能であるという効果を奏する。
【図面の簡単な説明】
【0012】
【図1】図1は、実施例1に係る類似度算出装置の構成を示すブロック図である。
【図2】図2は、実施例2に係る類似度算出装置の構成を示すブロック図である。
【図3】図3は、仮想的に統合されるデータベースに記憶されるA−XMLのデータ例を示す図である。
【図4】図4は、仮想的に統合されるデータベースに記憶されるB−XMLのデータ例を示す図である。
【図5】図5は、構成要素間のRelationshipを示す図である。
【図6】図6は、A−XMLの構成要素Switch1が有する属性値の例を示す図である。
【図7】図7は、A−XMLの構成要素Server1が有する属性値の例を示す図である。
【図8】図8は、A−XMLの構成要素Server2が有する属性値の例を示す図である。
【図9】図9は、A−XMLの構成要素Service1が有する属性値の例を示す図である。
【図10】図10は、B−XMLの構成要素sw1が有する属性値の例を示す図である。
【図11】図11は、B−XMLの構成要素svr1が有する属性値の例を示す図である。
【図12】図12は、B−XMLの構成要素svr2が有する属性値の例を示す図である。
【図13】図13は、B−XMLの構成要素svc1が有する属性値の例を示す図である。
【図14】図14は、対応一覧DBに記憶される情報の例を示す図である。
【図15】図15は、任意の構成要素に着目して属性値を比較する例を示す図である。
【図16】図16は、第一計数部または第二計数部よって計数された結果の例を示す図である。
【図17】図17は、類似度の算出例を示す図である。
【図18】図18は、構成要素の組が同一であるか否かを問い合わせる画面例を示す図である。
【図19】図19は、構成要素の組が同一であるか否かを問い合わせる画面例を示す図である。
【図20】図20は、実施例2に係る類似度算出装置における処理の流れを示すフローチャートである。
【図21】図21は、一致した属性値の割合を類似度として算出する例を示す図である。
【図22】図22は、一致した属性値の数にホップ数の逆数を乗算したものの和を類似度として算出する例を示す図である。
【図23】図23は、一致した属性値の割合にホップ数の逆数を乗算したものの和を類似度として算出する例を示す図である。
【図24】図24は、選択結果のフィードバック例として類似度を2倍にする例を示す図である。
【図25】図25は、選択結果のフィードバック例として類似度をホップ数の逆数倍にする例を示す図である。
【図26】図26は、選択結果のフィードバック例として類似度を減少させる例を示す図である。
【図27】図27は、類似度算出プログラムを実行するコンピュータシステム100を示す図である。
【図28】図28は、FCMDBによる異なるデータベースの仮想統合例を示す図である。
【発明を実施するための形態】
【0013】
以下に、本願の開示する類似度算出プログラムおよび類似度算出装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例1】
【0014】
まず、図1を用いて、本願が開示する類似度算出装置について説明する。図1は、実施例1に係る類似度算出装置の構成を示すブロック図である。
【0015】
図1に示すように、類似度算出装置1は、構成情報DB2とサービス管理DB3とが仮想的に統合されたFCMDB(Federated Configuration Management Database)4に接続される。構成情報DB2とサービス管理DB3は、XML(Extensible Markup Language)形式でデータを記憶する記憶部である。ここでは、構成情報DB2は、情報システム等の構成情報を管理するA−XMLを記憶しており、サービス管理DB3は、情報システム等のサービス情報を管理するB−XMLを記憶している。
【0016】
FCMDB4は、ITIL(Information Technology Infrastructure Library)で提案されているCMDBを用いて、複数の異種DBを仮想的に統合する記憶部である。ここでは、FCMDB4は、仮想統合対象の構成情報DB2におけるA−XMLの構成要素と、例えばServer1はSwitch1に接続しているという情報など構成要素間の関係性(Relationship)を記憶している。同様に、FCMDB4は、仮想統合対象のサービス管理DB3におけるB−XMLの構成要素と、構成要素間の関係性(Relationship)を記憶している。
【0017】
このような状態において、類似度算出装置1は、構成情報DB2とサービス管理DB3との間で、同一の構成要素を抽出する装置であり、第一計数部1aと、第二計数部1bと、類似度算出部1cとを有する。
【0018】
第一計数部1aは、情報システムが有する構成要素を記憶する複数のデータベース間で、各データベースの任意の構成要素が有する属性値を比較し、一致する属性値の数を計数する。例えば、第一計数部1aは、FCMDB4で管理される構成情報DB2の任意の構成要素A1が有する属性値と、同様に管理されるサービス管理DB3の任意の構成要素B1が有する属性値を比較し、一致する属性値の数を計数する。
【0019】
第二計数部1bは、複数のデータベース間で、任意の構成要素と所定の関係性を有する構成要素が保持する属性値を比較し、一致する属性値の数を計数する。例えば、第二計数部1bは、構成情報DB2において構成要素A1と関連する構成要素A2が有する属性値と、サービス管理DB3において構成要素B1と関連する構成要素B2が有する属性値との各々を比較し、一致する属性値の数を計数する。同様に、第二計数部1bは、構成要素A1と関連する構成要素A3〜A5についても、構成要素B1と関連する構成要素B3〜B5と比較し、一致する属性値の数を計数する。
【0020】
類似度算出部1cは、第一計数部1aによって計数された属性値の数と、第二計数部1bによって計数された属性値の数を用いて、第一計数部1aまたは第二計数部1bによって属性値が計数された構成要素間の類似度を算出する。例えば、類似度算出部1cは、第一計数部1aおよび第二計数部1bによって算出された一致する属性値の数を累計する。そして、類似度算出部1cは、一致する属性値の累計を、第一計数部1aによって計数された構成要素の組の類似度とする。また、類似度算出部1cは、第二計数部1bによって一致する属性値が計数された構成要素の組については、当該構成要素の組から当該組と関連する構成要素の組までの一致する属性値を累計し、累計した結果を類似度とする。
【0021】
このように、実施例1によれば、FCMDB4で管理される構成情報DB2が有する構成要素と情報サービスDB3が有する構成要素との類似度を算出することで、ユーザが構成要素間の対応付けを行う判断情報として類似度を提供することができる。このため、何も判断情報がない場合と比較すると、ユーザの手間を大幅に削減することができ、異なるデータベースの統合を行う場合に、統合されるデータベース各々に保持される構成要素間の対応付けの生成に要する時間を短縮することが可能である。
【実施例2】
【0022】
ところで、本願が開示する類似度算出装置は、実施例1で説明した制御部以外にも他の様々な制御部を有することができ、例えば、対応一覧を自動で生成することもできる。そこで、実施例2では、実施例1で説明した制御部以外の制御部等を有し、対応一覧を自動で生成する類似度算出装置について説明する。
【0023】
[類似度算出装置の構成]
まず、図2を用いて、実施例2に係る類似度算出装置の構成を説明する。図2は、実施例2に係る類似度算出装置の構成を示すブロック図である。図2に示すように、類似度算出装置10は、通信制御部I/F部11と、入力部12と、表示部13と、CMDB14と、計数値DB15と、対応一覧DB16と、制御部20とを有する。
【0024】
また、CMDB14、計数値DB15、対応一覧DB16などのデータベースは、例えば、半導体メモリ素子、または、ハードディスクなどの記憶装置である。制御部20は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
【0025】
かかる通信制御部I/F部11は、少なくとも1つの通信ポートを有するインタフェースであり、インターネットや各種LAN(Local Area Network)を介して他の装置との間でやり取りされる情報を制御する。例えば、通信制御I/F部11は、インターネットなどに接続される管理装置から対応一覧作成指示や終了指示を受信し、また、後述する制御部20によって生成された対応一覧を管理装置に送信する。
【0026】
入力部12は、例えば、キーボードやマウス、マイクなどであり、対応一覧作成指示や終了指示、後述する制御部20から表示部13に出力された問い合わせ画面に対する応力を受付けて制御部20等に入力する。なお、後述する表示部13も、マウスと協働してポインティングディバイス機能を実現する。表示部13は、例えば、モニタ、ディスプレイ、タッチパネルやスピーカなどであり、制御部20によって生成された「一致、不一致、保留」などの構成要素間が同一であるか否かの問い合わせ画面などを表示出力する。
【0027】
CMDB14は、FCMDBによって仮想的に統合される情報システムの構成要素やデータベースが記憶する構成要素が有する属性値や構成要素間の関係性(Relationship)などを記憶するものであり、関係情報DB14aと、属性情報DB14bとを有する。
【0028】
関係情報DB14aは、情報システムが有する構成要素であって、仮想的に統合されるデータベースに記憶される構成要素間の関係性を記憶する。例えば、関係情報DB14aは、図3に示すようなA−XMLのデータと、図4に示すようなB−XMLのデータとを記憶し、さらに、図5に示すように、A−XMLおよびB−XMLの構成要素間のRelationshipを記憶している。なお、図3は、仮想的に統合されるデータベースに記憶されるA−XMLのデータ例を示す図であり、図4は、仮想的に統合されるデータベースに記憶されるB−XMLのデータ例を示す図であり、図5は、構成要素間のRelationshipを示す図である。
【0029】
図3に示したデータ例は、XMLデータであるA−XMLの構成要素「Switch」における属性名「nickname」の属性値が「sw01」、属性名「ipaddr」の属性値が「192.168.0.1」であることを示している。さらに、A−XMLの構成要素「Switch」における属性名「manufacture」の属性値が「fujitsu」、属性名「manufacture country」の属性値が「jp」であることを示している。また、図4に示したデータ例は、XMLデータであるB−XMLの構成要素「sw」における属性名「sw name」の属性値が「sw01」、属性名「ip_addr」の属性値が「192.168.0.1」、属性名「mfr」の属性値が「fujitsu」であることを示している。
【0030】
また、図5では、A−XMLの構成要素「Switch1」、「Server1」、「Service1」間の関係性を記憶している。この例では、「Switch1」と「Server1」、「Server1」と「Service1」とがそれぞれホップ数1の関係性にあり、「Switch1」と「Service1」とが「Server1」を介したホップ数2の関係性にあることが記憶されている。また、B−XMLの構成要素「sw1」、「svr1」、「svc1」間の関係性を記憶しており、この例では、「sw1」と「svr1」、「svr1」と「svc1」とがそれぞれホップ数1の関係性にあり、「sw1」と「svc1」とが「svr1」を介したホップ数2の関係性にあることが記憶されている。なお、図5で示す矢印は、例えば一般的な階層構造を示している。
【0031】
属性情報DB14bは、情報システムが有する構成要素、言い換えると、関係情報DB14aに記憶される各構成要素が有する属性情報を記憶する。具体的には、属性情報DB14bは、A−XMLの各構成要素が有する属性値については図6〜図9に示した情報を記憶しており、B−XMLの各構成要素が有する属性値については図10〜図13に示した情報を記憶している。
【0032】
図6は、A−XMLの構成要素Switch1が有する属性値の例を示す図であり、図7は、A−XMLの構成要素Server1が有する属性値の例を示す図である。また、図8は、A−XMLの構成要素Server2が有する属性値の例を示す図であり、図9は、A−XMLの構成要素Service1が有する属性値の例を示す図である。また、図10は、B−XMLの構成要素sw1が有する属性値の例を示す図であり、図11は、B−XMLの構成要素svr1が有する属性値の例を示す図である。また、図12は、B−XMLの構成要素svr2が有する属性値の例を示す図であり、図13は、B−XMLの構成要素svc1が有する属性値の例を示す図である。
【0033】
例えば、属性情報DB14bは、図6に示すように、A−XMLの構成要素「Switch1」の「属性名、属性値」として「Switch/@nickname、sw01」、「Switch/@ipaddr、192.168.0.1」を記憶している。さらに、属性情報DB14bは、A−XMLの構成要素「Switch1」の「属性名、属性値」として「Switch/manufacture、fujitsu」、「Switch/manufacture/@country、jp」を記憶している。
【0034】
同様に、属性情報DB14bは、図7に示すように、A−XMLの構成要素「Server1」の「属性名、属性値」として「Server/@nickname、svr01」、「Server/@ipaddr、192.168.0.2」を記憶している。さらに、属性情報DB14bは、A−XMLの構成要素「Server1」の「属性名、属性値」として「Server/manufacture、fujitsu」、「Server/manufacture/@country、jp」、「Server/cpu、XXX2.6GHz」を記憶している。
【0035】
同様に、属性情報DB14bは、図8に示すように、A−XMLの構成要素「Server2」の「属性名、属性値」として「Server/@nickname、svr02」、「Server/@ipaddr、192.168.0.3」を記憶している。
【0036】
同様に、属性情報DB14bは、図9に示すように、A−XMLの構成要素「Service1」の「属性名、属性値」として「Service/@nickname、svc01」、「Service/@application、manager01」、「Service/company、fujitsu」を記憶している。また、属性情報DB14bは、A−XMLの構成要素「Service1」の「属性名、属性値」として「Service/company/@country、jp」、「Service/database、db01」、「Service/database/owner、fujitsu」、「Service/date、20140930」を記憶している。
【0037】
また、属性情報DB14bは、図10に示すように、B−XMLの構成要素「sw1」の「属性名、属性値」として「sw/@name、sw01」、「sw/@ip_addr、192.168.0.1」、「sw/mfr、fujitsu」を記憶している。同様に、属性情報DB14bは、図11に示すように、B−XMLの構成要素「svr1」の「属性名、属性値」として「svr/@name、svr01」、「svr/@ip_addr、192.168.0.2」、「svr/mfr、fujitsu」、「svr/cpu、YYY2.6GHz」を記憶している。
【0038】
また、属性情報DB14bは、図12に示すように、B−XMLの構成要素「svr2」の「属性名、属性値」として「svr/@name、svr02」、「svr/@ip_addr、192.168.0.3」を記憶している。同様に、属性情報DB14bは、図13に示すように、B−XMLの構成要素「svc1」の「属性名、属性値」として「svc/@name、svc01」、「svc/@app、namager01」、「svc/co、fujitsu」、「svc/db、db01」、「svc/dt、20140930」を記憶している。
【0039】
ここで記憶される属性名の「nickname」や「nama」は、サーバ名やホスト名を示しており、「ipaddr」「ip_add」は、サーバ等のIP(Internet Protocol)アドレスを示している。「manufacture」、「mfr」、「company」は、サーバなどの製造会社やサービスの提供元会社を示している。また、「manufacture/country」は、製造会社やサービス提供元会社の属する国を示しており、「cpu」は、使用されているプロセッサを示しており、「database」は、使用するデータベースを示している。また、「databese/owner」は、データベースの管理者を示しており、「data」は、データベースの作成又は更新日時を示しており、「application」は、実行されるアプリケーションを示している。
【0040】
図2に戻り、計数値DB15は、後述する第一計数部21や第二計数部22によって、計数された値を記憶する。例えば、計数値DB15は、構成要素「Switch」と「sw1」との間の一致する構成要素の数は「3」であるなどを記憶する。
【0041】
対応一覧DB16は、後述する制御部20によって生成された各データベースにおける構成要素間の対応付けを記憶する。上述した例で説明すると、対応一覧DB16は、図14に示すように、「A−XMLの構成要素、B−XMLの構成要素」として「Switch1、sw1」、「Server1、svr1」、「Switch2、sw2」などと記憶する。一例を説明すると、「A−XMLの構成要素=Switch1」と、「B−XMLの構成要素=sw1」とは同じ構成要素であることを示している。なお、図14は、対応一覧DBに記憶される情報の例を示す図である。
【0042】
制御部20は、OS(Operating System)などの制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。さらに、制御部20は、第一計数部21と、第二計数部22と、類似度算出部23と、判定結果受付部24と、対応生成部25とを有し、これらによって各種処理を実行する。
【0043】
第一計数部21は、複数の構成要素を有する複数のデータベース間で、各データベースの任意の構成要素が有する属性値を比較し、一致する属性値の数を計数する。具体的には、第一計数部21は、CMDB14の関係情報DB14aに記憶されるA−XMLおよびB−XMLの各々で任意に指定された構成要素に対して、属性情報DB14bを参照して、一致する属性値の数を計数して計数値DB15に格納する。
【0044】
例えば、第一計数部21は、図15に示すように、A−XMLにおける「Switch1」とB−XMLにおける「sw1」とがユーザによって任意に指定されたとする。この場合、第一計数部21は、図6と図10を参照し、「sw01」、「192.168.0.1」、「fujitsu」の3つの属性値が一致するので、一致する属性値の数「3」を計数値DB15に格納し、計数が終了したことを第二計数部22に出力する。
【0045】
第二計数部22は、複数のデータベース間で、任意の構成要素と関連する構成要素が保持する属性値を比較し、一致する属性値の数を計数する。具体的には、第二計数部22は、第一計数部21で計数された構成要素と関係性を有する構成要素を関係情報DB14aから特定し、特定した構成要素が保持する属性値を比較し、一致する属性値の数を計数して計数値DB15に格納する。その後、第二計数部22は、計数が終了したことを類似度算出部23に出力する。
【0046】
例えば、図15を例にして説明する。図15は、任意の構成要素に着目して属性値を比較する例を示す図である。第二計数部22は、第一計数部21の処理が終了すると、「Switch1」とホップ数1の関係性を有する「Server1」と、「sw1」とホップ数1の関係性を有する「svr1」とを特定する。そして、第二計数部22は、図7に示した「Server1」の属性情報と図11に示した「svr1」の属性情報とを比較し、「svr01」、「192.168.0.2」、「fujitsu」の3つの属性値が一致するので、一致する属性値の数「3」を計数値DB15に格納する。
【0047】
続いて、第二計数部22は、同様に、「Switch1」とホップ数1の関係性を有する「Server2」と、「sw1」とホップ数1の関係性を有する「svr2」とを特定する。そして、第二計数部22は、図8に示した「Server2」の属性情報と図12に示した「svr2」の属性情報とを比較し、「svr02」、「192.168.0.3」の2つの属性値が一致するので、一致する属性値の数「2」を計数値DB15に格納する。
【0048】
続いて、第二計数部22は、同様に、「Switch1」とホップ数2の関係性を有する「Service1」と、「sw1」とホップ数2の関係性を有する「svc1」とを特定する。そして、第二計数部22は、図9に示した「Service1」の属性情報と図13に示した「svc1」の属性情報とを比較し、「svc01」、「manager01」、「fujitsu」、「db01」、「20140930」の5つの属性値が一致すると計数する。そして、第二計数部22は、一致する属性値の数「5」を計数値DB15に格納する。
【0049】
図2に戻り、類似度算出部23は、第一計数部21によって計数された属性値の数と、第二計数部22によって計数された属性値の数を用いて、第一計数部21または第二計数部22よって属性値が計数された構成要素間の類似度を算出する。例えば、第一計数部21または第二計数部22よって計数された結果、図16に示した計数結果が得られたとする。図16は、第一計数部または第二計数部よって計数された結果の例を示す図である。一例を説明すると、A−XMLにおいて「Switch1」からホップ数2の「Service1」では、属性値7つのうち、B−XMLの「svc」と一致する属性値は「5」であることを示している。
【0050】
この例で「Switch1」と「sw1」の類似度を算出する例を説明すると、類似度算出部23は、類似度算出対象の「Switch1」をホップ数「0」とし、ホップ数「0」から「2」までで一致した属性値の累計を算出する。つまり、類似度算出部23は、図17に示すように、ホップ数「0」においては一致数「3+3=6」、ホップ数「1」においては一致数「5+5=10」、ホップ数「2」においては一致数「5+5=10」と算出し、これらの累計「6+10+10=26」を算出する。そして、類似度算出部23は、累計値「26」を「Switch1」と「sw1」の類似度とする。なお、図17は、類似度の算出例を示す図である。
【0051】
また、例えば、「Server1」と「svr1」の類似度を算出する例を説明すると、類似度算出部23は、類似度算出対象の「Server1」をホップ数「0」とし、ホップ数「0」から「1」までで一致した属性値の累計を算出する。このとき、図16に示した矢印の方向のみが算出対象とする。つまり、類似度算出部23は、図16に示すように、ホップ数「0」においては一致数「3+3=6」、ホップ数「1」においては一致数「5+5=10」と算出し、これらの累計「6+10=16」を算出する。そして、類似度算出部23は、累計値「16」を「Server1」と「svr1」の類似度とする。
【0052】
そして、類似度算出部23は、上述した手法で、各構成要素間の類似度を算出すると、算出結果を判定結果受付部24に出力する。なお、上述した類似度算出手法において、第一計数部21で算出した任意の構成要素と関係性が弱い構成要素を類似度判定から取り除くために、任意の構成要素からのホップ数が所定値以上である構成要素を類似度算出対象から除外するようにしてもよい。
【0053】
図2に戻り、判定結果受付部24は、類似度算出部23によって算出された類似度が大きい順に、類似度が算出された構成要素の組み合わせが同一の構成要素であるか否かを示す判定結果をユーザから受け付ける。例えば、類似度算出部23によって、「Switch1」と「sw1」の類似度が「10.48」、「Server1」と「svr1」の類似度が「8.16」、「Server2」と「svr2」の類似度が「6.32」、「Service1」と「svc1」の類似度が「7.62」と算出されたとする。
【0054】
この場合、判定結果受付部24は、類似度が最も大きい「Switch1」と「sw1」が同一の構成要素、言い換えると、同一のCI(Configuration Item)であるのかを問い合わせる表示画面を生成して表示部13に表示出力する。そして、判定結果受付部24は、受け付けた判定結果を対応生成部25に出力する。この画面には、図18に示すように、選択させる構成要素の組と類似度、「一致」ボタン、「不一致」ボタン、「保留」ボタン、次に類似度が大きい構成要素の組が表示される。なお、図18は、構成要素の組が同一であるか否かを問い合わせる画面例を示す図である。
【0055】
そして、判定結果受付部24は、入力部12を介して「一致」ボタンの入力を受け付けると、表示される構成要素の組が同一であることを対応生成部25に出力する。続いて、判定結果受付部24は、次に類似度が大きい構成要素の組を、上述した表示画面を生成し、表示部13に表示出力する。このとき、判定結果受付部24は、閾値以上の類似度を有する構成要素の組についてのみ問い合わせるようにしてもよい。
【0056】
また、判定結果受付部24は、入力部12を介して「不一致」ボタンの入力を受け付けると、表示される構成要素の組が同一でないことを対応生成部25に出力する。続いて、判定結果受付部24は、次に類似度が大きい構成要素の組を、上述した表示例にしたがった画面を生成し、表示部13に表示出力する。
【0057】
また、判定結果受付部24は、入力部12を介して「保留」ボタンの入力を受け付けると、表示される構成要素の組が同一であるか否かの判定を保留する。その上で、判定結果受付部24は、次に類似度が大きい構成要素の組を、上述した表示画面を生成し、表示部13に表示出力する。その後、判定結果受付部24は、入力部12を介して「一致」又は「不一致」ボタンの入力を受け付けると、表示される構成要素の組の判定結果を対応生成部25に出力する。続いて、判定結果受付部24は、保留していた構成要素の組を、上述した表示画面を生成し、表示部13に表示出力する。
【0058】
また、別の画面例としては、例えば、図19に示すように、構成要素「Switch1」と「sw1」各々が有する属性値を全て表示する画面を表示することもできる。図19の例では、判定結果受付部24は、構成要素「Switch1」が有する属性名と属性値(図6参照)と、構成要素「sw1」が有する属性名と属性値(図10参照)とを表示した表示画面を生成して表示部13に表示出力する。このような画面を用いることで、ユーザは、類似度に加え属性値を閲覧しながら同一か否かを判定することができるので、判定精度の向上が期待できる。なお、図19は、構成要素の組が同一であるか否かを問い合わせる画面例を示す図である。
【0059】
対応生成部25は、判定結果受付部24によって受け付けられた判定結果に基づいて、複数のデータベースにおける構成要素間の対応付けを生成する。例えば、対応生成部25は、構成要素「Switch1」と「sw1」の組が同一である、すなわち、「一致」がユーザにより選択された場合、構成要素「Switch1」と「sw1」は同一の構成要素であることを示す情報を対応一覧DB16に格納する。また、対応生成部25は、構成要素「Switch1」と「sw1」の組が同一でない、すなわち、「不一致」がユーザにより選択された場合、構成要素「Switch1」と「sw1」は同一でない構成要素であることを示す情報を対応一覧DB16に格納する。
【0060】
[処理の流れ]
次に、図20を用いて、上述した実施例2に係る類似度算出装置における処理の流れを説明する。図20は、実施例2に係る類似度算出装置における処理の流れを示すフローチャートである。
【0061】
図20に示すように、類似度算出装置10の第一計数部21は、入力部12等によって対応一覧作成開始指示を受け付けると(ステップS101肯定)、CMDB14内の任意の構成要素(CI)間の属性値を比較する(ステップS102)。
【0062】
続いて、第一計数部21は、等しい属性値が存在する場合(ステップS103肯定)、等しい属性値の数を計数して計数値DB15に格納する(ステップS104)。一方、第一計数部21は、等しい属性値が存在しない場合(ステップS103否定)、ステップS102に戻って、別の構成要素の属性値を比較する。
【0063】
そして、第二計数部22は、各構成要素、言い換えると、ステップS101で特定した任意の各構成要素について、関係情報DB14aを参照し、全てのRelationship(ホップ数)で属性値の比較を実施したか否かを判定する(ステップS105)。
【0064】
続いて、第二計数部22は、全てのRelationship(ホップ数)で属性値の比較を実施していない場合には(ステップS105否定)、次の比較対象のRelationship(ホップ数)が閾値以上か否かを判定する(ステップS106)。
【0065】
そして、第二計数部22は、次の比較対象のRelationship(ホップ数)が閾値未満である場合(ステップS106否定)、次の比較対象のRelationship(ホップ数)で繋がれた構成要素同士を比較し(ステップS107)、ステップS103以降の処理を実行する。
【0066】
一方、全てのRelationship(ホップ数)で属性値の比較を実施した場合には(ステップS105肯定)、類似度算出部23は、上述したいずれかの手法を用いて、構成要素間の類似度を算出する(ステップS108)。また、次の比較対象のRelationship(ホップ数)が閾値以上である場合も(ステップS106肯定)、類似度算出部23は、上述したいずれかの手法を用いて、構成要素間の類似度を算出する(ステップS108)。
【0067】
そして、類似度算出部23は、CMDB14内の全ての構成要素について類似度を算出したか否かを判定し(ステップS109)、算出していない場合には(ステップS109否定)、類似度算出装置10は、ステップS102以降の処理を繰り返す。
【0068】
その後、判定結果受付部24は、CMDB14内の全ての構成要素について類似度を算出した場合(ステップS109肯定)、算出した類似度を高い順に並び変えて(ステップS110)、並び換えた最大値が閾値より大きいか否かを判定する(ステップS111)。
【0069】
そして、判定結果受付部24は、並び換えた類似度の最大値が閾値より大きい場合(ステップS111肯定)、最大の類似度の構成要素の組と類似度を表示する画面を表示部13に表示出力する(ステップS112)。このとき、判定結果受付部24は、構成要素の組が同一の構成要素であるか否かを選択させる項目も含めた画面を表示部13に表示出力する。
【0070】
その後、対応生成部25は、ステップS112で表示した画面に対して、構成要素の組が同一であるか否かの判定結果をユーザから画面を介して受け付けると(ステップS113肯定)、受け付けた結果に基づいて対応一覧を生成する(ステップS114)。
【0071】
続いて、判定結果受付部24は、次に最大の類似度を有する構成情報の組を特定して、ステップS111以降の処理を実行する(ステップS115)。また、判定結果受付部24は、ステップS111において、最大の類似度が閾値以下になると(ステップS111否定)、処理を終了する。また、判定結果受付部24は、類似度が算出された全ての構成情報の組について、問い合わせ結果を受け付けた場合にも、処理を終了する。
【0072】
[実施例2による効果]
このように、実施例2によれば、CMDB14におけるRelationshipを基に、異なるスキーマ間での構成要素の対応付け候補を生成して、類似度の高い順にユーザに問い合わせ、その結果に基づいて対応一覧を生成することができる。この結果、ユーザの手間を大幅に削減することができるとともに、異なるデータベースの統合を行う場合に、統合されるデータベース各々に保持される構成アイテム間の対応付けの生成に要する時間を短縮することが可能である。また、CMDB14内のRelationshipに基づいた同一構成要素の推測を実施できるので、的中率の高い推測を実現できる。
【実施例3】
【0073】
ところで、実施例2では、ホップ数の累計値を類似度とする例について説明したが、本願はこれに限定されるものではなく、様々な手法で類似度を算出することができる。そこで、実施例3では、ホップ数を用いた様々な類似度算出手法について説明する。
【0074】
(一致した属性値の割合)
例えば、類似度算出部23は、属性値の比較を行った全属性値の数における一致した属性値の割合を類似度とすることができる。具体的には、類似度算出部23は、図21に示すように、ホップ数が「0」の構成要素の組の属性値数が「7」で、一致した属性値が「6」であったとする。同様に、ホップ数が「1」のときの属性値数が「13」で一致した属性値が「10」、ホップ数が「2」のときの属性値数が「12」で一致した属性値が「10」であったとする。
【0075】
この場合、類似度算出部23は、一致する属性値の合計「6+10+10=26」を属性値数の合計「7+13+12=32」で除算した「26/32=0.8125」をホップ数「0」の構成要素間の類似度として算出することができる。なお、図21は、一致した属性値の割合を類似度として算出する例を示す図である。
【0076】
(一致した属性値の数にホップ数の逆数を乗算したものの和)
例えば、類似度算出部23は、一致した属性値の数にホップ数nの逆数「1/(n+1)」を乗算したものの和を類似度とすることができる。具体的には、類似度算出部23は、図22に示すように、ホップ数が「0」の構成要素の組に対して、逆数「1/(0+1)=1」を一致した属性値の数「6」に乗算して結果「6」を算出する。同様に、類似度算出部23は、ホップ数が「1」の構成要素の組に対して、逆数「1/(1+1)=0.5」を一致した属性値の数「10」に乗算して結果「5」を算出する。同様に、類似度算出部23は、ホップ数が「2」の構成要素の組に対して、逆数「1/(2+1)=0.33」を一致した属性値の数「10」に乗算して結果「3.3」を算出する。
【0077】
そして、類似度算出部23は、逆数を乗算して得られた「和=6+5+3.3=14.3」をホップ数「0」の構成要素間の類似度として算出することができる。なお、図22は、一致した属性値の数にホップ数の逆数を乗算したものの和を類似度として算出する例を示す図である。
【0078】
(一致する属性値の割合にホップ数の逆数を乗算したものの和)
例えば、類似度算出部23は、一致した属性値の割合にホップ数nの逆数「1/(n+1)」を乗算したものの和を類似度とすることができる。具体的には、類似度算出部23は、図23に示すように、ホップ数が「0」の構成要素の組に対して、逆数「1/(0+1)=1」を一致した属性値の割合「6/7=0.86」に乗算して結果「0.86」を算出する。同様に、類似度算出部23は、ホップ数が「1」の構成要素の組に対して、逆数「1/(1+1)=0.5」を一致した属性値の割合「10/13」に乗算して結果「0.38」を算出する。同様に、類似度算出部23は、ホップ数が「2」の構成要素の組に対して、逆数「1/(2+1)=0.33」を一致した属性値の数「10/12」に乗算して結果「0.28」を算出する。
【0079】
そして、類似度算出部23は、逆数を乗算して得られた「和=0.86+0.38+0.28=1.52」をホップ数「0」の構成要素間の類似度として算出することができる。なお、図23は、一致した属性値の割合にホップ数の逆数を乗算したものの和を類似度として算出する例を示す図である。
【実施例4】
【0080】
ところで、実施例2では、ユーザによる判定結果を受け付けると、次に類似度が高い構成要素の組を表示する例について説明したが、本願はこれに限定されるものではなく、判定結果を他の構成要素の組の類似度にフィードバックさせることもできる。そこで、実施例4では、ユーザによる判定結果を他の構成要素の組の類似度にフィードバックさせる様々な例について説明する。
【0081】
(類似度を2倍にフィードバック)
例えば、判定結果受付部24は、図18の画面を表示部13に表示し、入力部12を介して「一致」ボタンの入力を受け付けたとする。すると、判定結果受付部24は、図24に示すように、一致する選択された構成要素各々と関係性を有する類似度算出済みの全ての類似度を2倍にする。続いて、判定結果受付部24は、「一致」ボタンが入力された構成情報の組を除いた中で、最も類似度の大きい構成情報の組を上述したような表示画面で表示部13に表示出力することもできる。図24は、選択結果のフィードバック例として類似度を2倍にする例を示す図である。
【0082】
図24の例の場合、判定結果受付部24は、ホップ数「1」の「Server2」と「svr2」の類似度を「6.32×2=12.64」と算出する。同様に、判定結果受付部24は、ホップ数「1」の「Server1」と「svr1」の類似度を「8.16×2=16.32」と算出し、ホップ数「2」の「Service1」と「svc1」の類似度を「7.62×2=15.24」と算出する。そして、判定結果受付部24は、最も類似度が大きいホップ数「1」の「Server1」と「svr1」が同一であるか否かを問い合わせる。
【0083】
(類似度をホップ数の逆数倍にフィードバック)
例えば、判定結果受付部24は、図18の画面を表示部13に表示し、入力部12を介して「一致」ボタンの入力を受け付けたとする。すると、判定結果受付部24は、図25に示すように、各ホップ数における類似度に逆数倍「1+1/ホップ数」を乗算する。続いて、判定結果受付部24は、「一致」ボタンが入力された構成情報の組を除いた中で、最も類似度の大きい構成情報の組を上述したような表示画面で表示部13に表示出力する。図25は、選択結果のフィードバック例として類似度をホップ数の逆数倍にする例を示す図である。
【0084】
図25の例の場合、判定結果受付部24は、ホップ数「1」の「Server2」と「svr2」の類似度を「6.32×(1+1/1)=12.64」と算出する。同様に、判定結果受付部24は、ホップ数「1」の「Server1」と「svr1」の類似度を「8.16×(1+1/1)=16.32」と算出し、ホップ数「2」の「Service1」と「svc1」の類似度を「7.62×(1+1/2)=11.43」と算出する。そして、判定結果受付部24は、最も類似度が大きいホップ数「1」の「Server1」と「svr1」が同一であるか否かを問い合わせる。
【0085】
(類似度を1/2倍にフィードバック)
例えば、判定結果受付部24は、図18の画面を表示部13に表示し、入力部12を介して「不一致」ボタンの入力を受け付けた場合に、類似度が減少するようにフィードバックすることもできる。一例としては、判定結果受付部24は、図26に示すように、各ホップ数における類似度に1/2倍を乗算する。続いて、判定結果受付部24は、類似度に1/2倍をした上で、最も類似度の大きい構成情報の組を上述したような表示画面で表示部13に表示出力する。図26は、選択結果のフィードバック例として類似度を減少させる例を示す図である。
【0086】
図26の例の場合、判定結果受付部24は、ホップ数「1」の「Server2」と「svr2」の類似度を「6.32×1/2=3.16」と算出する。同様に、判定結果受付部24は、ホップ数「1」の「Server1」と「svr1」の類似度を「8.16×1/2=4.08」と算出し、ホップ数「2」の「Service1」と「svc1」の類似度を「7.62×1/2=3.81」と算出する。そして、判定結果受付部24は、類似度が「4」より小さくなった構成要素の組を問い合わせ対象から除外し、残ったホップ数「1」の「Server1」と「svr1」が同一であるか否かを問い合わせる。
【0087】
このようにすることで、類似度算出装置10は、構成要素が同一である場合には、他の構成要素も同一である可能性が高いと判断してユーザに問い合わせることができる。また、類似度算出装置10は、構成要素が同一でない場合には、他の構成要素も同一でない可能性が高いと判断してユーザに問い合わせることができる。すなわち、問い合わせ結果のフィードバックによって類似度の的中率を向上させることができ、ユーザの手間をより削減することができる。
【実施例5】
【0088】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
【0089】
(対応一覧対象)
例えば、実施例1〜4では、FCMDBに仮想統合されるデータベース間の構成要素の対応一覧を生成する例について説明したが、本願はこれに限定されるものではない。一例としては、FCMDBに仮想統合される情報システムであって、データベースに格納される前の構成情報等を用いることもできる。また、データベースに記憶される情報であっても、実施例1〜4で説明したXML形式である必要はなく、他の形式で記憶されていても、同様に処理することができる。
【0090】
(Relationship)
また、実施例1〜4では、構成要素間のRelationshipとして、予め定義されたホップ数を用いた例について説明したが、本願はこれに限定されるものではなく、予め定義された他の関係性を用いることもできる。
【0091】
(処理の終了条件)
また、本願が開示する類似度算出装置は、例えば、全ての構成要素同士について類似度を算出した場合や、Relationshipの先頭にある構成要素同士全ての類似度を算出した場合に、上述した類似度算出処理を終了することができる。
【0092】
(対象データベースの数)
また、上述した実施例1〜4では、2つのデータベースの構成要素間の類似度を算出して、同一の構成要素を特定する例について説明したが、本願はこれに限定されるものではない。例えば、3つ以上のデータベースの構成要素間についても、上述した実施例と同様の手法で、類似度を算出して、同一の構成要素を特定することができる。
【0093】
(複数の構成要素に対してRelationshipを持つ構成要素が複数ある場合)
実施例1〜4において例示した類似度算出手法では、複数の構成要素に対してRelationshipを持つ構成要素が複数ある場合、Relationship先のどの構成要素同士を比較するかを決める必要がある。この場合、類似度算出装置は、それぞれの構成要素同士の組み合わせについて、類似度を計算して、類似度が高くなる組み合わせを採用し、以降の類似度算出では採用しなかった方は考慮しないように制御する。
【0094】
例えば、図15を例にして説明すると、類似度算出装置は、A−XMLにおける「Switch1」とB−XMLにおける「sw1」とがユーザによって任意に指定されたとする。この場合、第一計数部21は、図6と図10を参照し、「sw01」、「192.168.0.1」、「fujitsu」の3つの属性値が一致するので、一致する属性値の数「3」を計数値DB15に格納する。
【0095】
続いて、類似度算出装置は、「Switch1」とホップ数1の関係性を有する「Server1」と、「sw1」とホップ数1の関係性を有する「svr1」とを特定する。そして、類似度算出装置は、図7に示した「Server1」の属性情報と図11に示した「svr1」の属性情報とを比較し、「svr01」、「192.168.0.2」、「fujitsu」の3つの属性値が一致するので、一致する属性値の数を「3」と判定する。続いて、類似度算出装置は、「Switch1」とホップ数1の関係性を有する「Server2」と、「sw1」とホップ数1の関係性を有する「svr2」との組み合わせについて、類似度を算出する。具体的には、類似度算出装置は、図8に示した「Server2」の属性情報と図12に示した「svr2」の属性情報とを比較し、「svr02」、「192.168.0.3」の2つの属性値が一致するので、一致する属性値の数を「2」と判定する。
【0096】
このとき、類似度算出装置は、「Switch1」とホップ数1の関係性を有する「Server1」と、「sw1」とホップ数1の関係性を有する「svr2」との組み合わせについても、類似度を算出する。具体的には、類似度算出装置は、図7に示した「Server1」の属性情報と図12に示した「svr2」の属性情報とを比較し、一致する属性値の数を「0」と判定する。また、類似度算出装置は、「Switch1」とホップ数1の関係性を有する「Server2」と、「sw1」とホップ数1の関係性を有する「svr1」との組み合わせについても、類似度を算出する。具体的には、類似度算出装置は、図8に示した「Server2」の属性情報と図11に示した「svr1」の属性情報とを比較し、一致する属性値の数を「0」と判定する。
【0097】
そして、「Server1−svr1」における一致する属性値の数が「3」であり、「Server2−svr2」における一致する属性値の数が「2」である。また、「Server1−svr2」における一致する属性値の数が「0」であり、「Server2−svr1」における一致する属性値の数が「0」である。したがって、類似度算出装置は、「Server1−svr1」および「Server2−svr2」を構成要素同士の組み合わせと決定して、以降の類似度算出を実行する。
【0098】
このように、類似度算出装置は、複数の構成要素に対してRelationshipを持つ構成要素が複数ある場合、より類似度が高いRelationshipを有する構成要素同士を比較することができる。その結果、最終的に生成されるデータベース各々に保持される構成要素間の対応付けの精度を向上させることができる。
【0099】
(システム)
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、例えば図3〜図14等に示した各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0100】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、例えば第一計数部21と第二計数部22とを統合するなど各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0101】
(プログラム)
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
【0102】
図27は、類似度算出プログラムを実行するコンピュータシステム100を示す図である。図27に示すように、コンピュータシステム100は、RAM101と、HDD102と、ROM103と、CPU104とを有する。ここで、ROM103には、上の実施例と同様の機能を発揮するプログラムがあらかじめ記憶されている。つまり、図27に示すように、第一計数プログラム103a、第二計数プログラム103b、類似度算出プログラム103c、判定結果受付プログラム103d、対応生成プログラム103eがあらかじめ記憶されている。
【0103】
そして、CPU104には、これらのプログラム103a〜103eを読み出して実行することで、図27に示すように、各プロセスとなる。つまり、第一計数プロセス104a、第二計数プロセス104b、類似度算出プロセス104c、判定結果受付プロセス104d、対応生成プロセス104eとなる。なお、第一計数プロセス104aは、図2に示した第一計数部21に対応し、同様に、第二計数プロセス104bは、第二計数部22に対応し、類似度算出プロセス104cは、類似度算出部23に対応する。また、判定結果受付プロセス104dは、判定結果受付部24に対応し、対応生成プロセス104eは、対応生成部25に対応する。
【0104】
また、HDD102には、関係情報テーブル102aと、属性情報テーブル102bと、計数値テーブル102cと、対応一覧テーブル102dとが設けられる。関係情報テーブル102aは、図2に示した関係情報DB14aに対応し、属性情報テーブル102bは、属性情報DB14bに対応し、計数値テーブル102cは、計数値DB15に対応し、対応一覧テーブル102dは、対応一覧DB16に対応する。
【0105】
ところで、上記したプログラム103a〜103eは、必ずしもROM103に記憶させておく必要はない。例えば、コンピュータシステム100に挿入されるフレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に記憶させておくようにしてもよい。また、コンピュータシステム100の内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」に記憶させておいてもよい。さらに、公衆回線、インターネット、LAN、WANなどを介してコンピュータシステム100に接続される「他のコンピュータシステム」に記憶させておいてもよい。そして、コンピュータシステム100がこれらからプログラムを読み出して実行するようにしてもよい。
【0106】
すなわち、この他の実施例でいうプログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記録されるものである。そして、コンピュータシステム100は、このような記録媒体からプログラムを読み出して実行することで上記した実施例と同様の機能を実現する。なお、この他の実施例でいうプログラムは、コンピュータシステム100によって実行されることに限定されるものではない。例えば、他のコンピュータシステムまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【符号の説明】
【0107】
1 類似度算出装置
1a 第一計数部
1b 第二計数部
1c 類似度算出部
2 構成情報DB
3 サービス管理DB
4 FCMDB
10 類似度算出装置
11 通信制御I/F部
12 入力部
13 表示部
14 CMDB
14a 関係情報DB
14b 属性情報DB
15 計数値DB
16 対応一覧DB
20 制御部
21 第一計数部
22 第二計数部
23 類似度算出部
24 判定結果受付部
25 対応生成部

【特許請求の範囲】
【請求項1】
情報システムが有する構成要素を記憶する複数のデータベース間で、各データベースの任意の構成要素が有する属性値を比較し、一致する属性値の数を計数する第一計数手順と、
前記複数のデータベース間で、前記任意の構成要素と所定の関係性を有する構成要素が保持する属性値を比較し、一致する属性値の数を計数する第二計数手順と、
前記第一計数手順によって計数された属性値の数と、前記第二計数手順によって計数された属性値の数とを用いて、前記第一計数手順または前記第二計数手順によって属性値が計数された構成要素間の類似度を算出する類似度算出手順と、
をコンピュータに実行させることを特徴とする類似度算出プログラム。
【請求項2】
前記類似度算出手順によって算出された類似度が大きい順に所定の表示部に表示し、前記類似度が算出された構成要素の組が同一の構成要素であるか否かを示す判定結果を受け付ける判定結果受付手順と、
前記判定結果受付手順によって受け付けられた判定結果に基づいて、前記各データベースにおける構成要素間の対応付けを生成する対応一覧生成手順とをさらにコンピュータに実行させることを特徴とする請求項1に記載の類似度算出プログラム。
【請求項3】
前記類似度算出手順は、前記構成要素間各々が有する属性値の合計における前記構成要素間で一致する属性値の割合に基づいて、前記類似度を算出することを特徴とする請求項1に記載の類似度算出プログラム。
【請求項4】
前記判定結果受付手順は、前記判定結果に応じて、前記判定結果を受け付けた構成要素の組以外の構成要素の組の類似度を更新し、更新した類似度の中から大きい順に所定の表示部に表示し、前記類似度が算出された構成要素の組が同一の構成要素であるか否かを示す判定結果を受け付けることを特徴とする請求項1に記載の類似度算出プログラム。
【請求項5】
複数のデータベースにおいて、情報システムが有する構成要素の関係性を記憶する関係情報記憶部と、
前記複数のデータベース間で、各データベースの任意の構成要素が有する属性値を比較し、一致する属性値の数を計数する第一計数部と、
前記複数のデータベース間で、前記任意の構成要素と所定の関係性を有する構成要素を前記関係情報記憶部から取得し、取得した構成要素が保持する属性値を比較し、一致する属性値の数を計数する第二計数部と、
前記第一計数部によって計数された属性値の数と、前記第二計数部によって計数された属性値の数を用いて、前記第一計数部または前記第二計数部によって属性値が計数された構成要素間の類似度を算出する類似度算出部と、
を有することを特徴とする類似度算出装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate