図面 (/)

技術 検索装置、検索方法および検索プログラム

出願人 三菱電機株式会社三菱電機インフォメーションシステムズ株式会社
発明者 川岸諒子安西宏司
出願日 2012年7月18日 (7年0ヶ月経過) 出願番号 2012-159579
公開日 2014年2月3日 (5年5ヶ月経過) 公開番号 2014-021704
状態 特許登録済
技術分野 検索装置 計算機におけるファイル管理
主要キーワード 時間順位 変更記憶 不整合情報 DR値 テーブル結合 総合順位 組み合わせ候補 スプレッドシート形式
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2014年2月3日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (14)

課題

検索要求に基づいて適切な記憶部の組み合わせを選択することによって検索性能を向上できるようにすることを目的とする。

解決手段

検索要求受付部110は検索要求101を受信する。検索実行部130は、検索要求101に含まれる複数の検索項目名に対応付けられた複数のMDR組み合わせを取得先優先度情報191から取得する。検索実行部130は、複数のMDR組み合わせそれぞれの優先度を取得先優先度情報191から取得し、データ情報192に定義されたデータ毎にいずれかのMDR組み合わせを選択する。検索実行部130は、選択したMDR組み合わせのMDR毎に検索を実行し、検索によって取得したデータのうち検索要求101の検索条件を満たすデータを特定する。検索要求受付部110は、検索実行部130によって特定されたデータを含んだ検索応答102を送信する。

概要

背景

ITIL(Information Technology Infrastructure Library)は、ITサービスマネジメントベストプラクティスをまとめたフレームワークであり、ITサービスを運用するにあたってのデフクトスタンダードとなっている。
ITILでは、構成管理データベース(CMDB:Configuration Management Database)によるITシステム構成管理資産管理変更管理インシデント管理等に関するベストプラクティスを提供している。

規模な企業等におけるITサービスの運用では、ITシステムの構成情報が管理されているものの、その管理が各担当部門ネットワーク管理部門業務システム開発部門システム運用部門等)に分散していることが多く、これらの分散した構成情報を一覧することが困難となっている。
分散している構成情報を一元管理するためには、各部門によって分散管理されているデータの整理や一元管理を行うためのデータベース設計に多くの時間を要する。また、一元管理を行うため、巨大データベースが必要となる。これらの理由から、分散している構成情報を一元管理に変更することは容易でない。

分散している構成情報を仮想的に統合するための標準仕様として、IT管理の標準化を行う業界団体(DMTF:Distribure Management Task Force)が発表したCMDBf(CMDB−Federation)がある(非特許文献1)。
CMDBfでは、分散配置された複数の管理データリポジトリ(MDR:Management Data Repository)において異なる名前で管理されている同一データに対して共通の名前を付けることにより、同一データとして管理するデータの調停リコンシリエーション)等の仕様を定義している。

仮想統合するための従来技術としては、次の2つの統合方式がある。
1つめの統合方式は、MDRのデータをレプリケーションするための巨大なデータベースを保持し、MDRのリコンシリエーションの結果を全て格納する。この統合方式の場合、レプリケーションを行うための巨大なデータベースを用意する必要があり、また、各MDRでデータ更新があった場合にレプリケーションのやり直しが発生する。
2つめの統合方式は、レプリケーションを行わず、リコンシリエーションした結果として、データに対する共通の名前と、どのMDRにどのような名前で格納されているかという対応情報のみを保持する(例えば、特許文献1)。この統合方式の場合、レプリケーションのやり直しは発生しない。

2つめの統合方式では、各データに対する共通の名前とどのMDRにどのような名前で格納されているかという対応情報(以降、データとMDRの対応情報と呼ぶ)のみを保持する。このため、データの検索時には、データ1件1件に対してMDRに対して検索を実行し、検索結果が検索条件に該当するかどうかを判断する必要がある。つまり、MDRに対する検索回数が非常に多く、検索応答性能に課題がある。

例えば、データ数が20000件だった場合、1件1件のデータに対してそのデータが格納されている各MDRに対する検索を行う。このため、利用者にとっては1回の検索であったとしても、実際には、最大でデータ数20000件×MDR数の回数だけ検索が実行されることになる。

この非常に多い検索回数には、次のような不要な検索が含まれていることが考えられる。
例えば、利用者がホスト名およびIPアドレスの一覧を取得したい場合について考える。
ここで、ホスト名はMDR1とMDR2とMDR3に格納され、IPアドレスはMDR1とMDR2に格納されているものとする。また、データとMDRの対応情報には、ホスト名およびIPアドレスがMDR1とMDR2とMDR3に存在する、ということが定義されているものとする。
この場合、検索はMDR1とMDR2とMDR3の3つのMDRに対して実行される。しかし、MDR1〜3に対する検索のうち、MDR1またはMDR2に対して検索を実行すれば必要な情報を全て取得することができるため、その他の2つのMDRに対する検索は本来不要である。

また別の例として、データベースやサーバリプレース等によるMDRの切り替え移行を行う場合を考える。
ここで、古いMDRへの切り戻しを考慮し、一次的にデータとMDRの対応情報に新旧のMDR情報が格納されたものとする。
この場合、完全に移行が完了し、データとMDRの対応情報から古いMDRの情報を削除するまでは新旧両方のMDRに対する検索が行われるため、検索回数が一時的に増加する。しかし、実際には、新旧どちらか一方のMDRに対する検索は不要である。

概要

検索要求に基づいて適切な記憶部の組み合わせを選択することによって検索性能を向上できるようにすることを目的とする。検索要求受付部110は検索要求101を受信する。検索実行部130は、検索要求101に含まれる複数の検索項目名に対応付けられた複数のMDR組み合わせを取得先優先度情報191から取得する。検索実行部130は、複数のMDR組み合わせそれぞれの優先度を取得先優先度情報191から取得し、データ情報192に定義されたデータ毎にいずれかのMDR組み合わせを選択する。検索実行部130は、選択したMDR組み合わせのMDR毎に検索を実行し、検索によって取得したデータのうち検索要求101の検索条件を満たすデータを特定する。検索要求受付部110は、検索実行部130によって特定されたデータを含んだ検索応答102を送信する。

目的

本発明は、例えば、検索要求に基づいて適切な記憶部の組み合わせを選択することによって検索性能を向上できるようにすることを目的とする

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

複数のデータ項目識別する複数の項目識別名を組み合わせた複数の項目組み合わせの項目組み合わせ毎に、項目組み合わせに対応付けて複数のデータ記憶部名を組み合わせた複数の記憶部組み合わせと複数の記憶部組み合わせそれぞれの組み合わせ優先度とを記憶する組み合わせ優先度記憶部と、前記複数の項目識別名の項目識別名毎に、項目識別名によって識別されるデータ項目を有する各データ記憶部のデータ記憶部名と、各データ記憶部で項目識別名の代わりに用いられるデータ項目名とを対応付けて記憶するデータ項目名記憶部と、複数のデータ項目を識別する複数の検索項目名を含んだ検索要求を入力する検索要求入力部と、前記検索要求入力部によって入力された前記検索要求に含まれる前記複数の検索項目名を含んだ項目組み合わせを前記組み合わせ優先度記憶部から選択し、選択した項目組み合わせに対応付けられた複数の記憶部組み合わせそれぞれの組み合わせ優先度を前記組み合わせ優先度記憶部から取得し、選択した項目組み合わせに対応付けられた複数の記憶部組み合わせそれぞれの組み合わせ優先度に基づいていずれかの記憶部組み合わせを検索組み合わせとして選択する検索組み合わせ選択部と、前記検索組み合わせ選択部によって選択された前記検索組み合わせに含まれるデータ記憶部名毎に、データ記憶部名と前記検索要求に含まれる検索項目名と同じ名称の項目識別名とに対応付けられたデータ項目名を前記データ項目名記憶部から取得するデータ項目名取得部と、前記データ項目名取得部によって取得されたデータ項目名を用いて検索式を生成する検索式生成部とを備えることを特徴とする検索装置

請求項2

前記検索装置は、さらに、前記検索要求に含まれる前記複数の検索項目名を含んだ項目組み合わせが前記組み合わせ優先度記憶部に記憶されていない場合、前記検索要求に含まれる前記複数の検索項目名の検索項目名毎に、検索項目名と同じ名称の項目識別名に対応付けられた各データ記憶部名を検索候補記憶部名として前記データ項目名記憶部から取得する検索候補記憶部名取得部と、前記検索候補記憶部名取得部によって検索項目名毎に取得された検索候補記憶部名を検索項目名毎に少なくとも1つずつ含んだ複数の組み合わせを複数の検索候補組み合わせとして生成する検索候補組み合わせ生成部とを備え、前記検索組み合わせ選択部は、前記検索要求に含まれる前記複数の検索項目名を含んだ項目組み合わせが前記組み合わせ優先度記憶部に記憶されていない場合、前記検索候補組み合わせ生成部によって生成された前記複数の検索候補組み合わせのいずれかの検索候補組み合わせを検索組み合わせとして選択することを特徴とする請求項1記載の検索装置。

請求項3

前記検索装置は、さらに、前記検索候補組み合わせ生成部によって生成された前記複数の検索候補組み合わせそれぞれの組み合わせ優先度を生成する組み合わせ優先度生成部を備え、前記検索組み合わせ選択部は、前記組み合わせ優先度生成部によって生成された前記複数の検索候補組み合わせそれぞれの組み合わせ優先度に基づいて前記複数の検索候補組み合わせのいずれかの検索候補組み合わせを前記検索組み合わせとして選択することを特徴とする請求項2記載の検索装置。

請求項4

前記組み合わせ優先度生成部は、前記複数の検索候補組み合わせの検索候補組み合わせ毎に、検索候補組み合わせに含まれるデータ記憶部名の個数と、検索候補組み合わせに含まれるデータ記憶部名によって識別されるデータ記憶部の種類との少なくともいずれかに基づいて検索候補組み合わせの組み合わせ優先度を生成することを特徴とする請求項3記載の検索装置。

請求項5

前記検索装置は、さらに、前記検索要求に含まれる前記複数の検索項目名を複数の項目識別名として含んだ項目組み合わせと、前記検索候補組み合わせ生成部によって生成された前記複数の検索候補組み合わせと同じ組み合わせの複数の記憶部組み合わせと、前記組み合わせ優先度生成部によって生成された前記複数の検索候補組み合わせそれぞれの組み合わせ優先度とを対応付けて前記組み合わせ優先度記憶部に記憶する組み合わせ優先度登録部とを備えることを特徴とする請求項3または請求項4記載の検索装置。

請求項6

前記検索装置は、さらに、異なる項目値を含んだ複数のデータのデータ毎に、データを識別するデータ名と、データを記憶する複数のデータ記憶部を識別する複数のデータ記憶部名とを対応付けて記憶するデータ名記憶部と、前記複数のデータ記憶部のうち少なくともいずれかのデータ記憶部に記憶されたデータが変更された場合、変更されたデータのデータ名を特定するためのデータ名情報と、変更されたデータを記憶するデータ記憶部を識別する変更記憶部名とを含んだ変更情報を取得する変更情報取得部と、前記変更情報取得部によって取得された前記変更情報に含まれる前記データ名情報に基づいて前記変更されたデータのデータ名と同じデータ名に対応付けられた複数のデータ記憶部名を前記データ名記憶部から取得し、取得した前記複数のデータ記憶部名で識別される複数のデータ記憶部それぞれに記憶されるデータのうち前記変更されたデータのデータ名と同じデータ名で識別されるデータが前記変更されたデータと整合するか否かを判定する整合性判定部とを備えることを特徴とする請求項1から請求項5いずれかに記載の検索装置。

請求項7

組み合わせ優先度記憶部と、データ項目名記憶部と、検索要求入力部と、検索組み合わせ選択部と、データ項目名取得部と、検索式生成部とを備える検索装置を用いる検索方法であって、前記組み合わせ優先度記憶部は、複数のデータ項目を識別する複数の項目識別名を組み合わせた複数の項目組み合わせの項目組み合わせ毎に、項目組み合わせに対応付けて複数のデータ記憶部名を組み合わせた複数の記憶部組み合わせと複数の記憶部組み合わせそれぞれの組み合わせ優先度とを記憶する記憶部であり、前記データ項目名記憶部は、前記複数の項目識別名の項目識別名毎に、項目識別名によって識別されるデータ項目を有する各データ記憶部のデータ記憶部名と、各データ記憶部で項目識別名の代わりに用いられるデータ項目名とを対応付けて記憶する記憶部であり、前記検索要求入力部が、複数のデータ項目を識別する複数の検索項目名を含んだ検索要求を入力し、前記検索組み合わせ選択部が、前記検索要求入力部によって入力された前記検索要求に含まれる前記複数の検索項目名を含んだ項目組み合わせを前記組み合わせ優先度記憶部から選択し、選択した項目組み合わせに対応付けられた複数の記憶部組み合わせそれぞれの組み合わせ優先度を前記組み合わせ優先度記憶部から取得し、選択した項目組み合わせに対応付けられた複数の記憶部組み合わせそれぞれの組み合わせ優先度に基づいていずれかの記憶部組み合わせを検索組み合わせとして選択し、前記データ項目名取得部が、前記検索組み合わせ選択部によって選択された前記検索組み合わせに含まれるデータ記憶部名毎に、データ記憶部名と前記検索要求に含まれる検索項目名と同じ名称の項目識別名とに対応付けられたデータ項目名を前記データ項目名記憶部から取得し、前記検索式生成部が、前記データ項目名取得部によって取得されたデータ項目名を用いて検索式を生成することを特徴とする検索方法。

請求項8

請求項7記載の検索方法をコンピュータに実行させるための検索プログラム

技術分野

0001

本発明は、例えば、同じデータを異なる名称で記憶する複数の記憶部を検索するための検索装置検索方法および検索プログラムに関するものである。

背景技術

0002

ITIL(Information Technology Infrastructure Library)は、ITサービスマネジメントベストプラクティスをまとめたフレームワークであり、ITサービスを運用するにあたってのデフクトスタンダードとなっている。
ITILでは、構成管理データベース(CMDB:Configuration Management Database)によるITシステム構成管理資産管理変更管理インシデント管理等に関するベストプラクティスを提供している。

0003

規模な企業等におけるITサービスの運用では、ITシステムの構成情報が管理されているものの、その管理が各担当部門ネットワーク管理部門業務システム開発部門システム運用部門等)に分散していることが多く、これらの分散した構成情報を一覧することが困難となっている。
分散している構成情報を一元管理するためには、各部門によって分散管理されているデータの整理や一元管理を行うためのデータベース設計に多くの時間を要する。また、一元管理を行うため、巨大データベースが必要となる。これらの理由から、分散している構成情報を一元管理に変更することは容易でない。

0004

分散している構成情報を仮想的に統合するための標準仕様として、IT管理の標準化を行う業界団体(DMTF:Distribure Management Task Force)が発表したCMDBf(CMDB−Federation)がある(非特許文献1)。
CMDBfでは、分散配置された複数の管理データリポジトリ(MDR:Management Data Repository)において異なる名前で管理されている同一データに対して共通の名前を付けることにより、同一データとして管理するデータの調停リコンシリエーション)等の仕様を定義している。

0005

仮想統合するための従来技術としては、次の2つの統合方式がある。
1つめの統合方式は、MDRのデータをレプリケーションするための巨大なデータベースを保持し、MDRのリコンシリエーションの結果を全て格納する。この統合方式の場合、レプリケーションを行うための巨大なデータベースを用意する必要があり、また、各MDRでデータ更新があった場合にレプリケーションのやり直しが発生する。
2つめの統合方式は、レプリケーションを行わず、リコンシリエーションした結果として、データに対する共通の名前と、どのMDRにどのような名前で格納されているかという対応情報のみを保持する(例えば、特許文献1)。この統合方式の場合、レプリケーションのやり直しは発生しない。

0006

2つめの統合方式では、各データに対する共通の名前とどのMDRにどのような名前で格納されているかという対応情報(以降、データとMDRの対応情報と呼ぶ)のみを保持する。このため、データの検索時には、データ1件1件に対してMDRに対して検索を実行し、検索結果が検索条件に該当するかどうかを判断する必要がある。つまり、MDRに対する検索回数が非常に多く、検索応答性能に課題がある。

0007

例えば、データ数が20000件だった場合、1件1件のデータに対してそのデータが格納されている各MDRに対する検索を行う。このため、利用者にとっては1回の検索であったとしても、実際には、最大でデータ数20000件×MDR数の回数だけ検索が実行されることになる。

0008

この非常に多い検索回数には、次のような不要な検索が含まれていることが考えられる。
例えば、利用者がホスト名およびIPアドレスの一覧を取得したい場合について考える。
ここで、ホスト名はMDR1とMDR2とMDR3に格納され、IPアドレスはMDR1とMDR2に格納されているものとする。また、データとMDRの対応情報には、ホスト名およびIPアドレスがMDR1とMDR2とMDR3に存在する、ということが定義されているものとする。
この場合、検索はMDR1とMDR2とMDR3の3つのMDRに対して実行される。しかし、MDR1〜3に対する検索のうち、MDR1またはMDR2に対して検索を実行すれば必要な情報を全て取得することができるため、その他の2つのMDRに対する検索は本来不要である。

0009

また別の例として、データベースやサーバリプレース等によるMDRの切り替え移行を行う場合を考える。
ここで、古いMDRへの切り戻しを考慮し、一次的にデータとMDRの対応情報に新旧のMDR情報が格納されたものとする。
この場合、完全に移行が完了し、データとMDRの対応情報から古いMDRの情報を削除するまでは新旧両方のMDRに対する検索が行われるため、検索回数が一時的に増加する。しかし、実際には、新旧どちらか一方のMDRに対する検索は不要である。

0010

国際公開第2010/067436号パンフレット

先行技術

0011

CMDBf Specification DSP0252 Version 1.0.1、[online]、[平成24年5月30日検索]、インターネット<URL:http://www.dmtf.org/sites/default/files/standards/documents/DSP0252_1.0.1_0.pdf>

発明が解決しようとする課題

0012

本発明は、例えば、検索要求に基づいて適切な記憶部の組み合わせを選択することによって検索性能を向上できるようにすることを目的とする。

課題を解決するための手段

0013

本発明の検索装置は、
複数のデータ項目識別する複数の項目識別名を組み合わせた複数の項目組み合わせの項目組み合わせ毎に、項目組み合わせに対応付けて複数のデータ記憶部名を組み合わせた複数の記憶部組み合わせと複数の記憶部組み合わせそれぞれの組み合わせ優先度とを記憶する組み合わせ優先度記憶部と、
前記複数の項目識別名の項目識別名毎に、項目識別名によって識別されるデータ項目の項目値を記憶する各データ記憶部のデータ記憶部名と、各データ記憶部で項目識別名の代わりに用いられるデータ項目名とを対応付けて記憶するデータ項目名記憶部と、
複数のデータ項目を識別する複数の検索項目名を含んだ検索要求を入力する検索要求入力部と、
前記検索要求入力部によって入力された前記検索要求に含まれる前記複数の検索項目名を含んだ項目組み合わせを前記組み合わせ優先度記憶部から選択し、選択した項目組み合わせに対応付けられた複数の記憶部組み合わせそれぞれの組み合わせ優先度を前記組み合わせ優先度記憶部から取得し、選択した項目組み合わせに対応付けられた複数の記憶部組み合わせそれぞれの組み合わせ優先度に基づいていずれかの記憶部組み合わせを検索組み合わせとして選択する検索組み合わせ選択部と、
前記検索組み合わせ選択部によって選択された前記検索組み合わせに含まれるデータ記憶部名毎に、データ記憶部名と前記検索要求に含まれる検索項目名と同じ名称の項目識別名とに対応付けられたデータ項目名を前記データ項目名記憶部から取得するデータ項目名取得部と、
前記データ項目名取得部によって取得されたデータ項目名を用いて検索式を生成する検索式生成部とを備える。

発明の効果

0014

本発明によれば、例えば、検索要求に基づいて適切な記憶部の組み合わせを選択することによって検索性能を向上することができる。

図面の簡単な説明

0015

実施の形態1における仮想統合管理システム200の構成図。
実施の形態1における仮想統合管理装置100のデータ検索処理を示すフローチャート
実施の形態1における検索要求101の一例を示す図。
実施の形態1における取得先優先度情報191を示す図。
実施の形態1における検索実行処理(S130)を示すフローチャート。
実施の形態1におけるデータ情報192を示す図。
実施の形態1におけるMDR運用情報194を示す図。
実施の形態1におけるMDR構造情報193を示す図。
実施の形態1における検索式103の生成方法(S136)を示す図。
実施の形態1における検索式103の生成方法(S136)を示す図。
実施の形態1における取得先優先度情報生成処理(S120)を示すフローチャート。
実施の形態1におけるデータ整合性確認処理を示すフローチャート。
実施の形態1における仮想統合管理装置100のハードウェア資源の一例を示す図。

実施例

0016

実施の形態1.
同一のデータを異なる名称で記憶する複数の記憶部に対して検索を行う形態について説明する。

0017

図1は、実施の形態1における仮想統合管理システム200の構成図である。
実施の形態1における仮想統合管理システム200の構成について、図1に基づいて説明する。

0018

仮想統合管理システム200(検索システムの一例)は、クライアント装置210、仮想統合管理装置100および複数のサーバ装置(サーバ装置A221、サーバ装置B222など)を備える。

0019

クライアント装置210は、仮想統合管理装置100に対して検索を要求するためのコンピュータ情報処理装置ともいう。以下同様)である。

0020

サーバ装置A221やサーバ装置B222は、それぞれに同一のデータを異なる名称で記憶・管理するMDR(MDRa231、MDRb232)を備えるコンピュータである。但し、一台のサーバ装置が複数のMDRを備えても構わない。
MDR(Management Data Repository)は、データを記憶・管理するための記憶部または記憶装置の一例である。MDRが記憶・管理するデータの形式は、オブジェクトデータベース、RDB(リレーショナルデータベース)、スプレッドシートなど、いずれのデータ形式でも構わない。

0021

仮想統合管理装置100は、クライアント装置210からの検索の要求に従って少なくともいずれかのサーバ装置のMDRを検索し、検索結果をクライアント装置210に応答するコンピュータである。

0022

以下、クライアント装置210が仮想統合管理装置100に検索を要求するためのデータを「検索要求101」といい、仮想統合管理装置100がクライアント装置210に検索結果を応答するためのデータを「検索応答102」という。

0023

仮想統合管理装置100(検索装置の一例)は、検索要求受付部110、取得先優先度情報生成部120、検索実行部130、取得先優先度更新部140、データ整合性確認部150および情報記憶部190を備える。
以下に、仮想統合管理装置100が備える各構成の機能概要を説明する。各構成の機能の詳細については別途説明する。

0024

情報記憶部190は、仮想統合管理装置100で使用するデータを記憶する。
例えば、情報記憶部190は、取得先優先度情報191(組み合わせ優先度記憶部の一例)、データ情報192(データ名記憶部の一例)、MDR構造情報193(データ項目名記憶部の一例)、MDR運用情報194などを記憶する。各データの詳細については別途説明する。

0025

検索要求受付部110(検索要求入力部の一例)は、クライアント装置210から送信される検索要求101を受信し、検索実行部130によって取得される検索結果を含んだ検索応答102をクライアント装置210へ送信する。
取得先優先度情報生成部120(検索候補記憶部名取得部、検索候補組み合わせ生成部、組み合わせ優先度生成部、取得先優先度情報生成部の一例)は、1つ以上のMDRを組み合わせたMDRの組み合わせ毎に検索の優先度を生成する。
検索実行部130(検索組み合わせ選択部、データ項目名取得部、検索式生成部の一例)は、検索要求101に基づいて検索に必要なMDRの複数の組み合わせを判定し、判定したMDRの複数の組み合わせそれぞれの検索の優先度に基づいて検索対象のMDRの組み合わせを選択し、選択したMDRの組み合わせに対して検索を実行して検索結果を取得する。
取得先優先度更新部140は、検索実行部130によって実行された検索の処理時間に基づいて各MDRの組み合わせの検索の優先度を更新する。
データ整合性確認部150(変更情報取得部、整合性判定部の一例)は、各MDRのデータの整合性を確認する。

0026

図2は、実施の形態1における仮想統合管理装置100のデータ検索処理を示すフローチャートである。
実施の形態1における仮想統合管理装置100のデータ検索処理について、図2に基づいて説明する。

0027

S110において、クライアント装置210のユーザは、取得したいデータのデータ項目名および検索条件をクライアント装置210に対して指定(入力)する。
クライアント装置210は、ユーザによって指定されたデータ項目名および検索条件を含んだ検索要求101を生成し、生成した検索要求101を仮想統合管理装置100へ送信する。
仮想統合管理装置100の検索要求受付部110は、クライアント装置210から送信された検索要求101を受信する。

0028

図3は、実施の形態1における検索要求101の一例を示す図である。実施の形態1における検索要求101について、図3に基づいて説明する。
検索要求101は、検索項目名や検索条件などを示す検索式101a(検索文または検索クエリともいう)を含んだデータである。
例えば、検索式101aは、RDB(リレーショナルデータベース)のSQL文と同様に、検索項目名(データ項目名)を指定するためのSELECTと、検索対象のデータ群の名称(例えば、テーブル名)を指定するためのFROM句と、検索条件を指定するためのWHERE句とを含む。
図3に示す検索式101aは、“VirtualTable”というテーブルに含まれるデータのうちデータ項目“os”のデータ値が“Windows”(Windowsは登録商標、以下同様)であるデータについて、4つの検索項目(データ項目)“host_name”、“ip_address”、“os”および“load_balance”それぞれのデータ値の取得を要求するものである。
但し、検索要求101の検索式101aに含まれる検索項目名は、複数のMDRそれぞれが有する同じ種類(または同じ内容。以下同様)のデータ項目を一意に識別するために予め定められた仮想の名称(代理、共通または統一の名称)である。また、検索要求101の検索式101aに含まれる検索対象のデータ群の名称は複数のMDRから成るデータ群全体を識別するために予め定められた仮想の名称である。検索項目やデータ群の仮想名称はクライアント装置210に予め記憶し、またはユーザに予め知らせておく。

0029

検索要求101は、図3に示す形式以外の形式で検索項目名(仮想名称)や検索条件を含んでも構わない。

0030

図2戻り、データ検索処理の説明を続ける。
S110の後、S111に進む。

0031

S111において、検索実行部130は、検索要求101に対応するMDR組み合わせ(MDR名の組み合わせ)が取得先優先度情報191に存在するか否かを判定する。
検索要求101に対応するMDR組み合わせが取得先優先度情報191に存在する場合(YES)、検索実行部130は検索要求101に対応するMDR組み合わせを取得先優先度情報191から取得し、処理はS130に進む。
検索要求101に対応するMDR組み合わせが取得先優先度情報191に存在しない場合(NO)、処理はS120に進む。

0032

図4は、実施の形態1における取得先優先度情報191を示す図である。
実施の形態1における取得先優先度情報191について、図4に基づいて説明する。

0033

取得先優先度情報191は、検索項目表191aと取得先優先度表191bとを含む。

0034

検索項目表191aは、「検索要求ID」と「検索項目名」とを対応付けるデータである。
「検索要求ID」は、過去の検索要求101を識別する識別子である。
「検索項目名」は、検索要求IDで識別される過去の検索要求101に含まれた検索項目名(仮想名称)を示す。

0035

取得先優先度表191bは、「検索要求ID」「MDR組み合わせID」「MDR名」「MDR数順位」「MDR種類順位」「テーブル結合数順位」「処理時間順位」「総合順位」を対応付けるデータである。
「検索要求ID」は、過去の検索要求101を識別する識別子である。
「MDR組み合わせID」は、1つ以上のMDRを組み合わせたMDR組み合わせを識別する識別子である。
「MDR名」は、MDR組み合わせに含まれる各MDRの名称を示す。

0036

「MDR数順位」「MDR種類順位」「テーブル結合数順位」「処理時間順位」「総合順位」は、MDR組み合わせの検索の優先度を表す順位を示す。
「MDR数順位」は、MDR組み合わせに含まれるMDRの個数に基づく順位を示す。
「MDR種類順位」は、MDR組み合わせに含まれる各MDRの種類に基づく順位を示す。
「テーブル結合数順位」は、MDR組み合わせに含まれる各MDR(リレーショナルデータベースに限る)を検索する際に結合する必要があるテーブルの個数に基づく順位を示す。
「処理時間順位」は、MDR組み合わせに対する検索に要した処理時間に基づく順位を示す。
「総合順位」は、MDR数順位、MDR種類順位、テーブル結合数順位および処理時間順位の少なくともいずれかの順位に基づく順位を示す。

0037

S110(図2参照)において、検索要求受付部110は、図3の検索要求101を受信したものとする。
図3の検索要求101は、SELECT句で4つの検索項目名“host_name”、“ip_address”、“os”および“load_balance”を示している。
また、取得先優先度情報191の検索項目表191aには、これら4つの検索項目名を含んだレコード(検索要求ID「1」)が存在する。
この場合、S111(図2参照)において、検索実行部130は、検索要求101に対応するMDR組み合わせが取得先優先度情報191に存在する、と判定する。
一方、検索要求101に示される全ての検索項目名を含んだレコードが検索項目表191aに存在しない場合、検索実行部130は、検索要求101に対応するMDR組み合わせが取得先優先度情報191に存在しない、と判定する。

0038

図2に戻り、データ検索処理の説明をS120から続ける。

0039

S120において、取得先優先度情報生成部120は、検索要求101に対応するMDR組み合わせを取得先優先度情報191に生成する。
取得先優先度情報生成処理(S120)の詳細については別途説明する。
S120の後、S130に進む。

0040

S130において、検索実行部130は、検索要求101に対応する1つ以上のMDR組み合わせのうちいずれかのMDR組み合わせを選択し、選択したMDR組み合わせに含まれるMDR毎に検索を実行する。
検索要求101に対応するMDR組み合わせとは、S111で取得したMDR組み合わせ、またはS120で生成したMDR組み合わせのことである。
以下、検索要求101に対応する各MDR組み合わせを「検索組み合わせ候補」という。

0041

図5は、実施の形態1における検索実行処理(S130)を示すフローチャートである。
実施の形態1における検索実行処理(S130)について、図5に基づいて説明する。

0042

S131において、検索実行部130は、データ情報192から未選択の仮想統合データ名を一つ選択する。

0043

図6は、実施の形態1におけるデータ情報192を示す図である。
実施の形態1におけるデータ情報192について、図6に基づいて説明する。

0044

データ情報192は、「仮想統合データ名」「MDR名」「MDRテーブル名」「MDR列名」「MDR値」を対応付けるデータである。
「仮想統合データ名」は、複数のMDRそれぞれに記憶されている同一内容のデータ(レコード)を識別するための仮想の名称(代理、共通または統一の名称)である。
「MDR名」は、仮想統合データ名で識別されるデータを記憶する各MDRの名称を示す。
「MDRテーブル名」は、MDR名で識別されるMDRが備える複数のテーブル(またはその他の形式のデータ群。以下同様)のうち仮想統合データ名で識別されるデータを含んだテーブルの名称を示す。
「MDR列名」「MDR値」は、MDRテーブル名で識別されるテーブルに含まれる複数のデータのうち仮想統合データ名で識別されるデータを特定するための条件を示す。

0045

例えば、仮想統合データ名が“NW機器A”であり、MDR名が“NW_CMDB”であり、MDRテーブル名が“nw_chassis”であり、MDR列名が“ip_address”であり、MDR値が“10.2.14.100”であるものとする(図6のデータ情報192の一番目レコード参照)。
この場合、MDR“NW_CMDB”のテーブル“nw_chassis”に含まれるデータのうち、データ項目(MDR列)“ip_address”の値(MDR値)が“10.2.14.100”であるデータが、“NW機器A”(仮想統合データ名)のデータである。

0046

S131(図5参照)において、検索実行部130は、例えば、図6に示すデータ情報192から一番目のレコードの仮想統合データ名“NW機器A”を選択する。

0047

図5に戻り、検索実行処理(S130)の説明を続ける。
以下、S131で選択した仮想統合データ名を「選択データ名」という。
S131の後、S132に進む。

0048

S132において、検索実行部130は、S131で選択した選択データ名(仮想統合データ名)に対応する各MDR名をデータ情報192から取得する。
例えば、選択データ名が“NW機器A”である場合、検索実行部130は、図6に示したデータ情報192からMDR名“NW_CMDB”および“障害ログ”を取得する。
以下、S132で取得した各MDR名を「選択MDR名」という。
S132の後、S133に進む。

0049

S133において、検索実行部130は、S111またはS120(図2参照)で得られた検索組み合わせ候補(MDR組み合わせ)のうち、S133で取得した少なくともいずれかの選択MDR名(仮想統合データ名に対応するMDR名)を含んだ検索組み合わせ候補が有るか否かを判定する。

0050

例えば、図4に示した取得先優先度情報191の取得先優先度表191bに含まれる複数のMDR組み合わせのうち、検索要求ID“1”に対応付けられた2つのMDR組み合わせ(MDR組み合わせID“1”および“2”)が検索組み合わせ候補であるものとする。
図6に示したデータ情報192に含まれる仮想統合データ名“NW機器A”が選択データ名である場合、選択MDR名は“NW_CMDB”および“障害ログ”であり、選択MDR名“NW_CMDB”または“障害ログ”はMDR組み合わせID“1”および“2”のいずれの検索組み合わせ候補にも含まれていない。
したがって、検索実行部130は、少なくともいずれかの選択MDR名を含んだ検索組み合わせ候補が無い、と判定する。

0051

また、図6に示したデータ情報192に含まれる仮想統合データ名“サーバB”が選択データ名である場合、選択MDR名は“パラメタシート”、“SW一覧”および“CFI格子分析表”である。
この場合、選択MDR名“パラメタシート”はMDR組み合わせID“2”の検索組み合わせ候補に含まれている。また、選択MDR名“SW一覧”および“CFIA格子分析表”は少なくともいずれかの検索組み合わせ候補に含まれている。したがって、検索実行部130は、少なくともいずれかの選択MDR名を含んだ検索組み合わせ候補が有る、と判定する。

0052

S133(図5参照)において、少なくともいずれかの選択MDR名を含んだ検索組み合わせ候補が有る場合(YES)、S134に進む。
また、少なくともいずれかの選択MDR名を含んだ検索組み合わせ候補が無い場合(NO)、S139に進む。
以下、少なくともいずれかの選択MDR名を含んだ各検索組み合わせ候補を「対象組み合わせ候補」という。

0053

S134において、検索実行部130は、S133で判定された各対象組み合わせ候補(MDR組み合わせ)の検索の優先度に基づいて、いずれかの対象組み合わせ候補(検索対象のMDR組み合わせ)を選択する。

0054

例えば、図4の取得先優先度表191bに示した2つのMDR組み合わせ(MDR組み合わせID“1”および“2”)が対象組み合わせ候補であるものとする。第一の対象組み合わせ候補(MDR組み合わせID“1”)の総合順位(優先度)は“1”であり、第二の対象組み合わせ候補(MDR組み合わせID“2”)の総合順位は“2”である。
この場合、検索実行部130は、総合順位が高い第一の対象組み合わせ候補を選択する。

0055

また、検索実行部130は、以下のように、各対象組み合わせ候補の稼働状態稼働中または停止中)を考慮して対象組み合わせ候補の選択を行ってもよい。

0056

図7は、実施の形態1におけるMDR運用情報194を示す図である。
実施の形態1におけるMDR運用情報194について、図7に基づいて説明する。

0057

MDR運用情報194は、「MDR名」「MDR種類」「運用時間帯」「イベントフラグ」を対応付けるデータである。
「MDR名」は、MDRの名称を示す。
「MDR種類」は、MDRの種類(データの記憶・管理方法)を示す。
「運用時間帯」は、MDRが運用される時間帯(稼働する時間帯)を示す。
「イベントフラグ」は、MDRに障害が発生しているか否かを示す。障害の発生は、MDRの運用が停止してしまうイベントの一例である。

0058

例えば、検索実行部130は、図7に示すようなMDR運用情報194を参照し、停止中のMDR(現在時刻が運用時間帯外であるか、またはイベントフラグが障害の発生中を示すMDR)を含んでいない各対象組み合わせ候補を選択する。
そして、検索実行部130は、選択した各対象組み合わせ候補の検索の優先度(総合順位)に基づいて、いずれかの対象組み合わせ候補を選択する(図5のS134参照)。

0059

以下、S134(図5参照)で選択した対象組み合わせ候補を「検索組み合わせ」という。この検索組み合わせは、検索対象として選択したMDR組み合わせである。
S134の後、S135に進む。

0060

S135において、検索実行部130は、S134で選択した検索組み合わせ(検索対象のMDR組み合わせ)に含まれるMDR名と検索要求101に含まれる検索項目名との組み合わせ毎に、組み合わせに対応するMDRテーブル名およびMDR列名をMDR構造情報193から取得する。

0061

図8は、実施の形態1におけるMDR構造情報193を示す図である。
実施の形態1におけるMDR構造情報193について、図8に基づいて説明する。

0062

MDR構造情報193は、「仮想統合列名」「MDR名」「MDRテーブル名」「MDR列名」「MDR主キーフラグ」「MDR外部キーフラグ」を対応付けるデータである。
「仮想統合列名」は、複数のMDRそれぞれが有する同じ種類(または同じ内容。以下同様)のデータ項目を一意に識別するための仮想の名称(代理、共通または統一の名称)である。仮想統合列名は、検索要求101の検索項目名として用いられる。
「MDR名」は、仮想統合列名で識別されるデータ項目と同じ種類のデータ項目(MDR列)を有する各MDRの名称を示す。
「MDRテーブル名」は、MDR名で識別されるMDRが有する複数のテーブル(またはその他の形式のデータ群。以下同様)のうち、仮想統合列名で識別されるデータ項目と同じ種類のデータ項目を有するテーブルの名称を示す。
「MDR列名」は、MDRテーブル名で識別されるテーブルに含まれるデータ項目(MDR列)のうち、仮想統合列名で識別されるデータ項目と同じ種類のデータ項目の名称を示す。
「MDR主キーフラグ」は、MDR列名で識別されるデータ項目がRDB(リレーショナルデータベース)の主キーとして用いられるデータ項目であるか否かを示す。
「MDR外部キーフラグ」は、MDR列名で識別されるデータ項目がRDBの外部キーとして用いられるデータ項目であるか否かを示す。

0063

例えば、検索要求101に検索項目名“host_name”が含まれ、検索組み合わせにMDR名“CFIA格子分析表”が含まれる場合、検索実行部130は、図8に示すMDR構造情報193から“host_name”と“CFIA格子分析表”とに対応するMDRテーブル名“Sheet1”およびMDR列名“サーバ名称”を取得する(図5のS135参照)。

0064

図5に戻り、検索実行処理(S130)の説明を続ける。
以下、S135で取得したMDRテーブル名を「検索テーブル名」といい、S135で取得したMDR列名を「検索列名」という。
S135の後、S136に進む。

0065

S136において、検索実行部130は、S134で選択した検索組み合わせ(検索対象のMDR組み合わせ)に含まれるMDR名毎に、S135で取得した検索テーブル名(MDRテーブル名)および検索列名(MDR列名)に基づいて検索式を生成する。
S136で生成される検索式は、S131で選択した選択データ名(仮想統合データ名)のデータについて、検索テーブル名で識別されるテーブルから検索列名で識別されるMDR列のデータ値を取得するためのものである。

0066

図9図10は、実施の形態1における検索式103の生成方法(S136)を示す図である。
実施の形態1における検索式103の生成方法(S136)について、図9および図10に基づいて説明する。

0067

図9において、検索組み合わせは、検索要求ID“1”とMDR組み合わせID“1”とに対応付けられた2つのMDR名“CFIA格子分析表”および“SW一覧”であるものとする。
また、検索要求101の検索式101aはSELECT句で4つの検索項目“host_name”、“ip_address”、“os”、“load_balance”を指定しているものとする。
この場合、検索テーブル名は“Sheet1”であり、検索列名は“サーバ名称”、“IPアドレス”および“ロードバランス”である。検索項目“os”に対応する検索テーブル名および検索列名は存在しないため不要である。

0068

図10において、検索実行部130は、検索式103のSELECT句に検索列名“サーバ名称”、“IPアドレス”および“ロードバランス”を設定し、FROM句に検索テーブル名“Sheet1”を設定する。
検索実行部130は、データ情報192を参照し、選択データ名(仮想統合データ名)“サーバB”とMDR名“CFIA格子分析表”と検索テーブル名(MDRテーブル名)“Sheet1”とに対応付けられたMDR列名“IPアドレス”とMDR値“10.5.20.56”とを取得する。
検索実行部130は、データ情報192から取得したMDR列名とMDR値とを用いて、検索式103のWHERE句に選択データ名“サーバB”で識別されるデータを特定するための条件式“IPアドレス=‘10.5.20.56’”を設定する。

0069

検索実行部130は、検索組み合わせ(MDR組み合わせID“1”)の残りのMDR名“SW一覧”(図9参照)についても同様にして検索式103を生成する。

0070

図5に戻り、S136の説明を続ける。
検索実行部130は、S136で検索式103を生成する度に生成した検索式103を保存し、新たに検索式103を生成する際に生成済みの検索式103をそのまま又は一部変更して使用しても構わない。
例えば、選択データ名“サーバB”についてMDR“CFIA格子分析表”に対する検索式103が生成済みであり、新たな選択データ名“サーバC”についてMDR“CFIA格子分析表”に対する検索式を生成するものとする。
この際、検索実行部130は、“サーバB”について生成済みの検索式103(図10参照)に含まれるWHERE句(条件式)を“サーバC”のデータを特定するための条件式に変更し、条件式を変更した検索式103を使用する。
S136の後、S137に進む。

0071

S137において、検索実行部130は、S136で生成した検索式103毎に検索式103が対象とするMDR(検索組み合わせに含まれるMDR)から検索式103に対応するデータ(検索結果)を以下のように取得する。

0072

検索実行部130は、検索式103が対象にするMDRを備えるサーバ装置に検索式103を送信する。例えば、MDR毎にMDRを備えるサーバ装置のアドレス(例えば、IPアドレス)が予め記憶され、検索実行部130は予め記憶されたアドレスを用いてサーバ装置に検索式103を送信する。
サーバ装置は、検索式103を受信し、受信した検索式103に従ってMDRを検索し、検索式103に対応するデータを検索結果として送信する。
検索実行部130は、検索式103に対応するデータ(検索結果)をサーバ装置から受信する。

0073

例えば、図10に示した検索式103を検索実行部130がサーバ装置へ送信した場合、サーバ装置のMDRにおいてテーブル“Sheet1”に含まれるデータ(レコード)のうち“IPアドレス”の値が“10.5.20.56”であるデータ(仮想統合データ名“サーバB”で識別されるデータ)が検索される。そして、この検索されたデータに含まれる各MDR列の値のうち“サーバ名称”、“IPアドレス”および“ロードバランス”のそれぞれのMDR列の値がサーバ装置から検索実行部130へ応答される。

0074

図5に戻り、S137の説明を続ける。
検索実行部130は、S137の処理時間をS134で選択した検索組み合わせ(検索対象MDR組み合わせ)の処理時間として記憶する。
例えば、検索実行部130は、S137の開始時に開始時刻を記憶し、S137の終了時に終了時刻を記憶し、開始時刻から終了時刻までの時間をS137の処理時間として算出する。
S137の後、S138に進む。

0075

S138において、検索実行部130は、S137で取得した検索結果のデータ毎に検索結果のデータが検索要求101の検索条件を満たすか否かを判定し、検索要求101の検索条件を満たす検索結果のデータを特定(選択)する。
検索要求101の検索条件に反しない検索結果のデータ(例えば、検索条件で項目値が指定されているMDR列を有さないMDRのデータ)は、検索要求101の検索条件を満たすものとする。但し、検索要求101の検索条件に反しない検索結果のデータを検索要求101の検索条件を満たさないデータとして扱っても構わない。
例えば、図9に示した検索要求101の検索条件はWHERE句で指定された「os=‘windows’」である。この場合、検索実行部130は、MDR列“os”の値が“windows”である検索結果のデータおよびMDR列“os”の値を含んでいない検索結果のデータを検索要求101の検索条件を満たすデータとして特定する。
S138の後、S139に進む。

0076

S139において、検索実行部130は、MDR構造情報193に未選択の仮想統合データ名が残っているか否かを判定する。
MDR構造情報193に未選択の仮想統合データ名が残っている場合(YES)、S131に戻る。
MDR構造情報193に未選択の仮想統合データ名が残っていない場合(NO)、検索実行処理(S130)は終了する。

0077

図2に戻り、データ検索処理の説明を続ける。
S130の後、S140に進む。

0078

S140において、取得先優先度更新部140は、検索実行処理(S130)のS137(図5参照)で記憶された各検索組み合わせ(MDR組み合わせ)の処理時間に基づいて、各検索組み合わせの処理時間順位を決定する。また、取得先優先度更新部140は、各検索組み合わせの処理時間順位を取得先優先度情報191の取得先優先度表191b(図4参照)に設定する。
取得先優先度更新部140は、各検索組み合わせ(MDR組み合わせ)のMDR数順位、MDR種類順位、テーブル結合数順位および処理時間順位に基づいて、各検索組み合わせの総合順位を決定する。そして、取得先優先度更新部140は、各検索組み合わせの総合順位を取得先優先度情報191の取得先優先度表191b(図4参照)に設定する。

0079

検索組み合わせの処理時間として最も新しく記憶された処理時間を用いてもよいし、これまでの処理時間の平均時間(または平均時間以外の時間)を用いてもよい。
各検索組み合わせの処理時間順位は、処理時間が短いほど高い。
各検索組み合わせの総合順位は、MDR数順位、MDR種類順位、テーブル結合数順位および処理時間順位のそれぞれの順位が高いほど高い。例えば、これらの順位(総合順位を除く)の値の合計値が小さいほど、検索組み合わせの総合順位は高い。また、これらの順位の値に所定の重み付けをして総合順位を決定してもよい。
S140の後、S150に進む。

0080

S150において、検索要求受付部110は、検索実行処理(S130)のS138(図5参照)で特定された検索結果のデータを含んだ検索応答102を生成し、生成した検索応答102をクライアント装置210へ送信する。
S150により、データ検索処理は終了する。

0081

図11は、実施の形態1における取得先優先度情報生成処理(S120)を示すフローチャートである。
実施の形態1における取得先優先度情報生成処理(S120)について、図11に基づいて説明する。

0082

S121において、取得先優先度情報生成部120は、S110(図2参照)で受信された検索要求101を識別する検索要求IDを生成し、生成した検索要求IDと検索要求101に含まれる検索項目名とを対応付けて取得先優先度情報191の検索項目表191a(図4参照)に設定する。

0083

例えば、取得先優先度情報生成部120は、検索要求101(図3参照)の検索式101aに対して検索要求ID“1”を割り当てる。
そして、取得先優先度情報生成部120は、検索要求ID“1”と検索式101aのSELECT句に含まれる4つの検索項目名“host_name”、“ip_address”、“os”および“load_balance”とを対応付けて取得先優先度情報191の検索項目表191a(図4参照)に設定する。
S121の後、S122に進む。

0084

S122において、取得先優先度情報生成部120は、検索要求101に含まれる検索項目名毎に、検索項目名に対応付けられたMDR名をMDR構造情報193から取得する。
例えば、取得先優先度情報生成部120は、検索要求101(図3参照)に含まれる4つの検索項目名“host_name”、“ip_address”、“os”および“load_balance”について、検索項目名毎にMDR名の取得を行う。
例えば、取得先優先度情報生成部120は、検索項目名“host_name”に対応付けられたMDR名として、MDR構造情報193(図8参照)から4つのMDR名“NW_CMDB”、“パラメタシート”、“SW一覧”および“CFIA格子分析表”を取得する。
S122の後、S123に進む。

0085

S123において、取得先優先度情報生成部120は、S122で検索項目名毎に取得したMDR名を検索項目名毎に少なくとも1つずつ含んだMDR組み合わせを生成する。
また、取得先優先度情報生成部120は、MDR組み合わせ毎にMDR組み合わせを識別するMDR組み合わせIDを生成する。
そして、取得先優先度情報生成部120は、MDR組み合わせ毎に検索要求ID(S121参照)とMDR組み合わせIDとMDR組み合わせに含まれるMDR名とを対応付けて取得先優先度情報191の取得先優先度表191b(図4参照)に設定する。

0086

例えば、取得先優先度情報生成部120は、4つの検索項目名を含んだ検索要求101(図3参照)に対して1つ目の検索項目名“host_name”に対応するMDR名と、2つ目の検索項目名“ip_address”に対応するMDR名と、3つ目の検索項目名“os”に対応するMDR名と、4つ目の検索項目名“load_balance”に対応するMDR名とを含んだMDR組み合わせを生成する。

0087

例えば、取得先優先度情報生成部120は、検索要求101(図3参照)に対して以下のような2つのMDR組み合わせを生成する。
図8に示したMDR構造情報193において、検索項目名“host_name”、“ip_address”および“load_balance”は、共通するMDR名“CFIA格子分析表”に対応付けられている。また、検索項目名“os”は、2つのMDR名“パラメタシート”および“SW一覧”に対応付けられている。
この場合、取得先優先度情報生成部120は、2つのMDR名“CFIA格子分析表”および“パラメタシート”から成るMDR組み合わせを生成する。さらに、取得先優先度情報生成部120は、2つのMDR名“CFIA格子分析表”および“SW一覧”から成るMDR組み合わせを生成する。
これらMDR組み合わせは、検索要求101に含まれる検索項目名毎に検索項目名に対応付けられたMDR名を少なくとも一つずつ含んでいる。したがって、いずれのMDR組み合わせに対して検索を実行しても検索要求101に対する検索結果が得られる。

0088

取得先優先度情報生成部120は、これら2つのMDR組み合わせ以外のMDR組み合わせを生成しても構わない。
例えば、取得先優先度情報生成部120は、3つのMDR名“CFIA格子分析表”、“パラメタシート”および“NW_CMDB”から成るMDR組み合わせを生成しても構わない。さらに、取得先優先度情報生成部120は、4つのMDR名“CFIA格子分析表”、“パラメタシート”、“NW_CMDB”および“障害ログ”から成るMDR組み合わせを生成しても構わない。
但し、これらのMDR組み合わせは、検索要求101に対する検索結果を得るために必要十分な2つのMDR名“CFIA格子分析表”および“パラメタシート”の他に、MDR名“NW_CMDB”または“障害ログ”を含んでいる。そのため、これらのMDR組み合わせに対して検索を実行した場合、MDR名“NW_CMDB”または“障害ログ”に対する不要な検索が行われる。
したがって、取得先優先度情報生成部120は、必要十分なMDR名から成るMDR組み合わせだけを生成すれば構わない。
S123の後、S124に進む。

0089

S124において、取得先優先度情報生成部120は、S123で生成した各MDR組み合わせの順位を優先度決定条件別に生成し、生成した順位を取得先優先度情報191の取得先優先度表191b(図4参照)に設定する。

0090

例えば、取得先優先度情報生成部120は、3つの優先度決定条件「MDR数順位」「MDR種類順位」「テーブル結合数順位」について各MDR組み合わせの順位を以下のように生成する。
MDR数順位は、MDR組み合わせに含まれるMDR名の個数が少ないほど高い。
MDR種類順位は、データベース形式のMDRを多く含んだMDR組み合わせの方がスプレッドシート形式のMDRを多く含んだMDR組み合わせより高い。MDRの種類は、MDR運用情報194(図7参照)によって特定することができる。
テーブル結合数順位は、MDR組み合わせにリレーショナルデータベース形式のMDRが含まれる場合、テーブルの結合数が少ないほど高い。テーブルの結合数を算出するために、MDRのテーブル情報が情報記憶部190に予め記憶されているものとする。
このとき、検索実行処理(S130)はまだ実行されていないため、取得先優先度情報生成部120は「処理時間順位」を生成しない。
S124の後、S125に進む。

0091

S125において、取得先優先度情報生成部120は、S124で生成した優先度決定条件別の順位に基づいて各MDR組み合わせの総合順位を生成し、生成した総合順位を取得先優先度情報191の取得先優先度表191b(図4参照)に設定する。
総合順位は、MDR数順位、MDR種類順位およびテーブル結合数順位のそれぞれの順位が高いほど高い。例えば、これら順位の合計値が小さいほど総合順位は高い。また、これら順位の値に所定の重み付けをして総合順位を生成しても構わない。
このとき、検索実行処理(S130)はまだ実行されていないため、取得先優先度情報生成部120は処理時間順位を無視して総合順位を生成する。
S125により、取得先優先度情報生成処理(S120)は終了する。

0092

以上により、データ検索処理(図2参照)の説明を終了する。

0093

次に、MDRのデータが変更された場合にデータ整合性確認部150が実行するデータ整合性確認処理について説明する。

0094

図12は、実施の形態1におけるデータ整合性確認処理を示すフローチャートである。
実施の形態1におけるデータ整合性確認処理について、図12に基づいて説明する。

0095

S210において、データ整合性確認部150は、データが変更されたMDRを備えるサーバ装置からデータの変更情報を取得する。以下、変更されたデータを「変更データ」という。
データ整合性確認部150が定期的に各サーバ装置にデータの変更情報を要求してもよいし(ポーリング方式)、各サーバ装置が定期的(またはデータが変更されたとき)にデータの変更情報をデータ整合性確認部150に通知してもよい(プッシュ方式)。

0096

データの変更情報は、変更されたMDRのMDR名と変更されたMDRテーブルのMDRテーブル名とを含むと共に、変更されたMDRテーブルのMDR列毎にMDR列名、変更前のMDR値および変更後のMDR値を対応付けて含む。
以下、変更されたMDRを「変更MDR」といい、変更されたMDRテーブルを「変更テーブル」という。
S210の後、S220に進む。

0097

S220において、データ整合性確認部150は、S210で取得したデータの変更情報に基づいてデータ情報192(図6参照)から変更データに対応するレコードを検索する。
変更データに対応するレコードとは、データ情報192のレコードのうち、MDR名とMDRテーブル名とMDR列名とMDR値との組み合わせがデータの変更情報内のMDR名とMDRテーブル名とMDR列名と変更前のMDR値との組み合わせと同じであるレコードである。
以下、データ情報192のレコードのうち変更データに対応するレコードを「更新レコード」という。

0098

データ整合性確認部150は、データ情報192(図6参照)の更新レコードに含まれるMDR値をデータの更新情報内の変更後のMDR値(更新レコード内のMDR列名と同じMDR列名に対応付けられた変更後のMDR値)に更新する。
但し、データ情報192の更新レコードに含まれるMDR値とデータの更新情報内の変更後のMDR値とが同じ値である場合、更新は不要である。
S220の後、S230に進む。

0099

S230において、データ整合性確認部150は、変更データと同じ内容のデータが他のMDRに存在するか否かを判定する。変更データと同じ内容のデータとは、仮想統合データ名が変更データと同じであるデータのことである。
データ情報192(図6参照)の更新レコードと仮想統合データ名が同じであるレコードがデータ情報192に存在する場合、データ整合性確認部150は、変更データと同じ内容のデータが他のMDRに存在する、と判定する。
例えば、図6において、仮想統合データ名“NW機器A”で識別されるデータであってMDR“NW_CMDB”のデータが変更データである場合、変更データと同じ内容のデータが他のMDR“障害ログ”に存在する。
変更データと同じ内容のデータが他のMDRに存在する場合(YES)、S240に進む。
変更データと同じ内容のデータが他のMDRに存在しない場合(NO)、データ整合性確認処理は終了する。

0100

以下、変更データと同じ内容のデータを「対象データ」といい、変更データと同じ内容のデータが存在する他のMDRを「対象MDR」という。
また、データ情報192のレコードのうち仮想統合データ名が更新レコードと同じであるレコードを「対象レコード」という。

0101

S240において、データ整合性確認部150は、データ情報192(図6参照)の対象レコードに基づいて対象MDRの対象テーブルから対象データを取得する。
つまり、データ整合性確認部150は、対象レコード内のMDR名で識別される対象MDRから、対象レコード内のMDRテーブル名で識別される対象テーブルに含まれるデータのうち、対象レコード内のMDR列名で識別されるMDR列の値が対象レコード内のMDR値(または更新前のMDR値)と同じである対象データを取得する。
S240の後、S250に進む。

0102

S250において、データ整合性確認部150は、MDR構造情報193(図8参照)に基づいて変更データと対象データとを同じ内容のMDR列毎に比較する。同じ内容のMDR列とは、仮想統合列名が一方のMDR列と同じであるMDR列のことである。

0103

例えば、図8において、MDR名“NW_CMDB”で識別されるMDRが変更MDRであり、MDRテーブル名“nw_chassis”で識別されるMDRテーブルが変更テーブルであり、変更テーブル“nw_chassis”の特定のデータが変更データであるものとする。
また、MDR名“障害ログ”で識別されるMDRが対象MDRであり、MDRテーブル名“log_data”で識別されるMDRテーブルが対象テーブルであり、対象テーブル“log_data”の特定のデータが対象データであるものとする。
この場合、データ整合性確認部150は、仮想統合列名“ip_address”が同じである変更データのMDR列名“ip_address”の値と対象データのMDR列名“ip_address”の値とを比較する。

0104

比較した全てのMDR列で変更データの値と対象データの値とが同じである場合、データ整合性確認部150は、変更データと対象データとが整合していると判定する。
比較した少なくともいずれかのMDR列で変更データの値と対象データの値とが異なる場合、データ整合性確認部150は、変更データと対象データとが整合していないと判定する。

0105

変更データと対象データとが整合している場合(YES)、データ整合性確認処理は終了する。
変更データと対象データとが整合していない場合(NO)、S260に進む。

0106

S260において、データ整合性確認部150は、変更データと対象データとが整合していないことを示す不整合情報を生成し、生成した不整合情報を出力する。
例えば、データ整合性確認部150は、変更MDRのMDR名、変更テーブルのMDRテーブル名、変更データ、対象MDRのMDR名、対象テーブルのMDRテーブル名および対象データを含めて不整合情報を生成する。
例えば、データ整合性確認部150は、不整合情報を変更MDRのシステム管理者管理者端末および対象MDRのシステム管理者の管理者端末へ送信する。各管理者端末は、不整合情報を受信し、受信した不整合情報をディスプレイに表示する。そして、不整合情報を確認したシステム管理者は必要に応じて変更MDRまたは対象MDRを修正する。これにより、MDR間で同じ内容のデータの整合性が確保される。各管理者端末のアドレス(例えば、IPアドレスや電子メールアドレス)は情報記憶部190に予め記憶しておく。但し、データ整合性確認部150は、不整合情報を仮想統合管理装置100のディスプレイ装置に表示してもよい。
S260により、データ整合性確認処理は終了する。

0107

以上のデータ整合性確認処理によって、MDR間のデータの整合性の確保を促すことができる。このため、仮想統合管理装置100は、同じ内容のデータを有するいずれかのMDRを検索することにより、必要なデータを取得することができる。

0108

仮想統合管理装置100は、検索要求に基づいて適切なMDR組み合わせを選択することにより、検索回数(検索するMDR数)を削減し、検索性能を向上させることができる。

0109

図13は、実施の形態1における仮想統合管理装置100のハードウェア資源の一例を示す図である。
図13において、仮想統合管理装置100(コンピュータの一例)は、CPU901(Central Processing Unit)を備えている。CPU901は、バス902を介してROM903、RAM904、通信ボード905(通信装置)、ディスプレイ911(表示装置)、キーボード912、マウス913、ドライブ914、磁気ディスク装置920などのハードウェアデバイスと接続され、これらのハードウェアデバイスを制御する。ドライブ914は、FD(Flexible Disk)、CD(Compact Disc)、DVD(Digital Versatile Disc)などの記憶媒体を読み書きする装置である。
ROM903、RAM904、磁気ディスク装置920およびドライブ914は記憶装置の一例である。キーボード912、マウス913および通信ボード905は入力装置の一例である。ディスプレイ911および通信ボード905は出力装置の一例である。

0110

通信ボード905は、有線または無線で、LAN(Local Area Network)、インターネット、電話回線などの通信網に接続している。

0111

磁気ディスク装置920には、OS921(オペレーティングシステム)、プログラム群922、ファイル群923が記憶されている。

0112

プログラム群922には、実施の形態において「〜部」として説明する機能を実行するプログラムが含まれる。プログラム(例えば、検索プログラム)は、CPU901により読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。

0113

ファイル群923には、実施の形態において説明する「〜部」で使用される各種データ(入力、出力、判定結果、計算結果、処理結果など)が含まれる。

0114

実施の形態において構成図およびフローチャートに含まれている矢印は主としてデータや信号の入出力を示す。
フローチャートなどに基づいて説明する実施の形態の処理はCPU901、記憶装置、入力装置、出力装置などのハードウェアを用いて実行される。

0115

実施の形態において「〜部」として説明するものは「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ファームウェアソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。

0116

実施の形態1において、例えば、以下のような検索装置(仮想統合管理装置100)について説明した。括弧内に実施の形態1で用いた名称を記す。

0117

検索装置は、組み合わせ優先度記憶部(取得先優先度情報191)と、データ項目名記憶部(MDR構造情報193)と、検索要求入力部(検索要求受付部110)と、検索組み合わせ選択部(検索実行部130)と、データ項目名取得部(検索実行部130)と、検索式生成部(検索実行部130)とを備える。
組み合わせ優先度記憶部は、複数のデータ項目(MDR列)を識別する複数の項目識別名(仮想統合データ名、検索項目名)を組み合わせた複数の項目組み合わせの項目組み合わせ毎に、項目組み合わせに対応付けて複数のデータ記憶部名(MDR名)を組み合わせた複数の記憶部組み合わせ(MDR組み合わせ)と複数の記憶部組み合わせそれぞれの組み合わせ優先度(総合順位)とを記憶する。
データ項目名記憶部は、前記複数の項目識別名の項目識別名毎に、項目識別名によって識別されるデータ項目を有する各データ記憶部のデータ記憶部名と、各データ記憶部で項目識別名の代わりに用いられるデータ項目名(MDR列名)とを対応付けて記憶する。
検索要求入力部は、複数のデータ項目を識別する複数の検索項目名を含んだ検索要求を入力する。
検索組み合わせ選択部は、前記検索要求入力部によって入力された前記検索要求に含まれる前記複数の検索項目名を含んだ項目組み合わせを前記組み合わせ優先度記憶部から選択する。検索組み合わせ選択部は、選択した項目組み合わせに対応付けられた複数の記憶部組み合わせそれぞれの組み合わせ優先度を前記組み合わせ優先度記憶部から取得する。検索組み合わせ選択部は、選択した項目組み合わせに対応付けられた複数の記憶部組み合わせそれぞれの組み合わせ優先度に基づいていずれかの記憶部組み合わせを検索組み合わせとして選択する。
データ項目名取得部は、前記検索組み合わせ選択部によって選択された前記検索組み合わせに含まれるデータ記憶部名毎に、データ記憶部名と前記検索要求に含まれる検索項目名と同じ名称の項目識別名とに対応付けられたデータ項目名を前記データ項目名記憶部から取得する。
検索式生成部は、前記データ項目名取得部によって取得されたデータ項目名を用いて検索式を生成する。

0118

前記検索装置は、さらに、検索候補記憶部名取得部(取得先優先度情報生成部120)と、検索候補組み合わせ生成部(取得先優先度情報生成部120)とを備える。
検索候補記憶部名取得部は、前記検索要求に含まれる前記複数の検索項目名を含んだ項目組み合わせが前記組み合わせ優先度記憶部に記憶されていない場合、前記検索要求に含まれる前記複数の検索項目名の検索項目名毎に、検索項目名と同じ名称の項目識別名に対応付けられた各データ記憶部名を検索候補記憶部名として前記データ項目名記憶部から取得する。
検索候補組み合わせ生成部は、前記検索候補記憶部名取得部によって検索項目名毎に取得された検索候補記憶部名を検索項目名毎に少なくとも1つずつ含んだ複数の組み合わせを複数の検索候補組み合わせとして生成する。
前記検索組み合わせ選択部は、前記検索要求に含まれる前記複数の検索項目名を含んだ項目組み合わせが前記組み合わせ優先度記憶部に記憶されていない場合、前記検索候補組み合わせ生成部によって生成された前記複数の検索候補組み合わせのいずれかの検索候補組み合わせを検索組み合わせとして選択する。

0119

前記検索装置は、さらに、組み合わせ優先度生成部(取得先優先度情報生成部120)を備える。
組み合わせ優先度生成部は、前記検索候補組み合わせ生成部によって生成された前記複数の検索候補組み合わせそれぞれの組み合わせ優先度を生成する。
前記検索組み合わせ選択部は、前記組み合わせ優先度生成部によって生成された前記複数の検索候補組み合わせそれぞれの組み合わせ優先度に基づいて前記複数の検索候補組み合わせのいずれかの検索候補組み合わせを前記検索組み合わせとして選択する。

0120

前記組み合わせ優先度生成部は、前記複数の検索候補組み合わせの検索候補組み合わせ毎に、検索候補組み合わせに含まれるデータ記憶部名の個数(MDR数順位)と、検索候補組み合わせに含まれるデータ記憶部名によって識別されるデータ記憶部の種類(MDR種類順位)との少なくともいずれかに基づいて検索候補組み合わせの組み合わせ優先度(総合順位)を生成する。

0121

前記検索装置は、さらに、組み合わせ優先度登録部(取得先優先度情報生成部120)を備える。
組み合わせ優先度登録部は、前記検索要求に含まれる前記複数の検索項目名を複数の項目識別名として含んだ項目組み合わせと、前記検索候補組み合わせ生成部によって生成された前記複数の検索候補組み合わせと同じ組み合わせの複数の記憶部組み合わせと、前記組み合わせ優先度生成部によって生成された前記複数の検索候補組み合わせそれぞれの組み合わせ優先度とを対応付けて前記組み合わせ優先度記憶部に記憶する。

0122

前記検索装置は、さらに、データ名記憶部(データ情報192)と、変更情報取得部(データ整合性確認部150)と、整合性判定部(データ整合性確認部150)とを備える。
データ名記憶部は、異なる項目値を含んだ複数のデータのデータ毎に、データを識別するデータ名(仮想統合データ名)と、データを記憶する複数のデータ記憶部を識別する複数のデータ記憶部名(MDR名)とを対応付けて記憶する。
変更情報取得部は、前記複数のデータ記憶部のうち少なくともいずれかのデータ記憶部に記憶されたデータが変更された場合、変更されたデータのデータ名を特定するためのデータ名情報(MDR列名およびMDR値)と、変更されたデータを記憶するデータ記憶部を識別する変更記憶部名とを含んだ変更情報を取得する。
整合性判定部は、前記変更情報取得部によって取得された前記変更情報に含まれる前記データ名情報に基づいて前記変更されたデータのデータ名と同じデータ名に対応付けられた複数のデータ記憶部名を前記データ名記憶部から取得する。整合性判定部は、取得した前記複数のデータ記憶部名で識別される複数のデータ記憶部それぞれに記憶されるデータのうち前記変更されたデータのデータ名と同じデータ名で識別されるデータが前記変更されたデータと整合するか否かを判定する。

0123

100仮想統合管理装置、101検索要求、101a検索式、102検索応答、103 検索式、110 検索要求受付部、120取得先優先度情報生成部、130検索実行部、140 取得先優先度更新部、150データ整合性確認部、190情報記憶部、191 取得先優先度情報、191a検索項目表、191b 取得先優先度表、192データ情報、193 MDR構造情報、194 MDR運用情報、200 仮想統合管理システム、210クライアント装置、221サーバ装置A、222 サーバ装置B、231 MDRa、232 MDRb、901 CPU、902バス、903 ROM、904 RAM、905通信ボード、911ディスプレイ、912キーボード、913マウス、914ドライブ、920磁気ディスク装置、921 OS、922プログラム群、923ファイル群。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ