JP5257455B2 - 2相コミットによるデータ更新同期方法及びシステム - Google Patents

2相コミットによるデータ更新同期方法及びシステム Download PDF

Info

Publication number
JP5257455B2
JP5257455B2 JP2010529512A JP2010529512A JP5257455B2 JP 5257455 B2 JP5257455 B2 JP 5257455B2 JP 2010529512 A JP2010529512 A JP 2010529512A JP 2010529512 A JP2010529512 A JP 2010529512A JP 5257455 B2 JP5257455 B2 JP 5257455B2
Authority
JP
Japan
Prior art keywords
database
update
priority
data
processing policy
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.)
Expired - Fee Related
Application number
JP2010529512A
Other languages
English (en)
Other versions
JPWO2010032278A1 (ja
Inventor
健司 森本
邦昭 嶋田
正純 松原
安英 松本
裕二 和田
幸洋 渡辺
昭 勝野
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
Publication of JPWO2010032278A1 publication Critical patent/JPWO2010032278A1/ja
Application granted granted Critical
Publication of JP5257455B2 publication Critical patent/JP5257455B2/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/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2336Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
    • G06F16/2343Locking methods, e.g. distributed locking or locking implementation details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1865Transactional file systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、分散データベースに係り、特に、情報システムの構成情報を保持する複数の要素データベースを仮想的に統合管理する構成情報統合データベースシステムに関する。
一般に、分散データベースにおいてデータを更新する際には、主サイトのデータベースと従属サイトのデータベースとの間で同期をとり、サイト間のデータの整合性を維持する必要がある。分散データベースにおいては、このデータ更新の同期は、2相コミットと呼ばれる方式で行なわれる。
2相コミットにおいては、第1相と第2相に分けてコミット制御を行う。第1相においては、主サイトのデータベースが従属サイトのデータベースに更新依頼を送る。第2相においては、主サイトのデータベースが従属サイトのデータベースから更新可否の回答を受け取り、それらの回答結果に基づいてコミットかアボートかを決定し、その決定結果を従属サイトに通知する。従属サイトでは、主サイトから受け取った決定結果に従ってコミットまたはロールバックを実行する。この2相コミットにおいては、従属サイトのデータベースは、更新依頼を受け取った時点から主サイトから上記決定結果を通知されるまでの間、データを更新可能であっても、コミットもロールバックも可能な“セキュア状態”を保つことが求められる。
図12は、通常の分散データベースにおける2相コミットの第1相の方法を示す模式図である。図12においては、主サイトのデータベースは統合データベース1001となっており、従属サイトのデータベースは要素データベース1002(1002−1、1002−2)となっている。
図12に示すように、第1相においては、まず、統合データベース1001は、要素データベース1002−1と要素データベース1002−2に対して更新依頼を通知し、コミット可能か問い合わせる(図12(A))。要素データベース1002−1は、更新の準備をし、更新が可能であれば、セキュア状態を保ちながら、「コミット希望」を統合データベース1001に回答する。要素データベース1002−2は、更新が不可であれば、「ロールバック希望」を統合データベース1001に回答する。
第2相において、統合データベース1001は、要素データベース1002の回答に基づいて、コミットまたはロールバックを決定する。この決定において、1つでもロールバックの回答があれば、ロールバックを決定する。統合データベース1001は、決定結果を要素データベース1002に通知する。要素データベースは、統合データベース1001からの通知に従い、コミットまたはロールバックの処理を行なう。図12の例の場合は、統合データベース1001はロールバックを決定し、要素データベース1002−1、1002−2にロールバックを通知する。要素データベース1002−1、2002−2は、通知を受け取ると、ロールバックの処理を実行する。
このように、通常の分散データベースにおいては、データを更新する際に、2相コミットにより、主サイトのデータベースと従属サイトのデータベースとの間で同期を取ることで、各サイトに保持されるデータ間の整合性を維持するようにしている。
ところが、ITシステム(Information Technology)の構成情報を仮想的に統合管理するFCMDB(Federated Configuration Management Database)システムにおいては、2相コミットを適用することは不可能である。
ここで、FCMDBシステムについて説明する。FCMDBシステムは、ITIL(Information Technology Infrastructure Library)に準拠したデータベースシステムである。図13は、FCMDBシステムの全体構成を示す図である。
FCMDBシステム10は、複数のMDR(Management Data Repository)12(MDR1、MDR2、・・・、MDRn)とそれらのMDR12を仮想的に統合するFCMDB11を備える分散データベースである。MDR12は、ITシステムの管理単位であるCI(Configuration Item)と各CI間を関係付けて管理するCMDB(Configuration Management Database)である。また、FCMDB11自体もCMDBである。CMDBにおいては、CIは、ITシステムを構成するリソース(resource)に関する構成情報(属性情報)として実装される。CMDBは各CI間を関係付けて管理しているが、この関係をリレーションシップ(relationship)と呼ぶ。
図14は、FCMDBシステムにおける同一リソースの構成情報の分布例を示す図である。
FCMDBシステムにおいては、複数のMDRに同一リソースの構成情報が重複して登録されている場合がある。図14に示すFCMDBシステム10においては、サーバA(Server A)に関する構成情報がMDR12−1(MDR1)とMDR12−2(MDR2)に登録されている。MDR12−1は、サーバ30(A)の構成情報として、CPU(Central Processing Unit)31、メモリ(Memory)32及び電源(@power)33の情報を管理している。MDR12−2は、サーバAの構成情報として、CPU31、HDD(Hard Disk Drive)34及び電源33の情報を管理している。したがって、この例では、サーバAの構成要素の内、CPU31と電源33が、MDR12−1とMDR12−2に重複して登録されている。ここで、サーバ30、CPU31、メモリ32及びHDD34は個別のCIである。
FCMDB11は、MDR12からの情報登録要求を受けて、リソースの構成情報を管理する。FCMDB11は、構成情報の内容(例えば「値」)そのものではなく、構成情報の位置情報(ポインタ)のみを管理する場合もある。FCMDB11は、MDR12−1とMDR12−2が管理しているリソースの各項目について、(1)重複して管理されている項目があるか判定し、(2)重複する項目があれば、どのMDR12に管理されている情報をその項目の「主情報」として保持するかどうか判断し、(3)どのMDR12が主(主情報を管理するMDR)であり、どのMDR12が副(副情報を管理するMDR)であるかのメタ情報を保持する。
FCMDBシステム10から情報を読み出して利用するものは「クライアント」と呼ばれる。また、MDR12の後方には、MDR12に対してデータを投入するデータプロバイダが存在する。これは、典型的には運用管理ミドルウェアである。運用管理ミドルウェアは、帳票で管理されているデータを読み取ったり、ネットワークを介して実際の管理対象マシンを検出・監視したりする。
図14に模式的に示すように、FCMDBシステムにおいては、同一リソースの構成情報を保持する複数のMDRが存在する。このため、あるMDRからFCMDBに対して、あるリソースの構成情報の更新依頼があった場合、リソースの構成情報を保持する他のMDRの構成情報も更新する必要がある。この更新を同期して行なおうとする場合、FCMDBシステムにおいては、2相コミットを利用できない。これは、FCMDBシステムにおいては、全てのMDRが分散データベースへの参加を考慮しているとは必ずしも限らないからである。このため、下記(1)、(2)のような問題が発生する。
(1)FCMDBからの更新依頼に対して、セキュア状態を保ちつつ返答できないMDRが存在する。
これは、FCMDBシステムが分散データベースのように統一された環境ではなく、既存のデータストア(データベースでない場合もある)の寄せ集めであるためである。このため、FCMDBシステムにおいては、更新可能かどうかをセキュアに調べられないMDR(返答を優先すると、ロールバックできない状態でデータ更新を実行してしまう、逆にセキュア状態を優先するとデータ更新処理に着手できず返答もできなくなってしまうMDR)が存在する。
(2)FCMDBからの更新処理要求に対して、MDRの返答が大幅に遅い場合がある。
これは、MDRの返答に人間の判断が介在する場合があるからである。2相コミットの場合、更新処理要求からの応答を一定時間以上待ち、その時間を過ぎた場合には、更新処理要求を送った参加者が異常であると判断するようになっているが、このような返答待ちは処理効率を悪化させるので好ましくない。
図15は、FCMDBシステムにおけるMDRの情報更新(データ更新)に2相コミットが適用できない要因を示す模式図である。
2相コミットの第1相において、FCMDB11は、MDR12−1とMDR12−2に更新してもよいかどうかを問い合わせる(図15(A))。この例では、図15(B)に示すように、FCMDB11から更新処理の依頼があった時点でMDR12−1は非セキュア状態にある(上記理由(1)に該当)。このため、MDR12−1は、「もう更新してしまい、情報を元に戻すことができない」旨をFCMDB11に返答する。また、MDR12−2は、情報更新の処理に人手の作業が必要であり、FCMDB11に応答するまでに大幅な時間を要する(上記理由(2)に該当)。
以上述べたように、FCMDBシステムにおいては、データ(情報)更新の同期に2相コミットを利用することはできない。
尚、通常の分散データベースにおいて、2相コミットによるデータ更新の処理時間を短縮する方法に関する発明が知られている(特許文献1参照)。
特開平6−119227号公報
本発明の目的は、更新依頼時にセキュア状態を保つことが不可能な要素データベースを含む構成情報統合データベースシステムにおいて、データの更新時に同期を取り、システムのデータの整合性を保持できるようにすることである。
本発明は、管理対象となる情報システムの構成情報を保持する複数の要素データベースと、複数の要素データベースを統合管理する統合データベースを備える統合管理データベースシステムを前提とする。
本発明の統合管理データベースシステムの前記統合データベースは、前記複数の要素データベースに保持されている構成情報を一元的に管理する構成情報データベースと、構成情報データベースに登録されている構成情報の各データについて、予め処理方針を登録する処理方針登録手段と、前記構成情報データベースに格納されているデータを更新する際、前記処理方針登録手段に登録されている更新対象のデータに関する処理方針を参照し、更新すべきデータを保持している優先度の高い要素データベースのみに更新依頼を送信する更新依頼手段と、更新依頼手段が更新依頼を送信した要素データベースからの回答を受信し、受信した回答結果に基づいて、更新をコミットするか否かを決定する更新可否決定手段と、更新可否決定手段の決定結果にしたがって、前記更新データを保持している全ての要素データベースにコミットまたはロールバックを指示する更新処理通信手段と、を備える。
本発明の統合管理データベースシステムによれば、構成情報の各データについて予め処理方針を登録しておき、データを更新する際には、そのデータに対して登録されている処理方針を参照し、優先度の高い要素データベースのみに更新依頼を通知する。このため、処理方針を適切に設定することで、セキュア状態を保持できない要素データベースに対して更新依頼を通知することを回避できる。したがって、統合管理データベースシステムのデータを、2相コミットを適用して同期更新することができる。
FCMDBが、2相コミットの第1相において、優先MDRとその他MDRに対して更新依頼を行う場合の動作を説明する図である。 FCMDBが、2相コミットの第1相において、参考MDRのみに対して更新依頼を行う場合の動作を説明する図である。 優先MDRが複数ある場合に、2相コミットの第1相が失敗する例を説明する図である。 本実施形態のFCMDBシステムの全体構成を示す図である。 FCMDBの更新処理部の構成を示す図である。 構成情報の表現形式の一例を示す図である。 図6においてXML形式で表現されている構成情報のデータ構造を示す図である。 図7に示す構成情報のメタ情報(構成情報登録元メタ情報)のデータ構造を示す図である。 優先度DBに格納される優先度情報のデータ構造を示す図である。 FCMDBシステムの更新処理部の全体的な処理の流れを示すフローチャートである。 更新可否判定部による2相コミット制御の処理を示すフローチャートである。 通常の分散データベースにおける2相コミットの第1相の方法を示す模式図である。 FCMDBシステムの全体構成を示す図である。 FCMDBシステムにおける同一リソースの構成情報の分布例を示す図である。 FCMDBシステムにおけるMDRの情報更新に2相コミットが適用できない要因を示す模式図である。
以下、図面を参照しながら、本発明の実施形態について説明する。
まず、本実施形態の原理について説明する。
[実施形態の原理]
本実施形態は、データの同期更新において、下記(1)、(2)のFCMDBシステム特有のデータ格納形態を考慮した2相コミットを採用する。

(1)FCMDBシステムにおいては、複数のMDRに格納されたデータが厳密に一致する必要がない場合もある。
(2)FCMDBでデータを持つことができ、最悪でも、このデータさえ正しければよい場合もある。
本実施形態のFCMDBシステムにおいて、FCMDB及びMDRは、CI単位で、ITシステムを構成する資源に関する情報(構成情報)を管理する。CIはレコードを含み、レコードはプロパティを含む。すなわち、プロパティはレコードの一部であり、レコードはCIの一部となっている。このため、FCMDB及びMDRに格納されるデータは、粒度の細かい方から、プロパティ(属性)、レコード、CIとなる。
{2相コミットにおける問い合せ・集計の際の処理方針}
本実施形態では、CI、レコード、プロパティの各データ単位に処理方針を設定する。そして、2相コミットにおける問い合せ・集計の際には、CI毎・レコード毎・プロパティ毎の処理方針を参照する。このとき、より細かなデータ単位に対する処理方針を先に参照するようにする。
ここで、処理方針とは、「どのMDRを優先とし、どのMDRを参考とするかについて、予め定められた方針」である。処理方針は、「MDR1を優先」というように確定的に記述される場合、「マスタMDRを優先」というように役割を指定してやや抽象的に記述される場合、さらには、数式の組み合わせによって記述される場合もある。以下の説明では、処理方針という用語が、「優先度情報」という別の用語で表現される場合もある。これら両者は、本質的には同義であり、「何をするか」に着目したのが処理方針である。本実施形態では、各データ単位について、MDRを「優先」、「参考」、「その他」に序列化しており、この序列化に関する情報が優先度情報である。すなわち、優先度情報は、MDRを序列化するための順位に着目した情報である。本実施形態では、「何をするか」を判断する際、優先度情報を利用する。
処理方針は、例えば、以下のようなものである。
(1)「マスタとなっているMDR(マスタMDR)の意見優先/参考」、「特定のMDRの意見優先/参考」、「FCMDBの意見優先/参考」
ここで、マスタとは、1つのプロパティに対して複数の情報源があるとき、FCMDBにおいて主とされている情報源のことである。マスタは、動的に変化しうる。また、意見優先すべきMDRを「優先MDR」、意見参考すべきMDRを「参考MDR」と定義する。
(2)優先度を数値化する。例えば、マスタMDRのポイント、特定MDRのポイント、FCMDBのポイント、及び優先度の値を計算するための計算式を予め決定しておき、各MDRについて、予め決定された計算式を用いて優先度の値を算出する。そして、例えば、優先度が最大のMDR、または優先度が所定値以上のMDRを意見優先すべきMDR(優先MDR)に決定する。
(3)優先MDRまたは参考MDR以外のMDR(その他MDRと定義する)については、2相コミットの第1相において問い合せは行わず、第2相において処理の確定結果のみを通知する。
{2相コミットの第1相の回答の選択肢}
本実施形態においては、第1相の関係者(MDR)の回答に、「Don´t Care(どちらでもよい)」を加える。あるMDRの更新の可否に関わらず、全体の処理を進めてもよい場合、MDRは「Don´t Care」と返答する。これは、更新に時間がかかる場合に有効である。
{2相コミットの処理方針}
上述したようにして、2相コミットに参加するMDRを、「優先MDR」、「参考MDR」または「その他MDR」に分類し、各MDR別に処理方針を定める。
(1)優先MDRの意見優先
FCMDBは優先MDRに対して更新依頼を送り、その返答が1つでも更新不可であった場合は、全体としてロールバックを行う。優先MDRが1つだった場合、その優先MDRはセキュア状態を保つ必要がない。これは、優先MDRが1つだけの場合、FCMDBはその優先MDRの返答結果を、そのまま、処理方針とするからである。
(2)参考MDRの意見参考
FCMDBは参考MDRに更新依頼を送った場合、その返答を参考とするが、返答が更新不可の場合でも、全体としてコミットしてよい。これは、優先MDRが無い場合や、優先MDRが「Don´t Care」を返した場合に意味を持つ。どちらの場合でも、優先MDRが更新不可を返すことはないからである。
(3)その他MDR(優先MDRまたは参考MDRのいずれでもないMDR)
FCMDBは、その他MDRに対しては、更新依頼を送らず、第2相における処理決定の通知のみを行う。その他MDRはセキュア状態を保つ必要がない。換言するならば、第1相においてその他MDRには更新依頼が送られてこないので、その他MDRはセキュア状態を保つ必要はない。
{処理方針を数式で記述した場合の優先MDRの決定方法}
本実施形態では、上述したように、マスタMDRのポイント、特定MDRのポイント及びFCMDMのポイントを予め定める。例えば、マスタMDRのポイント=50、MDR1のポイント=30、FCMDBのポイント=20とする(この場合、MDR1以外のMDRのポイントは“0”と定められる)。また、優先度の算出に使用する計算式も予め決めておく。
例えば、計算式を、
優先度=Master×2+MDRany+FCMDB ・・・(1)
Master:マスタMDRのポイントを表す記号
MDRany:任意のMDRのポイントを表す記号
FCMDB:FCMDBのポイントを表す記号
とする。
上記式(1)を用いて各MDRnの優先度を算出する際には、式(1)中のMDRanyをMDRnのポイントに置き換える。また、式(1)において、FCMDBは、FCMDBの内部に設けられるMDR(構成情報データベース)を意味する。
上記以外にも、計算式は、より広い/狭いデータ単位で定義されるものを用い、ポイントは、Master=50、MDR1=30、FCMDB=20に指定する。または、ポイントは、より広い/狭いデータ単位で定義されるものを用い、計算式は上記式(1)を指定するなどの方法が考えられる。また、優先度算出の計算式には、加算と乗算以外にも減算を使用することも可能である。
優先MDR、参考MDRの判定方法としては、例えば、
・優先度が所定値n1以上のMDRは「優先MDR」、それ以外で、優先度が所定値n2(n2<n1)以上のMDRは「参考MDR」とする
・優先度が高いほうから2つを優先MDR、次の3つを参考MDRとする(但し、この判定の際には、更新対象のデータを持たないMDRは除外して数える)
などが考えられる。
{データ単位と処理方針}
FCMDB及びMDRに格納されるデータ単位は、細かいほうから、プロパティ、レコード、CIとなる。この場合、細かい単位で(例えば、プロパティ単位)で設定された『MDRnの意見優先』を採用した上で、より広いデータ単位の処理方針を参照」という方針も可能とする。これは、例えば、あるレコードの全プロパティについて、そのレコードと同様の処理方針を適用する場合、各プロパティの処理方針は「より広いデータ単位の処理方針を参照」とするように設定しておけばよい。
CIの各データ単位に対する処理方針の設定パターンには種々の形態が考えられる。例えば、
(1)プロパティのみに設定
(2)レコードのみに設定
(3)CIのみに設定
(4)プロパティとレコードに設定
(5)プロパティ、レコード及びCIの全てに設定
などの設定形態がある。
{優先MDR、参考MDR、その他MDRの決定の仕方}
MDRが、優先MDR、参考MDR、またはその他MDRのどれかになるかは、事前の方針に沿って静的・動的に決定される。例えば、あるMDRについて、そのMDRのデータがFCMDBシステムのデータと一致する必要がある場合には、そのMDRが「優先MDR」となるように方針を立てる。また、FCMDBシステムのデータと一致する必要がない場合には、そのMDRが「参考MDR」または「その他MDR」となるようにする。実際には、FCMDBの性質上、参考MDRまたはその他MDRとなるMDRの方が多くなる。
{非セキュアMDRの救済}
優先MDRが複数有り、その中に、2相コミットの第1相において非セキュア状態となっているMDRが含まれている場合、データの同期更新が破綻する可能性がある。破綻しそうな場合の扱いとしては、
・破綻しないように方針を立てるものとし、特に扱わない
・破綻しそうな場合には警告を出し、人手での解決を促す
などの方策が考えられる。
{優先MDR・参考MDRの用い方}
ここでは、CIとして「管理ユーザ」を取上げ、そのプロパティとして「連絡先メールアドレス」がある場合を考える。FCMDBシステムにおいて、このCIを格納するMDRとして、下記(1)〜(3)のMDRが存在するものとする。
(1)人事情報管理MDR
人事マスタとなる情報なので、優先MDRに設定する。
(2)運用管理MDR
障害時の連絡先となる情報であり重要であるが、人事マスタより優先度は低いので参考MDRに設定する。
(3)資産管理MDR
連絡先として用いることはないので、その他MDRに設定する。
{2相コミットの動作}
<第1相>
a)優先MDRも参考MDRもない場合には、コミットとみなし、第2相に移行する。
b)優先MDRないしは参考MDRが1つ以上有る場合
(1)FCMDBは優先MDR及び参考MDRに更新依頼を出し、それらから更新可否の返答を受け取る。
(2)上記返答結果を分析し、更新可否を判定する。
(3)コミットまたはロールバックを決定し、第2相に移行する。
<第2相>
a)コミットの場合
優先・参考・その他MDRに、更新通知を送る。
b)ロールバックの場合
優先・参考MDRに、ロールバック通知を送る。
ここで、本実施形態における2相コミットの第1相の動作例を説明する
図1は、FCMDBが、2相コミットの第1相において、優先MDRとその他MDRに対して更新依頼を行う場合の動作を説明する図である。
図1において、MDR12−1は「優先MDR」、MDR12−2は「その他MDR」となっている。この場合、図1(A)に示すように、FCMDB11は、優先MDR12−1に対しては「更新してもよいか」の問い合せを行うが、その他MDR12−2に対しては問い合せを行わない。図1(B)に示すように、FCMDB11から更新依頼の問い合せを受け取った優先MDR12−1は、FCMDB11に対して「同意(コミット)」、「反対(ロールバック)」または「どうでもいい(Don´t Care)」のいずれかを返答する。
図2は、FCMDBが、2相コミットの第1相において、参考MDRのみに対して更新依頼を行う場合の動作を説明する図である。
図2において、MDR12−1、12−2は、共に、「参考MDR」となっている。この場合、図2(A)に示すように、FCMDM11は、参考MDR12−1、12−2に対して更新してもよいか」の問い合せを行う。図2(B)に示すように、参考MDR12−1、12−2は、上記問い合せに対して、FCMDB11に対して「同意(コミット)」、「反対(ロールバック)」または「どうでもいい(Don´t Care)」のいずれかを返答する。
上述したように、参考MDRは、「更新可」の返答に対し、FCMDB11から「ロールバック」を指示されてもデータの更新を行ってよい。このため、参考MDR12−1、12−2はセキュア状態を保つ必要がない。
図3は、優先MDRが複数ある場合に、2相コミットの第1相が失敗する例を説明する図である。
図3において、MDR12−1、12−2は、共に、優先MDRとなっている。図3(A)に示すように、FCMDB11は上述した図1(A)の場合と同様にして、優先MDR12−1、12−2に対して「更新してもよいか」を問い合せる。このとき、図3(B)に示すように、優先MDR12−1は非セキュア状態となっていると、FCMDB11に対して「もう更新してしまいデータを元に戻すことはできない」旨の返答を行う。一方、優先MDR12−2は、FCMDB11に対して「ロールバック希望」の返答を行う。この場合、FCMDB11は、優先MDR−1を救済するために、図3(C)に示すように、「MDR12−1(MDR1)でロールバックが不可能である」旨の警告を管理者に通知する。
[実施形態の構成]
{システムの全体構成}
図4は、本実施形態のFCMDBシステムの全体構成を示す図である。
図4に示すFCMDBシステム20は、FCMDB100とn個のMDR200(MDR1、MDR2、MDR3、・・・MDRn)を備えている。
FCMDB100は、構成情報DB(構成情報データベース)110、更新・登録入力部120、登録処理部130、更新処理部140、構成情報保持部150、検索入力部160及び検索処理部170を備えている。
構成情報データベース110は、n個のMDR200を統合管理するデータベースである。構成情報データベース110は、上述した図13に示す方式で、MDR200−1(MDR1)、MDR200−2(MDR2)、MDR200−3(MDR3)、・・・MDR200−n(MDRn)に重複して格納されているCIの構成情報を統合管理している。
構成情報データベース110自体も、FCMDBシステム20内に設けられたMDRである。構成情報データベース110は、「優先MDR」、「参考MDR」または「その他MDR」のいずれにもなりうる。ここで、FCMDBシステム20を分散データベースとみなした場合、FCMDB100は統合データベース、n個のMDR及びFCMDB100内の構成情報データベース110は要素データベースとみなすことができる。
更新・登録入力部120は、全てのMDR200からCIに関する構成情報(属性情報)の更新・登録要求を受け付け、適宜、それらの要求を各処理部に振り分ける。更新・登録入力部120は、構成情報の登録要求を登録処理部130に送る。また、構成情報の更新要求を更新処理部140に送る。
登録処理部130は、更新・登録入力部120から構成情報の登録要求を受け取ると、登録情報を構成情報保持部150に送る。
更新処理部140は、更新・登録入力部120から構成情報の更新要求を受け取ると、上述した2相コミットプロトコルを用いて、構成情報を保持している優先MDRと参考MDRの情報(データ)を同期更新させる。また、更新処理部140は、優先度入力者210から構成情報の優先度情報を受け取り、この優先度情報を内部に保持する。
構成情報保持部150は、構成情報データベース110に対する構成情報の登録・更新を管理する。構成情報保持部150は、登録処理部130から、構成情報データベース110に登録する構成情報を受け取り、構成情報を構成情報データベース110に登録する。また、更新処理部140から2相コミット制御を受けて、構成情報データベース110に登録されている構成情報の更新を行う。
検索入力部160は、検索ユーザ220から構成情報の検索要求を受け付ける。検索入力部160は、検索要求で指示されている構成情報の検索を検索処理部170に依頼する。
検索処理部170は、検索入力部160から依頼された構成情報を構成情報データベース110から読み出す。そして、その構成情報を検索ユーザ220に送る。
{FCMDM100の更新処理部140の構成}
図5は、FCMDB100の更新処理部140の構成を示す図である。
図5に示すように、更新処理部140は、優先度入力部1401、優先度データベース(優先度DB)1402、更新入力部1403、優先度判定部1404、更新依頼通信部1405、更新可否判定部1406、更新処理通信部1407を備えている。
優先度入力部1401は、優先度入力者210(図4参照)が入力した優先度情報を入力し、その優先度情報を優先度DB1402に登録する。この優先度情報は、システムが管理している各CIに関する「処理方針」である。この処理方針は、CI単位、レコード単位、プロパティ単位で設定可能である。
優先度DB1402は、優先度入力部1401により管理されるデータベースであり、システムが管理している各CIについて、その優先度情報(処理方針)を格納している。
更新入力部1403は、各MDRi(i=1〜n)からCIの更新要求を入力する。そして、その更新要求のあったCIを優先度判定部1404に通知する。
優先度判定部1404は、更新入力部1403からCIを通知されると、優先度DB1402に登録されているCIの優先度情報(処理方針)を参照し、CIを保持しているMDRk(k=1〜n)について、各MDRkが、「優先MDR」、「参考MDR」、または「その他MDR」のいずれであるかを決定する。そして、その決定結果を更新依頼通信部1405に通知する。
更新依頼通信部1405は、上記更新要求のあったCIに対する2相コミットプロトコルによるデータ更新の内、第1相の処理を担当する。更新依頼通信部1405は、優先度判定部1404から受け取った情報(上記決定結果)を基に、優先MDR及び参考MDRに決定されたMDRm(m=1〜n)に対して更新依頼を送信する。
更新可否判定部1406は、更新依頼通信部1405が更新依頼を送ったMDRから返答を受け取る。この返答は、「コミット」、「ロールバック」または「Don´t Care」のいずれかである。更新可否判定部1406は、MDRから受け取った返答結果を基に、データ更新をコミットまたはロールバックするか決定する。そして、その決定結果を更新処理通信部1407に通知する。
更新処理通信部1407は、更新可否判定部1406からコミット決定の通知を受け取ると、優先MDR、参考MDR、その他MDR及び構成情報保持部150にコミットを指示する。また、更新可否判定部1406からロールバック決定の通知を受け取ると、優先MDR、参考MDR及び構成情報保持部150にロールバックを指示する。
{構成情報の表現形式}
図6は、構成情報の表現形式の一例を示す図である。
図6は、3種類のCPU1、2、3を実装可能なサーバAの構成情報を、XML(extensible markup language)形式で表現したサーバAの構成情報を示す図である。サーバAのCIは、name(名前),model(モデル),id(識別子)という3種類のプロパティ(属性)を含むレコードを備えている。各CPU1、2、3のCIは、name,model,socket(CPUソケット),id(識別子),frequency(動作周波数)という5種類のプロパティを含むレコードを備えている。
{構成情報のデータ構造}
図7は、図6においてXML形式で表現されている構成情報のデータ構造を示す図である。
図6に示すXML形式で記述された構成情報は、図7に示すようなデータ構造を有する表として、構成情報データベース110内に格納される。図7に示す表300の各行が構成情報の各CIに該当している。表300の各行には、データクラス301、データID302及び属性情報303の各項目が格納される。表300の1行目にはサーバAのCI310が、2行目〜4行目には、それぞれ、CPU1、2、3のCI320、330、340が格納される。ここで、データクラス301は各CIの分類を示す項目である。表300の1行目のCI310は「サーバ」に分類される。表300の2〜4行目にそれぞれ格納されるCI310〜340は、いずれも、「CPU」に分類される。データID302は、CIの識別IDを示す項目である。属性情報303は、各CIが備える全ての属性情報を格納する項目である。属性情報303の項目欄に格納されている属性情報の集合は、CIのレコードに該当する。図7に示す表300に格納されるCI310〜340は、いずれも、1レコードのみを備えるCIの例である。本発明のCIは、複数のレコードを備える構成であってもよい。この場合、CIは、例えば、複数の属性情報303を備えるようなデータ構造となる。
{構成情報登録元メタ情報}
図8は、図7に示す構成情報のメタ情報(構成情報登録元メタ情報)のデータ構造を示す図である。
構成情報登録元メタ情報は、構成情報の登録元を示すメタ情報である。この構成情報登録元メタ情報は、構成情報データベース110に保持される。図8に示す構成情報登録元メタ情報400は、各行に、データID401と構成情報登録元402が格納される表となっている。構成情報登録元メタ情報400のデータID401は、構成情報300のデータID302に等しい。すなわち、構成情報登録元メタ情報400と構成情報300は、データIDによりリンクされている。
構成情報登録元402は、同一行内のデータID401を有するCIの構成情報を保持しているマスタMDRを示す情報である。図8に示す構成情報登録元メタ情報400においては、その1行目にサーバAの構成情報登録元メタ情報410が、2〜4行目に、それぞれ、CPU1(name=“1”)、2(name=“2”)、3(name=“3”)の構成情報登録元メタ情報420、430、440が格納されている。尚、構成情報とは、「CIが存在するという情報も含む、CIの構成情報」である。
{優先度情報}
図9は、優先度DB1402に格納される優先度情報のデータ構造を示す図である。
優先度情報は、構成情報の各データ単位に処理方針を設定する情報である。図9に示す優先度情報500は、CIに対して処理方針を設定している優先度情報の例である。
図9に示す例では、優先度情報500は、各行に、データID501と処理方針502という2つの項目が格納される形式の表となっている。データID501は、構成情報300のデータID302に等しい。すなわち、構成情報300と優先度情報500は、データIDによってリンクがとられている。処理方針502は、同一行内のデータID501を有するCIのデータに対する処理方針である。プロパティに対して処理方針を設定する場合の優先度情報は、データIDの項目が「データID」もしくは「データID+レコード名+プロパティ名」となるだけで、その他の構造は優先度情報500と同様である。また、レコードに対して処理方針を設定する場合の優先度情報は、データIDの項目が「データID」もしくは「データID+レコード名」となるだけで、その他の構造は優先度情報500と同様である。すなわち、図9に示す表において、データIDの項目内容を変更するだけで、CI、レコード、またはプロパティの処理方針を設定することが可能である。
図9に示す優先度情報500においては、1行目にサーバAに分類されるCIの処理方針が、2、3、4行目に、それぞれ、CPU1、2、3に分類されるCIの処理方針が格納されている。図9に示す例では、サーバAに分類されるCIの処理方針502は「FCMDB参考」となっている。これは、サーバAに分類されるCIのデータ更新においては、FCMDB100の構成情報データベース110を参考MDRとすることを意味している。また、CPU1に分類されるCIの処理方針502は「マスタMDR参考」となっている。これは、CPU1に分類されるCIのデータ更新においては、マスタMDRを参考MDRとすることを意味している。また、CPU2に分類されるCIの処理方針502は「MDR1優先」となっている。これは、CPU2に分類されるCIのデータ更新において、MDR1を優先MDRとすることを意味している。また、CPU3に分類されるCIの処理方針502は「Master=1,MDR1=5,FCMDB=5で、Master+MDRany+FCMDBを評価し、値の一番大きいものを優先」となっている。このように、図9に示す例では、CPU3に分類されるCIの処理方針のみが「各MDRの優先度の数値算出式と、その式を用いて算出された各MDRの優先度の数値に基づいて優先MDRを決定する条件の記述」となっており、その他のCIは「確定的な記述」または「役割指定による、やや抽象的な記述」となっている。
図9に示す例では、サーバAに分類されるCIの処理方針とCPU1に分類されるCIの処理方針は、それぞれ、「FCMDB参考」、「マスタMDR参考」となっており、優先MDRが存在しない例となっている。また、CPU2に分類されるCIの処理方針は、「MDR1優先」となっており、MDR1(MDR200−1)のみを優先MDRに決定するような確定的な記載となっている。また、CPU3に分類されるCIの処理方針に記述されている優先度算出式においては、MDR1以外のMDRのポイントはマスタとなっていない場合は“0”、マスタとなっている場合は“1”であり、MDR1とFCMDB100のMDR(構成情報保持部150)のポイントはCIを管理している場合に基底として“5”、さらに2つのMDRの内、マスタとなっているMDRのポイントを“1”高く設定するように定義している。このため、CPU3に分類されるCIの処理方針を適用すると、MDR1またはFCMDB100のMDR(構成情報保持部150)がCIを管理している場合はこれらの内、マスタMDRとなっているMDRの方が優先MDRに設定され、どちらもマスタMDRとなっていない場合は両方が優先MDRに設定され、さらにどちらもCIを管理していない場合はその他のMDRでマスタであるものが優先MDRに設定される。
上述したように、処理方針の設定方式は、図9に示す例に限定されるものではない。図9に示す例以外にも、以下のような設定方式が考えられる。
(1)レコードのみに処理方針を設定
(2)プロパティのみに処理方針を設定
(3)プロパティとレコードに処理方針を設定
(4)プロパティ、レコード及びCIの全てに処理方針を設定
本実施形態においては、あるデータ単位に処理方針が設定されていない場合には、そのデータ単位の処理方針には、より広い(より上位の)データ単位の処理方針が適用される。例えば、あるプロパティの処理方針が設定されていない場合には、そのプロパティの処理方針として、そのプロパティを要素として含むレコードの処理方針を用いる。この場合、そのレコードにも処理方針が設定されていない場合には、そのレコードを内包するCIの処理方針が、上記プロパティの処理方針となる。
[動作]
上記構成のFCMDBシステムにおける構成情報の更新処理を説明する。
FCMDBシステム20においては、ある構成情報が、複数のMDR200に重複して登録されている場合がある。また、複数のMDR200の中には、セキュア状態を保ちながらデータを更新することができないものも存在する。したがって、FCMDBシステム20内の複数のMDR200は分散データベースを構築しているが、この分散データベースにおけるデータ更新は、通常の2相コミット制御では不可能である。
本実施形態のFCMDBシステム20は、セキュア状態を保つことができないMDR200を前記参考MDRまたは前記その他MDRに設定することで、上述したような本実施形態特有の2相コミット制御により、構成情報の更新を可能としている。本実施形態においては、この2相コミット制御は、FCMDB100内の更新処理部140によって実施される。本実施形態においては、セキュア状態を保つことができないMDR200は、参考MDRまたはその他MDRに設定される。この設定は、優先度入力者210が行う。優先度入力者210は、優先度情報を更新処理部140に入力する。優先度情報は、更新処理部140の優先度入力部1401に入力され、優先度入力部1401により優先度DB1402に登録される。構成情報の単位は、粒度の大きい順に、CI、レコード、プロパティに分類される。CIは1または複数のレコードから構成され、レコードは1または複数のプロパティから構成される。上述したように、本実施形態の優先度情報は、「データID」と「処理方針」から構成される。
{更新処理部140の全体フロー}
図10は、FCMDBシステム20の更新処理部140の全体的な処理の流れを示すフローチャートである。更新処理部140は、更新入力部1403が各MDR200−i(i=1〜n)からCIの構成情報の更新要求を入力する毎に、図10のフローチャートに示す処理を実行する。
まず、優先度判定部1404は、優先度DB1402に登録されている更新対象となるプロパティの処理方針を参照する(ステップS11)。そして、プロパティの処理方針が優先度DB1402に存在し、かつ、その処理方針が終端であるか判断する(ステップS12)。ここで、「処理方針が終端か」とは、処理方針が「より広いデータ単位の処理方針を参照する」と設定されていないことを意味する。換言すれば、「処理方針が存在し、終端である」ということは、処理方針が「より広いデータ単位の処理方針を参照する」という内容ではなく、例えば、「FCMDB参考」、「MDR1優先」などのように、優先/参考となるFCMDまたはMDRが具体的に指示されている内容であることを意味する。
ステップS12において、優先度判定部1404は、更新対象のプロパティの処理方針が存在しないか、または、その処理方針が終端でない場合には(ステップS12、no)ステップS13に進む。一方、「プロパティの処理方針が存在し、かつ、終端である」ならば(ステップS12、yes)ステップS18に進む。
ステップS13において、優先度判定部1404は、優先度DB1402に登録されている更新対象となるレコード(更新対象のプロパティを含むレコード)の処理方針を参照する。そして、レコードの処理方針が存在し、かつ、その処理方針が終端であるか判断する(ステップS14)。優先度判定部1404は、レコードの処理方針が存在しないか、または存在してもレコードの処理方針が終端でないと判断すれば(ステップS14、no)ステップS15に進み、レコードの処理方針が存在し、かつ、レコードの処理方針が終端であれば(ステップS14、yes)ステップS18に進む。
ステップS15において、優先度判定部1404は、優先度DB1402に登録されている更新対象となる項目(更新対象のプロパティを含む項目(CI))の処理方針を参照する。そして、更新対象となる項目の処理方針が存在するか判断する(ステップS16)。優先度判定部1404は、更新対象となる項目の処理方針が存在しないと判断すれば(ステップS16、no)ステップS17に進み、更新対象となる項目の処理方針が存在すれば(ステップS16、yes)ステップS18に進む。
ステップS17において、優先度判定部1404は、更新対象のプロパティの処理方針を「FCMDB優先」に決定する。そして、ステップS18に進む。
ステップ18において、優先度判定部1404は、ステップS12、S14もしくはS16において、「処理方針が存在し、かつ、その処理方針が終端である」と判断した場合には、終端となっている処理方針を適用して優先・参考となるMDRを決定する。この場合、その処理方針が、例えば、「MDRi(i=1〜n)優先」や「FCMDB参考」などのように、優先または参考となるMDRを直接的に記載している場合、または、ステップS17において処理方針を「FCMDB優先」とした場合には、それらの処理方針を採用して優先または参考となるMDRを決定する。一方、プロパティ、レコードまたはCIの処理方針が、数値条件(優先度算出式とその算出結果に基づく優先または参考となるMDRの決定)となっている場合には、優先度を算出し、その算出結果と条件を適用して優先・参考となるMDRを決定する。
優先度判定部1404は、ステップS18の処理が終了すると、優先・参考となるMDRはFCMDB(FCMDBの構成情報データベース)のみか判断する(ステップS19)。そして、優先・参考となるMDRがFCMDBのみと判断すると(ステップS19、yes)ステップS21に進み、優先・参考となるMDRがFCMDBのみでないと判断すると(ステップS19、no)ステップS20に進む。
ステップS20において、更新依頼通信部1405は、優先・参考となるMDR及びFCMDBに更新依頼を送り、その返答を待ち、ステップS21に進む。
ステップS21において、更新可否判定部1406は、更新依頼通信部1405が更新依頼を送ったMDRまたはFCMDBからの返答を受け取り、その返答結果を基に、更新のコミットまたはロールバックを決定する。そして、更新に関係する全てのMDR(FCMDBの構成情報保持部も含む)に上記決定結果(コミットまたはロールバック)を通知し(ステップS22)、本フローチャートの処理を終了する。
{更新可否判定部1406のフロー}
図11は、更新可否判定部1406による2相コミット制御の処理(図10のステップS21の処理の詳細)を示すフローチャートである。
更新可否判定部1406は、更新依頼通信部1405が更新依頼を送った優先・参考MDRの全てから返答を受信する(ステップS40)。更新可否判定部1406は、返答したMDRの中に優先MDRが存在するか判断し(ステップS41)、存在すれば(ステップS41、yes)ステップS42に進み、存在しなければステップS47に進む。
ステップS42において、更新可否判定部1406は、全ての優先MDRの返答を参照する。そして、返答が全て“Don´t Care”であるか判断する(ステップS43)。そして、返答が全て“Don´t Care”であるのでなければ(ステップS43、no)ステップS44に進み、全て“Don´t Care”であれば(ステップS43、yes)ステップS47に進む。
ステップS44において、更新可否判定部1406は、優先MDRの返答の中に“更新不可”が存在するか判断する。そして、“更新不可”が存在すれば(ステップS44、yes)、更新処理に関係する全てのMDR200とFCMDB100の構成情報保持部150に対して更新処理のロールバックを通知し(ステップS45)、本フローチャートの処理を終了する。一方、ステップS44において、優先MDRの返答の中に“更新不可”が存在しないと判断すれば(ステップS44、no)、更新処理に関係する全てのMDR200とFCMDB100の構成情報保持部150に対して更新処理のコミットを通知し(ステップS46)、本フローチャートの処理を終了する。
このように、更新可否判定部1406は、優先MDRの返答の中に1つでも“更新不可”があれば、ロールバックを更新処理に関係する全てのMDR200とFCMDB100の構成情報保持部150に通知する。
ステップS47において、更新可否判定部1406は参考MDRの返答を参照する。そして、返答の中に“更新不可”が存在するか判断し(ステップS48)、“更新不可”が存在すれば(ステップS48、yes)、更新処理に関係する全てのMDR200とFCMDB100の構成情報保持部150に対して更新処理のロールバックを通知し(ステップS49)、本フローチャートの処理を終了する。一方、“更新不可”が存在しなければ(ステップS48、no)、更新処理に関係する全てのMDR200とFCMDB100の構成情報保持部150に対して更新処理のコミットを通知し(ステップS50)、本フローチャートの処理を終了する。
このように、更新可否判定部1406は、「更新処理の参加者の中に優先MDRが存在しない」または「更新処理の参加者の中に優先MDRが存在しても、優先MDRの全ての返答が“Don´t Care”である」場合には、参考MDRの返答を参照する。そして、参考MDRの返答の中に1つでも“更新不可”があれば、ロールバックを更新処理に関係する全てのMDR200とFCMDB100の構成情報保持部150に通知する。
以上説明したように、本実施形態においては、非優先に設定されたMDRは、FCMDBからの更新依頼に対して、セキュア状態を保ちながら返答をする必要がない。このため、本本実施形態においては、構成情報データベースシステムに、FCMDBからの更新依頼に対してセキュア状態を保ちながら返答をすることができないMDRが含まれていても、データの更新時に同期をとって、データの整合性を保持することが可能となる。また、本本実施形態においては、あるデータについて、優先MDRが1つであった場合、そのデータを更新する際には、いずれのMDRもセキュア状態を保つ必要がなくなる。また、本本実施形態においては、更新依頼を受け取ってから返答するまでに大幅に時間がかりそうなMDRがあった場合には、そのMDRが早期に「Don´t Care」を返答するようにすることで、更新処理全体の所要時間を短縮することが可能となる。
本発明は、上述した実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲内で種々に変形して実施することができる。
本発明は、ITIL準拠の情報システムの構成管理に好適である。

Claims (10)

  1. 情報システムの構成情報を保持する複数の第1データベースと、該複数の第1データベースを管理する管理データベースシステムであって、
    前記複数の第1データベースに保持されている構成情報を一元的に管理する第2データベースと、
    該第2データベースに登録されている構成情報の各データについての処理方針を登録する処理方針登録手段と、
    前記第2データベースに格納されているデータを更新する際、前記処理方針登録手段に登録されている更新対象のデータに関する処理方針を参照し、該更新すべきデータを保持している優先度の高い第1データベースに更新依頼を送信する更新依頼手段と、
    該更新依頼手段が更新依頼を送信した第1データベースからの回答を受信し、該受信した回答のうち優先度が最も高い第1データベースからの回答に基づいて、更新をコミットするか否かを決定する更新可否決定手段と、
    該更新可否決定手段の決定にしたがって、前記更新すべきデータを保持している全ての第1データベースにコミットまたはロールバックを指示する更新処理通信手段と、
    を備え、
    前記処理方針は、各第1データベースが保持している更新データの優先度に応じて、第1データベース及び第2データベースを、優先要素データベース、参考要素データベースまたはその他要素データベースに分類する情報であり、優先度算出用の計算式と該優先度に基づいて優先要素データベースまたは参考要素データベースを判定する条件を含み、
    前記更新依頼手段は、更新データの処理方針に従って、各第1データベースを、優先要素データベース、参考要素データベース、またはその他要素データベースに決定し、該優先要素データベースと該参考要素データベースのみに更新依頼を通知することを特徴とする管理データベースシステム。
  2. 前記処理方針は、システム内において主の情報源となっている構成情報を保持している第1データベースが優先要素データベースまたは参考要素データベースとなるように設定されることを特徴とする請求項記載の管理データベースシステム。
  3. 情報システムの構成情報を保持する複数の第1データベースと、該複数の第1データベースを管理する管理データベースシステムであって、
    前記複数の第1データベースに保持されている構成情報を一元的に管理する第2データベースと、
    該第2データベースに登録されている構成情報の各データについての処理方針を登録する処理方針登録手段と、
    前記第2データベースに格納されているデータを更新する際、前記処理方針登録手段に登録されている更新対象のデータに関する処理方針を参照し、該更新すべきデータを保持している優先度の高い第1データベースに更新依頼を送信する更新依頼手段と、
    該更新依頼手段が更新依頼を送信した第1データベースからの回答を受信し、該受信した回答のうち優先度が最も高い第1データベースからの回答に基づいて、更新をコミットするか否かを決定する更新可否決定手段と、
    該更新可否決定手段の決定にしたがって、前記更新すべきデータを保持している全ての第1データベースにコミットまたはロールバックを指示する更新処理通信手段と、
    を備え、
    前記処理方針は、各第1データベースが保持している更新データの優先度に応じて、第1データベース及び第2データベースを、優先要素データベース、参考要素データベースまたはその他要素データベースに分類する情報であり、
    前記更新依頼手段は、更新データの処理方針に従って、各第1データベースを、優先要素データベース、参考要素データベース、またはその他要素データベースに決定し、該優先要素データベースと該参考要素データベースのみに更新依頼を通知し、
    前記第1データベースの回答の選択肢には、コミット希望、ロールバック希望及びDon´t Careの3種類があり、
    前記更新可否決定手段は、Don´t Careの回答は無視して、その他の回答を基に、データ更新処理をコミットまたはロールバックするかを決定することを特徴とする管理データベースシステム。
  4. 前記構成情報の管理単位である構成項目のデータは、上位から順に、構成項目、レコード、プロパティの各データ単位に分かれており、前記処理方針は、該データ単位毎に個別に設定可能であることを特徴とする請求項1記載の管理データベースシステム。
  5. あるデータがシステムのデータと一致する必要がある場合には、そのデータを保持する第1データベースが優先要素データベースとなるように、そのデータの処理方針を設定することを特徴とする請求項記載の管理データベースシステム。
  6. 情報システムの構成情報を保持する複数の第1データベースと、該複数の第1データベースを管理する管理データベースシステムであって、
    前記複数の第1データベースに保持されている構成情報を一元的に管理する第2データベースと、
    該第2データベースに構成情報を書き込む構成情報保持部と、
    該第2データベースに管理されている各構成情報に関する処理方針を含む優先度情報を受け付ける優先度入力部と、
    該優先度入力部が受け付けた優先度情報を保持する優先度データベースと、
    第1データベースからデータの更新・登録を受け付ける更新登録・入力部と、
    該更新登録・入力部が受け付けた更新データについて、該優先度データベースに保持されている該更新データの処理方針を参照して、該更新データの更新を依頼すべき第1データベースを決定する優先度判定部と、
    該優先度判定部により前記更新を依頼するように決定された第1データベースに対して、前記更新データの更新依頼を通知する更新依頼通信部と、
    該更新依頼通知部から更新依頼通知を受け取った第1データベースから回答を受け取り、該回答のうち優先度が最も高い第1データベースからの回答を基に、前記構成情報の更新処理のコミットまたはロールバックを決定する更新可否決定部と、
    該更新可否決定部の決定を基に、システム内の第1データベース及び前記第2データベースに対して前記構成情報のコミットまたはロールバックを通知する更新処理通信部と、
    を備え、
    前記処理方針は、各第1データベースが保持している更新データの優先度に応じて、第1データベース及び第2データベースを、優先要素データベース、参考要素データベースまたはその他要素データベースに分類する情報であり、優先度算出用の計算式と該優先度に基づいて優先要素データベースまたは参考要素データベースを判定する条件を含み、
    前記優先度判定部は、前記更新データの処理方針に従って、各第1データベースを、優先要素データベース、参考要素データベース、またはその他要素データベースに決定し、該優先要素データベースと該参考要素データベースのみに前記更新を依頼するように決定することを特徴とする管理データベースシステム。
  7. 情報システムの構成情報を保持する複数の第1データベースと、該複数の第1データベースを管理する管理データベースシステムの更新同期方法であって、
    前記複数の第1データベースに保持されている構成情報を一元的に管理する第2データベースに登録されている構成情報の各データについての処理方針を登録する処理方針登録ステップと、
    前記第2データベースに格納されているデータを更新する際、該更新すべきデータに関する処理方針を参照し、該更新すべきデータを保持している優先度の高い第1データベースに更新依頼を送信する更新依頼ステップと、
    該更新依頼ステップにおいて更新依頼を送信した第1データベースから回答を受信し、該受信した回答のうち優先度が最も高い第1データベースからの回答に基づいて、更新をコミットするか否かを決定する更新可否決定ステップと、
    該更新可否決定ステップでの決定にしたがって、前記更新すべきデータを保持している全ての第1データベースにコミットまたはロールバックを指示する更新処理通信ステップと、
    を備え、
    前記処理方針は、各第1データベースが保持している更新データの優先度に応じて、第1データベース及び第2データベースを、優先要素データベース、参考要素データベースまたはその他要素データベースに分類する情報であり、優先度算出用の計算式と該優先度に基づいて優先要素データベースまたは参考要素データベースを判定する条件を含み、
    前記更新依頼ステップは、更新データの処理方針に従って、各第1データベースを、優先要素データベース、参考要素データベース、またはその他要素データベースに決定し、該優先要素データベースと該参考要素データベースのみに更新依頼を通知することを特徴とする更新同期方法。
  8. 情報システムの構成情報を保持する複数の第1データベースを管理する統合データベース装置であって、
    前記複数の第1データベースに保持されている構成情報を一元的に管理する第2データベースと、
    該第2データベースに登録されている構成情報の各データについての処理方針を登録する処理方針登録手段と、
    前記第2データベースに格納されているデータを更新する際、前記処理方針登録手段に登録されている該更新すべきデータに関する処理方針を参照し、該更新すべきデータを保持している優先度の高い第1データベースに更新依頼を送信する更新依頼手段と、
    該更新依頼手段が更新依頼を送信した第1データベースからの回答を受信し、該受信した回答のうち優先度が最も高い第1データベースからの回答に基づいて、更新をコミットするか否かを決定する更新可否決定手段と、
    該更新可否決定手段の決定にしたがって、前記更新すべきデータを保持している全ての第1データベースにコミットまたはロールバックを指示する更新処理通信手段と、
    を備え、
    前記処理方針は、各第1データベースが保持している更新データの優先度に応じて、第1データベース及び第2データベースを、優先要素データベース、参考要素データベースまたはその他要素データベースに分類する情報であり、優先度算出用の計算式と該優先度に基づいて優先要素データベースまたは参考要素データベースを判定する条件を含み、
    前記更新依頼手段は、更新データの処理方針に従って、各第1データベースを、優先要素データベース、参考要素データベース、またはその他要素データベースに決定し、該優先要素データベースと該参考要素データベースのみに更新依頼を通知することを特徴とする統合データベース装置。
  9. 前記更新可否決定手段は、前記優先度が最も高い第1データベースからの回答が更新をコミットしてもしなくてもどちらでもよい場合、2番目に優先度が高い第1データベースからの回答に基づいて、更新をコミットするか否かを決定することを特徴とする請求項1記載の管理データベースシステム
  10. 情報システムの構成情報を保持する複数の要素データベースと、該複数の要素データベースを管理する管理データベースシステムであって、
    前記複数の要素データベースに保持されている構成情報を一元的に管理する構成情報データベースと、
    該構成情報データベースに登録されている構成情報の各データについて、予め処理方針を登録する処理方針登録手段と、
    前記構成情報データベースに格納されているデータを更新する際、前記処理方針登録手段に登録されている更新対象のデータに関する処理方針を参照し、該更新すべきデータを保持している優先度の高い要素データベースに更新依頼を送信する更新依頼手段と、
    該更新依頼手段が更新依頼を送信した要素データベースからの回答を受信し、該受信した回答に基づいて、更新をコミットするか否かを決定する更新可否決定手段と、
    該更新可否決定手段の決定にしたがって、前記更新すべきデータを保持している全ての要素データベースにコミットまたはロールバックを指示する更新処理通信手段と、
    を備え、
    前記処理方針は、各要素データベースが保持している更新データの優先度に応じて、要素データベース及び構成情報データベースを、優先要素データベース、参考要素データベースまたはその他要素データベースに分類する情報であり、さらに、優先度算出用の計算式と該優先度に基づいて優先要素データベースまたは参考要素データベースを判定する条件を含み、
    前記更新依頼手段は、更新データの処理方針に従って、各要素データベースを、優先要素データベース、参考要素データベース、またはその他要素データベースに決定し、該優先要素データベースと該参考要素データベースに更新依頼を通知することを特徴とする管理データベースシステム。
JP2010529512A 2008-09-17 2008-09-17 2相コミットによるデータ更新同期方法及びシステム Expired - Fee Related JP5257455B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/002561 WO2010032278A1 (ja) 2008-09-17 2008-09-17 2相コミットによるデータ更新同期方法及びシステム

Publications (2)

Publication Number Publication Date
JPWO2010032278A1 JPWO2010032278A1 (ja) 2012-02-02
JP5257455B2 true JP5257455B2 (ja) 2013-08-07

Family

ID=42039132

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010529512A Expired - Fee Related JP5257455B2 (ja) 2008-09-17 2008-09-17 2相コミットによるデータ更新同期方法及びシステム

Country Status (4)

Country Link
US (1) US8572047B2 (ja)
EP (1) EP2330511B1 (ja)
JP (1) JP5257455B2 (ja)
WO (1) WO2010032278A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8489547B2 (en) * 2009-07-30 2013-07-16 International Business Machines Corporation System and method for transforming configuration data items in a configuration management database
US9020905B2 (en) * 2009-10-31 2015-04-28 International Business Machines Corporation Synchronizing database and non-database resources without a commit coordinator
US8266126B2 (en) * 2010-03-24 2012-09-11 Matrixx Software, Inc. System with multiple conditional commit databases
US8682846B2 (en) * 2011-09-09 2014-03-25 Hewlett-Packard Development Company, L.P. Content item reconciliation
JP5982940B2 (ja) * 2012-03-28 2016-08-31 富士通株式会社 管理プログラム、管理装置および情報処理システム
JP5966765B2 (ja) * 2012-08-22 2016-08-10 富士通株式会社 情報処理システム、中継装置、情報処理プログラム、及び情報処理方法
US9910881B1 (en) 2013-12-12 2018-03-06 Amazon Technologies, Inc. Maintaining versions of control plane data for a network-based service control plane
US9747356B2 (en) 2014-01-23 2017-08-29 Oracle International Corporation Eager replication of uncommitted transactions
US20190102841A1 (en) 2017-10-04 2019-04-04 Servicenow, Inc. Mapping engine configurations with task managed workflows and grid user interfaces
EP3467642B1 (en) * 2017-10-04 2023-10-04 ServiceNow, Inc. Guided configuration item class creation in a remote network management platform

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295871A (ja) * 1994-04-15 1995-11-10 Internatl Business Mach Corp <Ibm> データベース・アクセス効率の向上方法及びシステム
JPH1185595A (ja) * 1997-09-16 1999-03-30 Oki Electric Ind Co Ltd 分散データベース管理システムおよび分散データベース管理方法
JPH11219309A (ja) * 1997-09-29 1999-08-10 Ricoh Co Ltd 分散型データベースシステムの一貫性管理方法およびその方法の各工程をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5193162A (en) * 1989-11-06 1993-03-09 Unisys Corporation Cache memory with data compaction for use in the audit trail of a data processing system having record locking capabilities
JP3293839B2 (ja) * 1990-05-16 2002-06-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 作業ユニットに合わせてコミット範囲を調整するコンピュータ・システム
JPH0460850A (ja) * 1990-06-29 1992-02-26 Nec Corp トランザクション終了処理方式
JPH0611927A (ja) 1992-06-24 1994-01-21 Nec Corp カラー電子写真画像形成装置
JPH06119227A (ja) * 1992-10-06 1994-04-28 Oki Electric Ind Co Ltd 分散データベース制御システム
JPH08286964A (ja) 1995-04-13 1996-11-01 Mitsubishi Electric Corp 分散トランザクション処理方法
US5668958A (en) * 1995-09-12 1997-09-16 International Business Machines Corporation Heterogeneous filing system with common API and reconciled file management rules
US6397247B1 (en) * 1998-03-25 2002-05-28 Nec Corporation Failure prediction system and method for a client-server network
US20040163020A1 (en) * 2002-01-25 2004-08-19 David Sidman Apparatus method and system for registration effecting information access
US20030046230A1 (en) * 2001-08-30 2003-03-06 Jacobs Dean Bernard Method for maintaining account consistency
US7028030B2 (en) * 2001-08-30 2006-04-11 Bea Systems, Inc. Cluster caching with concurrency checking
JP4162184B2 (ja) 2001-11-14 2008-10-08 株式会社日立製作所 データベース管理システムの実行情報を取得する手段を有する記憶装置
JP4158534B2 (ja) * 2003-01-21 2008-10-01 修平 西山 分散型データベースシステム
US20050144299A1 (en) * 2003-12-04 2005-06-30 Blevins Delmar E. System and method for supporting XA 2-phase commit protocols with a loosely coupled clustered database server
US7249277B2 (en) * 2004-03-11 2007-07-24 Hitachi, Ltd. Disk array including plural exchangeable magnetic disk unit
JP2005316762A (ja) * 2004-04-28 2005-11-10 Toshiba Corp ディスク記憶装置及びraid構築方法
US7653628B2 (en) * 2004-04-30 2010-01-26 Sap Ag Persistent data management with different isolation levels
JP2006221399A (ja) 2005-02-10 2006-08-24 Yokogawa Electric Corp 分散情報統合方法及びこれを用いたシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295871A (ja) * 1994-04-15 1995-11-10 Internatl Business Mach Corp <Ibm> データベース・アクセス効率の向上方法及びシステム
JPH1185595A (ja) * 1997-09-16 1999-03-30 Oki Electric Ind Co Ltd 分散データベース管理システムおよび分散データベース管理方法
JPH11219309A (ja) * 1997-09-29 1999-08-10 Ricoh Co Ltd 分散型データベースシステムの一貫性管理方法およびその方法の各工程をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体

Also Published As

Publication number Publication date
EP2330511A1 (en) 2011-06-08
EP2330511A4 (en) 2012-10-10
US20110161288A1 (en) 2011-06-30
US8572047B2 (en) 2013-10-29
JPWO2010032278A1 (ja) 2012-02-02
WO2010032278A1 (ja) 2010-03-25
EP2330511B1 (en) 2016-07-20

Similar Documents

Publication Publication Date Title
JP5257455B2 (ja) 2相コミットによるデータ更新同期方法及びシステム
US11087281B2 (en) System and method of commitment management
CN102257494B (zh) 选择性的数据库复制方法
US9984140B1 (en) Lease based leader election system
KR101169117B1 (ko) 확장 가능하고 자동으로 복제되는 서버 팜 구성 관리인프라스트럭처를 위한 서버 팜, 시스템 및 방법
US9852204B2 (en) Read-only operations processing in a paxos replication system
US6799314B2 (en) Work flow management method and work flow management system of controlling a work flow
US8832173B2 (en) System and method of multithreaded processing across multiple servers
JP5547140B2 (ja) ネットワーク化されたビジネスプロセスのネットワーク参加者に関するサービス品質を管理するための方法、および管理するための動作をコンピュータに実行させることができる命令を格納するコンピュータ読み取り可能な記録媒体
US8751711B2 (en) Storage topology manager
US20120089711A1 (en) Live migration method for large-scale it management systems
WO2009122528A1 (ja) 統合構成管理装置、異種構成管理装置、バックアップデータ管理システム
US11968669B2 (en) Scheduling database system
Alrawahi et al. A multiobjective QoS model for trading cloud of things resources
CA2795357C (en) Method and system for inventory data sharing between airlines
US20050071107A1 (en) Method and system for autonomic self-learning in selecting resources for dynamic provisioning
JP5480046B2 (ja) 分散トランザクション処理システム、装置、方法およびプログラム
US10798208B2 (en) Availability data caching in meeting systems
JP2009157445A (ja) データベース開発管理システム及びプログラム
Ibrahim Mobile transaction processing for a distributed war environment
Cardinale et al. Fuzzy ACID properties for self‐adaptive composite cloud services execution
JP5877802B2 (ja) 通信端末装置及び通信アクセス方法
JP2003091515A (ja) 帳票データの負荷分散型処理システム
JP2007219826A (ja) プログラムの配布、削除方法及び分散計算機システム
Pahlevan Dynamic web service discovery

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121105

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130304

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20130311

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: 20130326

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130408

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160502

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees