(57)【特許請求の範囲】
【請求項１】
複数のデータベース、前記複数のデータベースの各々に記憶されているデータのデータ項目の関係を記憶する記憶手段、及び、第１テーブルへのアクセスが可能なコンピュータに、
前記記憶手段を参照し、所定の監視間隔ごとに、前記複数のデータベースの各々で関係するデータ項目に対応する監視データを抽出する抽出機能と、
前記抽出機能が抽出した前記各データベースの監視データが一致していない場合、前記第１テーブルから前回の監視データを読み出す処理を実行する読み出し機能と、
該読み出し機能により前記第１テーブルから前回の監視データが読み出せなかった場合、又は、前記読み出した前回の監視データと、前記抽出機能によって抽出した監視データと、が一致していないときに、前記抽出した監視データを前記第１テーブルに格納し、前記読み出した前回の監視データと前記抽出した監視データとが一致しているときに、エラーを出力する制御機能と、
を実現させることを特徴とするデータ監視プログラム。
【請求項２】
前記複数のデータベースは、各々のデータベースにおいて、前記記憶手段に記憶されるデータ項目に対し、各々の前記データベースで規定される反映時間間隔で、他の前記データベースのデータを反映する処理を行っており、
前記所定の監視間隔は、各々の前記データベースで規定される反映間隔以上の間隔であることを特徴とする請求項１記載のデータ監視プログラム。
【請求項３】
前記反映する処理における反映元となるデータベース及び反映先となるデータベースの組合せに応じた前記反映間隔が夫々格納された第２テーブルから、全ての組合せにおける反映間隔を読み出し、該読み出した反映間隔のうち、最も長い反映間隔以上の間隔を、監視間隔として決定する監視間隔決定機能を前記コンピュータにさらに実現させることを特徴とする請求項２記載のデータ監視プログラム。
【請求項４】
前記関係するデータ項目は、前記複数のデータベースが有する項目のうち、共通の内容を示す共通項目であることを特徴とする請求項１〜請求項３のいずれか１つに記載のデータ監視プログラム。
【請求項５】
複数のデータベース、前記複数のデータベースの各々に記憶されているデータのデータ項目の関係を記憶する記憶手段、及び、第１テーブルへのアクセスが可能なデータ監視装置であって、
前記記憶手段を参照し、所定の監視間隔ごとに、前記複数のデータベースの各々で関係するデータ項目に対応する監視データを抽出する抽出手段と、
前記抽出手段が抽出した前記各データベースからの監視データが一致していない場合、前記第１テーブルから前回の監視データを読み出す処理を実行する読み出し手段と、
該読み出し手段により前記第１テーブルから前回の監視データが読み出せなかった場合、又は、前記読み出した前回の監視データと、前記抽出手段によって抽出した監視データと、が一致していないときに、前記抽出した監視データを前記第１テーブルに格納し、前記読み出した前回の監視データと前記抽出した監視データとが一致しているときに、エラーを出力する制御手段と、
を有することを特徴とするデータ監視装置。
【請求項６】
各々において、記憶手段に記憶されるデータ項目について、各々で規定される反映時間間隔で、他のデータベースのデータを反映する処理を行う複数のデータベースと、
前記複数のデータベースの各々に記憶されているデータのデータ項目の関係を記憶する記憶手段と、
前記記憶手段を参照し、所定の監視間隔ごとに、前記複数のデータベースの各々で関係するデータ項目に対応する監視データを抽出する抽出手段と、
前記抽出手段が抽出した前記各データベースの監視データが一致していない場合、第１テーブルから前回の監視データを読み出す処理を実行する読み出し手段と、
該読み出し手段により前記第１テーブルから前回の監視データが読み出せなかった場合、又は、前記読み出した前回の監視データと、前記抽出手段によって抽出した監視データと、が一致していないときに、前記抽出した監視データを前記第１テーブルに格納し、前記読み出した前回の監視データと前記抽出した監視データとが一致しているときに、エラーを出力する制御手段と、
を有することを特徴とするデータ監視システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベース間におけるデータの整合性を監視する技術に関する。
【背景技術】
【０００２】
コンピュータシステムにおいて、夫々独立して更新されるデータベース間で整合性を保っているものがある。このため、一のデータベースのデータに対する更新を他のデータベースのデータへと反映させる反映処理により、データの整合性を保つ技術が用いられている。
【０００３】
また、整合性を保つ他の技術として、コンピュータで実行されるジョブを監視する監視装置が、ジョブの実稼動状態を一定時間毎に監視し、実稼動状態と監視装置が認識している稼動状態とに不整合が生じているときに、両者を一致させる技術が用いられている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−２４０６００号公報
【特許文献２】特開平５−１２２０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、データベース間における更新の反映処理では、様々な要因により障害等が発生し、処理が失敗することがある。このため、反映処理の対象となる各データベースのデータの整合性の監視を行なうことが考えられる。
【０００６】
しかし、データベース間における更新の反映処理は、一のデータベースでデータが更新されてから必ずしも即時に行われるとは限らない。このため、一のデータベースでデータが更新されてから他のデータベースのデータに更新が反映されるまでに、時間差が生じることがある。この場合、監視処理が、データの不整合を検出したときに即時に監視結果をエラーとしてしまうと、データに不整合が生じているが単に反映処理が未完了であるだけの状態、すなわち、擬似エラーの状態を、本来のエラーとして検出してしまう可能性がある。
【０００７】
以上のような問題点に鑑み、開示の技術は、擬似エラーと本来のエラーとを区別してデータの整合性の監視を行うことで、無駄なエラー検出を抑制することを目的とする。
【課題を解決するための手段】
【０００８】
開示の技術においては、複数のデータベース、前記複数のデータベースの各々に記憶されているデータのデータ項目の関係を記憶する記憶手段、及び、第１テーブルへのアクセスが可能なコンピュータが、記憶手段を参照し、所定の監視間隔ごとに、複数のデータベースの各々で関係するデータ項目に対応する監視データを抽出し、抽出した前記各データベースの監視データが一致していない場合、第１テーブルから前回の監視データを読み出す処理を実行し、前記第１テーブルから前回の監視データが読み出せなかった場合、又は、前記読み出した前回の監視データと、前記抽出した監視データと、が一致していないときに、前記抽出した監視データを前記第１テーブルに格納し、読み出した前回の監視データと前記抽出した監視データとが一致しているときに、エラーを出力することを特徴とする。
【発明の効果】
【０００９】
開示の技術によれば、擬似エラーと本来のエラーとを区別した監視が行われるため、擬似エラーの状態であるにも関わらず本来のエラーとして処理されることが回避される。したがって、監視処理における無駄なエラー検出が抑制される。
【図面の簡単な説明】
【００１０】
【図１】データ監視システムの一実施例の全体構成図である。
【図２】ＤＢ間の共通項目の一実施例の説明図である。
【図３】反映間隔テーブルの一実施例の説明図である。
【図４】監視項目テーブルの一実施例の説明図である。
【図５】監視状態テーブルの一実施例の説明図である。
【図６】監視サーバにおける処理の一実施例のフローチャートである。
【図７】監視状態の一実施例の具体例の説明図であり、（Ａ）は監視結果が正常である場合、（Ｂ）は監視データの不整合が発生した後に監視結果が正常となった場合、（Ｃ）は、監視結果がエラーとなった場合を示す。
【発明を実施するための形態】
【００１１】
図１は、データ監視システム１０の一実施例の全体構成図である。データ監視システム１０は、監視サーバ１１及び監視対象となるデータベース（以下、ＤＢという）を備えたサーバを有する個別システム１２を含む。そして、データ監視システム１０は、個別システム１２の内訳として、製品設計等の各工程において用いられるシステムである、部品選定システム１２Ａ、回路実装設計システム１２Ｂ、試験解析システム１２Ｃ及び購買システム１２Ｄを含む。監視サーバ１１、部品選定システム１２Ａ、回路実装設計システム１２Ｂ、試験解析システム１２Ｃ及び購買システム１２Ｄは、相互にネットワーク接続されている。ネットワークは、例えば、ＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等である。
【００１２】
監視サーバ１１は、少なくとも、ＣＰＵ（Central Processing Unit）、及び、メモリやストレージ等の記憶装置を備えたコンピュータである。
部品選定システム１２Ａ、回路実装設計システム１２Ｂ、試験解析システム１２Ｃ及び購買システム１２Ｄは、夫々少なくとも１つのサーバを有し、独立して運用されるコンピュータシステムである。そして、部品選定システム１２Ａのサーバは、共通部品ＤＢ１２０Ａを含む。同様に、回路実装設計システム１２Ｂのサーバは、ＣＡＤ用ＤＢ１２０Ｂを含む。また、試験解析システム１２Ｃのサーバは、解析ＤＢ１２０Ｃを含む。さらに、購買システム１２Ｄのサーバは、購買ＤＢ１２０Ｄを含む。これらのＤＢ１２０Ａ〜１２０Ｄは、製品設計等の対象物である物品に関するデータを、物品毎に夫々保持している。そして、ＤＢ１２０Ａ〜１２０Ｄのデータは、個別システム１２Ａ〜１２Ｄにおいて、夫々独立して更新がなされる。
【００１３】
ここで、ＤＢ１２０Ａ〜１２０Ｄは、少なくとも２つのＤＢ間で共通する内容を示すデータを含む。かかるデータは、ＤＢ１２０Ａ〜１２０Ｄが有する項目のうち、共通する内容を示す特定の項目である共通項目のデータである。そして、個別システム１２Ａ〜１２Ｄは相互に連携し、共通項目のデータをＤＢ間で相互に対応付けている。さらに、個別システム１２Ａ〜１２Ｄは、所定の反映間隔ごとに、自システムのＤＢにおいて更新された共通項目のデータを、他システムのＤＢの同一物品に係る共通項目のデータに反映させる反映処理を行う。なお、反映間隔は、反映処理において反映元となるＤＢ及び反映先となるＤＢの組合せに応じ、システム管理者等により予め設定された間隔である。
【００１４】
なお、図２は、ＤＢ１２０Ａ〜１２０Ｄの共通項目の具体例を示す。例えば、共通項目「標準化フラグ」は、共通部品ＤＢ１２０Ａ、ＣＡＤ用ＤＢ１２０Ｂ及び解析ＤＢ１２０Ｃに含まれる。具体的には、共通部品ＤＢ１２０Ａ、ＣＡＤ用ＤＢ１２０Ｂ及び解析ＤＢ１２０Ｃにおける項目「取扱区分」が、「標準化フラグ」に相当する項目であり、共通項目「標準化フラグ」の内容を示している。ここで、例えば、共通部品ＤＢ１２０Ａの「取扱区分」のデータが更新された場合、その更新は、所定の反映間隔ごとに行われる反映処理により、ＣＡＤ用ＤＢ１２０Ｂ及び解析ＤＢ１２０Ｃの「取扱区分」のデータに反映される。
【００１５】
以下、監視サーバ１１についてさらに説明する。
監視サーバ１１は、図１に示すように、監視間隔決定部１１Ａ及び監視部１１Ｂを含む。さらに、監視サーバ１１は、反映間隔テーブル１１Ｃ、監視項目テーブル１１Ｄ及び監視状態テーブル１１Ｅを含む。なお、監視サーバ１１において、ＣＰＵによりデータ監視プログラムが実行され、記憶装置、入出力装置、通信を実現するポート等のハードウェア機器と協働することにより、監視間隔決定部１１Ａ及び監視部１１Ｂの機能が実現される。また、データ監視プログラムは、例えば、磁気テープ、磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等のコンピュータ読取可能な記録媒体に記録可能である。そして、システム管理者等が、かかる記録媒体に記録されたデータ監視プログラムを監視サーバ１１にインストールすることにより、データ監視プログラムを実行させることができる。また、反映間隔テーブル１１Ｃ、監視項目テーブル１１Ｄ及び監視状態テーブル１１Ｅは、監視サーバ１１が備える記憶装置に格納される。
【００１６】
監視間隔決定部１１Ａは、ＤＢ１２０Ａ〜１２０Ｄ間において反映処理が行われる反映間隔に基づき、ＤＢ１２０Ａ〜１２０Ｄに対する監視間隔を決定する。なお、監視間隔決定部１１Ａが、監視間隔決定機能及び監視間隔決定部の一例として挙げられる。
【００１７】
監視部１１Ｂは、監視間隔決定部１１Ａで決定した監視間隔ごとに、ＤＢ１２０Ａ〜１２０Ｄに夫々格納された同一物品のデータについて、共通項目のデータの整合性を監視する。なお、監視部１１Ｂが、参照機能、判定機能、比較機能、エラー処理機能及び格納機能、又は、参照部、判定部、比較部、エラー処理部及び格納部の一例として挙げられる。
【００１８】
反映間隔テーブル１１Ｃは、ＤＢ１２０Ａ〜１２０Ｄ間における反映処理が行われる反映間隔が、反映元となるＤＢ及び反映先となるＤＢの組合せに応じて格納されるテーブルである。そして、反映間隔テーブル１１Ｃは、図３に示すように、反映処理における反映元となるＤＢに応じて一意に決まる反映間隔のパターンの識別子であるパターンＩＤ及びＤＢ１２０Ａ〜１２０Ｄ間における反映間隔を含む。反映元となるＤＢに対応する反映間隔の欄には、反映元であることを示す情報が格納される一方、反映先となるＤＢに対応する反映間隔の欄には、反映元となるＤＢからの反映処理の反映間隔を示す時間が格納される。さらに、あるＤＢが反映元となる場合に、反映対象となる共通項目がないＤＢに対応する反映間隔の欄には、反映対象がないことを示す情報が格納される。なお、反映間隔テーブル１１Ｃのデータは、システム管理者等が予め設定しておくものである。また、反映間隔テーブル１１Ｃが、第２テーブルの一例として挙げられる。
【００１９】
監視項目テーブル１１Ｄは、各データベースの共通項目名、すなわち、監視対象となる項目名が格納されるテーブルである。そして、監視項目テーブル１１Ｄは、図４に示すように、共通項目名、当該共通項目が格納されているＤＢ名及び各ＤＢにおける当該共通項目の対応項目名を含む。監視項目テーブル１１Ｄは、共通項目がどのＤＢに含まれているかを示すともに、共通項目名と、各ＤＢ１２０Ａ〜１２０Ｄにおける実際の対応項目名と、を関連付ける役割を果たす。なお、監視項目テーブル１１Ｄのデータは、システム管理者等が予め設定しておくものである。
【００２０】
監視状態テーブル１１Ｅは、ＤＢ１２０Ａ〜１２０Ｄのデータを、物品ごと且つ共通項目ごとに、一時的に格納しておくためのテーブルである。そして、監視状態テーブル１１Ｅは、図５に示すように、物品を一意に特定する識別子である物品番号、共通項目名及びＤＢ１２０Ａ〜１２０Ｄにおける当該共通項目のデータを含む。なお、当該共通項目を含まないＤＢに対応するデータの欄には、共通項目がないことを示す情報が格納される。この監視状態テーブル１１Ｅは、前回の監視時における各ＤＢのデータを保持するために用いられる。なお、監視状態テーブル１１Ｅが、第１テーブルの一例として挙げられる。
【００２１】
以下、監視サーバ１１における処理について、図６に示すフローチャートを用いて説明する。
監視間隔決定部１１Ａは、反映間隔テーブル１１Ｃから、全ての反映間隔のパターンにおける各ＤＢ間の反映間隔を読み出す。監視間隔決定部１１Ａは、読み出した反映間隔から、最も長い反映間隔を監視間隔として決定する（Ｓ１）。なお、図３の反映間隔テーブル１１Ｃのデータ例の場合、共通部品ＤＢ１２０Ａが反映元となり、購買ＤＢ１２０Ｄが反映先となる反映間隔のうち最長の反映間隔は、３０分である。よって、本実施の形態において、監視間隔決定部１１Ａは、３０分を監視間隔とする。
【００２２】
監視部１１Ｂは、対象となる物品の１つを選択する。（Ｓ３）。
次に、監視部１１Ｂは、対象となる共通項目を１つ選択する(Ｓ４）。
監視部１１Ｂは、監視項目テーブル１１Ｄから、共通項目名、及び、ＤＢ１２０Ａ〜１２０Ｄのうち、当該共通項目を含むＤＢ（以下、この処理の説明において対象ＤＢという）を読みだす。さらに、監視部１１Ｂは、監視項目テーブル１１Ｄから、各対象ＤＢの項目のうち、共通項目に相当する対応項目名を読み出す。そして、監視部１１Ｂは、読み出した共通項目名及び対応項目名に基づいて、各対象ＤＢにアクセスし、各対象ＤＢの共通項目のデータを、監視データとして参照する（Ｓ５）。
【００２３】
ここで、監視部１１Ｂは、参照した監視データが対象ＤＢ間において全て一致しているか否かを判定する（Ｓ６）。そして、監視部１１Ｂは、Ｓ６の判定の結果、監視データが対象ＤＢ間において全て一致しているときには（Ｙ）、監視結果が正常であるので、Ｓ７〜Ｓ１０の処理は行わず、処理をＳ１１へ移行する。
【００２４】
一方、Ｓ５の判定の結果、監視データが対象ＤＢ間で異なるときには、監視部１１Ｂは、（Ｎ）、現在処理中の共通項目についての前回の監視時における対象ＤＢの監視データが監視状態テーブル１１Ｅに格納されているか否かを判定する（Ｓ７）。そして、監視部１１Ｂは、Ｓ７の判定の結果、前回の監視データが格納されていなければ（Ｎ）、Ｓ９の処理に移る。なお、このように前回の監視データが監視状態テーブル１１Ｅに格納されていない場合、前回の監視時には、監視データが対象ＤＢ間において全て一致しており、監視結果が正常であったこととなる。一方、監視部１１Ｂは、Ｓ７の判定の結果、前回の監視データが格納されていれば（Ｙ）、前回の監視データを読み出す。監視部１１Ｂは、読み出した前回の監視データと、Ｓ５で参照した監視データと、が全ての対象ＤＢにおいて一致しているか否かを判定する（Ｓ８）。
【００２５】
そして、監視部１１Ｂは、Ｓ８の判定の結果、前回の監視データと、Ｓ４で参照した監視データと、がいずれかの対象ＤＢにおいて異なっていれば（Ｎ）、Ｓ９の処理に移る。すなわち、監視部１１Ｂは、警告状態として、Ｓ５で参照した監視データを共通項目名と関連付けて監視状態テーブル１１Ｅに格納する（Ｓ９）。なお、このとき、監視部１１Ｂは、前回の監視データが既に監視状態テーブル１１Ｅに格納されていれば、前回の監視データを削除し、Ｓ５で参照した監視データを代わりに格納する。
【００２６】
一方、監視部１１Ｂは、Ｓ８の判定の結果、前回の監視データと、Ｓ５で参照した監視データと、が全ての対象ＤＢにおいて一致するときには（Ｙ）、対象ＤＢ間の反映処理に障害が発生しているものとして、監視結果をエラーとする（Ｓ１０）。
【００２７】
ここで、監視部１１Ｂは、全ての共通項目について処理をしたか否かを判定する（Ｓ１１）。監視部１１Ｂは、Ｓ１０の判定の結果、未だ処理をしていない共通項目がある場合には（Ｎ）、Ｓ４に戻り、次の共通項目の処理に移る。一方、監視部１１Ｂは、全ての共通項目について処理をした場合（Ｙ）、さらに、全ての物品のデータについて処理をしたか否かを判定する（Ｓ１２）。そして、監視部１１Ｂは、Ｓ１２の判定の結果、全ての物品のデータについて処理をしていない場合には（Ｎ）、Ｓ３に戻り、次の物品のデータの処理に移る。一方、監視部１１Ｂは、全ての物品について処理をした場合（Ｙ）、Ｓ２に戻り、再び監視処理を開始する。
【００２８】
次に、共通部品ＤＢ１２０Ａ、ＣＡＤ用ＤＢ１２０Ｂ、解析ＤＢ１２０Ｃ及び購買ＤＢ１２０Ｄにおける共通項目のデータの内容に応じた上記監視処理について、具体例を示して説明する。
【００２９】
図７（Ａ）は、ある監視処理時における、共通項目「部品形状」を含む各対象ＤＢに格納された、物品番号１の「部品形状」のデータの一例である。なお、共通項目「部品形状」は、図４の監視項目テーブル１１Ｄのデータ例で示されるように、共通部品ＤＢ１２０Ａ及びＣＡＤ用ＤＢ１２０Ｂに含まれる。そして、共通部品ＤＢ１２０Ａの「部品形状タイプ」及びＣＡＤ用ＤＢ１２０Ｂの「部品形状タイプ名」が、共通項目「部品形状」に対応する。このため、各対象ＤＢにおけるこれらの項目のデータが、監視データとされる。
【００３０】
ここで、図７（Ａ）に示されるように、共通部品ＤＢ１２０Ａ及びＣＡＤ用ＤＢ１２０Ｂのデータは、いずれも「未設定」であり一致している。すなわち、この場合、全ての対象ＤＢにおいて監視データが一致している。したがって、監視部１１Ｂは、監視結果を正常として処理をする。
【００３１】
一方、図７（Ｂ）は、ある監視処理時における、共通項目「規制フラグ」を含む各対象ＤＢに格納された、物品番号２の「規制フラグ」のデータの一例である。なお、共通項目「規制フラグ」は、図４の監視項目テーブル１１Ｄのデータで示されるように、共通部品ＤＢ１２０Ａ、ＣＡＤ用ＤＢ１２０Ｂ及び解析ＤＢ１２０Ｃに含まれる。そして、共通部品ＤＢ１２０Ａ、ＣＡＤ用ＤＢ１２０Ｂ及び解析ＤＢ１２０Ｃの「ＲｏＨＳ物番判定フラグ」が、共通項目「規制フラグ」に対応する。このため、各対象ＤＢにおけるこれらの項目のデータが、監視データとされる。
【００３２】
ここで、１回目の監視において、共通部品ＤＢ１２０Ａのデータが「適合」である一方で、ＣＡＤ用ＤＢ１２０Ｂ及び解析ＤＢ１２０Ｃのデータが「仕掛中」であり、ＤＢ間でデータが一致していない。すなわち、この場合、対象ＤＢ間で監視データが異なっている。このため、監視部１１Ｂは、警告状態として、監視データを監視状態テーブル１１Ｅに格納する。
【００３３】
さらに、２回目の監視においては、共通部品ＤＢ１２０Ａ、ＣＡＤ用ＤＢ１２０Ｂ及び解析ＤＢ１２０Ｃのデータのいずれもが「適合」となっており同一である。すなわち、この場合、監視データが全ての対象ＤＢにおいて一致している。このため、監視部１１Ｂは、当該２回目の監視において、監視結果を正常として処理をする。なお、このとき、監視部１１は、１回目の監視において監視状態テーブル１１Ｅに格納した監視データを削除する。
【００３４】
また、図７（Ｃ）は、ある監視処理時における、共通項目「購買価格」を含む各対象ＤＢに格納された、物品番号３の「購買価格」のデータの一例である。なお、共通項目「購買価格」は、図４の監視項目テーブル１１Ｄのデータで示されるように、共通部品ＤＢ１２０Ａ、ＣＡＤ用ＤＢ１２０Ｂ及び購買ＤＢ１２０Ｄに含まれる。そして、共通部品ＤＢ１２０Ａの「部品単価（最新更新月）」、並びに、ＣＡＤ用ＤＢ１２０Ｂ及び購買ＤＢ１２０Ｄの「部品単価」が、共通項目「購買価格」に対応する。このため、各ＤＢにおけるこれらの項目のデータが、監視データとされる。
【００３５】
ここで、１回目の監視において、共通部品ＤＢ１２０Ａ及びＣＡＤ用ＤＢ１２０Ｂのデータが「未設定」である一方で、購買ＤＢ１２０Ｄのデータが「８００円」であり、対象ＤＢ間で監視データの値が異なっている。しかし、当該監視においては、警告状態となったのが１回目であり、監視状態テーブル１１Ｅに、前回の監視データが格納されていない。このため、監視部１１Ｂは、監視結果をエラーとせず、監視データを監視状態テーブル１１Ｅに格納する。
【００３６】
次に、２回目の監視において、ＣＡＤ用ＤＢ１２０Ｂのデータが「未設定」である一方で、共通部品ＤＢ１２０Ａ及び購買ＤＢ１２０Ｄのデータが「８００円」であり、対象ＤＢ間で監視データの値が異なっている。しかし、前回の監視時に監視状態テーブル１１Ｅに格納された前回の監視データとの比較において、共通部品ＤＢ１２０Ａのデータが、「未設定」と「８００円」とで一致していない。すなわち、この場合、対象ＤＢ間で監視データが一致していないが、前回の監視データと今回の監視データとが変化している。このため、監視部１１Ｂは、監視結果をエラーとせず、前回の監視データに代えて、今回の監視データを監視状態テーブル１１Ｅに格納する。
【００３７】
さらに、３回目の監視においても、ＣＡＤ用ＤＢ１２０Ｂのデータが「未設定」である一方で、共通部品ＤＢ１２０Ａ及び購買ＤＢ１２０Ｄのデータが「８００円」であり、対象ＤＢ間で監視データの値が異なっている。そして、この監視データは、前回の監視時に監視状態テーブル１１Ｅに格納された前回の監視データとの比較においても、全ての対象ＤＢのデータが一致している。このため、監視部１１Ｂは、監視結果をエラーとする。なお、このとき、監視部１１は、前回の監視時において監視状態テーブル１１Ｅに格納した監視データを削除する。
【００３８】
かかる監視サーバ１１によれば、監視部１１Ｂは、ＤＢ間における共通項目のデータの整合性を監視するときに、次のように処理する。すなわち、監視部１１Ｂは、監視データに不整合があっても、前回の監視データが監視状態テーブル１１Ｅに格納されていない場合、すなわち、前回の監視時に不整合が生じていなかった場合には、即時に監視結果をエラーとしない。また、監視部１１Ｂは、前回の監視時と連続して監視データに不整合が生じていても、いずれかのＤＢの監視データにおいて前回の監視時との間に変化がある場合には、監視結果をエラーとしない。このように監視データが前回の監視時との間で変化している場合には、反映処理の途中であり、監視データに不整合が生じているが単に反映処理が未完了であるだけの状態、すなわち、本来エラーではない擬似エラーの状態である可能性が高いからである。一方で、監視部１１Ｂは、監視データに不整合があり、かつ、前回の監視時との比較において、監視データが全てのＤＢにおいて変化していない場合には、反映処理に障害が発生しているものと判定し、監視結果をエラーとする。このように、監視部１１Ｂは、本来エラーではない擬似エラーの状態を、本来のエラーと区別して処理することができる。したがって、監視部１１Ｂは、あるＤＢに対する更新が他のＤＢに反映されるまでに時間差があっても、その間に生じている擬似エラーの状態を本来のエラーとして検出してしまうことを回避することができる。
【００３９】
また、監視間隔決定部１１Ａが、各ＤＢ間におけるデータの反映間隔のうち、最も長い間隔以上の時間を、監視間隔として決定している。このため、あるＤＢでデータの更新が行われた場合に、次の監視時において反映処理が未完了でも、遅くともその次の監視時までには、データの更新が反映されるべき全てのＤＢに対し、反映処理が行われることとなる。そして、監視部１１Ｂは、このように十分な監視間隔をおいて監視処理を行うため、擬似エラーの状態において監視結果をエラーとしてしまうことをさらに高い確率で回避することができる。
【００４０】
なお、計算資源やネットワーク資源に制限があるシステム環境の場合、反映処理を頻繁に行うことは、本来の業務処理等に影響を及ぼすため、望ましくない。また、反映処理の対象となるデータの内容によっては、必ずしもすぐに反映処理がなされなくても、業務上支障がない場合もある。このような場合、一般に、反映間隔が長く設定されるため、データの更新から反映処理までの時間が長くなり、擬似エラーの状態が特に多発する。しかし、上記監視サーバ１１の監視機構は、このように擬似エラーの状態が多発する場合でも、上述のように、反映間隔よりも長い監視間隔で監視を行うため、監視結果をエラーとしてしまうことを回避することができる。
【００４１】
ここで、監視間隔決定部１１Ａは、反映間隔のみならず、他の要素に基づいて監視間隔を決定することもできる。例えば、監視間隔決定部１１Ａは、ＤＢ間においてデータを反映するのに要する反映時間を格納したテーブルを参照し、当該反映時間よりも長い時間を、監視間隔として決定してもよい。このようにすれば、例えば、システム管理者等が、大量のデータの一括更新等を想定した十分な反映時間をテーブルに設定しておけば、反映処理自体に長時間を要する場合であっても、反映処理途中の擬似エラーが本来のエラーとして検出されることを回避することができる。
【００４２】
さらに、監視部１１Ｂは、システム管理者等が予め監視サーバ１１において設定した監視間隔で監視処理を行ってもよい。この場合、システム管理者等が十分な監視間隔を設定しておくことで、上述のように監視間隔決定部１１Ａが監視間隔を決定する場合と同様の効果を得ることができる。なお、この場合、監視間隔決定部１１Ａにおいて監視間隔を決定する処理は不要となる。
【００４３】
また、上記監視サーバ１１の監視機構は、例えば、複数サーバが同一構造のＤＢを備え、相互に同期処理を行うような負荷分散システム等におけるＤＢ間のデータの整合性の監視においても、適用することができる。かかる場合には、各ＤＢが有する項目のうち特定の項目である共通項目のデータのみを監視対象とするのではなく、データレコード全体を監視データとすることとなる。
【００４４】
さらに、上記データ監視システム１０において、監視サーバ１１の監視機構は、異なる個別システム１２のサーバにおいて夫々更新されるＤＢ間の整合性を監視している。しかし、当該監視機構は、データの反映処理の対象となる複数のＤＢであれば、システム構成に依存せずいかなるＤＢにも適用可能である。例えば、当該監視機構は、同一のシステムにおいて異なるサーバが備えるＤＢ間の整合性の監視においても適用可能である。なお、同一サーバが備えるＤＢ間においては、一般的に反映間隔が短いため、擬似エラーの状態が生じにくいが、かかるＤＢ間の整合性の監視においても、当該監視機構を適用することはできる。
【００４５】
また、当該監視機構は、上述のような製品設計等の各工程において用いられるシステムに限らず、いかなる業務に用いられるシステムのＤＢにおいても適用可能である。
さらに、上記監視サーバ１１の監視機構は、監視対象のＤＢを備えるシステムから独立した別個の装置ではなく、例えば、監視対象のＤＢを備えるシステムが備えるサーバ側で実装することも可能である。
【００４６】
また、監視部１１Ｂは、監視結果をエラーとしたときの処理として、システム管理者へエラーを通知することができる。そして、監視部１１Ｂは、エラーの通知方法として、いかなる方法を用いることもできる。例えば、監視部１１Ｂは、システム管理者に対してエラー内容をメール送信することができる。また、監視部１１Ｂは、監視サーバ１１に接続されたディスプレイ等の表示装置に対するエラー内容を表示したり、紙媒体等にエラー内容を印刷したりすることもできる。さらに、監視部１１Ｂは、エラーの内容や、警告状態の内容を、エラーログとして記憶装置に蓄積してもよい。このようにエラーログが蓄積されることで、システム管理者は、エラーログを用い、どのＤＢ間におけるデータの反映処理においてエラーや警告状態の発生が頻発しているか等について、エラーの発生傾向を分析することが可能となる。
【符号の説明】
【００４７】
１０  データ監視システム
１１  監視サーバ
１１Ａ  監視間隔決定部
１１Ｂ  監視部
１１Ｃ  反映間隔テーブル
１１Ｄ  監視項目テーブル
１１Ｅ  監視状態テーブル
１２  個別システム
１２Ａ  部品選定システム
１２０Ａ  共通部品ＤＢ
１２Ｂ  回路実装設計システム
１２０Ｂ  ＣＡＤ用ＤＢ
１２Ｃ  試験解析システム
１２０Ｃ  解析ＤＢ
１２Ｄ  購買システム
１２０Ｄ  購買ＤＢ
【図１】
0005516202.tif 000002
【図２】
0005516202.tif 000003
【図３】
0005516202.tif 000004
【図４】
0005516202.tif 000005
【図５】
0005516202.tif 000006
【図６】
0005516202.tif 000007
【図７】
0005516202.tif 000008