(57)【特許請求の範囲】
【請求項１】
データベースと前記データベースを管理するデータベース管理装置が設けられている複数のサイトと、前記サイト間を接続するネットワークを具備する情報処理システムにおいて、
前記データベース管理装置は、
自サイトに備えられている前記データベースに記憶されているデータの更新を検出すると、更新内容を示す差分情報を生成する差分生成部と、
他の前記サイトにおいて生成された前記差分情報に基づいて、自サイトに設けられている前記データベースに記憶されているデータを更新するデータベース更新部と、
前記データを共有する他の前記サイトに備えられている前記データベース管理装置に前記差分生成部が生成した差分情報を電子メール又は次世代網を介して送信し、前記他のサイトにおいて生成された前記差分情報を電子メール又は次世代網を介して受信する通信部と
を備え、
前記データベース管理装置は、
前記データを共有する前記サイトを識別する情報を予め記憶しているデータベース共有先テーブルを更に備え、
前記通信部は、
前記差分情報を送受信する際に、前記データベース共有先テーブルに記憶されている前記サイトを識別する情報を用い、
前記通信部が前記差分情報の送受信に電子メールを用いる場合、
前記データベース共有先テーブルは、更に、前記サイトごとに、前記サイトにおいて受信可能なメールのデータ量のデータサイズの上限値を予め記憶し、
前記差分生成部は、
前記差分情報を送信する際に、前記差分情報のデータ量が前記上限値以下であるか否かを判定し、前記差分情報のデータ量が前記上限値以下の場合、前記差分情報を前記通信部に出力し、前記差分情報のデータ量が前記上限値より大きい場合、前記差分情報を複数に分割して前記通信部に出力し、
前記通信部は、
前記他のサイトから受信した差分情報が分割されている場合、受信した差分情報を統合してから前記データベース更新部に出力することを特徴とする情報処理システム。
【請求項２】
請求項１に記載の情報処理システムであって、
前記データベース共有先テーブルは、更に、前記サイトごとに、前記データベースの更新を示す差分情報の優先順位を予め記憶し、
前記データベース更新部は、
自装置から前記他のサイトに送信した前記差分情報に対する応答としての反映結果情報を受信する前に、前記他のサイトから前記差分情報を受信した場合、受信した差分情報に含まれる時刻、及び該差分情報を送信した他のサイトの優先順位と自サイトの優先順位とに基づいて、前記データベースに記憶されているデータを前記受信した差分情報を用いて更新するか否かを判定する
ことを特徴とする情報処理システム。
【請求項３】
データベースと前記データベースを管理するデータベース管理装置が設けられている複数のサイトと、前記サイト間を接続するネットワークを具備する情報処理システムにおける情報処理方法であって、
各サイトに備えられている前記データベースに記憶されているデータの更新を検出すると、更新内容を示す差分情報を生成する差分生成ステップと、
他の前記サイトにおいて生成された前記差分情報に基づいて、自サイトに設けられている前記データベースに記憶されているデータを更新するデータベース更新ステップと、
前記データを共有する他の前記サイトに備えられている前記データベース管理装置に前記差分生成ステップにおいて生成した差分情報を電子メール又は次世代網を介して送信し、前記他のサイトにおいて生成された前記差分情報を電子メール又は次世代網を介して受信する通信ステップと
を有し、
前記通信ステップにおいて、
前記差分情報を送受信する際に、前記データを共有する前記サイトを識別する情報を予め記憶しているデータベース共有先テーブルに記憶されている前記サイトを識別する情報を用い、
前記通信ステップにおいて前記差分情報の送受信に電子メールを用いる場合、
前記データベース共有先テーブルには、更に、前記サイトごとに、前記サイトにおいて受信可能なメールのデータ量のデータサイズの上限値が予め記憶され、
前記差分生成ステップにおいて、
前記差分情報を送信する際に、前記差分情報のデータ量が前記上限値以下であるか否かを判定し、前記差分情報のデータ量が前記上限値以下の場合、前記差分情報をに出力し、前記差分情報のデータ量が前記上限値より大きい場合、前記差分情報を複数に分割して出力し、
前記通信ステップにおいて、
前記他のサイトから受信した差分情報が分割されている場合、受信した差分情報を統合してから出力することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、及び情報処理方法に関する。
【背景技術】
【０００２】
複数のサイト間（例えば、企業間や、ローカルエリアネットワーク間）でデータを共有するために、各サイトのデータベースに記憶されているデータを同期させることが行われている。データを同期させるためのアプリケーションとして、「ｒｓｙｎｃ」や「ｕｎｉｓｏｎ」などがある（非特許文献１、非特許文献２など）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】rsync. [online]. [retrieved on 2011-10-30]. Retrieved from the Internet:<URL: http://rsync.samba.org/>.
【非特許文献２】Unison File Synchronizer. [online]. [retrieved on 2011-10-30]. Retrieved from the Internet:<URL: http://www.cis.upenn.edu/~bcpierce/unison/>.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１、２に記載されているアプリケーションを用いる場合、各サイトにおいて当該アプリケーションによる通信を許可するためにファイアウォール等の設定を変更する必要がある。しかし、サイトによっては、当該サイトにおいて策定されているセキュリティポリシーに基づいて、外部のサイトからのアクセスを許可することを禁じている場合がある。この場合、前述のアプリケーションを用いたデータの共有を行うことができないという問題がある。
【０００５】
本発明は、上記問題を解決すべくなされたもので、その目的は、ファイアウォール等の設定を変更することなく、各サイトに設けられているデータベースのデータを同期させることができる情報処理システム、及び情報処理方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記問題を解決するために、本発明は、データベースと前記データベースを管理するデータベース管理装置が設けられている複数のサイトと、前記サイト間を接続するネットワークを具備する情報処理システムにおいて、前記データベース管理装置は、自サイトに備えられている前記データベースに記憶されているデータの更新を検出すると、更新内容を示す差分情報を生成する差分生成部と、他の前記サイトにおいて生成された前記差分情報に基づいて、自サイトに設けられている前記データベースに記憶されているデータを更新するデータベース更新部と、前記データを共有する他の前記サイトに備えられている前記データベース管理装置に前記差分生成部が生成した差分情報を電子メール又は次世代網を介して送信し、前記他のサイトにおいて生成された前記差分情報を電子メール又は次世代網を介して受信する通信部とを備えていることを特徴とする情報処理システムである。
【０００７】
また、本発明は、上記に記載の発明において、前記データベース管理装置は、前記データを共有する前記サイトを識別する情報を予め記憶しているデータベース共有先テーブルを更に備え、前記通信部は、前記差分情報を送受信する際に、前記データベース共有先テーブルに記憶されている前記サイトを識別する情報を用いることを特徴とする。
【０００８】
また、本発明は、上記に記載の発明において、前記通信部が前記差分情報の送受信に電子メールを用いる場合、前記データベース共有先テーブルは、更に、前記サイトごとに、受信可能なデータサイズの上限値を予め記憶し、前記差分生成部は、前記差分情報を送信する際に、前記差分情報が前記上限値以下であるか否かを判定し、前記差分情報が前記上限値以下の場合、前記差分情報を前記通信部に出力し、前記差分情報が前記上限値より大きい場合、前記差分情報を複数に分割して前記通信部に出力し、前記通信部は、前記他のサイトから受信した差分情報が分割されている場合、受信した差分情報を統合してから前記データベース更新部に出力することを特徴とする。
【０００９】
また、本発明は、上記に記載の発明において、前記データベース共有先テーブルは、更に、前記サイトごとに、前記データベースの更新を示す差分情報の優先順位を予め記憶し、前記データベース更新部は、自装置から前記他のサイトに送信した前記差分情報に対する応答としての反映結果情報を受信する前に、前記他のサイトから前記差分情報を受信した場合、受信した差分情報に含まれる時刻、及び該差分情報を送信した他のサイトの優先順位と自サイトの優先順位とに基づいて、前記データベースに記憶されているデータを前記受信した差分情報を用いて更新するか否かを判定することを特徴とする。
【００１０】
また、上記問題を解決するために、本発明は、データベースと前記データベースを管理するデータベース管理装置が設けられている複数のサイトと、前記サイト間を接続するネットワークを具備する情報処理システムにおける情報処理方法であって、各サイトに備えられている前記データベースに記憶されているデータの更新を検出すると、更新内容を示す差分情報を生成する差分生成ステップと、他の前記サイトにおいて生成された前記差分情報に基づいて、自サイトに設けられている前記データベースに記憶されているデータを更新するデータベース更新ステップと、前記データを共有する他の前記サイトに備えられている前記データベース管理装置に前記差分生成ステップにおいて生成した差分情報を電子メール又は次世代網を介して送信し、前記他のサイトにおいて生成された前記差分情報を電子メール又は次世代網を介して受信する通信ステップとを有することを特徴とする情報処理方法である。
【発明の効果】
【００１１】
この発明によれば、各データベースが記憶しているデータの更新内容の送受信に電子メール又は次世代網を用いて、サイト間におけるデータの共有を行う。電子メールは広く普及しているため、ファイアウォール等の設定の変更を要することなく、サイト間におけるデータの共有を行うことができる。また、ＮＧＮは、公衆交換電話網と同様に、回線に加入していれば通信が可能であるため、ファイアウォール等を設ける必要がないので設定を変更する必要なく、サイト間におけるデータの共有を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態における情報処理システム１００の構成を示す概略ブロック図である。
【図２】同実施形態における他のサイト１に対してデータベース２０の更新を要求する更新要求処理の手順を示すフローチャートである。
【図３】同実施形態における他のサイト１からデータベース２０の更新指示を受信した際の更新応答処理の手順を示すフローチャートである。
【図４】第２の実施形態における情報処理システム２００の構成を示す概略ブロック図である。
【図５】同実施形態における他のサイト１に対してデータベース２０の更新を要求する更新要求処理の手順を示すフローチャートである。
【図６】同実施形態における他のサイト１からデータベース２０の更新指示を受信した際の更新応答処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１３】
本発明は、複数のサイトにおけるデータの共有を目的とし、各サイトにおいてデータベースが記憶しているデータを一致させる管理を行う。本発明では、サイト間においてデータを共有するために、各データベースが記憶しているデータの更新に電子メール又は次世代網を用いる。
以下、図面を参照して、本発明の実施形態における情報処理システム、及び情報処理方法を説明する。
【００１４】
［第１の実施形態］
図１は、第１の実施形態における情報処理システム１００の構成を示す概略ブロック図である。情報処理システム１００は、各サイト１に設けられているデータベース管理装置１０、データベース２０、及びファイアウォール３０と、各サイト１を接続する外部ネットワーク２とを具備している。外部ネットワーク２は、例えばインターネットなどである。ここで、サイト１は、例えば企業や大学などの団体、又はグループにおけるイントラネットやローカルエリアネットワークである。
データベース管理装置１０は、他のサイト１のデータベース管理装置１０と連携して、自サイト１のデータベース２０に記憶されているデータと、他のサイト１のデータベース２０に記憶されているデータとを一致させる管理を行う。データベース２０は、各サイト１において共有すべきデータを記憶する。ファイアウォール３０は、外部ネットワーク２からの不正なアクセス等を防ぐために、自サイト１内に設けられている装置と外部の装置との通信の制御を行う。
ここでは、サイト１の数が２つの場合について説明するが、３つ以上のサイト間でデータベース２０に記憶されているデータを共有するようにしてもよい。
【００１５】
データベース管理装置１０は、メール受信部１１及びメール送信部１８を有する通信部１９と、ＤＢ（データベース）共有先テーブル１２と、認証部１３と、データベース更新部１５と、更新検出部１６と、差分生成部１７とを備えている。
メール受信部１１は、自装置に予め割り当てられているメールアカウント宛に送信された電子メールを受信する。また、メール受信部１１は、受信した電子メールの内容に応じて、受信した電子メールを認証部１３、又は差分生成部１７に出力する。
ＤＢ共有先テーブル１２は、データを共有するサイト１ごとに、サイト１を識別する情報と、サイト１に設けられているデータベース管理装置１０に割り当てられているメールアカウントと、サイト１における優先順位と、サイト１において受信可能なメールのデータ量のデータサイズ上限値とを含む共有先情報を記憶している。ここで、優先順位は、複数のサイト１においてデータベース２０の更新があった場合に、いずれのサイト１の更新を優先するかを示す情報である。
【００１６】
認証部１３は、メール受信部１１から電子メールが入力されると、入力された電子メールの送信元がＤＢ共有先テーブル１２に記憶されている否かを判定する認証処理を行う。また、認証部１３は、認証結果に応じて、入力された電子メールをデータベース更新部１５に出力する。
データベース更新部１５は、認証部１３から入力された電子メールに基づいて、データベース２０に記憶されているデータを更新する。
【００１７】
更新検出部１６は、データベース２０に記憶されているデータに対する更新を検出し、データベース２０の更新があった場合、差分生成部１７に通知する。なお、更新検出部１６は、自サイト１内におけるデータの処理によるデータベース２０の更新を検出対象とし、他のサイト１から受信した更新の指示に基づくデータベース２０の更新を検出の対象外としている。また、データベース２０の更新は、例えば、サイト１内の備えられている端末装置（不図示）などを用いて行われる。
差分生成部１７は、データベース２０に記憶されているデータの更新が検出されると、データベース２０に記憶されているデータの更新内容と、更新を検出した時刻とを含む差分情報を生成する。差分生成部１７は、生成した差分情報をメール送信部１８に出力する。また、差分生成部１７は、差分情報の再送要求を示す電子メールがメール受信部１１から入力されると、差分情報をメール送信部１８に再度出力する。
メール送信部１８は、データを共有する各サイト１のデータベース管理装置１０に、入力される情報を電子メールとして送信する。メール送信部１８が送信する情報は、差分生成部１７が生成する差分情報と、データベース更新部１５が生成する反映結果情報とである。反映結果情報は、他のサイト１から受信した、データベース２０を更新する指示に基づいて、データベース２０に記憶されているデータを正しく更新できたか否かを示す情報である。正しく更新できたか否かの判定は、受信した差分情報の破損等によるデータ異常の検出により行う。データ異常の検出は、サムチェックやＣＲＣ、電子透かしなどの公知の技術を用いて行う。
【００１８】
図２は、本実施形態における他のサイト１に対してデータベース２０の更新を要求する更新要求処理の手順を示すフローチャートである。データベース管理装置１０は、予め定められた周期ごとに、又は外部からの要求に応じて更新要求処理を実行する。
データベース管理装置１０において、更新要求処理が開始されると、更新検出部１６が、データベース２０に記憶されているデータに対して更新が行われたか否かを判定し（ステップＳ１０１）、更新がない場合（ステップＳ１０１：ＮＯ）、所定の時間が経過した後に再度ステップＳ１０１の処理を行い、定期的にデータベース２０に記憶されているデータに対する更新の有無を判定する。
一方、データに対して更新が行われていた場合（ステップＳ１０１：ＹＥＳ）、差分生成部１７が差分情報を生成し、生成した差分情報をメール送信部１８に出力する（ステップＳ１０２）。ステップＳ１０２において、差分生成部１７は、データ量を削減するために生成した差分情報に対して、可逆圧縮を施すようにしてもよい。
【００１９】
メール送信部１８は、入力された差分情報のデータ量が、ＤＢ共有先テーブル１２に記憶されているデータサイズ上限値以下であるか否かを判定し（ステップＳ１０３）、データ量がデータサイズ上限値より大きい場合（ステップＳ１０３：ＮＯ）、差分情報を複数の情報に分割する（ステップＳ１０４）。
メール送信部１８は、差分情報、又は分割された差分情報に対して暗号化を施し、暗号化した差分情報と、差分情報を用いてデータを更新することを示す更新指示とを含む電子メールを、ＤＢ共有先テーブル１２に記憶されているメールアカウント宛に送信する（ステップＳ１０５）。なお、暗号化は予め定めた方式で行い、公開鍵方式又は秘密鍵方式のいずれを用いてもよい。
データベース管理装置１０は、更新指示を含む電子メールを送信すると、反映結果情報の受信待ち状態となる。
【００２０】
メール受信部１１は、受信待ち状態において、他のサイト１から電子メールを受信すると、受信したメールに反映結果情報が含まれているか否か、更に、反映結果情報が正しくデータベース２０を更新できたことを示しているか否かを判定する（ステップＳ１０６）。反映結果情報を受信し、かつ反映結果情報が正しくデータベース２０を更新できたことを示している場合（ステップＳ１０６：ＹＥＳ）、メール受信部１１は処理をステップＳ１０９に進める。
一方、受信したメールが反映結果情報でないか、又は反映結果情報が正しくデータベース２０を正しく更新できなかったことを示している場合、メール受信部１１は、受信したメールを送信した他のサイト１に対して、差分情報を再送信が必要か否かを判定する（ステップＳ１０７）。
【００２１】
具体的には、差分情報の送信先とした他のサイト１から所定の時間内に反映結果情報が受信されない場合、又は反映結果情報が正しくデータベース２０を更新できなかったことを示している場合に、差分情報を再送信する。判定の結果、再送信が必要な場合（ステップＳ１０７：ＯＫ）、メール受信部１１は、差分生成部１７に対して差分情報をメール送信部１８に再度出力させる制御を行う。メール送信部１８は、差分生成部１７から入力された差分情報に対して暗号化を施し、暗号化した差分情報と、差分情報を用いてデータを更新することを示す更新指示とを含む電子メールを、反映結果情報を返信した他のサイト１に対応するメールアカウント宛に送信する（ステップＳ１０８）。
一方、再送が不要な場合（ステップＳ１０７：ＮＧ）、メール受信部１１は、処理をステップＳ１０９に進める。
【００２２】
メール受信部１１は、データを共有するサイト１全てから、正しくデータベース２０を更新できたことを示す反映結果情報を受信したか否かを判定し（ステップＳ１０９）、全てのサイト１から反映結果情報を受信した場合（ステップＳ１０９：ＹＥＳ）、メール受信部１１は、更新要求処理を終了させる。一方、全てのサイト１から反映結果情報を受信していない場合（ステップＳ１０９：ＮＯ）、メール受信部１１は、処理をステップＳ１０６に戻して、ステップＳ１０６からステップＳ１０９までの処理を繰り返して行う。
【００２３】
このように、データベース管理装置１０は、自サイト１に備えられているデータベース２０が更新されると、データを共有する他のサイト１のデータベース管理装置１０宛てに、当該更新内容及び更新指示を含む電子メールを送信する。データベース管理装置１０は、送信した更新指示に対する応答としての反映結果情報を受信し、受信した反映結果情報がデータベース２０を正しく更新できたことを示す場合に更新要求処理を終了し、反映結果情報がデータベース２０を正しく更新できなかったことを示す場合に電子メールを再送する。
【００２４】
図３は、本実施形態における他のサイト１からデータベース２０の更新指示を受信した際の更新応答処理の手順を示すフローチャートである。データベース管理装置１０は、予め定められた周期ごとに、又は外部からの要求に応じて更新応答処理を実行する。
データベース管理装置１０において、メール受信部１１が自装置宛の電子メールを受信しているか否かを判定し（ステップＳ２０１）、自装置宛の電子メールの受信がない場合（ステップＳ２０１：ＮＯ）、更新応答処理を終了させる。
一方、自装置宛の電子メールを受信している場合（ステップＳ２０１：ＹＥＳ）、メール受信部１１は、受信した電子メールを認証部１３に出力する。認証部１３は、入力された電子メールに対して認証処理を行う（ステップＳ２０２）。
【００２５】
認証部１３は、電子メールの送信元を示す情報がＤＢ共有先テーブル１２に記憶されていない場合（ステップＳ２０２：ＮＯ）、入力された電子メールが不正な情報であるとみなして破棄し（ステップＳ２０３）、更新応答処理を終了させる。
また、電子メールの送信元を示す情報がＤＢ共有先テーブル１２に記憶されている場合（ステップＳ２０２：ＹＥＳ）、認証部１３は、受信した電子メールをデータベース更新部１５に出力する。データベース更新部１５は、入力された電子メールに含まれる差分情報を復号し（ステップＳ２０４）、当該差分情報が分割されているか否かを判定する（ステップＳ２０５）。
差分情報が分割されていない場合（ステップＳ２０５：ＮＯ）、データベース更新部１５は処理をステップＳ２０７に進める。差分情報が分割されている場合（ステップＳ２０５：ＹＥＳ）、データベース更新部１５は、認証部１３を介して、入力される電子メールに含まれる差分情報を統合する（ステップＳ２０６）。
【００２６】
データベース更新部１５は、復号した差分情報に含まれる時刻と、他のサイト１に対して送信した差分情報に含まれる時刻とを比較する（ステップＳ２０７）。復号した差分情報に含まれる時刻が、送信した差分情報に含まれる時刻より古い場合（ステップＳ２０７：古い）、データベース更新部１５は処理をステップＳ２１２に進める。また、復号した差分情報に含まれる時刻が、送信した差分情報に含まれる時刻より新しい場合（ステップＳ２０７：新しい）、データベース更新部１５は処理をステップＳ２０９に進める。
復号した差分情報に含まれる時刻が、送信した差分情報に含まれる時刻と同じ時刻を示す場合（ステップＳ２０７：同じ）、データベース更新部１５は、ＤＢ共有先テーブル１２に記憶されている優先順位に基づいて、復号した差分情報を送信した他のサイト１の優先順位が自サイト１の優先順位より高いか否かを判定する（ステップＳ２０８）。
なお、ステップＳ２０７において、自装置が他のサイト１に対して送信した差分情報がない場合、データベース更新部１５は、復号した差分情報に含まれる時刻が、送信した差分情報に含まれる時刻より新しい場合（ステップＳ２０７：新しい）と同様の処理を行うようにしてもよい。
【００２７】
他のサイト１の優先順位が自サイト１の優先順位より低い場合（ステップＳ２０８：低い）、データベース更新部１５は処理をステップＳ２１２に進める。一方、他のサイト１の優先順位が自サイト１の優先順位より高い場合（ステップＳ２０８：高い）、データベース更新部１５は、復号した差分情報を用いて、データベース２０に記憶されているデータを更新する（ステップＳ２０９）。
【００２８】
データベース更新部１５は、データベース２０に記憶されているデータを正しく更新できたか否かを判定し（ステップＳ２１０）、正しく更新できた場合（ステップＳ２１０：ＹＥＳ）、正しくデータを更新できたことを示す反映結果情報を、差分情報を送信した他のサイト１に対応するメールアカウント宛に送信し（ステップＳ２１２）、更新応答処理を終了する。
一方、正しく更新できなかった場合（ステップＳ２１０：ＮＯ）、データベース更新部１５は、正しくデータを更新できなかったことを示す反映結果情報を、差分情報を送信した他のサイト１に対応するメールアカウント宛に送信し（ステップＳ２１１）、更新応答処理を終了する。
なお、ステップＳ２１０における判定を、受信した差分情報（パケット又はファイル）の破損等によるデータ異常検出を用いて行うようにしてもよい。また、通信機器の故障によるデータの破損や、暗号化鍵の不一致になる復号化失敗等の検出を用いるようにしてもよい。
【００２９】
このように、データベース管理装置１０は、他のサイト１に備えられているデータベース管理装置１０から更新指示を含む電子メールを受信すると、データベース２０に記憶されているデータを更新し、その更新結果を示す反映結果情報を返信する。
また、データベース管理装置１０が反映結果情報の受信待ち状態である場合に、更新指示を含む電子メールを受信すると、差分情報に含まれる時刻、及び、ＤＢ共有先テーブル１２に記憶されている優先順位に基づいて、自サイト１の更新指示と他のサイト１の更新指示とのいずれを優先させるかを決定し、データベース２０に記憶されているデータの更新を行う。これにより、共有するデータの一致性を維持することができる。
【００３０】
本実施形態における情報処理システム１００は、共有するデータの一致性を維持するための情報の送受信に電子メールを用いるようにしている。既に広く普及している電子メールを用いてデータベース２０の管理を行うことにより、コストを掛けず、かつ簡易にシステムを構築することができる。また、データベース管理装置１０は、既に普及している電子メールを用いて通信をするため、サイト１ごとに設けられているファイアウォール３０の設定を変更することなく、導入することができる。
なお、データベース管理装置１０に割り当てるメールアカウントは、セキュリティ上の観点から、外部に公開していないメールアカウントを用いるようにしてもよい。
【００３１】
［第２の実施形態］
図４は、第２の実施形態における情報処理システム２００の構成を示す概略ブロック図である。情報処理システム１００は、各サイト１に設けられているデータベース管理装置５０と、データベース２０と、各サイト１を接続するＮＧＮ（Next Generation Network：次世代網）ネットワーク５とを具備している。以下、本実施形態において、第１の実施形態と同じ構成部には同じ符号を付して、その説明を省略する。
データベース管理装置５０は、第１の実施形態におけるデータベース管理装置１０（図１）と同様に、他のサイト１のデータベース管理装置５０と連携して、自サイト１のデータベース２０に記憶されているデータと、他のサイト１のデータベース２０に記憶されているデータとを一致させる管理を行う。また、本実施形態では、サイト１の数が２つの場合について説明するが、３つ以上のサイト間でデータベース２０に記憶されているデータを共有するようにしてもよい。
【００３２】
データベース管理装置５０は、通信部５１と、ＤＢ共有先テーブル５２と、データベース更新部１５と、更新検出部１６と、差分生成部１７とを備えている。
通信部５１は、ＮＧＮ５を介して、自装置に予め割り当てられている識別子（電話番号）宛の着呼を受けて通信を開始し、受信したデータをデータベース更新部１５に出力する。また、通信部５１は、データを共有するサイト１のデータベース管理装置５０に、差分生成部１７から入力される情報を送信する。
ＤＢ共有先テーブル５２は、データを共有するサイト１ごとに、サイト１に予め割り当てられている識別子（電話番号）が記憶されている。
【００３３】
図５は、本実施形態における他のサイト１に対してデータベース２０の更新を要求する更新要求処理の手順を示すフローチャートである。データベース管理装置５０は、予め定められた周期ごとに、又は外部からの要求に応じて更新要求処理を実行する。
データベース管理装置５０において、更新要求処理が開始されると、更新検出部１６が、データベース２０に記憶されているデータに対して更新が行われたか否かを判定し（ステップＳ４０１）、更新がない場合（ステップＳ４０１：ＮＯ）、所定の時間が経過した後に再度ステップＳ４０１の処理を行い、定期的にデータベース２０に記憶されているデータに対する更新の有無を判定する。
一方、データに対して更新が行われていた場合（ステップＳ４０１：ＹＥＳ）、差分生成部１７が差分情報を生成する（ステップＳ４０２）。
差分生成部１７は、生成した差分情報に対して圧縮及び暗号化を施し、得られたデータを通信部５１に出力する（ステップＳ４０３）。
【００３４】
通信部５１は、ＤＢ共有先テーブル５２に記憶されているサイト１に対応する識別子を読み出し、読み出した識別子宛に発呼する（ステップＳ４０４）。
通信部５１は、ＮＧＮ５を介して、他のサイト１に備えられているデータベース管理装置５０と接続が成功したか否かを判定し（ステップＳ４０５）、接続に失敗した場合（ステップＳ４０５：ＮＯ）、所定の時間待機した後に再度発呼し（ステップＳ４０６）、ステップＳ４０５に処理を戻す。ここで、所定の時間とは、ステップＳ４０６が実施されるたびにランダムに決定される時間である。
一方、接続に成功した場合、通信部５１は、接続したデータベース管理装置５０にデータを送信し、当該データの送信に対応する反映結果情報を受信する（ステップＳ４０７）。
【００３５】
通信部５１は、受信した反映結果情報に基づいて、再送信が必要か否かを判定し（ステップＳ４０８）、再送信が必要な場合（ステップＳ４０８：ＹＥＳ）、処理をステップＳ４０７に戻す。一方、再送信が必要でない場合（ステップＳ４０８：ＮＯ）、通信部５１は、ＮＧＮ５を介した通信を切断し（ステップＳ４０９）、更新要求処理を終了させる。
なお、ステップＳ４０８において通信部５１は、反映結果情報が正しくデータベース２０を更新できたことを示す場合に、再送信が不要であると判定し、反映結果情報が正しくデータベース２０を更新できなかったことを示す場合に、再送信が必要であると判定する。
【００３６】
図６は、本実施形態における他のサイト１からデータベース２０の更新指示を受信した際の更新応答処理の手順を示すフローチャートである。
データベース管理装置５０において、通信部５１は、自装置宛の着呼があると（ステップＳ５０１）、発呼元の識別子がＤＢ共有先テーブル５２に記憶されているか否かを判定する認証を行う（ステップＳ５０２）。
発呼元の識別子がＤＢ共有先テーブル５２に記憶されていない場合（ステップＳ５０２：ＮＧ）、通信部５１は、処理をステップＳ５０９に進める。
一方、発呼元の識別子がＤＢ共有先テーブル５２に記憶されている場合（ステップＳ５０２：ＯＫ）、通信部５１は、ＮＧＮ５を介して、他のサイト１に備えられているデータベース管理装置５０と接続する（ステップＳ５０３）。
【００３７】
通信部５１は、接続先からデータを受信し、受信したデータをデータベース更新部１５に出力する（ステップＳ５０４）。
データベース更新部１５は、入力されたデータに対して復元及び復号を施し（ステップＳ５０５）、得られた差分情報を用いてデータベース２０に記憶されているデータを更新する（ステップＳ５０６）。
通信部５１は、データベース更新部１５がデータベース２０の更新を完了すると、正しくデータベース２０を更新できたか否かを判定し（ステップＳ５０７）、正しく更新できた場合（ステップＳ５０７：ＹＥＳ）、正しくデータベース２０を更新できたことを示す反映結果情報を送信し、ＮＧＮ５を介した通信を切断して（ステップＳ５０８）、更新応答等処理を終了させる。一方、正しくデータベース２０を更新できなった場合（ステップＳ５０７：ＮＯ）、データベース更新部１５は、正しくデータベース２０を更新できなかったことを示す反映結果情報を送信し、処理をステップＳ５０４に戻す。
なお、ステップＳ５０７における判定は、受信した差分情報（パケット又はファイルなど）の破損等によるデータ異常検出などを用いて行うようにしてもよい。また、通信機器の故障によるデータの破損や、暗号鍵の不一致による復号化失敗などの検出を用いるようにしてもよい。
【００３８】
このように、データベース管理装置５０は、自サイト１に備えられているデータベース２０の更新を検出すると、当該更新に対応する差分情報を生成し、ＮＧＮ５を介して、生成した差分情報を他のサイト１に備えられているデータベース管理装置５０に送信する。データベース管理装置５０は、他のサイト１のデータベース管理装置５０からの着呼があると、発呼元の認証を行った後に、受信した差分情報に基づいてデータベース２０を更新する。これにより、共有するデータ一致性を維持することができる。
本実施形態における情報処理システム２００は、共有するデータの一致性を維持するための情報の送受信にＮＧＮ（次世代網）５を用いるようにしている。ＮＧＮ５は、公衆交換電話網と同様に、回線に加入していれば通信が可能であるため、コストを掛けず、かつ簡易にシステムを構築することができる。また、本実施形態では、ＮＧＮ５の回線認証を利用可能なため、発呼先（接続先）の認証を容易に行うことができ、認証レベルを強固にすることができる。また、閉域網を利用することになるため、盗聴や改竄の可能性を低くすることができる。また、電子メールなどと異なり、一度の送受信におけるデータサイズの上限値がないため、差分情報を分割する必要がなく、データベース管理装置５０における負荷を小さくすることができる。また、差分情報が他のサイト１においてデータベース２０に反映されるまでのタイムラグがないため、衝突回避処理を行う必要がない。本実施形態では、差分情報に対して圧縮を施して送信するため、データの送受信に要する時間を短縮することができる。
なお、データベース管理装置５０に割り当てる識別子（電話番号）は、データベース管理装置５０間の通信に用いる専用の識別子を用いるようにしてもよい。
【００３９】
ところで、サイトごとに設けられているデータベースが大量のデータを扱う大規模な管理を要する場合、データベースを管理するデータベース管理装置には、サイト間の効率的なデータ連携のために低遅延かつ低廃棄率のネットワークや、排他制御、ロールバック機能などの高度の機能が必要とされ、構築及び導入に高いコストを要する。一方で、小規模なデータを管理する場合、コストの問題から機密性の高いデータを管理する情報処理システムを構築することは困難であり、サイト間におけるデータの共有化によるメリットを享受できず紙や人手による処理が主流であった。
これに対して、上述の各実施形態において説明した情報処理システム１００、２００を用いることにより、電子メール又はＮＧＮを利用することにより、システムを構築する際のコストを抑えることができるので、小規模なデータの管理に適用することが容易になる。また、他のサイト１から自サイト１内のイントラネットやローカルエリアネットワークに対するアクセス権限の設定や管理を行う必要がない。そのため、複雑なファイアウォールの設定や社内システムへのアクセス権限の管理、サイト１間のセキュリティポリシーの策定及び他のサイト１への運用の徹底など、外部から自サイト１内のネットワークにアクセスすることに附随する様々な課題を避けることが可能となる。
【００４０】
上述のデータベース管理装置は内部に、コンピュータシステムを有していてもよい。その場合、上述した更新要求処理、更新応答処理及び衝突回避処理の処理過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われることになる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【符号の説明】
【００４１】
１…サイト
２…外部ネットワーク
５…ＮＧＮ
１０，５０…データベース管理装置
１１…メール受信部
１２，５２…ＤＢ共有先テーブル
１３…認証部
１５…データベース更新部
１６…更新検出部
１７…差分生成部
１８…メール送信部
１９，５１…通信部
２０…データベース
３０…ファイアウォール
１００，２００…情報処理システム
【図１】
0005806127.tif 000002
【図２】
0005806127.tif 000003
【図３】
0005806127.tif 000004
【図４】
0005806127.tif 000005
【図５】
0005806127.tif 000006
【図６】
0005806127.tif 000007