[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2013196086A - 構成情報管理装置,構成情報管理プログラム - Google Patents

構成情報管理装置,構成情報管理プログラム Download PDF

Info

Publication number
JP2013196086A
JP2013196086A JP2012059709A JP2012059709A JP2013196086A JP 2013196086 A JP2013196086 A JP 2013196086A JP 2012059709 A JP2012059709 A JP 2012059709A JP 2012059709 A JP2012059709 A JP 2012059709A JP 2013196086 A JP2013196086 A JP 2013196086A
Authority
JP
Japan
Prior art keywords
search
relationship
pattern
component
short
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012059709A
Other languages
English (en)
Other versions
JP5970882B2 (ja
Inventor
Hiroki Matsueda
宏樹 松枝
Kenichi Shimazaki
健一 島▲崎▼
Satoshi Matsuda
聡 松田
Kazunao Muramoto
一直 村本
Shinnosuke Nagakura
慎之介 長倉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012059709A priority Critical patent/JP5970882B2/ja
Priority to US13/737,167 priority patent/US9208196B2/en
Publication of JP2013196086A publication Critical patent/JP2013196086A/ja
Application granted granted Critical
Publication of JP5970882B2 publication Critical patent/JP5970882B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】FCMDBに格納されたCIの検索処理時間を短縮する。
【解決手段】制御部は,入力された関係検索式から属性情報を削除した検索式パターンを生成し,生成された検索式パターンが第1の要件を満たすか判定し,第1の要件を満たす場合,FCMDB14に格納されたCIであって,第1の要件を満たす検索式パターンにおける検索対象のCIに該当するCIに,この検索対象のCIに関係する検索条件を短縮検索キーとして埋め込み,検索式パターンに対応する第2の関係検索式が入力されると,FCMDB14に格納されたCIの中から,短縮検索キーに基づき,第2の関係検索式における検索対象のCIを検索する。
【選択図】 図9

Description

本発明は,構成情報管理装置,構成情報管理プログラムに関する。
近年,点在するデータを一元管理するために,IT(Information Technology)システムの運用管理に関する構成情報を格納する構成管理データベース(CMDB: Configuration Management Database)が提案されている。以下,構成管理データベースをCMDBと記す。
CMDBには,管理対象であるITシステムのサーバやソフトウェアの構成情報(属性情報とも言う)を有する構成要素(CI:Configuration Item)と,構成要素間の関係を示す関係要素情報とが格納されている。以下,構成要素をCIと記し,関係要素情報をRelationshipと記す。さらに,複数のCMDBに散在する各種の構成情報を仮想的に統合する統合型構成管理データベース(FCMDB(Federated CMDB))と呼ばれる装置が提案されている(特許文献1参照)。以下,統合型構成管理データベースをFCMDBと記す。
ITシステムの管理者(以下,管理者と記す)は,CIを参照することで,ハードウェアの保守作業,ソフトウェアのインストール状態などITシステム全体の構成を容易に把握することができる。管理者は,FCMDBに格納されているCIの中から,参照したいCI,換言すれば,検索対象となるCIを検索するように検索ソフトウェアに指示する。検索ソフトウェアは,この検索指示を受け付けるとFCMDBに格納されているCIの中から検索対象のCIを検索し,検索したCIを検索結果として,管理者に返答する。
特開2011-134005号公報
管理対象のITシステムの規模が大きくなると,FCMDBに格納されるCIの数も多くなり,CI間の関係も複数段に渡る。その結果,CIの検索処理時間が長くなり,管理者のストレスが増す。そのため,検索処理の短縮化が要請されている。
1つの側面では,本発明は,構成管理データベースに格納された構成要素の検索処理時間を短縮することを目的とする。
構成情報管理装置の第1の側面は,構成要素の属性情報と構成要素間の関係を複数段階で示す関係要素情報とを格納するデータベースと,複数の構成要素が検索条件で関係付けられた関係検索式の入力に応答して,前記データベースの中から,構成要素間の関係要素情報を辿り検索対象の構成要素を検索する制御部とを有し,前記制御部は,入力された第1の関係検索式のパターンを示す検索式パターンを生成し,前記生成した検索式パターンの検索処理に要した状態を測定し,前記状態が第1の要件を満たすか判定し,前記第1の要件を満たす場合,前記第1の要件を満たす検索式パターンにおける検索対象の構成要素に関係する検索条件を短縮検索キーとして前記データベースに格納し,第2の関係検索式が入力されると,前記第2の関係検索式の検索式パターンが第2の要件を満たす場合,前記短縮検索キーに基づき,前記第2の関係検索式における検索対象の構成要素を検索する。
一実施形態によれば,構成管理データベースに格納された構成要素の検索処理時間を短縮することができる
検索システムを説明するハードウェアの一実施の形態のブロック図である。 図1の管理サーバ装置,管理対象を説明するハードウェアのブロック図である。 図2の構成例の管理装置のシステム,サーバ,ソフトウェアの関係を模式的に示す図である。 XML(Extensible Markup Language)形式で記述されたCI,Relationshipを示す図である。 図2の管理対象におけるシステムCI,サーバCIをXML形式で記述した例を示す図である。 図2の管理対象におけるソフトウェアCI,RelationshipをXML形式で記述した例を示す図である。 本実施の形態における検索システム1のハードウェア構成を説明するブロック図である。 図7のFCMDB管理装置のハードウェア構成を説明するブロック図である。 図7のサーバ装置,図8のFCMDB管理装置の詳細動作を説明するソフトウェアモジュールのブロック図である。 更新された状態の検索式パターン格納テーブルを示す図である。 検索式パターン格納テーブルの更新処理が繰り返し行われた状態を示す図である。 検索式パターン格納テーブルの「短縮検索キーの埋め込み」欄を"作業中"に変更した状態の検索式パターン格納テーブルを示す図である。 図3において短縮検索キーを埋め込んだ状態を模式的に示す図である。 短縮検索キーが埋め込まれたソフトウェアCIを示す図である。 図14で説明した短縮検索キーの他の埋め込み形式を示す図である。 図12の検索式パターン格納テーブルの「短縮検索キーの埋め込み」欄を"完了"に変更した状態の検索式パターン格納テーブルを示す図である。 図5,図6に対応する他の実施の形態のテーブル形式のCI,Relationshipを示す図である。 図17のテーブル形式のソフトウェアCIに短縮検索キーが埋め込まれた状態を示す図である。 図9で説明した検索式パターン格納テーブルの更新処理の流れを説明するフロー図である。 図9で説明した短縮検索キーの埋め込み処理の流れを説明するフロー図である。 図9で説明した短縮検索キーに基づくCIの検索処理の流れを説明するフロー図である。 変更された属性情報を有するCIを示す図である。 更新後の属性情報に置換したCIを示す図である。 属性情報,短縮検索キーが更新されたテーブル形式のCI,Relationshipを示す図である。 図9で説明した短縮検索キーの更新処理の流れを説明する第1のフロー図である。 新たに作成されたRelationshipを示す図である。 短縮検索キーが埋め込まれたソフトウェアCIを示す図である。 図26,図27に対応する,Relationshipが更新されたテーブル形式のCI,Relationshipを示す図である。 短縮検索キーの更新処理の流れを説明する第2のフロー図である。 新たに作成されたRelationshipを示す図である。 短縮検索キーが削除されたソフトウェアCIを示す図である。 図30,図31に対応する,Relationshipが削除されたテーブル形式のCI,Relationshipを示す図である。 短縮検索キーの削除処理の流れを説明するフロー図である。 4段以上の関係のCI構成を示す図である。
(検索システム)
図1は,検索システム1を説明するハードウェアの一実施の形態のブロック図である。検索システム1の管理サーバ装置10は,管理対象20のサーバ,ストレージ装置(以下,ストレージと記す),各ソフトウェアを管理する。
管理サーバ装置10と管理対象20とは,ネットワーク(図示しない)を介して接続されている。
まず,管理サーバ装置10について説明する。第1の管理データリポジトリ(以下,MDR(Management Data Repository)と記す)11は,管理対象20であるサーバSVR1〜SVR3,ストレージSTR1,STR2の構成情報(属性情報)を収集し,構成情報データベース(構成情報DB11a)に格納する。以下,データベースを適宜DB(Data Base)と記す。
第1のMDR11は,構成情報DB11aに格納されたこれらの構成情報をCIに変換し,FCMDB14に格納する。なお,FCMDBは,統合型構成管理データベース(FCMDB(Federated CMDB))である。
ここで,構成情報とは,例えばサーバSVR1〜SVR3,ストレージSTR1,STR2の識別子(ID),IPアドレスなどである。
第2のMDR12は,管理対象20であるソフトウェア(図2参照)の情報(ソフト情報)を収集し,ソフト情報DB12aに格納する。そして,第2のMDR12は,ソフト情報DB12aに格納されたソフト情報をCIに変換し,FCMDB14に格納する。なお,ソフトウェアは,アプリケーションとも呼ばれる。
第3のMDR13は,管理対象20であるサーバSVR1〜SVR3,ストレージSTR1,STR2の性能情報を収集し,性能情報DB13aに格納する。そして,第3のMDR13は,性能情報DB13aに格納された性能情報をCIに変換し,FCMDB14に格納する。ここで,性能情報とは,例えばサーバSVR1〜SVR3のCPU(Central Processing Unit)の性能,ストレージSTR1,STR2の記録容量などである。
FCMDB14は,第1のMDR11,第2のMDR12,第3のMDR13から格納されたCIを,データベース内に格納し管理する。FCMDB14の符号CはCIを示す。
検索部15は,端末装置システム30からのCI検索指示を受け付けて,FCMDB14に格納されたCIの中から検索対象となるCIを検索し,CIの検索結果を端末装置システム30に応答する処理を実行する。この検索処理については,図2,図3で詳細に説明する。
なお,第1のMDR11,第2のMDR12,第3のMDR13を管理サーバ装置10に設けないで,これらをまとめて別途,情報収集サーバ装置40としてもよい。情報収集サーバ装置40のMDR41は,第1のMDR11,第2のMDR12,第3のMDR13をまとめたMDRであり,管理対象20についての各種情報を収集し,情報DB41aに格納する。
以上説明した,管理サーバ装置10,管理対象20,情報収集サーバ装置40は,例えば,企業のデータセンター内に設置されている。
(管理サーバ装置,管理対象)
図2は,図1の管理サーバ装置10,管理対象20を説明するハードウェアのブロック図である。なお,以下の説明において,図1と同機能を有するブロックについては,同じ符号を付している。
管理サーバ装置10における基本的な構成は,図1で説明した構成と同様であるが,CIの検索処理を説明するために,第4のMDR16を設けている。そして,検索処理の説明に不要な図1の第2のMDR12,第3のMDR13,情報収集サーバ装置40の図示を省略している。
管理対象20におけるシステムSYS1,システムSYS2は,各種業務システムであり,例えば,会計システムや開発システムなどである。
この実施の形態では,システムSYS1には,サーバSVR1と,サーバSVR2と,ストレージSTR1,ストレージSTR2とが設けられている。なお,システムSYS1内において,サーバSVR1と,サーバSVR2と,ストレージSTR1,ストレージSTR2とはネットワークを介して相互に接続している。サーバSVR1には,ソフトウェアSOFT1,ソフトウェアSOFT2がインストールされている。また,サーバSVR1には,サーバ機器CONF1が外部接続されている。このサーバ機器CONF1は,例えば外付けのハードディスクドライブである。サーバSVR2には,ソフトウェアSOFT3がインストールされている。
システムSYS2には,サーバSVR3が設けられている。サーバSVR3には管理対象となるソフトウェアがインストールされていないとする。
なお,管理対象20は,他のシステム,サーバ,ソフトウェア,ストレージなどを有するが,その図示を省略している。
第1のMDR11は,管理対象20のサーバSVR1〜SVR3,サーバ機器CONF1,ストレージSTR1,ストレージSTR2,ソフトウェアSOFT1〜SOFT3などの構成情報を収集し構成情報DB11aに格納する。そして,第1のMDR11は,構成情報DB11aに格納された構成情報をCI形式に変換し,FCMDB14に格納する。なお,CIの詳細については,図4〜図6で説明する。
ここで,サーバの構成情報は,例えば,サーバ名,IPアドレスである。また,ソフトウェアの構成情報とは,例えば,ソフトウェア名,識別記号である。
さらに,第1のMDR11は,管理対象20のサーバSVR1〜SVR3,サーバ機器CONF1,ストレージSTR1,ストレージSTR2,ソフトウェアSOFT1〜SOFT3などの相互関係を示す関係情報を収集し,Relationshipに変換し,FCMDB14に格納する。この関係情報は,例えば,図2の例では,サーバSVR1にソフトウェアSOFT1,SOFT2がインストールされ,サーバSVR1にはサーバ機器CONF1が外部接続されていることを示す情報である。このRelationshipとは,CI間の関係を示す情報である。なお,Relationshipの詳細については,図4〜図6で説明する。
第4のMDR16は,管理対象20のシステムSYS1,SYS2のシステム情報を収集し,システム情報DB16aに格納する。システム情報とは,例えば,システムの名前,システムの識別記号である。そして,第4のMDR16は,システム情報DB16aに格納されたシステム情報をCI形式に変換し,FCMDB14に格納する。さらに,第4のMDR16は,管理対象20のシステムSYS1,SYS2,サーバSVR1〜SVR3の相互関係を示す関係情報を収集し,Relationshipに変換し,FCMDB14に格納する。この関係情報は,例えば,図2の例では,システムSYS1には,サーバSVR1と,サーバSVR2と,ストレージSTR1,ストレージSTR2などが設けられていることを示す情報である。
FCMDB14の符号C,符号Rは,それぞれFCMDB14に格納されたCI,Relationshipを示す。
(管理対象の構成)
図3は,図2の構成例の管理装置20のシステム,サーバ,ソフトウェアの関係を模式的に示す図である。図3において,楕円形(符号C参照)がCIを模式的に示し,矢印(符号R参照)がRelationshipを模式的に示す。
例えば,システムSYS1の構成では,システムSYS1のCIは,サーバSVR1のCI,サーバSVR2のCI,ストレージSTR1のCI,ストレージSTR2のCIにRelationshipにより関係づけられている。さらに,サーバSVR1のCIは,サーバ機器CONF1,ソフトウェアSOFT1,ソフトウェアSOFT2に関係づけられていることを示している。そして,サーバSVR2は,ソフトウェアSOFT3に関係づけられていることを示している。
このように,CI間の関係をRelationshipにより特定することで,あるサーバがどのシステムに属しているのか,また,サーバにインストールされているソフトウェアを把握する。
(CI,Relationshipおよび関係検索)
図4に基づき,図2,図3で説明したFCMDB14に格納されたCI,Relationshipについて説明する。
図4は,XML(Extensible Markup Language)形式で記述されたCI,Relationshipを示す図である。CIは,システムCI,サーバCI,ソフトウェアCIに分けられる。
システムCIのタグ<item ID="01x" type="System">とタグ</item>との間に記述された内容が,1つのシステムCIが有する情報である。タグ<item ID="01x" type="System">は,CIの識別記号itemIDが"01x"であり,このCIがシステムのCIであることを示している。
タグ<record type="observed">は,CIの記録形式を示している。
タグ<System システム名="SYSx" システムID="S_x"/>は,このシステムの名前が"SYSx"であり,識別記号IDが"S_x"であることを示している。システムCIの構成情報は,例えば,このタグの内容であるシステム名,識別記号である。以下,構成情報を適宜,属性情報と記す。
サーバCIのタグ<item ID="11x" type="Server">とタグ</item>との間に記述された内容が,1つのサーバCIが有する情報である。サーバCIのタグ<item ID="11x" type="Server">は,CIの識別記号itemIDが"11x"であり,このCIがサーバのCIであることを示している。
タグ<Server サーバ名="SVx" IPアドレス="192.168.0.x"/>は,サーバ名が"SVx"であり,このサーバに割り振られているIPアドレスが"192.168.0.x"であることを示している。サーバCIの属性情報は,例えば,このタグの内容であるサーバ名,IPアドレスである。
ソフトウェアCIのタグ<item ID="21x" type="Software">とタグ</item>との間に記述された内容が,1つのソフトウェアCIが有する情報である。タグ<item ID="21x" type="Software">は,ソフトウェアCIの識別記号itemIDが"21x"であり,このCIがソフトウェアのCIであることを示している。
タグ <Software ソフトウェア名="SOFTx" ソフトウェアID="00x" />は,ソフトウェア名が"SOFTx"であり,識別記号IDが"00x"であることを示している。ソフトウェアCIの属性情報は,例えば,このタグの内容であるソフトウェア名,識別記号である。
次に,Relationshipについて説明する。Relationshipのタグ<relationship ID="Relx" type="GRelation">とタグ</relationship>との間に記述された内容が1つのRelationshipが有する情報である。
Relationshipのタグ<relationship ID="Relx" type="GRelation">は,Relationshipの識別記号relationship IDが"Relx"であることを示している。
タグ<関連元>01x</関連元>は,関連元となるCIが識別記号"01x"で示されるCIであることを示す。
タグ<関連先>11x</関連先>は,関連元のCIに関連するCIが識別記号"11x"で示されるCIであることを示す。関連元のCIを親CI,関連先のCIを子CIとも言う。
図4に示したCIとRelationshipによれば,システムCI(関連元のIDがシステムCIの01x)に関係するCIはサーバCI(関連先のIDがサーバCIの11x)であることがわかる。また,サーバCI(関連元のIDがサーバCIの11x)に関係するCIはソフトウェアCI(関連元のIDがソフトウェアCIの21x)であることがわかる。
なお,ここで,システムCIに関係するサーバCIとは,システムCIにより示されるシステムに,サーバCIにより示されるサーバが属していることを意味する。さらに,サーバCIに関係するソフトウェアCIとは,サーバCIにより示されるサーバに,ソフトウェアCIにより示されるソフトウェアがインストールされていることを意味する。
図3の構成例で説明した管理対象20のCI,Relationshipについて,図5,図6に基づき,説明する。
図5は,例えば図2の管理対象20の一部のシステムCI,サーバCIをXML形式で記述した例を示す図である。図5においては,例えば,システム名SYS1〜SYS4のCIがシステムCIに格納されている。そして,サーバ名SV1〜SV5のCIがサーバCIに格納されている。
これらのシステムCI,サーバCIは,ファイル形式で,図2のFCMDB14(符号C参照)に格納されている。
図6は,例えば図2の管理対象20におけるソフトウェアCI,RelationshipをXML形式で記述した例を示す図である。図6においては,例えば,ソフトウェア名SOFT1〜SOFT3,SOFTA,SOFTBのCIがソフトウェアCIに格納されている。そして,図5で説明したシステムCI,サーバCI,図6で説明したソフトウェアCIの関係がRelationshipに格納されている。
ソフトウェアCIは,ファイル形式で図2のFCMDB14(符号C参照)に格納されている。同じく,Relationshipは,ファイル形式で図2のFCMDB14(符号R参照)に格納されている。
図6のRelationshipにおける識別記号Rel1によれば,例えば,関係元の識別記号ID01のCI(図5のシステムCI参照)と,関係先の識別記号ID11のCI(図5のサーバCI参照)とが関係していることがわかる。
なお,図6に示したソフトウェアCIにおけるタグ<item ID="24" type="Software">のCIに記述されたソフトウェア名="SOFTA"のソフトウェアと,タグ<item ID="25" type="Software">のCIに記述されたソフトウェア名="SOFTB"のソフトウェアは,何らのシステムにも属さず,どのサーバにもインストールされていないソフトウェアである。
CIをXML形式で記述することにより,開発者または管理者は,統一的な記述法を用いながら独自の意味や構造を有するマークアップ言語を作成することができる。そのため,後述する短縮検索キーを容易に追加することができる。
図3,図5,図6を参照しながら,CIの検索処理について説明する。CIの検索処理においては,親のCI(図3の左側)から子のCI(図3の右側)へとCI間の関係を辿ることにより目的のCIを検索する。このようなCI間の関係を辿ることにより,検索対象のCIを検索することを関係検索と記す。
管理者が,例えば,ソフトウェアの資産管理やライセンス管理のため,あるシステムに関係するサーバSVR1にインストールされているソフトウェアを関係検索する場合を想定する。
この場合,管理者は,図1,図2の検索部15にかかる関係検索指示を行う。検索部15は,かかる関係検索指示に応答して,関係検索を実行する。検索部15は,図5で説明した全システムCI(4つ)の中からシステムSYS1を検索する。そして,検索部15は,システムSYS1のRelationshipを辿りシステムSYS1に関係する全サーバCI(2つ)の中からサーバ名SVR1のCIを検索する。そして,検索されたサーバCIのRelationshipを辿りサーバSVR1に関係するソフトウェアSOFT1,ソフトウェアSOFT2を検索する。
このようなCI間の関係を辿る関係検索を実行すると,多大な個数のCIについて検索を実行しなければならず検索処理時間が長くなる。
特に,CI間の関係が複数段になり,CIの枝分かれが多くなる場合において,末端のCIを検索対象とすると,検索処理時間が飛躍的に長くなる。そこで,検索処理時間を短縮する。
[第1の実施の形態]
図7は,本実施の形態における検索システム1のハードウェア構成を説明するブロック図である。管理サーバ装置10は,管理サーバ装置10の全体を制御するCPU(Central Processing Unit)121と,メモリ122と,ハードディスクドライブ(以下,HDD(Hard Disk Drive)と記す)123とを有する。さらに,管理サーバ装置10は,端末装置システム30とネットワークを介して接続するネットワークインターフェイスカード(以下,NIC(Network Interface Card)と記す)124と,第1のMDR11と,第4のMDR16と,FCMDB管理装置200とを有する。FCMDB管理装置は,構成情報管理装置とも言う。
図8は,図7のFCMDB管理装置200のハードウェア構成を説明するブロック図である。
FCMDB管理装置200は,FCMDB管理装置200の全体を制御するコンピュータとして機能するCPU(制御部)201と,メモリ202と,HDD203と,FCMDB14と,検索式パターン格納DB212とを有する。FCMDB14は,CIの属性情報(構成情報とも言う)とCI間の関係を複数段階で示すRelationshipとを格納するデータベースである。
図9は,図7のサーバ装置10,図8のFCMDB管理装置200の詳細動作を説明するソフトウェアモジュールのブロック図である。
まず,図7のサーバ装置10と,図9のサーバ装置10との関係について説明する。
図9の検索インターフェイス部101は,ソフトウェアモジュールである。検索インターフェイス部101として機能するプログラムは,図7のHDD123に記録される。管理サーバ装置10の起動時に,図7のCPU121が,このプログラムをHDD123から読み出してメモリ122に展開することにより,検索インターフェイス部101として機能する。
次に,図8のFCMDB管理装置200と,図9のFCMDB管理装置200との関係について説明する。
図9のデータ検索処理部221と,データ更新処理部222と,データ管理部230は,ソフトウェアモジュールである。なお,データ管理部230の検索部15と,検索時間計測部231と,検索式パターン生成部232と,検索回数調査部233と,短縮検索キー埋め込み処理部234と,検索方式判定部235と,関係検索式変換部236と,短縮検索キー更新部237もソフトウェアモジュールである。
図9のデータ検索処理部221と,データ更新処理部222と,データ管理部230として機能するプログラムは,図8のHDD203に記録される。FCMDB管理装置200の起動時に,図8のCPU201が,このプログラムをHDD203から読み出してメモリ202に展開することにより,データ検索処理部221と,データ更新処理部222と,データ管理部230として機能する。
なお,図8におけるFCMDB14の符号Ts,Tv,Tf,Trは,それぞれ,図17で説明するシステムCIテーブルTs,サーバCIテーブルTv,ソフトウェアCIテーブルTf,RelationshipテーブルTrを示す。
次に,図9の管理サーバ装置10について説明する。管理サーバ装置10の検索インターフェイス部101は,端末装置システム30から入力された関係検索式を受信し,FCMDB管理装置200のデータ検索処理部221に出力する。また,検索インターフェイス部101は,データ検索処理部221から入力された検索結果を端末装置システム30に出力する。
第1のMDR11は,管理対象20における,例えばサーバSVR1〜SVR3,サーバ機器CONF1,ストレージSTR1,ストレージSTR2,ソフトウェアSOFT1〜SOFT3の属性情報を収集し構成情報DB11aに格納する。第1のMDR11は,構成情報DB11aに格納されたこれらの属性情報をCIに変換し,データ更新処理部222に出力する。さらに,第1のMDR11は,例えばサーバSVR1〜SVR3,サーバ機器CONF1,ストレージSTR1,ストレージSTR2,ソフトウェアSOFT1〜SOFT3の関係情報を収集し,Relationshipに変換し,データ更新処理部222に出力する。前記したCIの一例は,例えば,図5のサーバCI,図6のソフトウェアCIである。そして,前記したRelationshipの一例は,図6のRelationshipである。
データ更新処理部222は,入力されたCI,Relationshipをデータ管理部230を介して,FCMDB14に格納する。
第4のMDR16は,管理対象20における,例えばシステムSYS1,SYS2のシステム情報を収集し,システム情報DB16aに格納する。そして,第4のMDR16は,システム情報DB16aに格納されたシステム情報をCI形式に変換し,データ更新処理部222に出力する。さらに,第4のMDR16は,例えばシステムSYS1,SYS2,サーバSVR1〜SVR3の関係情報を収集し,Relationshipに変換し,データ更新処理部222に出力する。前記したCIの一例は,例えば,図5のシステムCI,サーバCIである。そして,前記したRelationshipの一例は,図6のRelationshipである。
データ更新処理部222は,入力されたCI,Relationshipをデータ管理部230を介して,FCMDB14に格納する。
次に,FCMDB管理装置200について説明する。FCMDB管理装置200のFCMDB14は,入力されたCI,Relationshipを,データベース内に格納し管理する。
検索式パターン格納DB212は,図10で説明する検索式パターン格納テーブルTを格納する他のデータベースである。
データ検索処理部221は,CI検索処理のインターフェイスである。
データ更新処理部222は,第1のMDR11,第4のMDR16から入力されたCI,Relationshipをデータ管理部230を介してFCMDB14に格納する。
データ管理部230は,関連検索処理や,本実施の形態で説明する短縮検索キーに基づく検索処理を実行する。
データ検索処理部221,データ更新処理部222,データ管理部230は,ソフトウェアモジュールである。
データ管理部230の検索部15は,FCMDB14に格納されたCIから検索対象のCIを検索する。検索時間計測部231は,関係検索式の検索処理時間を計測する。検索式パターン生成部232は,入力された関係検索式から属性情報を削除した検索式パターンを生成する。検索回数調査部233は,図11で説明する検索式パターン格納テーブルTの回数欄の数値を常時調査し,回数欄の数値が所定の回数以上か調査(判定)する。
短縮検索キー埋め込み処理部234は,FCMDB14に格納されたCIに短縮検索キーを埋め込む処理を実行する。検索方式判定部235は,検索式パターンが,検索式パターン格納DB212に格納された検索式パターン格納テーブルTに存在するか判定する。関係検索式変換部236は,入力された関係検索式における検索対象のCIを直接検索する検索式に変換する。短縮検索キー更新部237は,FCMDB14に格納されたCI,Relationshipの内容が更新されると,この更新に関係する短縮検索キーの内容を更新する。
(関係検索)
まず,図9を参照しながら,関係検索について説明する。管理者が,端末装置システム30を操作して関係検索指示を行う。端末装置システム30は,この関係検索指示を関係検索式に変換する。この関係検索式は,検索対象のCIと,検索対象のCIに関係する検索条件が指定された検索式である。この関係検索式は,
例えば,"/第1の検索条件/RLS/第2の検索条件[@]/RLS/検索対象のCI"
という形式である。”/”は,検索条件とRLSとの区切りを示す。"/RLS/"は,左右にある2つの検索条件がRelationshipにより関係していることを示す。検索条件[@]の[@]は,検索条件をさらに特定(限定)する属性情報が指定される欄である。換言すれば,この関係検索式は,複数のCIが検索条件で関係付けられている。
関係検索式として,あるシステムに関係するサーバ名SVR1に関係するソフトウェアのCIを関係検索する例を示す。
この関係検索式は,例えば,
"/システム/RLS/サーバ[@サーバ名=‘SV1’]/RLS/ソフトウェア"
である。この関係検索式は,FCMDB向けに拡張したXpath(XML Path Language)で記述された検索式である。
この場合,検索対象のCIは,ソフトウェアのCIであり,検索対象のCIに関係する検索条件は,サーバであり,さらに,あるシステムである。そして,検索条件をさらに限定する属性情報として,サーバ名‘SV1’が指定されている。ここでは,検索条件をさらに限定する属性情報は,関係検索式の検索条件記号”[]”で指定された"="以降の文字列を意味する。
以下,例示した関係検索式を関係検索式RS1(第1の関係検索式)と記す。
端末装置システム30は,関係検索式RS1を管理サーバ装置10の検索インターフェイス部101に出力する(図9の矢印(1-1))。検索インターフェイス部101は,データ検索処理部221に関係検索式RS1を出力する(図9の矢印(1-2))。データ検索処理部221は,関係検索式RS1の入力に応答して,関係検索式RS1をデータ管理部230の検索部15に出力する(図9の矢印(1-3))。
検索部15は,関係検索式RS1の入力に応答して,FCMDB14に格納されたCI,Relationshipを参照して関係検索を行う(図9の矢印(1-4))。ここでは,図5,図6で説明したように,関係検索を行い,あるシステムCIに関係するサーバ名SV1のサーバCIに関係するソフトウェアCIを検索する。
図5,図6の例では,ソフトウェアSOFT1,SOFT2のソフトウェアCIを検索する。そして,図9の検索部15は,検索結果をデータ検索処理部221に出力する(図9の矢印(1-3))。データ検索処理部221は,検索結果の入力に応答して,検索結果を検索インターフェイス部101に出力する(図9の矢印(1-2))。検索インターフェイス部101は,検索結果の入力に応答して,端末装置システム30に検索結果を出力する(図9の矢印(1-1))。
(検索式パターン)
本実施の形態の短縮検索キーに基づく検索処理を説明する前に,入力された関係検索式の検索式パターン生成処理について図9,図10,図11に基づき説明する。
図10は,更新された状態の検索式パターン格納テーブルT1を示す図である。
図11は,検索式パターン格納テーブルT1の更新処理が繰り返し行われた状態を示す図である。
図9の検索時間計測部231は,関係検索式RS1がデータ管理部230の検索部15に入力されてから,検索部15が関係検索式の検索結果を出力するまでの時間を計測する。
そして,検索時間計測部231は,検索時間が所定の時間以上か判定する。換言すれば,検索時間計測部231は,検索速度が所定の閾値よりも低速か判定する。ここで,所定の時間とは,例えば,管理者が予め決めた時間(例えば,10秒)でもよい。他にも,関係検索を実行しない場合に要した検索時間の平均時間を計算し,この平均時間にある時間(例えば,5秒)を加算した時間を所定の時間としてしてもよい。関係検索を実行しない場合とは,関係検索式における検索条件に対応するCI間の関係情報を辿らずに,FCMDB14に格納された構成情報の中から検索対象のCIを検索する場合である。
検索時間計測部231は,検索時間が所定の時間以上の場合には,入力された関係検索式の検索式パターンを生成するように検索式パターン生成部232に指示する(図9の矢印(2-1))。
検索式パターン生成部232は,この指示に応答して,入力された関係検索式のパターンを示す検索式パターンを生成する。具体的には,検索式パターン生成部232は,入力された関係検索式から属性情報を削除した検索式パターンを生成し,検索時間計測部231に出力する。関係検索式における属性情報とは,例えば,関係検索式RS1,"/システム/RLS/サーバ[@サーバ名=‘SV1’]/RLS/ソフトウェア"の場合,属性情報は,検索条件”サーバ[@サーバ名=‘SV1’]”の‘SV1’である。さらに,ここでは,検索条件の他に,不要な記号である”=”も同時に削除する。
従って,関係検索式RS1の検索式パターンは,
/システム/RLS/サーバ[@サーバ名]/RLS/ソフトウェアである。
検索時間計測部231は,図10に示すように,検索式パターン格納DB212の検索式パターン格納テーブルTに格納されている内容を更新する(図9の矢印(2-2))。図10の検索式パターン格納テーブルT1は,図9の検索式パターン格納DB212に検索式パターン格納テーブルTとして格納される。
検索式パターン格納テーブルT1は,「式のパターン」欄と,「短縮検索キーの埋め込み」欄と,「回数」欄とを有する。「式のパターン」欄には,検索式のパターンが格納され,「短縮検索キーの埋め込み」欄には,短縮検索キーの埋め込み状態が格納される。「回数」欄には,同一検索式のパターンの格納回数が格納される。
図9の検索時間計測部231は,変換された検索式パターンが「式のパターン」欄に存在しない場合には,図10に示したように,変換された検索式パターンを「式のパターン」欄に格納し,回数欄の数値を1とする。
一方,変換された検索式パターンが「式のパターン」欄に存在する場合には,検索時間計測部231は,変換された検索式パターンに該当する回数欄の数値を1つ増加する。なお,初期状態では,「短縮検索キーの埋め込み」欄には,短縮検索キーが埋め込まれていないことを示す"未"が格納されている。
以上説明した,関係検索式の入力,検索結果の応答処理,検索時間の計測処理,検索式パターン格納テーブルの更新処理が繰り返し実行される。
例えば,関係検索式RS1と比較し,検索条件の属性情報としてサーバ名が異なる関係検索式が入力される。この関係検索式とは,例えば,
"/システム/RLS/サーバ[@サーバ名=‘SV2’]/RLS/ソフトウェア"
"/システム/RLS/サーバ[@サーバ名=‘SV3’]/RLS/ソフトウェア"
である。または,"/システム[@システム名=‘SYS1’]/RLS/サーバ"などの関係検索式が入力される。この関係検索式は,システム名SYS1のCIに関係するサーバCIを検索対象とする関係検索式である。
これらの関係検索式に対する検索処理時間が,所定の時間以上の場合,検索時間計測部231は,図10の検索式パターン格納テーブルT1の更新処理を繰り返し行う。その結果,図11の検索式パターン格納テーブルT2に示すように,関係検索式RS1の検索式パターン"/システム/RLS/サーバ[@サーバ名]/RLS/ソフトウェア"の回数が所定の回数(100回)に到達する。以下,この所定の回数以上の検索式パターンを検索式パターンSP1と記す。なお,所定の回数として100回を例示したが,他にも様々な回数とすることができる。
図11に示した検索式パターン”/システム[@システム名]/RLS/サーバ”は,例えば,関係検索式"/システム[@システム名=‘SYS1’]/RLS/サーバ"の検索式パターンである。
なお,検索式パターン格納テーブルT2は,図9の検索式パターン格納DB212に検索式パターン格納テーブルTとして格納される。
図9の検索回数調査部233は,検索式パターン格納テーブルTの回数欄の数値を常時調査し,回数欄の数値が所定の回数以上か判定する。
検索回数調査部233は,検索式パターン格納テーブルTの回数欄の数値が所定の回数以上の場合,短縮検索キーの埋め込み指示を短縮検索キー埋め込み処理部234に行う(図9の矢印(3-1))。
検索回数調査部233は,入力された関係検索式について,計測された検索処理時間が所定の時間以上であり,かつ,検索式パターン格納DB212の検索式パターン格納テーブルTに格納(格納)されたこの関係検索式の検索式パターンの格納回数が所定の回数以上か判定する。そして,検索回数調査部233は,所定の回数以上の検索式パターンを第1の要件を満たす検索式パターンとする。
換言すれば,検索回数調査部233は,検索式パターンの検索処理に要した状態として,例えば,この検索式パターンを検索式パターン格納テーブルTに格納した回数を測定(調査)する。ここで,検索式パターンの検索処理に要した状態として,検索時間測定部231が測定したこの検索式パターンにおける検索対象のCIの検索時間をも含めることができる。なお,前記したように,検索時間が所定の時間以上の場合に,検索時間測定部231は,この検索式パターンを検索式パターン格納テーブルTに格納している。
検索回数調査部233は,前記した状態が第1の要件を満たす場合,前記の例では,検索式パターンの格納回数が所定の回数以上の場合に,この検索式パターンを第1の要件を満たす検索式パターンと判定する。
(短縮検索キーの埋め込み)
短縮検索キーの埋め込み処理について,図9,図12〜図16に基づき説明する。
図12は,図11の検索式パターン格納テーブルT2の「短縮検索キーの埋め込み」欄を"作業中"に変更した状態の検索式パターン格納テーブルT3を示す図である。
図13は,図3において短縮検索キーを埋め込んだ状態を模式的に示す図である。
図14は,短縮検索キーが埋め込まれたソフトウェアCIを示す図である。図14は,図6のソフトウェアCIに対応している。
図15は,図14で説明した短縮検索キーの他の埋め込み形式を示す図である。
図16は,図12の検索式パターン格納テーブルT3の「短縮検索キーの埋め込み」欄を"完了"に変更した状態の検索式パターン格納テーブルT4を示す図である。
図9の短縮検索キー埋め込み処理部234は,検索回数調査部233からの短縮検索キーの埋め込み指示を受信する。すると,短縮検索キー埋め込み処理部234は,この指示に応答して,図12の検索式パターン格納テーブルT3に示すように,所定の回数以上の格納回数に該当する検索式パターン格納テーブルT2の「短縮検索キーの埋め込み」欄を"作業中"に変更する(図9の矢印(3-2))。
なお,図12の検索式パターン格納テーブルT3は,図9の検索式パターン格納DB212に検索式パターン格納テーブルTとして格納される。
図9の短縮検索キー埋め込み処理部234は,FCMDB14において,検索式パターンSP1により関係づけられているCIの中から短縮検索キーを埋め込むCIを全て検索する(図9の矢印(1-4))。換言すれば,短縮検索キー埋め込み処理部234は,FCMDB14に格納されたCIであって,第1の要件を満たす検索式パターンSP1における検索対象のCIに該当するCIを全て検索する。
そして,短縮検索キー埋め込み処理部234は,検索したCIと共に短縮検索キーをFCMDB14に格納する。ここでは,短縮検索キー埋め込み処理部234は,第1の要件を満たす検索式パターンSP1により関係付けられている検索対象のCIに関係する検索条件を短縮検索キーとして検索したCIに埋め込む。
前記の例では,検索式パターンSP1は,"/システム/RLS/サーバ[@サーバ名]/RLS/ソフトウェア"であった。この場合,あるシステムCIに関係する(/システム/RLS/),あるサーバ名のサーバCIに関係する全てのソフトウェアCIが,短縮検索キーを埋め込むCIである。
図5,図6の例では,あるシステムに関係するあるサーバ名に関係する全てのソフトウェアCIは,ソフトウェアSOFT1〜SOFT3のCIである。このCIが,短縮検索キーを埋め込むCIである。
埋め込む短縮検索キーは,検索式パターンSP1により関係付けられている検索対象のCI,すなわちソフトウェアCIに関係する検索条件である。前記の例では,システムCI,および,サーバCIである。
検索条件をさらに特定する属性情報が指定されていた場合には,その属性情報をも短縮検索キーに含める。前記の例では,ソフトウェアCIに関係するサーバの名前を短縮検索キーに含める。
前記の例では,図13に示すように,短縮検索キー埋め込み処理部234は,ソフトウェアSOFT1,SOFT2に短縮検索キーとして,”システム”と”サーバ/@サーバ名=SV1”を埋め込む。さらに,短縮検索キー埋め込み処理部234は,ソフトウェアSOFT3に短縮検索キーとして,”システム”と”サーバ/@サーバ名=SV2”を埋め込む。
短縮検索キーが埋め込まれたソフトウェアCIを図14に示す。。
図9の短縮検索キー埋め込み処理部234は,図14に示すように,識別記号itemID21〜23で識別されるソフトウェアCIに短縮検索キーを埋め込む。
短縮検索キー埋め込み処理部234は,図14に示すように,識別記号itemID21,22のソフトウェアCIに対して,短縮検索キーとして,
<System />
<Server サーバ名="SV1" />
を埋め込む。
そして,短縮検索キー埋め込み処理部234は,識別記号itemID23のソフトウェアCIに対して,
<System />
<Server サーバ名="SV2" />
を埋め込む。
ここで,短縮検索キー埋め込み処理部234は,識別記号itemID24,25のソフトウェアCIに対しては,短縮検索キーを埋め込まない。これは,これらのソフトウェアCIは,システムCI,サーバCIと関係付けられていないからである。
なお,図14で説明した短縮検索キー埋め込み形式の他にも様々な短縮検索キーの埋め込み方式を採用できる。例えば,図15に示すように,短縮検索キー埋め込み処理部234は,このソフトウェアCIに短縮検索キーとして,
<Server サーバ名="SV1">
<System />
</Server>
を埋め込んでいる。この短縮検索キーは,あるシステムに関係するサーバ名SV1に関係するソフトウェアCIであることを示している。図15においては,識別記号itemID21のソフトウェアCIだけを例示しているが,例えば他の識別記号itemID22のソフトウェアCIでも同様である。このように,図14で例示した短縮検索キーの埋め込み形式だけでなく,様々な埋め込み形式を適用することができる。
短縮検索キー埋め込み処理が終了すると,図9の短縮検索キー埋め込み処理部234は,図16の検索式パターン格納テーブルT4に示したように,所定の格納回数以上の格納回数に対応する「短縮検索キーの埋め込み」欄を"作業中"から"完了"に変更する"。なお,検索式パターン格納テーブルT4は,図9の検索式パターン格納DB212に検索式パターン格納テーブルTとして格納される。
なお,関係検索式としては,例えば,
“/システム[@システム名=”SYS1”]/RLS/サーバ[@サーバ名=”SV1”]/RLS/ソフトウェア”とする関係検索式が入力された場合,検索式パターン生成部232は,
/システム[@システム名]/RLS/サーバ[@サーバ名]/RLS/ソフトウェアとする検索式パターンを生成する。そして,検索式パターン生成部232は,検索式パターン格納テーブルTにこの検索式パターンを格納して,格納回数を更新する。
以後,所定の格納回数以上の検索式パターンに対応する関係検索式が入力された場合,図9の検索部15は,関係検索ではなく,この短縮検索キーに基づき,CIを検索する直接検索処理を実行する。
(直接検索処理の実行)
次に,直接検索処理について図9,図16に基づき説明する。なお,この直接検索は,通常検索とも言う。
以下,直接検索処理の実行について,具体例で説明する。
例えば,ある関係検索式RS2がFCMDB管理装置200のデータ管理部230に入力される。
関係検索式RS2は,例えば,
"/システム/RLS/サーバ[@サーバ名=‘SV2’]/RLS/ソフトウェア"
である。ここでは,属性情報がサーバ名という点で,関係検索式RS1の属性情報と関係検索式RS2の属性情報が共通している。
検索方式判定部235は,関係検索式RS2を検索式パターンに変換するように検索式パターン生成部232に指示する(図9の矢印(4-1))。検索式パターン生成部232は,この指示に応答して,関係検索式RS2を検索式パターンに変換し,検索方式判定部235に出力する。
この検索式パターンは,検索式パターンSP1である"/システム/RLS/サーバ[@サーバ名]/RLS/ソフトウェア"となる。
検索方式判定部235は,変換した検索式パターンが,検索式パターン格納DB212に格納された検索式パターン格納テーブルTに存在するか判定する(図9の矢印(4-2))。
この場合,変換した検索式パターンと同じ検索式パターンが,図16の検索式パターン格納テーブルT4の「式のパターン」欄に存在する。
次いで,図9の検索方式判定部235は,検索式パターン格納テーブルT4において,変換した検索式パターンと同じ検索式パターンに該当する「短縮検索キーの埋め込み」欄が”完了”に変更されているか判定する。
前記の変換した検索式パターンの例では,図16の検索式パターン格納テーブルT4におけるシステム/RLS/サーバ[@サーバ名]/RLS/ソフトウェア"に該当する「短縮検索キーの埋め込み」欄が”完了”に変更されている。
「短縮検索キーの埋め込み」欄が”完了”に変更されている場合,図9の検索方式判定部235は,関係検索式RS2を変換して,関係検索式RS2における検索対象のCIを直接検索する検索式に変換するように関係検索式変換部236に指示する(図9の矢印(4-3))。
関係検索式変換部236は,入力された関係検索式における検索対象のCIを直接検索する検索式に変換する。以下,変換後の検索式を直接検索式と記す。
ここでは,関係検索式において検索条件がN段ある場合,1,2,3…N段の検索条件を論理積で結合した検索式に変換する。ここで,関係検索式において検索条件がN段とは,/検索条件/RLS/がN個接続されている状態を意味する。
そして,関係検索式変換部236は,この論理積で結合した検索条件を満たす,検索対象のCIを検索する式に変換する。この変換された式が,検索対象のCIを直接検索する検索式である。
関係検索式が"/システム/RLS/サーバ[@サーバ名=‘SV2’]/RLS/ソフトウェア"の場合,検索条件は2段である。
この場合,関係検索式変換部236は,1段目の検索条件”システム”と,2段目の検索条件” サーバ[@サーバ名=‘SV2’]”を論理積で結合した条件式[”システム” and サーバ/@サーバ名=‘SV2’]に変換する。
そして,関係検索式変換部236は,この論理積で結合した条件式を満たす検索対象のソフトウェアCIを検索する直接検索式である,ソフトウェア[”システム” and サーバ/@サーバ名=‘SV2’]に変換する。
この変換式は,あるシステム,かつ(AND),サーバ名SV1のサーバに関係するソフトウェアを検索する検索式である。
関係検索式変換部236は,直接検索式を検索部15に出力する(図9の矢印(4-4))。検索部15は,直接検索式の入力に応答して,直接検索式の検索対象となるCIをFCMDB14から検索する(図9の矢印(1-4))。
前記の例では,検索部15は,あるシステム,かつ,サーバ名SV2を有するソフトウェアCIをFCMDB14から検索する。
検索部15は,図14の例では,識別記号itemID22で識別されるソフトウェアCI(ソフトウェア名SOFT2,ソフトウェアID002)を検索し,検索結果をデータ検索処理部221に出力する。データ検索処理部221は,入力された検索結果を検索インターフェイス部101を介して,端末装置システム30に出力する。
このように,検索方式判定部235は,入力された第2の関係検索式の検索式パターンが第2の要件を満たすか判定する。具体的には,検索方式判定部235は,検索式パターン格納DB212の検索式パターン格納テーブルTにおける第2の関係検索式の検索式パターンの格納回数が所定の回数(例えば,100回)以上の場合,第2の関係検索式の検索式パターンが第2の要件を満たすと判定する。
そして,検索部15は,FCMDB14に格納されたCIの中から,第2の関係検索式における検索条件を有する短縮検索キーが埋め込まれたCIを検索し,この検索したCIの中から第2の関係検索式における検索対象のCIを検索する。換言すれば,検索部15は,FCMDB14に格納されたCIの中から,短縮検索キーに基づき第2の関係検索式における検索対象のCIを検索する。
この短縮検索キーに基づく直接検索によれば,検索部15は,FCMDB14に格納されたソフトウェアCIを検索して,このソフトウェアCIが検索条件を満たすか否かを判定するので,検索処理時間を短縮できる。
図14の例では,短縮検索キーが埋め込まれている3つのソフトウェアCIを検索すればよく,図3で説明した関係検索に比べて検索対象となるCIの数が減少する。その結果,検索処理時間を短縮できる。
さらに,第1の要件を満たす検索式パターンにおける検索対象のCIにのみ短縮検索キーを埋め込んでいる。この検索対象のCIは,検索処理時間が長く,頻繁に検索される可能性があるCIである。このような,CIにのみ短縮検索キーを埋め込むことで,短縮検索キーの埋め込み処理によるCIデータ量の増大を防ぐことができる。例えば,全てのCIに短縮検索キーを埋め込むことも考えられる。しかし,全てのCIに短縮検索キーを埋め込むとCIデータ量が増大し,より大容量のデータベースが必要になる。しかし,本実施の形態によれば,前記したように,短縮検索キーの埋め込み処理によるCIデータ量の増大を防ぐことができる。
他にも,関係検索式として,例えば,
“/システム[@システム名=”SYS1”]/RLS/サーバ[@サーバ名=”SV1”]/RLS/ソフトウェア”
が入力されることがある。この関係検索式は,システム名SYS1に関係するサーバ名SVR1に関係するソフトウェアCIを検索対象とする検索式である。
この関係検索式の検索式パターンは,
“/システム[@システム名]/RLS/サーバ[@サーバ名]/RLS/ソフトウェア”
である。
この検索式パターンの検索式パターン格納テーブルTへの格納回数が所定の回数以上になる。すると,短縮検索キー埋め込み処理部234は,前記したように,FCMDB14に格納されたCIであって,この検索式パターンにおける検索対象のCIに該当するCIを全て検索する。そして,短縮検索キー埋め込み処理部234は,検索したCIに,この検索式パターンにより関係付けられている検索対象のCIに関係する検索条件を埋め込む。
以後,この関係検索式の検索式パターンに対応する関係検索式が入力されると,関係検索式変換部236は,この関係検索式を直接検索式に変換する。この関係検索式の検索パターンに対応する関係検索式が,例えば,
“/システム[@システム名=”SYS1”]/RLS/サーバ[@サーバ名=”SV2”]/RLS/ソフトウェア”の場合を想定する。
この場合,検索式パターン生成部232は,システムCIに関する条件「システム[@システム名=”SYS1]」の部分をソフトウェアCIに対する条件式「ソフトウェア[システム/@システム名=”SYS1”]」に変換する。さらに,検索式パターン生成部232は,サーバCIに関する条件「サーバ[@サーバ名=”SV2”]」の部分をソフトウェアCIに対する条件式「ソフトウェア[サーバ/@サーバ名=”SV2”]」に変換する。次に,検索式パターン生成部232は,変換した各条件指定を結合して,直接検索式に変換する。この場合,検索式パターン生成部232は,この2つの条件を結合して,「ソフトウェア[サーバ/@サーバ名=”SV2” and システム/@システム名=”SYS1”]」とする。
(他のCI,Relationshipの形式)
図17は,図5,図6に対応する他の実施の形態のテーブル形式のCI,Relationshipを示す図である。
図18は,図17のテーブル形式のソフトウェアCIに短縮検索キーが埋め込まれた状態を示す図である。
図4〜図6では,XML形式で記述されたCI,RelationshipがFCMDB14に格納されている状態を説明した。他にも,FCMDB14は,図17に示すように,XML形式以外,例えば,テーブル形式で表現したCI,Relationshipを格納してもよい。
図17におけるシステムCIテーブルTsは,システムCIの識別記号IDと,システム名と,システムIDとが格納されているテーブルである。
サーバCIテーブルTvは,サーバCIの識別記号IDと,サーバ名と,IPアドレスとが格納されているテーブルである。
ソフトウェアCIテーブルTfは,ソフトウェアCIの識別記号IDと,ソフトウェア名と,ソフトウェアIDとが格納されているテーブルである。
RelationshipテーブルTrは,関係元の識別記号IDと,関係先の識別記号先の識別記号IDが格納されたテーブルである。
上記テーブルTs,Tv,Tf,Trは,図8,図9で説明したように,FCMDB14に格納されている。
テーブル形式で格納することにより,開発者は,CI,Relationshipの管理が容易になる。
短縮検索キー埋め込み処理部234は,図18に示したように,図17のソフトウェアCIテーブルTfに短縮検索キーを埋め込む。短縮検索キーの(関係していない)とは,短縮検索キーがブランク(空白)であることを意味している。また,例えば,識別記号ID21の行における(関係している)とは,識別記号ID21のソフトウェアCIは,上欄に記載された“システム”に関係していることを示している。
(検索式パターン格納テーブルの更新処理の流れ)
図19は,本実施の形態において,図9で説明した検索式パターン格納テーブルの更新処理の流れを説明するフロー図である。
ステップS1:関係検索式が入力されると,検索部15は,関係検索を実行する。
ステップS2:同時に,検索時間計測部231は,関係検索式が検索部15に入力されてから検索結果を出力するまでの時間を計測する。
ステップS3:検索時間計測部231は,検索時間が所定の時間以上か判定する。検索時間が所定の時間未満の場合(ステップS3/NO),処理を終了する。検索時間が所定の時間以上の場合(ステップS3/YES),ステップS4に移る。
ステップS4:検索式パターン生成部232は,入力された関係検索式を検索式パターンに変換する。
ステップS5:検索時間計測部231は,検索式パターン格納DB212に格納されている検索式パターン格納テーブルTを更新する。
さて,図19で説明した各処理が繰り返し行われると,検索式パターン格納テーブルの回数欄の回数が所定の回数,例えば100回に到達する。すると,短縮検索キー埋め込み処理部234が短縮検索キーの埋め込み処理を実行する。なお, 1日(24時間以内)において,検索式パターン格納テーブルの回数欄の回数が所定の回数に到達した場合に,短縮検索キー埋め込み処理部234が短縮検索キーの埋め込み処理を実行してもよい。
(短縮検索キーの埋め込み処理の流れ)
図20は,本実施の形態において,図9で説明した短縮検索キーの埋め込み処理の流れを説明するフロー図である。この処理は,例えば,一定期間毎や,所定の検索回数に到達したときに実行される。
ステップS11:検索回数調査部233は,検索式パターン格納テーブルTの回数欄の数値が所定の回数以上か判定する。
検索式パターン格納テーブルTの回数欄の数値が所定の回数未満の場合(ステップS11/No),処理を終了する。検索式パターン格納テーブルTの回数欄の数値が所定の回数以上の場合(ステップS11/Yes),ステップS12に移る。
ステップS12:短縮検索キー埋め込み処理部234は,所定の回数以上の格納回数に該当する検索式パターン格納テーブルTの「短縮検索キーの埋め込み」欄を"作業中"に変更する。
ステップS13:短縮検索キー埋め込み処理部234は,所定の回数以上の格納回数に該当する検索式パターンにより関係づけられているCIの中から短縮検索キーを埋め込むCIを全て検索する。換言すれば,所定の回数以上の格納回数に該当する検索式パターンで辿られるCIの中から短縮検索キーを埋め込むべきCIを全て検索する。
ステップS14:短縮検索キー埋め込み処理部234は,検索したCIに短縮検索キーを埋め込む。
ステップS15:短縮検索キー埋め込み処理部234は,前記した所定の格納回数以上の格納回数に対応する「短縮検索キーの埋め込み」欄を"作業中"から"完了"に変更する。
(短縮検索キーに基づくCIの検索処理の流れ)
図21は,本実施の形態において,図9で説明した短縮検索キーに基づくCIの検索処理の流れを説明するフロー図である。
ステップS21:関係検索式変換部236は,入力された関係検索式における検索対象のCIを直接検索する検索式に変換する。
ステップS22:検索方式判定部235は,変換された検索式パターンが検索式パターン格納テーブルTに存在するか判定する。
ステップS23:検索方式判定部235は,検索式パターン格納テーブルTにおいて,検索式パターンに対応する「短縮検索キー」の埋め込み欄が"完了"に変更されているか判定する。完了に変更されている場合には(ステップS23/Yes),ステップS24に移る。
ステップS24:関係検索式変換部236は,入力された関係検索式における検索対象のCIを直接検索する直接検索式に変換する。
ステップS25:検索部15は,直接検索式の検索対象となるCIをFCMDB14から検索する。
なお,変換された検索式パターンが検索式パターン格納テーブルTに存在しない場合(ステップS22/No),ステップS26に移る。また,検索式パターン格納テーブルTにおいて,検索式パターンに対応する「短縮検索キー」の埋め込みが"完了"に変更されていない場合(ステップS23/No),ステップS26に移る。
ステップS26:検索部15は,入力された関係検索式により,検索対象のCIの関係検索を実行する。
以上説明した,第1の実施の形態によれば,構成管理データベースに短縮検索キーを格納し,以後,この短縮検索キーに基づき,構成要素の検索処理を実行するので,検索処理時間を短縮することができる。
[第2の実施の形態]
第2の実施の形態では,FCMDB14に格納されたCI,Relationshipの内容が更新された場合の処理について説明する。FCMDB14に格納されたCI,Relationshipの内容が更新されると,この更新に関係する短縮検索キーの内容を更新する必要がある。この更新が実行されないと,短縮検索キーに基づく直接検索処理の検索精度が低下する。図22,図23に基づき,具体的に説明する。
図22は,変更された属性情報を有するCIを示す図である。図22は,図5のサーバCIに対応する図である。
図23は,更新後の属性情報に置換したCIを示す図である。図23は,図14のソフトウェアCIに対応する図である。
例えば,図22に示すように,属性情報として,図2の管理対象20におけるサーバSVR1の名前SV1が名前SV1_01に変更された場合を想定する。この場合,短縮検索キーにサーバSVR1の名前SV1が含まれている場合,図23に示すように,この名前SV1を名前SV1_01に更新しなければならない。なぜなら,この更新が実行されないと,サーバ名SV1_01のサーバに関係するソフトウェアCIを検索対象とする検索指示を受け付けた場合,図9の検索部15は,このソフトウェアCIを検索することができなくなり,検索精度が低下するからである。
図9,図22,図23に基づき,属性情報の更新について説明する。
図9の第1のMDR11が,管理対象20のサーバやソフトウェアの属性情報が変更されたことを検出すると,更新された属性情報を有するCIを新たに作成し,データ更新処理部222に出力する。データ更新処理部222は,入力されたCIをデータ管理部230を介して,FCMDB14に格納する。
前記の例では,図22に示すように,識別記号itemID11のサーバCIの属性情報であるサーバ名が更新前の"SV1"(図5参照)から"SV1_01"に更新されている。
このとき,図9のデータ更新処理部222は,FCMDB14に格納された構成要素の属性情報が更新されたことを,短縮検索キー更新部237に通知する(図9の矢印(5-1))。短縮検索キー更新部237は,この通知に応答して,更新前の属性情報を有する短縮検索キーを有するCIをFCMDB14から検索し,検索したCIの更新前の属性情報を更新後の属性情報に置換する(図9の矢印(1-4))。
図22の例では,更新前の属性情報"SV1"(サーバ名)を有する短縮検索キーを有するCIは,識別記号itemID21,ID22で示すソフトウェアCIである。従って,短縮検索キー更新部237は,識別記号itemID21,ID22のソフトウェアCIの短縮検索キーの属性情報"SV1"(サーバ名)を"SV1_01"に更新する。
(他のCI,Relationshipの形式)
図24は,属性情報,短縮検索キーが更新されたテーブル形式のCI,Relationshipを示す図である。図24において,サーバCIテーブルTvにおける識別記号ID11で示すサーバCIのサーバ名が"SV_01"に更新されている。
図9の短縮検索キー更新部237は,この更新に対応して,図24に示したように,ソフトウェアCIテーブルTfの識別記号ID21,22で示すソフトウェアCIの短縮検索キーが"SV1_01"に更新する。
(短縮検索キーの更新処理の流れ)
図25は,本実施の形態において,図9で説明した短縮検索キーの更新処理の流れを説明する第1のフロー図である。
ステップS31:短縮検索キー更新部237は,CIの更新処理が実行されると,検索式パターン格納テーブルT4の「短縮検索キー」の埋め込み欄が"完了"に変更されている検索式パターンを検索する。図16の検索式パターン格納テーブルT4の例では,
検索式パターン"/システム/RLS/サーバ[@サーバ名]/RLS/ソフトウェア"が検索される。
ステップS32:短縮検索キー更新部237は,検索した検索式パターンの中に,更新されたCIの種類が含まれるか判定する。ここでCIの種類とは,例えば,システムCI,サーバCI,ソフトウェアCIである。図22の例では,更新されたCIの種類はサーバCIである。このサーバCIは,前記した検索式パターンに含まれる("/サーバ"参照)。
検索した検索式パターンの中に,更新されたCIの種類が含まれる場合(ステップS32/Yes)には,ステップS33に移る。
ステップS33:短縮検索キー更新部237は,更新された内容が検索した検索式パターンに含まれるか判定する。図22の例では,更新された内容は,"サーバ名"である。この更新された内容は,前記した検索式パターンに含まれる("[@サーバ名]"参照)。
ステップS34:短縮検索キー更新部237は,更新前の属性情報を有する短縮検索キーを有するCIの更新前の属性情報を更新後の属性情報に置換する。
以上説明したように,CIの属性情報が更新されても,この更新にあわせて,短縮検索キーを更新することができる。その結果,CIの検索精度が低下することがない。
(Relationshipの追加)
図2,図9,図16,図26,図27に基づき,Relationshipの追加について説明する。
図26は,新たに作成されたRelationshipを示す図である。図26は,図6のRelationshipに対応する図である。
図27は,短縮検索キーが埋め込まれたソフトウェアCIを示す図である。図27は,図14のソフトウェアCIに対応する図である。
図2の管理対象20のサーバやソフトウェアの関係が追加されることがある。例えば,図2の管理対象20におけるソフトウェアAが新たにサーバSVR1にインストールされた場合である。
図9の第1のMDR11が,管理対象20のサーバやソフトウェアの関係が追加(更新)されたことを検出すると,第1のCIと他の第2のCIとの関係を示すRelationshipを新たに作成し,データ更新処理部222に出力する。データ更新処理部222は,入力されたRelationshipをデータ管理部230を介して,FCMDB14に格納する。
前記の例では,図26に示すように,識別記号Rel7で示すRelationshipが新たに追加されている。図26の例では,第1のCIはソフトウェアCIであり,第2のCIはサーバCIである。この追加内容は,図14に示した識別記号itemID11のサーバCIと,図14に示した識別記号itemID24のソフトウェアCIとが関係することを意味している。換言すれば,サーバ名SV1にソフトウェアAがインストールされたことを意味している。
さらに,識別記号itemID11のサーバCIは,識別記号itemID01のシステムCIに関係している。すなわち,新たに格納されたRelationshipにより関係づけられたCIは,システムCIとサーバCIとソフトウェアCIである。
図9のデータ更新処理部222は,FCMDB14に,第1のCIと他の第2のCIとの関係を示すRelationshipとが新たに格納されたことを,短縮検索キー更新部237に通知する(図9の矢印(5-1))。
図9の短縮検索キー更新部237は,この通知に応答して,検索式パターン格納テーブルT4の「短縮検索キー」の埋め込み欄が"完了"に変更されている検索式パターンを検索する(図9の矢印(5-2))。
図16の検索式パターン格納テーブルT4の例では,
検索式パターン"/システム/RLS/サーバ[@サーバ名]/RLS/ソフトウェア"が検索される。この検索式パターンは,図9で検索式パターンSP1である。
そして,短縮検索キー更新部237は,この検索式パターンSP1における検索条件のCI間の第1の関係と,新たに格納されたRelationshipにより関係づけられたCI間の第2の関係とが対応するか判定する。
前記の例では,第1の関係とは,システムCIに関係するサーバCIに関係するソフトウェアCIである。
また,前記の例では,新たに格納されたRelationshipにより関係づけられたCIは,前記したように,システムCIとサーバCIとソフトウェアCIである。そのため,前記の例では,第2の関係とは,システムCIに関係するサーバCIに関係するソフトウェアCIである。
この場合,第1の関係と第2の関係が対応するので,短縮検索キー更新部237は,第1の関係の検索式パターンSP1(第1の関係に該当する検索式パターンSP1)における検索対象の構成要素と対応する新たに関係付けられたCIに,第1の関係の検索式パターンSP1の検索条件を短縮検索キーとして埋め込む(図9の矢印(1-4))。
前記の例では,新たに関係付けられたCIは,システムCIとサーバCIとソフトウェアCIである。そして,第1の関係の検索式パターンSP1における検索対象の構成要素は,ソフトウェアCIである。従って,短縮検索キー更新部237は,ソフトウェアCIの構成要素に,第1の関係の検索式パターンSP1における検索条件を埋め込む。このとき,第1の関係の検索式パターンSP1の検索条件に属性情報が含まれている場合には,属性情報も埋め込む。前記の例では,短縮検索キー更新部237は,検索式パターンの検索条件に属性情報としてサーバ名が含まれているので,ソフトウェアCIに関連するサーバCIのサーバ名を属性情報として埋め込む。
図27の例では,短縮検索キー更新部237は,図27に示すように,識別記号itemID24のソフトウェアCIに対して,短縮検索キーとして,
<System />
<Server サーバ名="SV1" />
を埋め込む。
(他のCI,Relationshipの形式)
図28は,図26,図27に対応する,Relationshipが更新されたテーブル形式のCI,Relationshipを示す図である。図28において,RelationshipテーブルTrの関連元"11",関連先"24"の行が追加されている。
図9の短縮検索キー更新部237は,この追加に対応して,図28に示したように,ソフトウェアCIテーブルTfの識別記号ID24で示すソフトウェアCIの短縮検索キーを,システム欄において(関係している)に更新し,サーバ名欄において"SV1"に更新する。
(短縮検索キーの更新処理の流れ)
図29は,本実施の形態において,図9で説明した短縮検索キーの更新処理の流れを説明する第2のフロー図である。
ステップS41:短縮検索キー更新部237は,CIの更新処理が実行されると,検索式パターン格納テーブルT4の「短縮検索キー」の埋め込み欄が"完了"に変更されている検索式パターンを検索する。この処理は,図25のステップS31と同様である。
ステップS42:短縮検索キー更新部237は,新たに格納されたRelationshipが検索式パターンに含まれるCI間の関係を表すか判定する。換言すれば,短縮検索キー更新部237は,検索された検索式パターンにおける検索条件のCI間の第1の関係と,新たに格納されたRelationshipにより関係づけられたCI間の第2の関係とが対応するか判定する。
新たに格納されたRelationshipが検索式パターンに含まれるCI間の関係を表す場合(ステップS42/Yes),ステップS43に移る。
ステップS43:短縮検索キー更新部237は,第1の関係の検索式パターンにおける検索対象の構成要素と対応する新たに関係付けられたCIに,第1の関係の検索式パターンの検索条件を短縮検索キーとして埋め込む。
なお,新たに格納されたRelationshipが検索式パターンに含まれるCI間の関係を表さない場合(ステップS42/No),ステップS43に移る。
(Relationshipの削除)
図30は,新たに作成されたRelationshipを示す図である。図30は,図6のRelationshipに対応する図である。
図31は,短縮検索キーが削除されたソフトウェアCIを示す図である。図31は,図14のソフトウェアCIに対応する図である。
図2,図9,図16,図30,図31に基づき,Relationshipの削除について説明する。図2の管理対象20のサーバやソフトウェアの関係が削除されることがある。例えば,ソフトウェアSOFT2がサーバSVR1からアンインストールされた場合である。
図9の第1のMDR11が,管理対象20のサーバやソフトウェアの関係が削除(更新)されたことを検出すると,FCMDB14に格納されている第1のCIと他の第2のCI間の関連を示すRelationshipが削除されたことを示すRelationshipを新たに作成し,データ更新処理部222に出力する。データ更新処理部222は,入力されたRelationshipをデータ管理部230を介して,FCMDB14に格納する。
前記の例では,図30に示すように,識別記号Rel5で示すRelationshipが新たに削除されている。この削除内容は,図5に示した識別記号itemID11のサーバCIと,図14に示した識別記号itemID22のソフトウェアCIとの関係が削除されたことを意味している。換言すれば,サーバ名SV1にインストールされていたソフトウェアBがアンストールされたことを意味している。
図9のデータ更新処理部222は, FCMDB14に格納されている第1のCIと他の第2のCI間の関連を示すRelationshipが削除されたことを,短縮検索キー更新部237に通知する(図9の矢印(5-1))。図30の例では,第1のCIはサーバCIであり,第2のCIはソフトウェアCIである。
図9の短縮検索キー更新部237は,この通知に応答して,検索式パターン格納テーブルT4の「短縮検索キー」の埋め込み欄が"完了"に変更されている検索式パターンを検索する(図9の矢印(5-2))。
図16の検索式パターン格納テーブルT4の例では,
検索式パターン"/システム/RLS/サーバ[@サーバ名]/RLS/ソフトウェア"が検索される。
そして,短縮検索キー更新部237は,この検索式パターンにおける検索条件のCI間の第1の関係に,削除されたRelationshipにより関係づけられていたCI間の第2の関係が含まれるか判定する。
前記の例では,第1の関係とは,システムCIに関係するサーバCIに関係するソフトウェアCIである。
また,前記の例では,削除されたRelationshipにより関係づけられていたCI間の第2の関係とは,サーバCIに関係するソフトウェアCIである。
この場合,第1の関係(システムCIに関係するサーバCIに関係するソフトウェアCI)に第2の関係(サーバCIに関係するソフトウェアCI)が含まれる。
図9の短縮検索キー更新部237は,第1の関係に第2の関係が含まれている場合,さらに,第1のCIの属性情報が,第2のCIに短縮検索キーとして埋め込まれているか判定する。ここで,第1のCIとは,第2のCIの親CIである。換言すれば,第2のCIは,第1のCIの子CIである。
前記の例では,第1のCIは,図5に示した識別記号itemID11のサーバCIであり,第2のCIは,図14に示した識別記号itemID22のソフトウェアCIである。さらに,図14に示した識別記号itemID22のソフトウェアCIには,図5に示した識別記号itemID11のサーバCIの属性情報(サーバ名SV1)が短縮検索キーとして埋め込まれている。
この場合,短縮検索キー更新部237は,第2のCIから既に埋め込まれている短縮検索キーを削除する。
図31の例では,短縮検索キー更新部237は,識別記号itemID22のソフトウェアCIから短縮検索キーを削除する(図9の矢印(1-4))。
(他のCI,Relationshipの形式)
図32は,図30,図31に対応する,Relationshipが削除されたテーブル形式のCI,Relationshipを示す図である。図32において,RelationshipテーブルTrの関連元"11",関連先"22"の行が削除されている。
図9の短縮検索キー更新部237は,この削除に対応して,図32に示したように,ソフトウェアCIテーブルTfの識別記号ID24で示すソフトウェアCIの短縮検索キーを,システム欄において(関係していない)に更新し,サーバ名欄において(関係していない)に更新する。
(短縮検索キーの削除処理の流れ)
図33は,本実施の形態において,図9で説明した,短縮検索キーの削除処理の流れを説明するフロー図である。
ステップS51:短縮検索キー更新部237は,CIの更新処理が実行されると,検索式パターン格納テーブルT4の「短縮検索キー」の埋め込み欄が"完了"に変更されている検索式パターンを検索する。この処理は,図25のステップS31と同様である。
ステップS52:短縮検索キー更新部237は,削除されたRelationshipが検索式パターンに含まれるCI間の関係を表すか判定する。換言すれば,この検索式パターンにおける検索条件のCI間の第1の関係に,削除されたRelationshipにより関係づけられていたCI間の第2の関係が含まれるか判定する。
削除されたRelationshipが検索式パターンに含まれるCI間の関係を表す場合(ステップS52/Yes),ステップS53に移る。
ステップS53:短縮検索キー更新部237は,削除されたRelationshipにより分離されるCIの中で,親CIの属性情報が子CIに短縮検索キーとして埋め込まれているか判定する。削除されたRelationshipにより分離されるCIの中で,親CIの属性情報が子CIに短縮検索キーとして埋め込まれている場合(ステップS53/Yes),ステップS54に移る。
ステップS54:短縮検索キー更新部237は,子CIの短縮検索キーを削除する。
なお,削除されたRelationshipが検索式パターンに含まれるCI間の関係を表さない場合(ステップS52/No),終了する。また,親CIの属性情報が子CIに短縮検索キーとして埋め込まれていない場合(ステップS53/No),終了する。
なお,CIの関係先CIが変更された場合も,短縮検索キー更新部237は,図33,図29で説明した処理を実行して,短縮検索キーの更新を実行する。例えば,図3において,ソフトウェアSOFT2がサーバSV1からアンインストールされ,サーバSV2にインストールされる場合を想定する。
ソフトウェアSOFT2がサーバSV1からアンインストールされると,ソフトウェアCI,Relationshipが更新される。すると,短縮検索キー更新部237は,図33で説明した処理を実行して,ソフトウェアSOFT2のCIから短縮検索キーを削除する。
次いで,ソフトウェアSOFT2がサーバSV2にインストールされると,ソフトウェアCI,Relationshipが更新される。すると,短縮検索キー更新部237は,図31で説明した処理を実行して,ソフトウェアSOFT2のCIに短縮検索キーを埋め込む。
第2の実施の形態では,FCMDB14に格納されたCI,Relationshipの内容が更新されると,この更新に関係する短縮検索キーの内容を更新することができる。その結果,検索精度の低下を抑制できる。
[他の実施の形態]
なお,第1,第2の実施の形態では,システムCIに関係するサーバCI,サーバCIに関係するソフトウェアCIの場合,すなわち3段関係のCIについて説明したが,4段以上の関係のCIであってよい。
図34は,他の実施の形態として4段以上の関係のCI構成を模式的に示す図である。図3と同様に,図34において,楕円形がCIを模式的に示し,矢印がRelationshipを模式的に示す。
図34においては,管理対象として部署A,B,CのCIと,部署Aに関係するサービスA,B,CのCIと,サービスAに関係するシステムA,B,CのCIとを示している。さらに,システムAのCIに関係するサーバA,BのCIと,ネットワーク装置A,BのCIと,ストレージA,BのCIと,その他の機器A,BのCIとを示している。さらに,サーバAのCIに関係するハードウェア関連品1A,1BのCIと,サーバAにインストール済みのソフトウェア1AのCIと,サーバAにインストール済みのパッチ1AのCIとを示している。さらに,ネットワーク装置A,BのCIに関係するハードウェア関連品2A,2BのCIと,その他の機器AのCIに関係するハードウェア関連品3Aとを示している。なお,図示は省略するが,図34のCI,Relationshipよりも多数のCI,Relationshipであってもよい。例えば,部署のCIは10件程度であり,各部署のCIには10件程度のサービスCIが関係し,各サービスのCIには5件程度のシステムCIが関係しているとする。さらに,各システムには20件程度のCIが関係し,このCIには100件程度のCIが関係していてもよい。
このような複数段構成のCIがFCMDB14に格納されている場合において,末端(図面右側)のCIを関連検索する場合,CI間の関係が長くなるので,検索時間が長くなる。本実施の形態のFCMDB管理装置によれば,検索処理時間が長くなり,かつ,検索回数が多くなる傾向にある検索対象のCIに短縮検索キーを埋め込む。そして,以後,この短縮検索キーに基づき検索処理を実行するので,検索時間が短縮する。
以上の実施の形態をまとめると,次の付記のとおりである。
(付記1)
構成要素の属性情報と構成要素間の関係を複数段階で示す関係要素情報とを格納するデータベースと,
複数の構成要素が検索条件で関係付けられた関係検索式の入力に応答して,前記データベースの中から,構成要素間の関係要素情報を辿り検索対象の構成要素を検索する制御部とを有し,
前記制御部は,
入力された第1の関係検索式のパターンを示す検索式パターンを生成し,前記生成した検索式パターンの検索処理に要した状態を測定し,前記状態が第1の要件を満たすか判定し,前記第1の要件を満たす場合,前記第1の要件を満たす検索式パターンにおける検索対象の構成要素に関係する検索条件を短縮検索キーとして前記データベースに格納し,
第2の関係検索式が入力されると,前記第2の関係検索式の検索式パターンが第2の要件を満たす場合,前記短縮検索キーに基づき,前記第2の関係検索式における検索対象の構成要素を検索する
ことを特徴とする構成情報管理装置。
(付記2)
付記1において,
前記関係検索式は,検索対象の構成要素と,前記検索対象の構成要素に関係する構成要素の検索条件と,前記検索条件をさらに特定する属性情報とが指定された関係検索式であって,
前記制御部は,入力された関係検索式から属性情報を削除した前記検索式パターンを生成する
ことを特徴とする構成情報管理装置。
(付記3)
付記2において,
前記構成情報管理装置は,さらに,前記関係検索式の検索式パターンを格納すると共に,前記検索式パターンの格納回数を格納する他のデータベースを有し,
前記制御部は,入力された関係検索式における構成要素間の関係要素情報を辿り検索対象の構成要素を検索した場合の検索処理時間を計測し,前記計測された検索処理時間が所定の時間以上の場合に,前記関係検索式の検索式パターンを前記他のデータベースに格納し,
さらに,前記他のデータベースに格納された前記関係検索式の検索式パターンの格納回数が所定の回数以上か判定し,前記所定回数以上の検索式パターンを前記第1の要件を満たす検索式パターンと判定する
ことを特徴とする構成情報管理装置。
(付記4)
付記3において,
前記制御部は,前記データベースに格納された構成要素であって,前記第1の要件を満たす検索式パターンにおける検索対象の構成要素に該当する構成要素に,当該検索対象の構成要素に関係する検索条件を短縮検索キーとして埋め込む
ことを特徴とする構成情報管理装置。
(付記5)
付記3において,
前記制御部は,前記他のデータベースにおける前記第2の関係検索式の検索式パターンの格納回数が前記所定の回数以上の場合,前記第2の関係検索式の検索式パターンが第2の要件を満たすと判定する
ことを特徴とする構成情報管理装置。
(付記6)
付記4において,
前記制御部は,前記データベースに格納された構成要素の属性情報が更新された場合,
前記更新前の属性情報を有する短縮検索キーを有する構成要素を検索し,前記検索した構成要素の前記更新前の属性情報を更新後の属性情報に置換する
ことを特徴とする構成情報管理装置。
(付記7)
付記4において,
前記制御部は,前記データベースに,構成要素と他の構成要素との関係を示す関係要素情報とが新たに格納された場合,
前記他のデータベースに格納された検索式パターンにおける検索条件の構成要素間の第1の関係と,前記新たに格納された関係要素情報により新たに関係づけられた構成要素間の第2の関係とが対応するか判定し,前記第1の関係と前記第2の関係が対応する場合,前記第1の関係の検索式パターンにおける検索対象の構成要素に対応する前記新たに関係付けられた構成要素に,前記第1の関係の検索式パターンの検索条件を短縮検索キーとして埋め込む
ことを特徴とする構成情報管理装置。
(付記8)
付記4において,
前記制御部は,前記データベースに格納されている第1の構成要素と他の第2の構成要素間の関連を示す関係要素情報が削除された場合,
前記他のデータベースに格納された検索式パターンにおける検索条件の構成要素間の第1の関係に,前記第1の構成要素と前記第2の構成要素間の関係を示す第2の関係が含まれるか判定し,前記第1の関係に前記第2の関係が含まれる場合,さらに,前記第1の構成要素の属性情報が,前記第2の構成要素に短縮検索キーとして埋め込まれているか判定し,前記第1の構成要素の属性情報が,前記第2の構成要素に短縮検索キーとして埋め込まれている場合,前記第2の構成要素から前記短縮検索キーを削除する
ことを特徴とする構成情報管理装置。
(付記9)
付記1において,
前記データベースは,前記構成要素および前記関係要素情報を,XML形式で記述された情報として格納する
ことを特徴とする構成情報管理装置。
(付記10)
付記1において,
前記データベースは,前記構成要素および前記関係要素情報を,テーブル形式で記述された情報として格納する
ことを特徴とする構成情報管理装置。
(付記11)
構成要素の属性情報と構成要素間の関係を複数段階で示す関係要素情報とを格納するデータベースと,
検索対象の構成要素と,前記検索対象の構成要素に関係する構成要素の検索条件と,前記検索条件をさらに特定する属性情報とが指定された関係検索式が入力されると,前記データベースに格納された構成要素の中から,前記検索条件に対応する構成要素間の関係要素情報を辿り前記検索対象の構成要素を検索する制御部とを有する構成情報管理装置において実行されるプログラムは,
入力された第1の関係検索式のパターンを示す検索式パターンを生成し,前記生成した検索式パターンの検索処理に要した状態を測定し,前記状態が第1の要件を満たすか判定し,前記第1の要件を満たす場合,前記第1の要件を満たす検索式パターンにおける検索対象の構成要素に関係する検索条件を短縮検索キーとして前記データベースに格納し,
第2の関係検索式が入力されると,前記第2の関係検索式の検索式パターンが第2の要件を満たす場合,前記短縮検索キーに基づき,前記第2の関係検索式における検索対象の構成要素を検索する
処理をコンピュータに実行させる
ことを特徴とする構成情報管理プログラム。
(付記12)
構成要素の属性情報と構成要素間の関係を複数段階で示す関係要素情報とを格納するデータベースと,
検索対象の構成要素と,前記検索対象の構成要素に関係する構成要素の検索条件と,前記検索条件をさらに特定する属性情報とが指定された関係検索式が入力されると,前記データベースに格納された構成要素の中から,前記検索条件に対応する構成要素間の関係要素情報を辿り前記検索対象の構成要素を検索する制御部とを有する構成情報管理装置において実行される検索方法は,
入力された第1の関係検索式のパターンを示す検索式パターンを生成し,前記生成した検索式パターンの検索処理に要した状態を測定し,前記状態が第1の要件を満たすか判定し,前記第1の要件を満たす場合,前記第1の要件を満たす検索式パターンにおける検索対象の構成要素に関係する検索条件を短縮検索キーとして前記データベースに格納し,
第2の関係検索式が入力されると,前記第2の関係検索式の検索式パターンが第2の要件を満たす場合,前記短縮検索キーに基づき,前記第2の関係検索式における検索対象の構成要素を検索する
ことを特徴とする検索方法。
1…検索システム,10…管理サーバ装置,101…検索インターフェイス部,11,12,13,16,41…MDR,15…検索部,121…CPU,122…メモリ,123…HDD,124…NIC,14…FCMDB,20…管理装置,200…FCMDB管理装置,201…CPU,202…メモリ,203…HDD,211…FFCMDB,212…検索式パターン格納DB,221…データ検索処理部,221…データ処理部,222…データ更新処理部,230…データ管理部,231…検索時間計測部,232…検索式パターン生成部,232…生成検索式パターン生成部,233…検索回数調査部,234…短縮検索キー埋め込み処理部,235…検索方式判定部,236…関係検索式変換部,237…短縮検索キー更新部,40…情報収集サーバ装置。

Claims (9)

  1. 構成要素の属性情報と構成要素間の関係を複数段階で示す関係要素情報とを格納するデータベースと,
    複数の構成要素が検索条件で関係付けられた関係検索式の入力に応答して,前記データベースの中から,構成要素間の関係要素情報を辿り検索対象の構成要素を検索する制御部とを有し,
    前記制御部は,
    入力された第1の関係検索式のパターンを示す検索式パターンを生成し,前記生成した検索式パターンの検索処理に要した状態を測定し,前記状態が第1の要件を満たすか判定し,前記第1の要件を満たす場合,前記第1の要件を満たす検索式パターンにおける検索対象の構成要素に関係する検索条件を短縮検索キーとして前記データベースに格納し,
    第2の関係検索式が入力されると,前記第2の関係検索式の検索式パターンが第2の要件を満たす場合,前記短縮検索キーに基づき,前記第2の関係検索式における検索対象の構成要素を検索する
    ことを特徴とする構成情報管理装置。
  2. 請求項1において,
    前記関係検索式は,検索対象の構成要素と,前記検索対象の構成要素に関係する構成要素の検索条件と,前記検索条件をさらに特定する属性情報とが指定された関係検索式であって,
    前記制御部は,入力された関係検索式から属性情報を削除した前記検索式パターンを生成する
    ことを特徴とする構成情報管理装置。
  3. 請求項2において,
    前記構成情報管理装置は,さらに,前記関係検索式の検索式パターンを格納すると共に,前記検索式パターンの格納回数を格納する他のデータベースを有し,
    前記制御部は,入力された関係検索式における構成要素間の関係要素情報を辿り検索対象の構成要素を検索した場合の検索処理時間を計測し,前記計測された検索処理時間が所定の時間以上の場合に,前記関係検索式の検索式パターンを前記他のデータベースに格納し,
    さらに,前記他のデータベースに格納された前記関係検索式の検索式パターンの格納回数が所定の回数以上か判定し,前記所定回数以上の検索式パターンを前記第1の要件を満たす検索式パターンと判定する
    ことを特徴とする構成情報管理装置。
  4. 請求項3において,
    前記制御部は,前記データベースに格納された構成要素であって,前記第1の要件を満たす検索式パターンにおける検索対象の構成要素に該当する構成要素に,当該検索対象の構成要素に関係する検索条件を短縮検索キーとして埋め込む
    ことを特徴とする構成情報管理装置。
  5. 請求項3において,
    前記制御部は,前記他のデータベースにおける前記第2の関係検索式の検索式パターンの格納回数が前記所定の回数以上の場合,前記第2の関係検索式の検索式パターンが第2の要件を満たすと判定する
    ことを特徴とする構成情報管理装置。
  6. 請求項4において,
    前記制御部は,前記データベースに格納された構成要素の属性情報が更新された場合,
    前記更新前の属性情報を有する短縮検索キーを有する構成要素を検索し,前記検索した構成要素の前記更新前の属性情報を更新後の属性情報に置換する
    ことを特徴とする構成情報管理装置。
  7. 請求項4において,
    前記制御部は,前記データベースに,構成要素と他の構成要素との関係を示す関係要素情報とが新たに格納された場合,
    前記他のデータベースに格納された検索式パターンにおける検索条件の構成要素間の第1の関係と,前記新たに格納された関係要素情報により新たに関係づけられた構成要素間の第2の関係とが対応するか判定し,前記第1の関係と前記第2の関係が対応する場合,前記第1の関係の検索式パターンにおける検索対象の構成要素に対応する前記新たに関係付けられた構成要素に,前記第1の関係の検索式パターンの検索条件を短縮検索キーとして埋め込む
    ことを特徴とする構成情報管理装置。
  8. 請求項4において,
    前記制御部は,前記データベースに格納されている第1の構成要素と他の第2の構成要素間の関連を示す関係要素情報が削除された場合,
    前記他のデータベースに格納された検索式パターンにおける検索条件の構成要素間の第1の関係に,前記第1の構成要素と前記第2の構成要素間の関係を示す第2の関係が含まれるか判定し,前記第1の関係に前記第2の関係が含まれる場合,さらに,前記第1の構成要素の属性情報が,前記第2の構成要素に短縮検索キーとして埋め込まれているか判定し,前記第1の構成要素の属性情報が,前記第2の構成要素に短縮検索キーとして埋め込まれている場合,前記第2の構成要素から前記短縮検索キーを削除する
    ことを特徴とする構成情報管理装置。
  9. 構成要素の属性情報と構成要素間の関係を複数段階で示す関係要素情報とを格納するデータベースと,
    検索対象の構成要素と,前記検索対象の構成要素に関係する構成要素の検索条件と,前記検索条件をさらに特定する属性情報とが指定された関係検索式が入力されると,前記データベースに格納された構成要素の中から,前記検索条件に対応する構成要素間の関係要素情報を辿り前記検索対象の構成要素を検索する制御部とを有する構成情報管理装置において実行されるプログラムは,
    入力された第1の関係検索式のパターンを示す検索式パターンを生成し,前記生成した検索式パターンの検索処理に要した状態を測定し,前記状態が第1の要件を満たすか判定し,前記第1の要件を満たす場合,前記第1の要件を満たす検索式パターンにおける検索対象の構成要素に関係する検索条件を短縮検索キーとして前記データベースに格納し,
    第2の関係検索式が入力されると,前記第2の関係検索式の検索式パターンが第2の要件を満たす場合,前記短縮検索キーに基づき,前記第2の関係検索式における検索対象の構成要素を検索する
    処理をコンピュータに実行させる
    ことを特徴とする構成情報管理プログラム。
JP2012059709A 2012-03-16 2012-03-16 構成情報管理装置,構成情報管理プログラム Expired - Fee Related JP5970882B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012059709A JP5970882B2 (ja) 2012-03-16 2012-03-16 構成情報管理装置,構成情報管理プログラム
US13/737,167 US9208196B2 (en) 2012-03-16 2013-01-09 Configuration information management apparatus and retrieval method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012059709A JP5970882B2 (ja) 2012-03-16 2012-03-16 構成情報管理装置,構成情報管理プログラム

Publications (2)

Publication Number Publication Date
JP2013196086A true JP2013196086A (ja) 2013-09-30
JP5970882B2 JP5970882B2 (ja) 2016-08-17

Family

ID=49158639

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012059709A Expired - Fee Related JP5970882B2 (ja) 2012-03-16 2012-03-16 構成情報管理装置,構成情報管理プログラム

Country Status (2)

Country Link
US (1) US9208196B2 (ja)
JP (1) JP5970882B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10210205B1 (en) * 2014-12-31 2019-02-19 Servicenow, Inc. System independent configuration management database identification system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05189286A (ja) * 1992-01-09 1993-07-30 Hitachi Ltd ディスクキャッシュ制御システムおよび制御方法
JP2006053724A (ja) * 2004-08-11 2006-02-23 Hitachi Ltd Xmlデータ管理方法
US20100115100A1 (en) * 2008-10-30 2010-05-06 Olga Tubman Federated configuration data management
US20110153565A1 (en) * 2009-12-22 2011-06-23 Fujitsu Limited Configuration information management device, distributed information management system and method
US20110218982A1 (en) * 2010-03-08 2011-09-08 Fujitsu Limited Configuration information management apparatus and dictionary generation method of configuration information management apparatus
JP2011257812A (ja) * 2010-06-04 2011-12-22 Fujitsu Ltd スキーマ定義生成装置、スキーマ定義生成方法およびスキーマ定義生成プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06161844A (ja) 1992-11-26 1994-06-10 Toshiba Corp データベース管理装置
JP2000222426A (ja) 1999-02-02 2000-08-11 Nippon Steel Corp データベースシステム及び記録媒体
JP3376996B2 (ja) 2000-12-11 2003-02-17 株式会社日立製作所 フルテキストサーチ方法
US8112451B1 (en) * 2005-01-20 2012-02-07 Emc Corporation Using intensional category assignment for a configuration management database
JP2009223369A (ja) 2008-03-13 2009-10-01 Nec Corp 関連文書検索方法、関連文書検索システムおよびプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05189286A (ja) * 1992-01-09 1993-07-30 Hitachi Ltd ディスクキャッシュ制御システムおよび制御方法
JP2006053724A (ja) * 2004-08-11 2006-02-23 Hitachi Ltd Xmlデータ管理方法
US20100115100A1 (en) * 2008-10-30 2010-05-06 Olga Tubman Federated configuration data management
US20110153565A1 (en) * 2009-12-22 2011-06-23 Fujitsu Limited Configuration information management device, distributed information management system and method
JP2011134005A (ja) * 2009-12-22 2011-07-07 Fujitsu Ltd 構成情報管理装置、分散情報管理システム、分散情報管理方法および分散情報管理プログラム
US20110218982A1 (en) * 2010-03-08 2011-09-08 Fujitsu Limited Configuration information management apparatus and dictionary generation method of configuration information management apparatus
JP2011186755A (ja) * 2010-03-08 2011-09-22 Fujitsu Ltd 構成情報管理装置、構成情報管理装置の辞書生成方法及び構成情報管理装置の辞書生成プログラム
JP2011257812A (ja) * 2010-06-04 2011-12-22 Fujitsu Ltd スキーマ定義生成装置、スキーマ定義生成方法およびスキーマ定義生成プログラム

Also Published As

Publication number Publication date
US9208196B2 (en) 2015-12-08
US20130246391A1 (en) 2013-09-19
JP5970882B2 (ja) 2016-08-17

Similar Documents

Publication Publication Date Title
US8676568B2 (en) Information processing apparatus and message extraction method
US8255899B2 (en) Techniques for upgrade dependency management
US10621211B2 (en) Language tag management on international data storage
JP5532053B2 (ja) 運用管理装置及び運用管理方法
US20130086224A1 (en) Method, apparatus, and program for supporting creation and management of metadata for correcting problem in dynamic web application
US7900094B2 (en) Method, system and computer program for facilitating the analysis of error messages
US11487742B2 (en) Consistency checks between database systems
JP2004030221A (ja) 変更対象テーブル自動検出方法
US20110107198A1 (en) Information processing apparatus, storage medium, and information processing method
US10678864B2 (en) Analysis model preparing system, programming apparatus, and analysis model preparing method
JP2018514886A (ja) 多数の重複するソースからの大量の時間データの集計
JP5970882B2 (ja) 構成情報管理装置,構成情報管理プログラム
CN104462461A (zh) 对表单进行排查空值处理的方法及装置
JP6229454B2 (ja) ソフトウェア資産管理装置、ソフトウェア資産管理方法、及びソフトウェア資産管理プログラム
US8825707B2 (en) Generating BPEL control flows
JP2010128870A (ja) データ処理装置
JP7381290B2 (ja) 計算機システム及びデータの管理方法
CN116150236A (zh) 数据同步方法及装置、电子设备、计算机可读存储介质
JP6798340B2 (ja) 運用仕様分析装置、運用仕様分析方法及び運用仕様分析プログラム
JP4810113B2 (ja) データベースチューニング装置及びデータベースチューニング方法並びにプログラム
JP2024019840A (ja) 計算機システム及びシステム更新支援方法
US20140244574A1 (en) Enabling dynamic polymorphic asset creation and reuse
JP2021117863A (ja) 管理装置、管理システムおよび管理方法
JP6075113B2 (ja) 修正差分検出プログラム、修正差分検出方法及び修正差分検出装置
JP6209931B2 (ja) ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160329

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160526

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160614

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160627

R150 Certificate of patent or registration of utility model

Ref document number: 5970882

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees