(57)【特許請求の範囲】
【請求項１】
複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムであって、
前記各内部装置は、
前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、
他の内部装置に対し機能診断信号を逐次に送信する機能診断部と、
前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、
前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記要求元外部装置に送信する一方、前記要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される前記要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、
前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を前記要求元外部装置に送信するデータ更新制御部と、
前記機能診断信号に対して他の内部装置から正常応答を受信できないことを検出したタイミングが、当該他の内部装置にデータ更新完了通知を送信した後である場合に、当該他の内部装置から送信された前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部と
を備えることを特徴とする分散データ管理システム。
【請求項２】
複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムであって、
前記各内部装置は、
前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、
前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、
前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記要求元外部装置に送信する一方、前記要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される前記要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、
前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を前記要求元外部装置に送信するデータ更新制御部と、
前記他の内部装置にデータ更新完了通知を送信した後、当該他の内部装置に対し機能診断信号を送信する機能診断部と、
前記機能診断信号に対し当該他の内部装置から正常応答を受信できなかった場合に、当該他の内部装置から送信された前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部と
を備えることを特徴とする分散データ管理システム。
【請求項３】
複数の外部装置および機能診断サーバに対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムであって、
前記機能診断サーバは、
前記各内部装置に対し機能診断信号を逐次に送信し、当該機能診断信号に対して正常応答を受信できなかった場合に、当該機能診断信号の送信先である内部装置に機能障害が発生したことを示す機能障害通知を他の内部装置に送信するものであり、
前記各内部装置は、
前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、
前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、
前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記要求元外部装置に送信する一方、前記要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される前記要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、
前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を前記要求元外部装置に送信するデータ更新制御部と、
前記機能診断サーバから他の内部装置に機能障害が発生したことを示す機能障害通知を受信したタイミングが、当該他の内部装置にデータ更新完了通知を送信した後である場合に、当該他の内部装置から送信された前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部と
を備えることを特徴とする分散データ管理システム。
【請求項４】
複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムの動作方法であって、
前記各内部装置は、
前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、
他の内部装置に対し機能診断信号を逐次に送信する機能診断部を備え、
前記動作方法は、
前記内部装置の１つが、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、
前記他の内部装置が、当該データ更新要求を受信し、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記選択された内部装置に送信するステップと、
前記他の内部装置が、前記機能診断信号に対して前記選択された内部装置から正常応答を受信できないことを検出したタイミングが、前記選択された内部装置にデータ更新完了通知を送信した後である場合に、前記選択された内部装置から受信した前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップと
を含むことを特徴とする分散データ管理システムの動作方法。
【請求項５】
複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムの動作方法であって、
前記各内部装置は、
前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストを備え、
前記動作方法は、
前記内部装置の１つが、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、
前記他の内部装置が、当該データ更新要求を受信し、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記選択された内部装置に送信するステップと、
前記他の内部装置が、前記選択された内部装置に対し機能診断信号を送信し、前記機能診断信号に対し前記選択された内部装置から正常応答を受信できなかった場合に、前記選択された内部装置から受信した前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップと
を含むことを特徴とする分散データ管理システムの動作方法。
【請求項６】
複数の外部装置および機能診断サーバに対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムの動作方法であって、
前記機能診断サーバは、
前記各内部装置に対し機能診断信号を逐次に送信し、当該機能診断信号に対して正常応答を受信できなかった場合に、当該機能診断信号の送信先である内部装置に機能障害が発生したことを示す機能障害通知を他の内部装置に送信するものであり、
前記各内部装置は、
前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストを備え、
前記動作方法は、
前記内部装置の１つが、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、
前記他の内部装置が、当該データ更新要求を受信し、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記選択された内部装置に送信するステップと、
前記他の内部装置が、前記選択された内部装置に機能障害が発生したことを示す機能障害通知を前記機能診断サーバから受信したタイミングが、前記選択された内部装置にデータ更新完了通知を送信した後である場合に、前記選択された内部装置から受信した前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップと
を含むことを特徴とする分散データ管理システムの動作方法。
【請求項７】
請求項１ないし３のいずれかに記載の分散データ管理システムの各内部装置としてコンピュータを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不要な処理が実行される不都合を防止できる分散データ管理システムおよびその動作方法に関するものである。
【背景技術】
【０００２】
従来においては、外部装置に記憶されたデータを一元的に管理する分散データ管理システムと称されるシステムがあり、処理の効率や拡張性、信頼性の観点から、一般的に分散データ管理システムは複数の内部装置を備える。
【０００３】
図９は、従来の分散データ管理システムを用いたデータ更新処理の一例を示すシーケンス図である。
【０００４】
外部装置５は、自身のデータを処理し、データが更新されると、例えば内部装置Ａ１を選択し、データ更新要求を送信する（Ｔ１１）。
【０００５】
内部装置Ａ１は、データ更新要求の対象となるデータを記憶すべき内部装置が内部装置Ａ１か他の内部装置かを判定する（Ｔ１３）。
【０００６】
例えば、それが他の内部装置なら、内部装置Ａ１は、ステップＴ１１で受信したデータ更新要求を送信した外部装置５の外部装置名を含むデータ更新要求を内部装置Ｂ１や他の内部装置に送信する（Ｔ１５）。
【０００７】
内部装置Ｂ１は、このデータ更新要求の対象となるデータを記憶すべき内部装置が内部装置Ｂ１なら、自身に記憶した該当データを更新する（仮登録）する（Ｔ１７）。
【０００８】
次に、内部装置Ｂ１は、ある外部装置６に対し、データ更新要求を送信する（Ｔ１９）。これにより、外部装置６は、該当データを更新し（Ｔ２１）、データ更新完了通知を送信する（Ｔ２３）。
【０００９】
内部装置Ｂ１は、データ更新完了通知を受信したなら（Ｔ２３）、仮登録したデータを本登録し（Ｔ２５）、データ更新完了通知を内部装置Ａ１に送信する（Ｔ２７）。
【００１０】
さて、内部装置Ａ１では、データ更新完了通知を受信する前に機能障害が発生し（Ｔ３１）、外部装置５に対して送信すべきデータ更新完了通知を送信できなくなった（Ｔ３３）こととする。
【００１１】
外部装置５は、データ更新完了通知がタイムアウトとなるので（Ｔ３５）、内部装置Ａ１に対し、データ更新要求を再送するまたは、データを元の状態に戻すためのロールバック要求を送信する（Ｔ３７）。
【００１２】
データ更新要求が再送された場合には、データ更新のやり直しが実行される。一方、ロールバック要求が送信された場合には、データが元の状態に戻される（ロールバックされる）。
【００１３】
特許文献１には、このように、データ更新完了通知が送信されない場合においてロールバックを行う技術が開示されている。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開２００６−１６４０７５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
上記のように、従来の分散データ管理システムにあっては、データが更新されているにもかかわらず、データ更新のやり直しやロールバックが実行されることがあり、つまり、不要な処理が実行されることがあった。
【００１６】
本発明は、上記の課題に鑑みてなされたものであり、その目的とするところは、不要な処理が実行される不都合を防止できる分散データ管理システムおよびその動作方法を提供することにある。
【課題を解決するための手段】
【００１７】
上記の課題を解決するために、第１の本発明は、複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムであって、前記各内部装置は、前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、他の内部装置に対し機能診断信号を逐次に送信する機能診断部と、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記要求元外部装置に送信する一方、前記要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される前記要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を前記要求元外部装置に送信するデータ更新制御部と、前記機能診断信号に対して他の内部装置から正常応答を受信できないことを検出したタイミングが、当該他の内部装置にデータ更新完了通知を送信した後である場合に、当該他の内部装置から送信された前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部とを備えることを特徴とする分散データ管理システムをもって解決手段とする。
【００１８】
第２の本発明は、複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムであって、前記各内部装置は、前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記要求元外部装置に送信する一方、前記要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される前記要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を前記要求元外部装置に送信するデータ更新制御部と、前記他の内部装置にデータ更新完了通知を送信した後、当該他の内部装置に対し機能診断信号を送信する機能診断部と、前記機能診断信号に対し当該他の内部装置から正常応答を受信できなかった場合に、当該他の内部装置から送信された前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部とを備えることを特徴とする分散データ管理システムをもって解決手段とする。
【００１９】
第３の本発明は、複数の外部装置および機能診断サーバに対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムであって、前記機能診断サーバは、前記各内部装置に対し機能診断信号を逐次に送信し、当該機能診断信号に対して正常応答を受信できなかった場合に、当該機能診断信号の送信先である内部装置に機能障害が発生したことを示す機能障害通知を他の内部装置に送信するものであり、前記各内部装置は、前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記要求元外部装置に送信する一方、前記要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される前記要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を前記要求元外部装置に送信するデータ更新制御部と、前記機能診断サーバから他の内部装置に機能障害が発生したことを示す機能障害通知を受信したタイミングが、当該他の内部装置にデータ更新完了通知を送信した後である場合に、当該他の内部装置から送信された前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部とを備えることを特徴とする分散データ管理システムをもって解決手段とする。
【００２０】
第４の本発明は、複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムの動作方法であって、前記各内部装置は、前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、他の内部装置に対し機能診断信号を逐次に送信する機能診断部を備え、前記動作方法は、前記内部装置の１つが、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、前記他の内部装置が、当該データ更新要求を受信し、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記選択された内部装置に送信するステップと、前記他の内部装置が、前記機能診断信号に対して前記選択された内部装置から正常応答を受信できないことを検出したタイミングが、前記選択された内部装置にデータ更新完了通知を送信した後である場合に、前記選択された内部装置から受信した前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップとを含むことを特徴とする分散データ管理システムの動作方法をもって解決手段とする。
【００２１】
第５の本発明は、複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムの動作方法であって、前記各内部装置は、前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストを備え、前記動作方法は、前記内部装置の１つが、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、前記他の内部装置が、当該データ更新要求を受信し、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記選択された内部装置に送信するステップと、前記他の内部装置が、前記選択された内部装置に対し機能診断信号を送信し、前記機能診断信号に対し前記選択された内部装置から正常応答を受信できなかった場合に、前記選択された内部装置から受信した前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップとを含むことを特徴とする分散データ管理システムの動作方法をもって解決手段とする。
【００２２】
第６の本発明は、複数の外部装置および機能診断サーバに対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムの動作方法であって、前記機能診断サーバは、前記各内部装置に対し機能診断信号を逐次に送信し、当該機能診断信号に対して正常応答を受信できなかった場合に、当該機能診断信号の送信先である内部装置に機能障害が発生したことを示す機能障害通知を他の内部装置に送信するものであり、前記各内部装置は、前記各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストを備え、前記動作方法は、前記内部装置の１つが、前記外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対し前記データ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、前記他の内部装置が、当該データ更新要求を受信し、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を前記選択された内部装置に送信するステップと、前記他の内部装置が、前記選択された内部装置に機能障害が発生したことを示す機能障害通知を前記機能診断サーバから受信したタイミングが、前記選択された内部装置にデータ更新完了通知を送信した後である場合に、前記選択された内部装置から受信した前記データ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップとを含むことを特徴とする分散データ管理システムの動作方法をもって解決手段とする。
【発明の効果】
【００２３】
本発明によれば、不要な処理が実行される不都合を防止することができる。
【図面の簡単な説明】
【００２４】
【図１】第１の実施の形態に係る分散データ管理システムを含む通信システムの構成を示す図である。
【図２】内部装置の構成を示す機能ブロック図である。
【図３】第１の実施の形態における内部装置での処理の流れを示すフローチャートである。
【図４】第１の実施の形態におけるデータ更新処理の一例を示すシーケンス図である。
【図５】第２の実施の形態における内部装置での処理の流れを示すフローチャートである。
【図６】第２の実施の形態におけるデータ更新処理の一例を示すシーケンス図である。
【図７】第３の実施の形態における内部装置での処理の流れを示すフローチャートである。
【図８】第３の実施の形態におけるデータ更新処理の一例を示すシーケンス図である。
【図９】従来の分散データ管理システムを用いたデータ更新処理の一例を示すシーケンス図である。
【発明を実施するための形態】
【００２５】
以下、本発明の実施の形態について図面を参照して説明する。
【００２６】
［第１の実施の形態］
図１は、第１の実施の形態に係る分散データ管理システムを含む通信システムの構成を示す図である。なお、図１は、後述の第２の実施の形態における通信システムの構成を示すものでもある。また、図１は、後述の第３の実施の形態における通信システムの構成の大部分を示すものでもある。
【００２７】
分散データ管理システム１は、内部装置Ａ、Ｂおよび他の内部装置（図示せず）からなる複数の内部装置とこれらを接続する内部ネットワークＣとを備える。
【００２８】
内部装置Ａ、Ｂおよび他の内部装置は、外部ネットワーク５０を介して、１以上の外部装置５に接続される。内部装置Ａ、Ｂおよび他の内部装置は、外部ネットワーク６０を介して、１以上の外部装置６に接続される。
【００２９】
各外部装置５は、目的のデータがどの内部装置に記憶されことを認識しておらず、分散データ管理システム１をあたかも１つのデータベースのように認識している。
【００３０】
よって、例えば、各外部装置５は、１つの内部装置を無作為に選択し、データ更新要求を送信し、内部装置は、該当のデータを記憶していないなら、リレーのように、他の内部装置にデータ更新要求を送信するようになっている。
【００３１】
図２は、内部装置の構成を示す機能ブロック図である。図２は内部装置Ａのものであるが、他の内部装置も同様な構成であり、以下の説明は、他の内部装置にも適用できる。なお、図２は、後述の第２の実施の形態における内部装置の構成を示すものでもある。
【００３２】
内部装置Ａは、データを記憶するためのデータ記憶部１１と、内部装置Ａの機能および他の内部装置の機能を診断する機能診断部１２と、各内部装置の内部装置名と、当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リスト１３と、データ更新要求の対象となるデータを記憶すべき内部装置が内部装置Ａか他の内部装置かをデータ格納先リスト１３を参照して判定する信号制御部１４と、内部装置Ａのデータを更新するデータ更新部１５と、他の内部装置を制御してデータの更新を実行させるデータ更新制御部１６と、他の内部装置に代わりデータ更新完了通知の送信を行う通知代行部１７を備える。
【００３３】
なお、後述の第３の実施の形態における内部装置では、機能診断部１２が不要となっている。
【００３４】
図３は、第１の実施の形態における内部装置での処理の流れを示すフローチャートである。図３は、内部装置Ａのものであるが、他の内部装置での処理も同様であり、以下の説明は、他の内部装置にも適用できる。
【００３５】
内部装置Ａの機能診断部１２は、他の内部装置の機能診断部１２から、内部装置Ａの機能を診断するための機能診断信号を受信したら（Ｓ１）、自身の機能を診断し、機能が正常であれば正常応答を当該他の内部装置の機能診断部１２に送信し（Ｓ３）、処理を終える。なお、内部装置Ａの機能診断部１２は、機能が異常であれば、異常応答を送信してもよい（Ｓ３）。
【００３６】
内部装置Ａの機能診断部１２は、他の全ての内部装置の機能診断部１２に対し、例えば定期的に、機能診断信号を送信し（Ｓ１１）、他の内部装置の機能診断部１２から、予め定められた時間内に応答が受信できなかった（タイムアウト）か否かを判定する（Ｓ１３）。
【００３７】
内部装置Ａの機能診断部１２は、タイムアウトになったなら（Ｓ１３：ＹＥＳ）または、予め定められた時間内に異常応答を受信したなら（Ｓ１５：ＹＥＳ）、これを通知代行部１７に連絡する。
【００３８】
通知代行部１７は、連絡のタイミングが、後述のステップＳ３１で受信するデータ更新要求内の内部装置名を有する内部装置にデータ更新完了通知を送信した後であるか否かを判定する（Ｓ１７）。通知代行部１７は、送信後なら（Ｓ１７：ＹＥＳ）、そのデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信し（Ｓ１９）、処理を終える。
【００３９】
一方、通知代行部１７は、送信前なら（Ｓ１７：ＮＯ）、例えば、内部装置の保守、運用のための保守運用装置に対し、該当の内部装置が故障していることを通知し（Ｓ２１）、処理を終える。
【００４０】
内部装置Ａの信号制御部１４は、他の内部装置のデータ更新制御部１６、または、外部装置５からデータ更新要求を受信したら（Ｓ３１）、データ更新要求の対象となるデータのデータ名に対しデータ格納先リスト１３で対応づけられた内部装置名を参照し、内部装置名が内部装置Ａの内部装置名であるか他の内部装置の内部装置名であるかを判定する（Ｓ３３）。
【００４１】
なお、他の内部装置のデータ更新制御部１６から受信するデータ更新要求には外部装置名およびその内部装置の内部装置名が含まれ、前述のステップＳ１７では、この内部装置名を有する内部装置にデータ更新完了通知を送信した後であるか否かが判定され、前述のステップＳ１９では、この外部装置名に対応する外部装置に対し、データ更新完了通知が送信される。
【００４２】
データ更新部１５は、データ更新要求の対象となるデータのデータ名に対しデータ格納先リスト１３で対応づけられた内部装置名が内部装置Ａの内部装置名なら（Ｓ３３：Ａ）、データ記憶部１１において該当データを更新する（Ｓ３５）。このデータ更新は、いわゆるロールバック可能な状態とするものであり、仮登録ともいう。
【００４３】
次に、データ更新部１５は、ある外部装置６に対し、データ更新要求を送信する（Ｓ３７）。これにより、外部装置６は、該当データを更新し、内部装置Ａにデータ更新完了通知を送信する。
【００４４】
データ更新部１５は、データ更新完了通知を受信したなら（Ｓ３９）、ステップＳ３５で仮登録したデータを本登録する（Ｓ４１）。つまり、データ更新部１５は、ロールバック可能な状態を解除する。
【００４５】
一方、データ更新要求の対象となるデータのデータ名に対しデータ格納先リスト１３で対応づけられた内部装置名が他の内部装置の内部装置名なら（Ｓ３３：Ａ以外）、ステップＳ３１で受信したデータ更新要求を送信した外部装置の外部装置名ならびに内部装置Ａの内部装置名を含むデータ更新要求を当該対象のデータ名に対応づけられた内部装置名を有する内部装置に送信する（Ｓ５１）。これにより、当該内部装置名を有する内部装置は、ステップＳ３５〜Ｓ４１と同様に、自身のデータと外部装置６のデータを更新し、データ更新要求内の内部装置名に対応する内部装置つまり、内部装置Ａにデータ更新完了通知を送信する。データ更新制御部１６は、このデータ更新完了通知を受信する（Ｓ５３）。
【００４６】
ステップＳ４１の後、データ更新部１５は、または、ステップＳ５３の後、データ更新制御部１６は、ステップＳ３１で受信したデータ更新要求の送信元に対し、データ更新完了通知を送信し（Ｓ５５）、処理を終える。
【００４７】
なお、内部装置Ａは、他の内部装置から機能診断信号、データ更新要求以外の信号を受信したら（Ｓ６１）、その内部装置に対し、エラー信号を送信し（Ｓ６３）、処理を終える。
【００４８】
図４は、第１の実施の形態におけるデータ更新処理の一例を示すシーケンス図である。図４は、内部装置Ａで機能障害が発生した場合のものであるが、他の内部装置で機能障害が発生した場合の処理も同様であり、以下の説明は、その際の説明と解釈してもよい。
【００４９】
内部装置Ａは、例えば定期的に、機能診断信号を内部装置Ｂやその他の内部装置に送信し（Ｔ１）、内部装置Ｂやその他の内部装置は、機能が正常であれば正常応答を、機能が異常であれば場合により異常応答を内部装置Ａに送信する（Ｔ３）。
【００５０】
同様に、内部装置Ｂやその他の内部装置は、例えば定期的に、機能診断信号を内部装置Ａに送信し（Ｔ５）、内部装置Ａは、機能が正常であれば正常応答を、機能が異常であれば場合により異常応答を内部装置Ｂやその他の内部装置に送信する（Ｔ７）。
【００５１】
一方、外部装置５は、無作為に、例えば内部装置Ａを選択し、内部装置Ａにデータ更新要求を送信する（Ｔ１１）。
【００５２】
内部装置Ａは、データ更新要求の対象となるデータのデータ名に対しデータ格納先リスト１３で対応づけられた内部装置名が内部装置Ａの内部装置名であるか他の内部装置の内部装置名であるかを判定する（Ｔ１３）。
【００５３】
内部装置Ａは、データ更新要求の対象となるデータのデータ名に対しデータ格納先リスト１３で対応づけられた内部装置名が他の内部装置の内部装置名であるなら、ステップＴ１１で受信したデータ更新要求を送信した外部装置５の外部装置名ならびに内部装置Ａの内部装置名を含むデータ更新要求を、例えば内部装置Ｂに送信する（Ｔ１５）。
【００５４】
内部装置Ｂは、このデータ更新要求の対象となるデータのデータ名に対しデータ格納先リスト１３で対応づけられた内部装置名が内部装置Ｂの内部装置名であるなら、、自身のデータ記憶部１１において該当データを更新する（仮登録）する（Ｔ１７）。
【００５５】
次に、内部装置Ｂは、ある外部装置６に対し、データ更新要求を送信する（Ｔ１９）。これにより、外部装置６は、該当データを更新し（Ｔ２１）、内部装置Ｂにデータ更新完了通知を送信する（Ｔ２３）。
【００５６】
内部装置Ｂは、このデータ更新完了通知を受信したなら（Ｔ２３）、仮登録したデータを本登録し（Ｔ２５）、データ更新完了通知を内部装置Ａに送信する（Ｔ２７）。
【００５７】
さて、内部装置Ａでは、データ更新完了通知を受信する前に機能障害が発生し（Ｔ３１）、外部装置５に対してデータ更新完了通知を送信できず（Ｔ３３）、この機能障害により、内部装置Ｂや他の内部装置からの機能診断信号（Ｔ５）に対し、正常応答を送信できなくなった（Ｔ３５）こととする。
【００５８】
この場合、内部装置Ｂでは、タイムアウトが発生し（Ｔ４１）、このタイミングがステップＴ２７のデータ更新完了通知の送信の後なので、内部装置Ｂは、ステップＴ１５にて内部装置Ａから受信したデータ更新要求に含まれる外部装置名に対応する外部装置つまり外部装置５に対し、データ更新完了通知を送信する（Ｔ４３）。
【００５９】
これにより、外部装置５は、データ更新要求の再送やロールバック要求の送信を行うことなく、一連の処理が終わる。
【００６０】
なお、内部装置Ｂが、内部装置Ａから機能障害によりエラー信号を受信した場合については、タイムアウトが発生した場合と同様なので、説明を省略する。
【００６１】
以上説明したように、第１の実施の形態に係る分散データ管理システムは、複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムである。
【００６２】
各内部装置は、各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、他の内部装置に対し機能診断信号を逐次に送信する機能診断部と、外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対しデータ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を要求元外部装置に送信する一方、要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を要求元外部装置に送信するデータ更新制御部と、機能診断信号に対して他の内部装置から正常応答を受信できないことを検出したタイミングが、当該他の内部装置にデータ更新完了通知を送信した後である場合に、当該他の内部装置から送信されたデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部とを備えることで、要求元外部装置にデータ更新完了通知が送信されることとなるので、データ更新のやり直しやロールバックなどの不要な処理が実行される不都合を防止することができる。
【００６３】
また、第１の実施の形態では、内部装置の１つが、外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対しデータ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、他の内部装置が、当該データ更新要求を受信し、他の外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を選択された内部装置に送信するステップと、他の内部装置が、機能診断信号に対して選択された内部装置から正常応答を受信できないことを検出したタイミングが、選択された内部装置にデータ更新完了通知を送信した後である場合に、選択された内部装置から受信したデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップとを含む動作方法が実行されることで、要求元外部装置にデータ更新完了通知が送信されることとなるので、データ更新のやり直しやロールバックなどの不要な処理が実行される不都合を防止することができる。
【００６４】
［第２の実施の形態］
次に、本発明の第２の実施の形態について説明する。第２の実施の形態では、第１の実施の形態に同一または類似の装置および装置構成を用い、同一または類似のものについては第１の実施の形態で使用した符号を使用して重複説明を略し、第１の実施の形態とは異なる事項を中心に説明を行う。図１、図２に対応する第２の実施の形態での図は省略する。
【００６５】
図５は、第２の実施の形態における内部装置での処理の流れを示すフローチャートである。図３は、内部装置Ａのものであるが、他の内部装置での処理も同様であり、以下の説明は、他の内部装置にも適用できる。
【００６６】
まず、ステップＳ１、Ｓ３、Ｓ３１〜Ｓ５５、Ｓ６１、Ｓ６３については、第１の実施の形態と同様なので、説明を省略する。
【００６７】
機能診断部１２は、ステップＳ５５の後、ステップＳ５５で送信されたデータ更新完了通知の送信先は内部装置か外部装置かを判定し（Ｓ７１）、外部装置なら（Ｓ７１：外部装置）、処理を終える。
【００６８】
一方、機能診断部１２は、ステップＳ５５で送信されたデータ更新完了通知の送信先が内部装置なら（Ｓ７１：内部装置）、その内部装置（ステップＳ３１で受信したデータ更新要求内の内部装置名を有する内部装置）の機能診断部１２に対し、機能診断信号を送信し（Ｓ７３）、内部装置の機能診断部１２から、予め定められた時間内に応答が受信できなかった（タイムアウト）か否かを判定する（Ｓ７５）。
【００６９】
内部装置Ａの機能診断部１２は、タイムアウトになったなら（Ｓ７５：ＹＥＳ）または、予め定められた時間内に異常応答を受信したなら（Ｓ７７：ＹＥＳ）、これを通知代行部１７に連絡する。
【００７０】
通知代行部１７は、この連絡を受けたなら、予めステップＳ３１で内部装置から受信したデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信し（Ｓ７９）、処理を終える。
【００７１】
図６は、第２の実施の形態におけるデータ更新処理の一例を示すシーケンス図である。図６は、内部装置Ａで機能障害が発生した場合のものであるが、他の内部装置で機能障害が発生した場合の処理も同様であり、以下の説明は、その際の説明と解釈してもよい。
【００７２】
まず、ステップＴ１１〜Ｔ２７については、第１の実施の形態と同様なので、説明を省略する。また、第２の実施の形態では、図４のステップＴ１〜Ｔ７、つまり、内部装置間での定期的な機能診断は不要となっている。
【００７３】
内部装置Ｂは、ステップＴ２７の後、内部装置Ａに対し、機能診断信号を送信する（Ｔ４０）。
【００７４】
ここで、内部装置Ａでは、ステップＴ２７のデータ更新完了通知を受信する前に機能障害が発生し（Ｔ３１）、外部装置５に対してデータ更新完了通知を送信できず（Ｔ３３）、この機能障害により、内部装置Ｂからの機能診断信号（Ｔ４０）に対し、正常応答を送信できなくなった（Ｔ３５）こととする。
【００７５】
内部装置Ｂでは、この場合、タイムアウトが発生するので（Ｔ４１）、ステップＴ１５にて内部装置Ａから受信したデータ更新要求に含まれる外部装置名に対応する外部装置５に対し、データ更新完了通知を送信する（Ｔ４３）。
【００７６】
これにより、外部装置５は、データ更新要求の再送やロールバック要求の送信を行うことなく、一連の処理が終わる。
【００７７】
なお、内部装置Ｂが、内部装置Ａから機能障害によるエラー信号を受信した場合については、タイムアウトが発生した場合と同様なので、説明を省略する。
【００７８】
以上説明したように、第２の実施の形態に係る分散データ管理システムは、複数の外部装置に対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムである。
【００７９】
各内部装置は、各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対しデータ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を要求元外部装置に送信する一方、要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を要求元外部装置に送信するデータ更新制御部と、他の内部装置にデータ更新完了通知を送信した後、当該他の内部装置に対し機能診断信号を送信する機能診断部と、機能診断信号に対し当該他の内部装置から正常応答を受信できなかった場合に、当該他の内部装置から送信されたデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部とを備えることで、要求元外部装置にデータ更新完了通知が送信されることとなるので、データ更新のやり直しやロールバックなどの不要な処理が実行される不都合を防止することができる。
【００８０】
また、第２の実施の形態では、内部装置の１つが、外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対しデータ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、他の内部装置が、当該データ更新要求を受信し、他の外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を選択された内部装置に送信するステップと、他の内部装置が、選択された内部装置に対し機能診断信号を送信し、機能診断信号に対し選択された内部装置から正常応答を受信できなかった場合に、選択された内部装置から受信したデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップとを含む動作方法を実行することで、要求元外部装置にデータ更新完了通知が送信されることとなるので、データ更新のやり直しやロールバックなどの不要な処理が実行される不都合を防止することができる。
【００８１】
［第３の実施の形態］
次に、本発明の第３の実施の形態について説明する。第３の実施の形態では、第１の実施の形態に同一または類似の装置および装置構成を用い、同一または類似のものについては第１の実施の形態で使用した符号を使用して重複説明を略し、第１の実施の形態とは異なる事項を中心に説明を行う。図１、図２に対応する第３の実施の形態での図は省略する。なお、第３の実施の形態に係る分散データ管理システムを含む通信システムでは、各外部装置５および各外部装置６が外部ネットワークを介して機能診断サーバ（以下、機能診断サーバ７という）に接続される。
【００８２】
機能診断サーバ７は、分散データ管理システム１内の機能障害を監視するものであり、例えば、特開２００１−２８２７６１号公報、特開２００１−１５６７７８号公報に関連の技術が記載されている。
【００８３】
機能診断サーバ７は、例えば定期的に、機能診断信号を各内部装置Ａ、内部装置Ｂおよびその他の内部装置に送信するようになっている。各内部装置は、機能が正常であれば正常応答を機能診断サーバ７に送信する。
【００８４】
機能診断サーバ７は、ある内部装置（例えば内部装置Ａ）から予め定められた時間内に応答が受信できなかった（タイムアウトになった）または、異常応答を受信したなら、内部装置Ａに機能障害が発生したことを示す機能障害通知を内部装置Ｂや他の内部装置に送信するようになっている。
【００８５】
また、内部装置Ａや内部装置Ｂや他の内部装置では、機能診断サーバ７を設けたことで、機能診断部１２（図２）が不要となっている。
【００８６】
図７は、第３の実施の形態における内部装置での処理の流れを示すフローチャートである。図３は、内部装置Ａのものであるが、他の内部装置での処理も同様であり、以下の説明は、他の内部装置にも適用できる。
【００８７】
まず、ステップＳ１、Ｓ３、Ｓ３１〜Ｓ５５、Ｓ６１、Ｓ６３については、第１の実施の形態と同様なので、説明を省略する。
【００８８】
通知代行部１７は、機能診断サーバ７から、機能障害通知が送信されたかを判定し（Ｓ８１）、機能障害通知が送信されたなら（Ｓ８１：ＹＥＳ）、この機能障害通知の送信のタイミングが、ステップＳ３１で受信したデータ更新要求内の内部装置名を有する内部装置にデータ更新完了通知を送信した後であるか否かを判定する（Ｓ８３）。通知代行部１７は、送信後なら（Ｓ８３：ＹＥＳ）、予めステップＳ３１でその内部装置から受信したデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信し（Ｓ８５）、処理を終える。一方、通知代行部１７は、送信前なら（Ｓ８３：ＮＯ）、例えば、内部装置の保守、運用のための保守運用装置に対し、その内部装置が故障していることを通知し（Ｓ８７）、処理を終える。
【００８９】
図８は、第３の実施の形態におけるデータ更新処理の一例を示すシーケンス図である。図８は、内部装置Ａで機能障害が発生した場合のものであるが、他の内部装置で機能障害が発生した場合の処理も同様であり、以下の説明は、その際の説明と解釈してもよい。
【００９０】
機能診断サーバ７は、例えば定期的に、機能診断信号を内部装置Ａに送信し（Ｔ７１）、内部装置Ａは、機能が正常であれば正常応答を、機能が異常であれば場合により異常応答を機能診断サーバ７に送信する（Ｔ７３）。
【００９１】
同様に、機能診断サーバ７は、例えば定期的に、機能診断信号を内部装置Ｂに送信し（Ｔ７５）、内部装置Ｂは、機能が正常であれば正常応答を、機能が異常であれば場合により異常応答を機能診断サーバ７に送信する（Ｔ７７）。
【００９２】
図示しないが、機能診断サーバ７は、例えば定期的に、機能診断信号をその他の内部装置に送信し、内部装置は、機能が正常であれば正常応答を、機能が異常であれば場合により異常応答を機能診断サーバ７に送信する。
【００９３】
ステップＴ１１〜Ｔ２７については、第１の実施の形態と同様なので、説明を省略する。
【００９４】
内部装置Ａでは、ステップＴ２７のデータ更新完了通知を受信する前に機能障害が発生し（Ｔ３１）、外部装置５に対してデータ更新完了通知を送信できず（Ｔ３３）、この機能障害により、機能診断サーバ７からの機能診断信号（Ｔ７１）に対し、正常応答を送信できなくなった（Ｔ３５）こととする。
【００９５】
機能診断サーバ７では、タイムアウトが発生するので（Ｔ８１）、機能診断サーバ７は、機能障害通知を内部装置Ｂや他の内部装置に送信する（Ｔ８３）。
【００９６】
内部装置Ｂは、このタイミングがステップＴ２７のデータ更新完了通知の送信の後なので、ステップＴ１５にて内部装置Ａから受信したデータ更新要求に含まれる外部装置名に対応する外部装置つまり外部装置５に対し、データ更新完了通知を送信する（Ｔ４３）。
【００９７】
これにより、外部装置５は、データ更新要求の再送やロールバック要求の送信を行うことなく、一連の処理が終わる。
【００９８】
以上説明したように、第３の実施の形態に係る分散データ管理システムは、複数の外部装置および機能診断サーバに対してネットワークを介して接続される複数の内部装置を備える分散データ管理システムである。
【００９９】
機能診断サーバは、各内部装置に対し機能診断信号を逐次に送信し、当該機能診断信号に対して正常応答を受信できなかった場合に、当該機能診断信号の送信先である内部装置に機能障害が発生したことを示す機能障害通知を他の内部装置に送信するものであり送信するものである。
【０１００】
各内部装置は、各内部装置の内部装置名と当該内部装置名の内部装置に記憶されるデータのデータ名とを対応づけたデータ格納先リストと、外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に送信されたデータ更新要求の対象となるデータのデータ名に対しデータ格納先リストで対応づけられた内部装置名が当該内部装置の内部装置名であるか他の内部装置の内部装置名であるかを判定する信号制御部と、前記対応づけられた内部装置名が当該内部装置の内部装置名である場合に、当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を要求元外部装置に送信する一方、要求元外部装置から他の内部装置が無作為に選択されて当該他の内部装置に送信されたデータ更新要求の対象となるデータを当該内部装置が記憶している場合に他の内部装置から送信される要求元外部装置の外部装置名を含むデータ更新要求を受信した場合に、他の外部装置に記憶された当該データ更新要求の対象となるデータならびに当該内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を当該他の内部装置に送信するデータ更新部と、前記対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信し、当該他の内部装置からデータ更新完了通知を受信した場合に、データ更新完了通知を要求元外部装置に送信するデータ更新制御部と、機能診断サーバから他の内部装置に機能障害が発生したことを示す機能障害通知を受信したタイミングが、当該他の内部装置にデータ更新完了通知を送信した後である場合に、当該他の内部装置から送信されたデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信する通知代行部とを備えることで、要求元外部装置にデータ更新完了通知が送信されることとなるので、データ更新のやり直しやロールバックなどの不要な処理が実行される不都合を防止することができる。
【０１０１】
また、第３の実施の形態では、内部装置の１つが、外部装置の１つである要求元外部装置から当該内部装置が無作為に選択されて当該内部装置に当該要求元外部装置からデータ更新要求が送信され、当該データ更新要求の対象となるデータのデータ名に対しデータ格納先リストで対応づけられた内部装置名が他の内部装置の内部装置名である場合に、当該内部装置名を有する他の内部装置に対し、当該要求元外部装置の外部装置名を含むデータ更新要求を送信するステップと、他の内部装置が、当該データ更新要求を受信し、他の前記外部装置に記憶された当該データ更新要求の対象となるデータならびに当該他の内部装置に記憶された当該データ更新要求の対象となるデータを更新し、データ更新完了通知を選択された内部装置に送信するステップと、他の内部装置が、選択された内部装置に機能障害が発生したことを示す機能障害通知を機能診断サーバから受信したタイミングが、選択された内部装置にデータ更新完了通知を送信した後である場合に、選択された内部装置から受信したデータ更新要求に含まれる外部装置名に対応する外部装置にデータ更新完了通知を送信するステップを含む動作方法が実行されることで、要求元外部装置にデータ更新完了通知が送信されることとなるので、データ更新のやり直しやロールバックなどの不要な処理が実行される不都合を防止することができる。
【０１０２】
なお、各実施の形態に係る分散データ管理システムの内部装置としてコンピュータを機能させるためのコンピュータプログラムは、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に記録でき、また、インターネットなどの通信網を介して伝送させて、広く流通させることができる。
【符号の説明】
【０１０３】
１  分散データ管理システム
５  外部装置
６  外部装置
７  機能診断サーバ
１１  データ記憶部
１２  機能診断部
１３  データ格納先リスト
１４  信号制御部
１５  データ更新部
１６  データ更新制御部
１７  通知代行部
Ａ、Ｂ  内部装置
【図１】
0005580352.tif 000002
【図２】
0005580352.tif 000003
【図３】
0005580352.tif 000004
【図４】
0005580352.tif 000005
【図５】
0005580352.tif 000006
【図６】
0005580352.tif 000007
【図７】
0005580352.tif 000008
【図８】
0005580352.tif 000009
【図９】
0005580352.tif 000010