(57)【特許請求の範囲】
【請求項１】
少なくとも１つのクライアント端末と、複数のデータベースと、少なくとも１つの共通データベースと、前記共通データベースを制御する共通データベース制御装置と、前記データベースを管理するデータベース管理装置と、を有する情報制御システムによる情報制御方法であって、
前記共通データベースには、各データベースに格納されている第１のデータのコピーである第２のデータと、当該第２のデータに対して前記クライアント端末が読込アクセスした際のアクセス周期と、が対応付けられて格納されており、
前記共通データベース制御装置は、前記アクセス周期に従って、
前記データベース管理装置に、前記データベースに格納されている前記第１のデータを検索させる検索処理と、前記検索処理によって前記検索した第１のデータを送信させる送信処理と、を行わせるコマンドが格納されているメッセージを生成し、
前記生成したメッセージをブロードキャスト送信し、
前記ブロードキャスト送信されたメッセージを受信した前記データベース管理装置は、
受信した前記メッセージに格納されている前記コマンドにおける前記検索処理によって、前記メッセージで指示されている検索対象のデータベースが、自身が管理するデータベースである場合、前記メッセージの前記コマンドに従って当該データベースから第１のデータを取得し、
さらに、前記コマンドにおける前記送信処理によって、前記取得した第１のデータを前記メッセージに格納してブロードキャスト送信し、
前記共通データベース制御装置は、
前記データベース管理装置から前記ブロードキャスト送信されたメッセージに格納されている前記第１のデータを前記第２のデータとして前記共通データベースに格納する
ことを特徴とする情報制御方法。
【請求項２】
前記共通データベース制御装置は、
巡回対象となっているすべての前記データベース管理装置を巡回して、巡回対象となっているすべての前記データベース管理装置の情報を格納し、自身に戻ってきた前記メッセージから前記第１のデータを抽出し、
抽出した前記第１のデータを前記第２のデータとして前記共通データベースに格納する
ことを特徴とする請求項１に記載の情報制御方法。
【請求項３】
前記共通データベース制御装置は、
前記アクセス周期を監視しており、
前記アクセス周期が変化すると、前記共通データベースに格納されているアクセス周期に関する情報を更新する
ことを特徴とする請求項１に記載の情報制御方法。
【請求項４】
前記共通データベース制御装置は、
前記アクセス周期に従って、前記メッセージをグループ分けする
ことを特徴とする請求項１に記載の情報制御方法。
【請求項５】
前記共通データベースには、前記データベースに関する情報が格納されており、
前記共通データベース制御装置は、
前記情報制御システムに対して、新規にデータベースが接続された場合、前記クライアント端末を介して入力された、前記接続されたデータベースに関する情報を、前記共通データベースに格納する
ことを特徴とする請求項１に記載の情報制御方法。
【請求項６】
少なくとも１つのクライアント端末と、複数のデータベースと、少なくとも１つの共通データベースと、前記共通データベースを制御する共通データベース制御装置と、前記データベースを管理するデータベース管理装置と、を有する情報制御システムによる情報制御方法であって、
前記共通データベースには、各データベースに格納されている第３のデータのコピーである第４のデータと、当該第４のデータに対して前記クライアント端末が書込アクセスした際のアクセス周期と、が対応付けられて格納されており、
前記共通データベース制御装置は、前記アクセス周期に従って、
前記データベース管理装置に、前記共通データベースに格納されている前記第４のデータを、前記第４のデータに対応する前記第３のデータを格納している前記データベースに書き込む書込処理を行わせるためのコマンドと、前記第４のデータと、が格納されているメッセージを生成し、
前記生成したメッセージをブロードキャスト送信し、
前記ブロードキャスト送信されたメッセージを受信した前記データベース管理装置は、
受信した前記メッセージに格納されている前記コマンドにおける前記書込処理の対象となっているデータベースが、自身が管理するデータベースである場合、前記メッセージにおける前記コマンドの前記書込処理によって、当該データベースへ前記第４のデータを書き込む
ことを特徴とする情報制御方法。
【請求項７】
前記共通データベース制御装置は、
前記アクセス周期を監視しており、
前記アクセス周期が変化すると、前記共通データベースに格納されているアクセス周期に関する情報を更新する
ことを特徴とする請求項６に記載の情報制御方法。
【請求項８】
前記共通データベース制御装置は、
前記アクセス周期に従って、前記メッセージをグループ分けする
ことを特徴とする請求項６に記載の情報制御方法。
【請求項９】
前記共通データベースには、前記データベースに関する情報が格納されており、
前記共通データベース制御装置は、
前記情報制御システムに対して、新規にデータベースが接続された場合、前記クライアント端末を介して入力された、前記接続されたデータベースに関する情報を、前記共通データベースに格納する
ことを特徴とする請求項６に記載の情報制御方法。
【請求項１０】
請求項１から請求項９のいずれか一項に記載の情報制御方法を、コンピュータに実行させるためのプログラム。
【請求項１１】
少なくとも１つのクライアント端末と、
複数のデータベースと、
各データベースに格納されている第１のデータのコピーである第２のデータと、当該第２のデータに対して前記クライアント端末が読込アクセスした際のアクセス周期と、が対応付けられて格納されている、少なくとも１つの共通データベースと、
前記アクセス周期に従って、データベース管理装置に、前記データベースに格納されている前記第１のデータを検索させる検索処理と、前記検索処理によって前記検索した第１のデータを送信させる送信処理と、を行わせるコマンドが格納されているメッセージを生成し、前記生成したメッセージをブロードキャスト送信し、前記データベース管理装置から前記ブロードキャスト送信されたメッセージに格納されている前記第１のデータを前記第２のデータとして前記共通データベースに格納する共通データベース制御装置と、
前記ブロードキャスト送信されたメッセージを受信すると、受信した前記メッセージに格納されている前記コマンドにおける前記検索処理によって、前記メッセージで指示されている検索対象のデータベースが、自身が管理するデータベースである場合、前記メッセージの前記コマンドに従って当該データベースから第１のデータを取得し、さらに、前記コマンドにおける前記送信処理によって、前記取得した第１のデータを前記メッセージに格納してブロードキャスト送信するデータベース管理装置と、
を有することを特徴とする情報制御システム。
【請求項１２】
少なくとも１つのクライアント端末と、
複数のデータベースと、
各データベースに格納されている第３のデータのコピーである第４のデータと、当該第４のデータに対して前記クライアント端末が書込アクセスした際のアクセス周期と、が対応付けられて格納されている、少なくとも１つの共通データベースと、
前記アクセス周期に従って、データベース管理装置に、前記共通データベースに格納されている前記第４のデータを、前記第４のデータに対応する前記第３のデータを格納している前記データベースに書き込む書込処理を行わせるためのコマンドと、前記第４のデータと、が格納されているメッセージを生成し、前記生成したメッセージをブロードキャスト送信する共通データベース制御装置と、
前記ブロードキャスト送信されたメッセージを受信すると、受信した前記メッセージに格納されている前記コマンドにおける前記書込処理の対象となっているデータベースが、自身が管理するデータベースである場合、前記メッセージにおける前記コマンドの前記書込処理によって、当該データベースへ前記第４のデータを書き込むデータベース管理装置と、
を有することを特徴とする情報制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報制御方法、プログラムおよび情報制御システムの技術に関する。
【背景技術】
【０００２】
ネットワーク上に複数のデータベースを有し、この複数のデータベースにデータを分散させて管理し、これらのデータベースを，あたかも単一のデータベースであるかのように見せる分散データベースシステム（以下、適宜「システム」と称する）が知られている（例えば、非特許文献１参照）。
このような分散データベースシステムは、システムの変更などに対処しやすい、災害発生時にすべてのデータを一度に失うことがないなどといった利点がある。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】「分散データベースプログラミング」、[online]、［平成２２年２月８日検索］、インターネット<URL:http://publib.boulder.ibm.com/html/as400/v4r5/ic2962/info/db2/rbal1mstduw.htm>
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、分散データベースシステムでは、データが複数のデータベースに分散しているため、必要とするデータが、どのデータベースに格納されているのかを把握することが困難である。
これに対し、システムを１つのデータベースで集中管理する方式にすると、災害発生時にすべてのデータを一度に失ってしまうおそれがあるといった問題点が生じる。
【０００５】
このような背景に鑑みて本発明がなされたのであり、本発明は、分散データベースの利点を残しつつ、データの一元管理が可能であり、かつ分散データベースの管理を容易にすることを目的とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するため、本発明を完成するに至った。すなわち、本発明は、共通データベースに、各データベースに格納されているデータのコピーと、前記データのコピーに対する読込アクセスまたは書込アクセスの周期と、を格納しておき、共通データベースサーバがこれらの周期を基に、データベース管理装置に自身に格納されているデータを書き込ませる、あるいは、データベースからデータを自身に書き込ませるコマンドを有するメッセージを生成し、このメッセージをブロードキャスト送信し、メッセージを受信したデータベース管理装置は、メッセージ中のコマンドを実行する。そして、データベース管理装置は、コマンドが、データを書き込ませるものである場合、コマンドの命令を実行した後、該メッセージをブロードキャスト送信することで、共通データベースサーバは、各データベースからデータのコピーを収集し、あるいは、各データベースに共通データベースのデータ更新を反映することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、分散データベースの利点を残しつつ、データの一元管理が可能であり、かつ分散データベースの管理を容易にすることが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る情報制御システムの構成例を示す図である。
【図２】本実施形態に係る共通データベースサーバの構成例を示す機能ブロック図である。
【図３】本実施形態に係るデータベースサーバの構成例を示す機能ブロック図である。
【図４】本実施形態に係るクライアント端末の構成例を示す機能ブロック図である。
【図５】本実施形態に係る読込用データ情報の例を示す図である。
【図６】本実施形態に係る書込用データ情報の例を示す図である。
【図７】本実施形態のデータ読込処理の概要を説明するための図である
【図８】本実施形態に係る読込アクセス周期更新処理の手順を示すフローチャートである。
【図９】本実施形態に係るデータ収集メッセージ発行処理の手順を示すフローチャートである。
【図１０】本実施形態に係るデータベースからデータを取得する処理の手順を示すフローチャートである。
【図１１】本実施形態に係る読込用データ情報へのデータ書込処理の手順を示すフローチャートである。
【図１２】本実施形態のデータ書込処理の概要を説明するための図である。
【図１３】本実施形態に係る書込アクセス周期更新処理の手順を示すフローチャートである。
【図１４】本実施形態に係るデータ書込メッセージ発行処理の手順を示すフローチャートである。
【図１５】本実施形態に係るデータベースサーバへデータを書き込む処理の手順を示すフローチャートである。
【図１６】本実施形態に係るデータベース新規接続時処理の概要を説明するための図である。
【図１７】本実施形態に係る登録用メッセージ発行処理の手順を示すフローチャートである。
【図１８】本実施形態に係る参照用データ登録処理の手順を示すフローチャートである。
【図１９Ａ】本実施形態における情報制御システムの構築例を説明するための図である（その１）。
【図１９Ｂ】本実施形態における情報制御システムの構築例を説明するための図である（その２）。
【図１９Ｃ】本実施形態における情報制御システムの構築例を説明するための図である（その３）。
【図１９Ｄ】本実施形態における情報制御システムの構築例を説明するための図である（その４）。
【発明を実施するための形態】
【０００９】
次に、本発明を実施するための形態（「実施形態」という）について、適宜図面を参照しながら詳細に説明する。なお、各図面において同一の構成要素については、同一の符号を付して説明を省略する。
【００１０】
《システム構成》
図１は、本実施形態に係る情報制御システムの構成例を示す図である。
情報制御システム１０は、少なくとも１台のクライアント端末５、複数のデータベース４、各データベース４を制御するデータベースサーバ（データベース管理装置）３、１台の共通データベース２、共通データベース２を制御する共通データベースサーバ（共通データベース制御装置）１を有する。
本実施形態では、クライアント端末５は１台、データベース４は５台（「ＤＢ−Ａ」〜「ＤＢ−Ｅ」）、データベースサーバ３は５台で、それぞれのデータベースサーバ３は１台のデータベース４に接続されているものとして説明する。なお、１台のデータベースサーバ３が複数のデータベース４を制御するようにしてもよい。
【００１１】
各データベース４には、データ４１（第１のデータ、第３のデータ）が格納されている。すなわち、データベース４のうちの「ＤＢ−Ａ」には「Ａ：１１１１」、「Ｂ：２２２２」、「Ｄ：４４４４」のデータ４１が格納されており、「ＤＢ−Ｂ」には「Ｅ：５５５５」のデータ４１が格納されている。同様にデータベース４のうちの「ＤＢ−Ｃ」には「Ｇ：７７７７」のデータ４１が格納されており、「ＤＢ−Ｄ］には「Ｆ：６６６６」のデータ４１が格納されており、「ＤＢ−Ｅ」には「Ｃ：３３３３」のデータ４１が格納されている。ここで、図１では各データ４１を「Ｘ：ＹＹＹＹ」の形式で記述しているが、「ＹＹＹＹ」に相当する部分はファイルや画像データなどの実データを示し、「Ｘ」に相当する部分はキー情報である。キー情報は、実データを識別するための情報であり、例えばデータＩＤであったり、ファイル名であったり、データ４１が格納されているアドレスであったりする。
【００１２】
共通データベース２は、各データベース４のデータ４１をコピーして一元管理するためのデータベース４であり、後記して説明する読込用データ情報２１および書込用データ情報２２を格納している。
共通データベースサーバ１は、共通データベース２を制御するサーバであり、メッセージなどを生成・送信して各データベース４のデータ４１のコピーを収集したり、共通データベース２で更新されたデータ４１を各データベース４に反映したりする機能を有している。
このように共通データベース２で、各データベース４のデータ４１をコピーして一元管理することにより、分散データベースシステムの利点を損なうことなく、管理を容易にすることができる。
【００１３】
ここで、メッセージとは、メッセージを受信した各データベースサーバや、共通データベースサーバ自身によって実行されるコマンドが格納されている情報である。メッセージは、共通データベース１で生成され、ブロードキャスト送信されることによって、情報制御システム１０内の各データベースサーバ３や、共通データベースサーバ１自身に送られる。そして、メッセージを受信した機器によって、メッセージ内のコマンドが実行され、コマンドに従って、データベース４からデータ４１を収集したり、データベース４にデータ４１を書き込んだりする機能を有している。コマンドには、例えばＳＱＬ（Structured Query Language）などが用いられる。
【００１４】
次に、図１を参照しつつ、図２〜図４に沿って本実施形態に係る共通データベースサーバ１、データベースサーバ３およびクライアント端末５の構成を説明する。
《共通データベースサーバ》
図２は、本実施形態に係る共通データベースサーバの構成例を示す機能ブロック図である。
共通データベースサーバ１は、情報を処理する処理部１００、クライアント端末５へのデータ４１やメッセージを送信する送信部１１０、およびクライアント端末５からのデータ４１やメッセージを受信する受信部１２０を有する。
処理部１００は、読込アクセス周期制御部１０１、書込アクセス周期制御部１０２、データ収集メッセージ発行部１０３、データ書込メッセージ発行部１０４、データ書込部１０５、データ読込部１０６、アクセス判定部１０７および登録用メッセージ発行部１０８を有する。
読込アクセス周期制御部１０１は、クライアント端末５で実行されているアプリケーション５０１（図４）によるデータ４１の読み込みが行われると、そのアクセス周期（読込アクセス周期）を算出して、算出した読込アクセス周期を共通データベース２の読込用データ情報２１に反映する機能を有する。
書込アクセス周期制御部１０２は、クライアント端末５で実行されているアプリケーション５０１によるデータ４１の書き込みが行われると、そのアクセス周期（書込アクセス周期）を算出して、算出した書込アクセス周期を共通データベース２の書込用データ情報２２に反映する機能を有する。
【００１５】
データ収集メッセージ発行部１０３は、共通データベース２の読込用データ情報２１の読込アクセス周期を基に、各データベース４からデータ４１を収集するためのデータ収集メッセージ６（図７）を生成・送信する機能を有する。
データ書込メッセージ発行部１０４は、共通データベース２の書込用データ情報２２の書込アクセス周期を基に、共通データベース２で更新されたデータ４１を、データ４１を格納すべきデータベース４に書き込むことで、各データベース４の更新を行うためのデータ書込メッセージ７（図１２）を生成・送信する機能を有する。
【００１６】
データ書込部１０５は、データ収集メッセージ６に付されているコマンド（詳細は後記）によって、データ収集メッセージ６が収集したデータ４１や、クライアント端末５から入力された情報を読込用データ情報２１および書込用データ情報２２に書き込む機能を有する。
データ読込部１０６は、データ書込メッセージ７に書き込むためのデータ４１を書込用データ情報２２から読み込む機能を有する。
アクセス判定部１０７は、クライアント端末５などによる読込用データ情報２１や、書込用データ情報２２へのアクセスの有無を判定する機能を有する。
登録用メッセージ発行部１０８は、新規にデータベース４が接続された際に、このデータベース４の情報を有している登録用メッセージ８(図１６）を生成・送信する機能を有する。
【００１７】
《データベースサーバ》
図３は、本実施形態に係るデータベースサーバの構成例を示す機能ブロック図である。
データベースサーバ３は、受信したデータ収集メッセージ６や、データ書込メッセージ７のコマンドを起動し、コマンド内容を実行するデータ処理部３０１と、メッセージを送信する送信部３１０およびメッセージを受信する受信部３２０を有する。
【００１８】
《クライアント端末》
図４は、本実施形態に係るクライアント端末の構成例を示す機能ブロック図である。
クライアント端末５は、複数のアプリケーション５０１を有している。
アプリケーション５０１は、共通データベース２にアクセスすることにより共通データベース２に格納されているデータ４１を読み込んだり、共通データベース２にデータ４１を書き込んだりする機能を有する。
【００１９】
なお、図２の処理部１００、および処理部１００における各部１０１〜１０８、図３のデータ処理部３０１および図４のアプリケーション５０１は、各装置１，３，５の図示しないＨＤＤ（Hard Disk Drive）などに格納されたプログラムが、ＲＡＭ（Random Access Memory）に展開され、ＣＰＵ（Central Processing Unit）によって実行されることによって具現化する。
【００２０】
《読込用データ情報》
図５は、本実施形態に係る読込用データ情報の例を示す図である。
読込用データ情報２１は、キー情報、データ所在、データ、前回読込アクセス時刻および読込アクセス周期の各情報を有している。
キー情報は、図１で前記したように、データを識別するための情報であり、例えばデータＩＤであったり、ファイル名であったり、データ４１が格納されているアドレスであったりするものである。データ所在は該当するデータ４１が格納されているデータベース４に関する情報である（図４ではデータベース名）。データは、実データである（第２のデータ）。なお、共通データベース２に格納されるデータ４１は、各データベース４に格納されているデータ４１のコピーである。前回読込アクセス時刻は、該当するデータ４１に対してクライアント端末５のアプリケーション５０１（図４）が最後に読込アクセスした時刻である。読込アクセス周期は、アプリケーション５０１による読込アクセスの周期である。なお、情報制御システム１０上に複数のクライアント端末５が存在するとき、読込アクセス周期は、すべてのクライアント端末５に関する読込アクセス周期である。
【００２１】
《書込用データ情報》
図６は、本実施形態に係る書込用データ情報の例を示す図である。
書込用データ情報２２は、キー情報、データ所在、データ、前回書込アクセス時刻および書込アクセス周期の各情報を有している。
キー情報、データ所在、データ（第３のデータ）の各情報は図５と同様であるため、説明を省略する。前回書込アクセス時刻は、該当するデータ４１に対してクライアント端末５のアプリケーション５０１（図４）が最後に書込アクセスした時刻である。書込アクセス周期は、アプリケーション５０１による書込アクセスの周期である。なお、情報制御システム１０上に複数のクライアント端末５が存在するとき、書込アクセス周期は、すべてのクライアント端末５に関する書込アクセス周期である。
【００２２】
《データ読込処理》
次に、図１〜図６を参照しつつ、図７〜図１１に沿って本実施形態に係るデータ読込処理を説明する。
（概要）
まず、図７を参照して本実施形態のデータ読込処理の概要を説明する。各処理における詳細な手順は後記して説明する。
まず、クライアント端末５のアプリケーション５０１が共通データベース２のデータ４１を読み込む読込アクセスを行い（Ｓ１０１）、アクセス判定部１０７がこの読込アクセスを検知する（Ｓ１０２）。
すると、読込アクセス周期制御部１０１は、過去の読込アクセス時刻から読込アクセス周期を算出し、読込用データ情報２１の読込アクセス周期を更新する（Ｓ１０３）。なお、このとき読込アクセス周期制御部１０１は、読込用データ情報２１の前回読込アクセス時刻も更新する。
【００２３】
共通データベースサーバ１のデータ収集メッセージ発行部１０３は、所定の時刻になると、読込用データ情報２１の読込アクセス周期を基にデータ収集メッセージ６を生成して、情報制御システム１０に対し、データ収集メッセージ６をブロードキャスト送信する（Ｓ１０４）。
図７では、読込アクセス周期の長さによって短周期用のデータ収集メッセージ６ａと、長周期用のデータ収集メッセージ６ｂとを生成・送信している。
【００２４】
短周期用のデータ収集メッセージ６ａは、読込アクセス周期が短周期のデータ４１（図７の例ではキー情報「Ａ］、「Ｂ」、「Ｃ」、「Ｄ」、「Ｆ」に該当するデータ４１）を各データベース４から収集するためのデータ収集メッセージ６である。
長周期用のデータ収集メッセージ６ｂは、読込アクセス周期が長周期のデータ４１（図７の例ではキー情報「Ｅ」、「Ｇ」に該当するデータ４１）を各データベース４から収集するためのデータ収集メッセージ６である。
【００２５】
短周期用のデータ収集メッセージ６ａは、例えば読込アクセス周期が０秒以上１０００秒以下のデータ４１を対象とし、長周期用のデータ収集メッセージ６ｂは、例えば読込アクセス周期が１００１秒以上のデータ４１を対象とすることで収集対象となるデータ４１を分ける。また、短周期用のデータ収集メッセージ６ａは、例えば１００秒毎に送信し、長周期用のデータ収集メッセージ６ｂは例えば２０００秒毎に送信することなどができる。なお、読込アクセス周期０秒とは、例えば新規に共通データベース２に書き込まれたデータ４１などである。
【００２６】
このようにデータ収集メッセージ６を読込アクセス周期によって分けて送信することにより、例えば、すべての読込アクセス周期毎にデータ収集メッセージ６を生成・送信することを避けることができ、通信リソースを節約することができる。
なお、本実施形態ではデータ収集メッセージ６を短周期用・長周期用に分けたが、短周期用・中速収集用・長周期用の３段階に分けたり、４段階以上に分けてもよい。また、データ収集メッセージ６をこのように分けなくてもよい。この場合、すべての読込アクセス周期毎にデータ収集メッセージ６が生成・送信されることとなる。
【００２７】
データ収集メッセージ６は、ヘッダ部とコマンド部（データベース検索手段）から構成されている。ヘッダ部には、このメッセージがデータ収集用のメッセージである旨の情報などを有しているヘッダが格納されている。コマンド部には、各データベース４からデータ４１を取得するためのコマンドが格納されている。コマンドは、各データベース４を制御管理しているデータベースサーバ３（図７では図示省略）がメッセージを取得すると、データベースサーバ３において実行されるものである。データベースサーバ３は、コマンドに従って自身が管理しているデータベース４から該当するデータ４１を取得すると、該当するコマンド部を、取得したデータ４１と、該当するキー情報に置き換え（Ｓ１０５）、データ収集メッセージ６をブロードキャスト送信する。なお、図７における「ＧＥＴ：Ａ」や、「ＧＥＴ：Ｂ」などの「ＧＥＴ：Ｘ」は、キー情報「Ｘ」のデータ４１を取得するというコマンドである。
【００２８】
すべてのデータベースサーバ３を巡回したデータ収集メッセージ６（符号６ｃ，６ｄ）をデータ書込部１０５が受信すると（Ｓ１０６）、受信したデータ収集メッセージ６（６ｃ，６ｄ）から、データ書込部１０５が各データ４１を抽出し、キー情報に従ってデータ４１を読込用データ情報２１に書き込む（Ｓ１０７）と同時に、書込用データ情報２２へも書き込む（図７では省略）。
【００２９】
次に、図８〜図１１を参照して、各処理の詳細な手順を説明する。
（読込アクセス周期更新処理）
図８は、本実施形態に係る読込アクセス周期更新処理の手順を示すフローチャートである。
まず、アクセス判定部１０７が、アプリケーション５０１による読込用データ情報２１への読込アクセスが行われたか否かを判定する（Ｓ２０１）。ステップＳ２０１の処理は、図７のステップＳ１０２に対応する処理である。
読込アクセスが行われていない場合（Ｓ２０１→Ｎｏ）、アクセス判定部１０７はステップＳ２０１へ処理を戻す。
読込アクセスが行われている場合（Ｓ２０１→Ｙｅｓ）、読込アクセス周期制御部１０１は、該当するデータ４１の前回読込アクセス時刻を読込用データ情報２１から読み込み、現在時刻との差分をとることで読込アクセス周期を算出する（Ｓ２０２）。
ここでは、今回の読込アクセス時刻（現在時刻）と、前回の読込アクセス時刻との差分を読込アクセス周期としたが、これに限らず、すべての読込アクセス時刻を記憶しておき、このすべての読込アクセス時刻間の平均値としてもよいし、過去５回分の平均値などとしてもよい。
【００３０】
次に、読込アクセス周期制御部１０１は、読込用データ情報２１において該当している読込アクセス周期を参照し、読込アクセス周期が変化しているか否かを判定する（Ｓ２０３）。
ステップＳ２０３の結果、読込アクセス周期が変化していない場合（Ｓ２０３→Ｎｏ）、読込アクセス周期制御部１０１はステップＳ２０５へ処理を進める。
ステップＳ２０３の結果、読込アクセス周期が変化している場合（Ｓ２０３→Ｙｅｓ）、読込アクセス周期制御部１０１は、読込用データ情報２１において該当する読込アクセス周期をステップＳ２０２で算出した読込アクセス周期に更新する（Ｓ２０４）。ステップＳ２０４の処理は、図７のステップＳ１０３に対応する処理である。
続いて、読込アクセス周期制御部１０１は読込用データ情報２１における前回読込アクセス時刻を現在時刻に更新し（Ｓ２０５）、ステップＳ２０１へ処理を戻す。
【００３１】
（データ収集メッセージ発行処理）
図９は、本実施形態に係るデータ収集メッセージ発行処理の手順を示すフローチャートである。図９の処理を、例えば図７の短周期用のデータ収集メッセージ６ａ・長周期用のデータ収集メッセージ６ｂ毎に行うことで、図７に示すような短周期用のデータ収集メッセージ６ａ・長周期用のデータ収集メッセージ６ｂを生成・送信することができる。
まず、データ収集メッセージ発行部１０３は、データ収集メッセージ生成時刻になったか否かを判定する（Ｓ３０１）。
【００３２】
ステップＳ３０１の結果、データ収集メッセージ生成時刻になっていない場合（Ｓ３０１→Ｎｏ）、データ収集メッセージ発行部１０３はステップＳ３０１へ処理を戻す。
ステップＳ３０１の結果、データ収集メッセージ生成時刻である場合（Ｓ３０１→Ｙｅｓ）、データ収集メッセージ発行部１０３は、読込アクセス周期を参照して、該当するデータ４１のキー情報を取得し、このキー情報に該当するデータ４１を各データベース４から取得するコマンドを有しているデータ収集メッセージ６を生成する（Ｓ３０２）。ここで、例えば、対象となっているデータ収集メッセージ６が短周期用であれば、データ収集メッセージ発行部１０３は、読込用データ情報２１の読込アクセス周期を参照し、短周期用の条件に該当しているキー情報を取得する。
そして、データ収集メッセージ発行部１０３は、生成したデータ収集メッセージ６をブロードキャスト送信して（Ｓ３０３）、ステップＳ３０１へ処理を戻す。ステップＳ３０３の処理は、図７のステップＳ１０４に対応する処理である。
【００３３】
例えば読込アクセス周期が短周期から長周期に変わると、このデータ４１は、短周期用のデータ収集メッセージ６ａ（図７）で収集されていたものが、長周期用のデータ収集メッセージ６ｂ（図７）で収集されるようになる。このように、読込アクセス周期の変化に対し、柔軟に対応できる。
【００３４】
（データ取得処理）
図１０は、本実施形態に係るデータベースからデータを取得する処理の手順を示すフローチャートである。
まず、データ処理部３０１がデータ収集メッセージ６を受信すると（Ｓ４０１）、このデータ収集メッセージ６に付加しているコマンドを実行する（Ｓ４０２）。
コマンドが実行されると、データ処理部３０１は、自身が管理しているデータベース４において、コマンドに記載されているキー情報を検索する。ここで、コマンド実行の結果として、戻り値が返される。該当するキー情報がデータベース４中に格納されていない場合（非格納の場合）、戻り値として所定のコードが返され、該当するキー情報がデータベース４中に格納されている場合、戻り値としてキー情報に対応するデータ４１が返される。
【００３５】
データ処理部３０１は、検索の結果返される戻り値を検知し、この戻り値がキー情報の非格納を示す所定のコードであるか否かを判定する（Ｓ４０３）。
ステップＳ４０３の結果、戻り値が、キー情報の非格納を示す所定のコードである場合（Ｓ４０３→Ｙｅｓ）、データ処理部３０１はステップＳ４０６へ処理を進める。
ステップＳ４０３の結果、戻り値が、キー情報の非格納を示す所定のコードではない場合（Ｓ４０３→Ｎｏ）、すなわち、キー情報に対応するデータ４１である場合、データ処理部３０１は、戻り値としてのデータ４１を取得し（Ｓ４０４）、データ収集メッセージ６中の実行対象のコマンドの部分を取得したデータ４１と、データ４１に対応するキー情報で置換する（Ｓ４０５）。ここで、ステップＳ４０４の処理は、図７のステップＳ１０５に対応する処理である。このようにコマンドをデータ４１で置換することにより、次にこのデータ収集メッセージ６を受信したデータベースサーバ３は、該当するコマンドを実行しないこととなり、効率性をあげることができる。なお、ステップＳ４０５の処理は省略可能である。
【００３６】
次に、データ処理部３０１は、データ収集メッセージ６中に存在するすべてのコマンドを実行したか否かを判定する（Ｓ４０６）。
ステップＳ４０６の結果、データ収集メッセージ６中に存在するすべてのコマンドを実行していない場合（Ｓ４０６→Ｎｏ）、データ処理部３０１はステップＳ４０２へ処理を戻し、次のコマンドを実行する。
ステップＳ４０６の結果、データ収集メッセージ６中に存在するすべてのコマンドを実行している場合（Ｓ４０６→Ｙｅｓ）、データ処理部３０１はデータ収集メッセージ６をブロードキャスト送信する（Ｓ４０７）。
【００３７】
（データ書込処理）
図１１は、本実施形態に係る読込用データ情報へのデータ書込処理の手順を示すフローチャートである。
データ書込部１０５が、データ収集メッセージ６を受信すると（Ｓ５０１）、受信したデータ収集メッセージ６においてコマンドが１つもないか否かを判定する（Ｓ５０２）。ここで、ステップＳ５０１の処理は、図７のステップＳ１０６に対応する処理である。
ステップＳ５０２の結果、コマンドが１つでもある場合（Ｓ５０２→Ｎｏ）、データ書込部１０５は、このデータ収集メッセージ６は必要なデータベースサーバ３のすべてを巡回していないものとみなし、受信したデータ収集メッセージ６を破棄して（Ｓ５０３）、ステップＳ５０１へ処理を戻す。
ステップＳ５０２の結果、受信したデータ収集メッセージ６においてコマンドが１つもない場合（Ｓ５０２→Ｙｅｓ）、データ書込部１０５は、このデータ収集メッセージ６が必要なデータベースサーバ３のすべてを巡回したものとみなし、データ収集メッセージ６からデータ４１を、対応するキー情報とともに抽出する（Ｓ５０４）。
【００３８】
そして、データ書込部１０５は、キー情報をキーとして、抽出したデータ４１を読込用データ情報２１のデータ４１として格納する（Ｓ５０５）。ステップＳ５０５の処理は、図７のステップＳ１０７に対応する処理である。
次に、データ書込部１０５は、書込用データ情報２２における該当するデータ４１へのアクセスがあるか否かを判定する（Ｓ５０６）。
ステップＳ５０６の結果、書込用データ情報２２における該当するデータ４１へのアクセスがある場合（Ｓ５０６→Ｙｅｓ）、データ書込部１０５はステップＳ５０６へ処理を戻す。
ステップＳ５０６の結果、書込用データ情報２２における該当するデータ４１へのアクセスがない場合（Ｓ５０６→Ｎｏ）、データ書込部１０５は、キー情報をキーとして、ステップＳ５０４で抽出したデータ４１を書込用データ情報２２のデータ４１として格納し（Ｓ５０７）、ステップＳ５０１へ処理を戻す。
【００３９】
なお、本実施形態では、各データベース４からのデータ４１の収集にメッセージを用いたが、これに限らず、共通データベースサーバ１がデータ収集対象のデータベース４からデータ４１を直接収集するコマンドを実行することによって行われてもよい。
【００４０】
《データ書込処理》
次に、図１〜図６を参照しつつ、図１２〜図１５に沿って本実施形態に係るデータ書込処理を説明する。
（概要）
まず、図１２を参照して本実施形態のデータ書込処理の概要を説明する。各処理における詳細な手順は後記して説明する。
まず、クライアント端末５のアプリケーション５０１が共通データベース２へデータ４１を書き込む書込アクセスを行う（Ｓ６０１）。
アクセス判定部１０７が、この書込アクセスを検知すると（Ｓ６０２）、書込アクセス周期制御部１０２は、過去の書込アクセス時刻から書込アクセス周期を算出し、書込用データ情報２２の書込アクセス周期を更新する（Ｓ６０３）。なお、このとき書込アクセス周期制御部１０２は、書込用データ情報２２の前回書込アクセス時刻も更新する。
【００４１】
所定の時刻になると、書込用データ情報２２の書込アクセス周期を基に、データ読込部１０６が書込用データ情報２２からキー情報と、データ４１とを取得する（Ｓ６０４）。そして、データ書込メッセージ発行部１０４は、データ読込部１０６が取得したキー情報と、データ４１とを各データベース４に書き込むためのデータ書込メッセージ７を生成して、情報制御システム１０に対し、生成したデータ書込メッセージ７をブロードキャスト送信する（Ｓ６０５）。
図１２では、読込アクセス周期の長さによって短周期用のデータ書込メッセージ７ａと、長周期用のデータ書込メッセージ７ｂとを生成・送信している。
【００４２】
短周期用のデータ書込メッセージ７ａとは書込アクセス周期が短周期のデータ４１（図１２の例ではキー情報「Ａ」、「Ｂ」、「Ｃ」、「Ｄ」、「Ｆ」に該当するデータ４１）を各データベース４に書き込むためのデータ書込メッセージ７である。
長周期用のデータ書込メッセージ７ｂとは書込アクセス周期が長周期のデータ４１（図１２の例ではキー情報「Ｅ」、「Ｇ」に該当するデータ４１）を各データベース４に書き込むためのデータ書込メッセージ７である。
【００４３】
短周期用のデータ書込メッセージ７ａは、例えば書込アクセス周期が０秒以上１０００秒以下のデータ４１を対象とし、長周期用のデータ書込メッセージ７ｂは、例えば書込アクセス周期が１００１秒以上のデータ４１を対象とすることで書き込みの対象となるデータ４１を分ける。また、短周期用のデータ書込メッセージ７ａは、例えば１００秒毎に送信し、長周期用のデータ書込メッセージ７ｂは例えば２０００秒毎に送信することなどができる。なお、書込アクセス周期０秒とは、例えば新規に共通データベース２に書き込まれたデータ４１などである。
【００４４】
このようにデータ書込メッセージ７を書込アクセス周期によって分けて送信することにより、例えば、すべての書込アクセス周期毎にデータ書込メッセージ７を生成・送信することを避けることができ、通信リソースを節約することができる。
なお、本実施形態ではデータ書込メッセージ７を短周期用・長周期用に分けたが、短周期用・中速書込用・長周期用の３段階に分けたり、４段階以上に分けてもよい。また、データ書込メッセージ７をこのように分けなくてもよい。この場合、すべての書込アクセス周期毎にデータ書込メッセージ７が生成・送信されることとなる。
【００４５】
データ書込メッセージ７は、ヘッダ部とコマンド部（データベース書込手段）から構成されている。ヘッダ部には、このメッセージがデータ書込用である旨の情報などを有しているヘッダが格納されている。コマンド部には、各データベース４にデータ４１を書き込むためのコマンドが格納されている。コマンドは、各データベース４を制御管理しているデータベースサーバ３（図１２では図示省略）がメッセージを取得すると、データベースサーバ３において実行されるものである。データベースサーバ３は、コマンドに従って自身が管理しているデータベース４にデータ４１を書き込む（Ｓ６０６）。このとき、データベースサーバ３は該当するコマンド部を削除してもよい。なお、図１２における「ＰＵＴ：Ｘ」は、このコマンドの後に付加されているデータ４１を、キー情報「Ｘ」をキーとして書き込むというコマンドである。実際には、「ＰＵＴ：Ｘ」とともに、コマンドの後の何バイトのデータ４１が書き込まれるかという情報も付加されているが、ここでは図示省略する。
【００４６】
次に、図１３〜図１５を参照して、各処理の詳細な手順を説明する。
（書込アクセス周期更新処理）
図１３は、本実施形態に係る書込アクセス周期更新処理の手順を示すフローチャートである。
まず、アクセス判定部１０７が、アプリケーション５０１による書込用データ情報２２への書込アクセスが行われたか否かを判定する（Ｓ７０１）。ステップＳ７０１の処理は、図１２のステップＳ６０２に対応する処理である。
ステップＳ７０１の結果、書込アクセスが行われていない場合（Ｓ７０１→Ｎｏ）、アクセス判定部１０７はステップＳ７０１へ処理を戻す。
ステップＳ７０１の結果、読込アクセスが行われている場合（Ｓ７０１→Ｙｅｓ）、アプリケーション５０１から送られるデータ４１には、キー情報が付随しているため、データ書込部１０５は書込用データ情報２２へアプリケーション５０１から送られたキー情報をキーとして、データ４１を格納する（Ｓ７０２）。すなわち、ユーザがデータを格納すべきファイル名や、フォルダ名を入力することによって、キー情報が共通データベースサーバ１に入力される。
【００４７】
次に、書込アクセス周期制御部１０２は、該当する前回書込アクセス時刻を取得し、取得した前回書込アクセス時刻と、現在時刻との差分をとることで書込アクセス周期を算出する（Ｓ７０３）。
ここでは、今回の書込アクセス時刻と、前回の書込アクセス時刻との差分を読込アクセス周期としたが、これに限らず、すべての書込アクセス時刻を記憶しておき、このすべての書込アクセス時刻間の平均値としてもよいし、過去５回分の平均値としてもよい。
【００４８】
次に、書込アクセス周期制御部１０２は、書込用データ情報２２において該当している書込アクセス周期を参照し、書込アクセス周期が変化しているか否かを判定する（Ｓ７０４）。
ステップＳ７０４の結果、書込アクセス周期が変化していない場合（Ｓ７０４→Ｎｏ）、書込アクセス周期制御部１０２はステップＳ７０６へ処理を進める。
ステップＳ７０４の結果、読込アクセス周期が変化している場合（Ｓ７０４→Ｙｅｓ）、書込アクセス周期制御部１０２は、書込用データ情報２２において該当する書込アクセス周期をステップＳ７０３で算出した書込アクセス周期に更新する（Ｓ７０５）。ステップＳ７０５の処理は、図１２のステップＳ６０３に対応する処理である。
続いて、書込アクセス周期制御部１０２は、書込用データ情報２２の前回書込アクセス時刻を現在時刻に更新する（Ｓ７０６）。
【００４９】
次に、データ書込部１０５は、読込用データ情報２１における該当するデータ４１へのアクセスがあるか否かを判定する（Ｓ７０７）。
ステップＳ７０７の結果、読込用データ情報２１における該当するデータ４１へのアクセスがある場合（Ｓ７０７→Ｙｅｓ）、データ書込部１０５はステップＳ７０７へ処理を戻す。
ステップＳ７０７の結果、読込用データ情報２１における該当するデータ４１へのアクセスがない場合（Ｓ７０７→Ｎｏ）、データ書込部１０５は、読込用データ情報２１の該当するデータ４１へのアクセスがないと判定し、キー情報をキーとして、アプリケーション５０１から送られたデータ４１を読込用データ情報２１のデータ４１として格納する（Ｓ７０８）。
【００５０】
（データ書込メッセージ発行処理）
図１４は、本実施形態に係るデータ書込メッセージ発行処理の手順を示すフローチャートである。図１４の処理を、例えば図１２の短周期用のデータ書込メッセージ７ａ・長周期用のデータ書込メッセージ７ｂ毎に行うことで、図１２に示すような短周期用のデータ書込メッセージ７ａ・長周期用のデータ書込メッセージ７ｂを生成・送信することができる。
まず、データ書込メッセージ発行部１０４は、データ書込メッセージ７生成時刻になったか否かを判定する（Ｓ８０１）。
ステップＳ８０１の結果、データ書込メッセージ生成時刻になっていない場合（Ｓ８０１→Ｎｏ）、データ書込メッセージ発行部１０４はステップＳ８０１へ処理を戻す。
ステップＳ８０１の結果、データ書込メッセージ生成時刻である場合（Ｓ８０１→Ｙｅｓ）、データ書込メッセージ発行部１０４は、書込アクセス周期を参照して、該当するデータ４１のキー情報とデータ４１を取得し（Ｓ８０２）、このデータ４１を各データベース４に書き込むコマンドを有しているデータ書込メッセージ７を生成する（Ｓ８０３）。ここで、ステップＳ８０２の処理は、図１２のステップＳ６０４に対応する処理である。また、例えば、対象となっているデータ書込メッセージ７が短周期用であれば、データ書込メッセージ発行部１０４は、書込用データ情報２２の書込アクセス周期を参照し、短周期用の条件に該当しているキー情報およびデータ４１を取得する。なお、データ４１が新規作成である場合、格納されるデータベース４の情報も付加する。
そして、データ書込メッセージ発行部１０４は、生成したデータ書込メッセージ７をブロードキャスト送信して（Ｓ８０４）、ステップＳ８０１へ処理を戻す。なお、ステップＳ８０４の処理は、図１２のステップＳ６０５に対応する処理である。
【００５１】
アクセス周期が変化して、例えばアクセス周期が短周期から長周期に変わると、このデータ４１は、短周期用のデータ書込メッセージ７ａでデータベース４に書き込まれていたものが、長周期用のデータ書込メッセージ７ｂで書き込まれるようになる。このように、書込アクセス周期の変化に対し、柔軟に対応できる。
【００５２】
（データ書込処理）
図１５は、本実施形態に係るデータベースサーバへデータを書き込む処理の手順を示すフローチャートである。
まず、データ処理部３０１がデータ書込メッセージ７を受信すると（Ｓ９０１）、このデータ書込メッセージ７に付加しているコマンドを実行する（Ｓ９０２）。
コマンドが実行されると、データ処理部３０１は、自身が管理しているデータベース４において、コマンドに記載されているキー情報を検索する。ここで、コマンド実行の結果として、戻り値が返される。該当するキー情報がデータベース４中に格納されていない場合（非格納の場合）、戻り値として第１のコードが返され、該当するキー情報がデータベース４中に格納されている場合、戻り値として、例えば第２のコードが返される。
【００５３】
なお、戻り値として第２のコードが返された場合、コマンドと共にデータベース４の情報が付加されていれば（データが新規書込のデータである場合）、このデータ４の情報も参照し、自身のデータベース４に該当するか否かも判定する。この判定結果も、戻り値として返され、コマンドと共に付加されているデータベース４の情報が自身のデータベース４に関する情報ではない場合、第１のコードを返し、自身のデータベース４に関する情報である場合、例えば第２のコードが返される。
【００５４】
データ処理部３０１は、検索の結果返される戻り値を検知し、この戻り値がキー情報の非格納を示す第１のコードであるか否かを判定する（Ｓ９０３）。
ステップＳ９０３の結果、戻り値が、キー情報の非格納を示す第１のコードである場合（Ｓ９０３→Ｙｅｓ）、データ処理部３０１はステップＳ９０６へ処理を進める。
ステップＳ９０３の結果、戻り値が、キー情報の非格納を示す第１のコードではない場合（Ｓ９０３→Ｎｏ）、すなわち、キー情報が格納されていることを示す第２のコードである場合、データ処理部３０１は、キー情報をキーとして、データ４１を書き込む（Ｓ９０４）。ここで、ステップＳ９０４の処理は、図１２にステップＳ６０６に対応する処理である。
【００５５】
ステップＳ９０４の後、データ処理部３０１は、処理対象となっているコマンドおよびデータ４１を削除する（Ｓ９０５）。このように、データ書込を行った後、コマンドおよびデータ４１をデータ書込メッセージ７から削除することにより、次にこのデータ書込メッセージ７を受信したデータベースサーバ３は、このコマンドを実行しないこととなり、効率性をあげることができる。なお、ステップＳ９０５の処理は省略可能である。
【００５６】
次に、データ処理部３０１は、データ書込メッセージ７中に存在するすべてのコマンドを実行したか否かを判定する（Ｓ９０６）。
ステップＳ９０６の結果、データ書込メッセージ７中に存在するすべてのコマンドを実行していない場合（Ｓ９０６→Ｎｏ）、データ処理部３０１はステップＳ９０２へ処理を戻し、次のコマンドを実行する。
ステップＳ９０６の結果、データ書込メッセージ７中に存在するすべてのコマンドを実行している場合（Ｓ９０６→Ｙｅｓ）、データ処理部３０１はデータ書込メッセージ７をブロードキャスト送信する（Ｓ９０７）。
【００５７】
なお、本実施形態では、各データベース４へのデータ４１の書き込みにメッセージを用いたが、これに限らず、共通データベースサーバ１がデータ書込対象のデータベース４へデータ４１を直接書き込むコマンドを実行することによって行われてもよい。
【００５８】
《新規データベース接続時》
次に、図１６〜図１８を参照して、新しくデータベース４を接続したときにおける情報制御システム１０の動作を説明する。
（概要）
まず、図１６を参照して本実施形態に係るデータベース新規接続時処理の概要を説明する。各処理における詳細な手順は後記して説明する。
図１６に示すように、「ＤＢ−Ａ」〜「ＤＢ−Ｅ」の各データベース４が接続されている情報制御システム１０に、「ＤＢ−Ｘ」が新たに接続される（Ｓ１００１）。
すると、管理者がクライアント端末５を介して、登録用メッセージ発行要求を共通データベースサーバ１に対して行う（Ｓ１００２）。
登録用メッセージ送信要求を受信した共通データベースサーバ１の登録用メッセージ発行部１０８は、登録用メッセージ８を発行し、情報制御システム１０に対し登録用メッセージ８をブロードキャスト送信する（Ｓ１００３）
【００５９】
図１６に示すように、登録用メッセージ８はヘッダ部と、コマンド部から構成されている。
ヘッダ部には、当該メッセージが登録用のメッセージであることを示す情報が格納されている。そして、コマンド部には、読込用データ情報２１および書込用データ情報２２に書き込まれるキー情報と、データ所在の欄に描きこまれるデータベース４に関する情報が格納されている。
ヘッダ部に当該メッセージが登録用であることを示す情報を付すことで、各データベースサーバ３が、この登録用メッセージ８を受信しても、コマンドを実行することはなく、共通データベースサーバ１のみがコマンドを実行することができる。
【００６０】
ブロードキャスト送信された登録用メッセージ８を共通データベースサーバ１が受信すると（Ｓ１００４）、データ書込部１０５が登録用メッセージ８に格納されているデータ内容を読込用データ情報２１および書込用データ情報２２の参照用データとして新規登録する（Ｓ１００５）。ここで、参照用データとは、読込用データ情報２１および書込用データ情報２２におけるキー情報と、データ所在であり、データを参照する際に用いられる情報である。このとき、読込用データ情報２１および書込用データ情報２２の参照用データとして登録される情報は、キー情報とデータ所在のみであり、データ４１、前回読込アクセス時刻、前回書込アクセス時刻、読込アクセス周期、書込アクセス周期の各欄は空欄となる。
【００６１】
以降は、前記した方法によって、データ４１が収集されたり、共通データベース２に書き込まれたデータ４１が各データベース４に反映される。
なお、読込アクセス周期、書込アクセス周期を暫定的に０秒とし、短周期用のデータ収集メッセージ６ａ（図７）を発行して、対象となるデータ４１を収集するようにしてもよい。あるいは、参照用データの登録を検知すると同時に、データ収集メッセージ発行部１０３がデータ収集メッセージ６を生成・送信してもよい。
また、情報制御システム１０に初めて共通データベース２および共通データベースサーバ１が接続される場合、共通データベースサーバ１は、すべてのデータベース４に対する情報が格納されている登録用メッセージ８を発行・送信する。
【００６２】
（登録用メッセージ発行処理）
図１７は、本実施形態に係る登録用メッセージ発行処理の手順を示すフローチャートである。
登録用メッセージ発行部１０８は、クライアント端末５から送信された登録用メッセージ発行要求を受信すると（Ｓ１１０１）、キー情報や、データ所在の情報などの参照用データを有している登録用メッセージ８を生成する（Ｓ１１０２）。ここで、ステップＳ１１０１の処理は、図１６のステップＳ１００２に対応する処理である。キー情報は、登録用メッセージ発行部１０８が新規に発行してもよいし、管理者がクライアント端末５の図示しない入力部を介して入力した情報でもよい。また、データ所在の情報は、管理者がクライアント端末５の図示しない入力部を介して入力した情報である。
そして、登録用メッセージ発行部１０８は、登録用メッセージ８をブロードキャスト送信する（Ｓ１１０３）。なお、ステップＳ１１０３の処理は、図１６のステップＳ１００３に対応する処理である。
【００６３】
（参照用データ登録処理）
図１８は、本実施形態に係る参照用データ登録処理の手順を示すフローチャートである。
データ書込部１０５が、登録用メッセージ８を受信すると（Ｓ１２０１）、登録用メッセージ８のコマンドを実行する（Ｓ１２０２）。ここで、ステップＳ１２０１は、図１６のステップＳ１００４に対応する処理である。
そして、コマンドに従って登録用メッセージ８に格納されている参照用データを読込用データ情報２１および書込用データ情報２２に登録する（Ｓ１２０３）。なお、ステップＳ１２０３の処理は、図１６のステップＳ１００５に対応する処理である。
【００６４】
なお、本実施形態では、新規のデータベース４の参照用データの登録にメッセージを用いたが、これに限らず、クライアント端末５から入力された参照用データを読込用データ情報２１および書込用データ情報２２へ直接登録するコマンドを共通データベースサーバ１が実行することによって行われてもよい。
【００６５】
このようにすることで、新規にデータベース４が接続されても、データ４１の分散を保持しつつ、データ４１の一元管理が容易に可能となる。
【００６６】
《システム構築例》
次に、図１９Ａ〜図１９Ｄを参照して、本実施形態における情報制御システム１０の構築例を説明する。
まず、図１９Ａでは、それぞれクライアント端末５、データベースサーバ３およびデータベース４を有する独立したシステム９Ａ，９Ｂ，９Ｃがある。
そして、図１９Ｂで、システム９Ａ，９Ｂ，９Ｃのそれぞれが接続されて１つのシステムＺとなる。
そして、図１９Ｃで、システム９Ｃの部分に本実施形態に係る共通データベースサーバ１および共通データベース２が接続される。このとき、図１６〜図１８で説明した新規データベース接続時の処理における登録用メッセージ８の参照用データを、すべてのデータベース４の参照用データとすることで、システムＺ内のデータベース４に関する参照用データが共通データベース２に登録される。続いて、図７〜図１１で説明したデータ収集が行われることで、データベース４内のデータ４１が共通データベース２に集約される。
そして、図１９Ｄで新たにシステム９Ｄが付加され、図１６〜図１８で説明した新規データベース接続時の処理が行われる。
【００６７】
本実施形態によれば、各データベース４のコピーを格納する共通データベース２を有し、アクセス周期（読込アクセス周期・書込アクセス周期）を基に決定される一定周期毎に各データベース４のデータ４１を共通データベース２にコピーすることで、分散データベース４の利点を残しつつ、データ４１の一元管理を行うことが可能となり、かつ分散データベースの管理を容易にすることが可能となる。
また、アクセス周期に基いて、頻繁にアクセスされるデータ４１は頻繁に書き換えを行い、アクセス頻度の低いデータ４１は長周期で書き換えを行うことにより、通信リソースを効率的に使用することができる。
そして、新たにデータベース４が接続されても、クライアント端末５からキー情報や、データ所在などの情報を入力するだけで、後はデータ収集メッセージ６によるデータ収集が行われるので、新規のデータベース４の追加に対しても柔軟にシステム構築を行うことができる。
【符号の説明】
【００６８】
１      共通データベースサーバ（共通データベース制御装置）
２      共通データベース
３      データベースサーバ（データベース管理装置）
４      データベース
５      クライアント端末
６      データ収集メッセージ
７      データ書込メッセージ
８      登録用メッセージ
１０    情報制御システム
２１    読込用データ情報（第２のデータを格納）
２２    書込用データ情報（第４のデータを格納）
４１    データ（第１のデータ、第３のデータ）
１０１  読込アクセス周期制御部
１０２  書込アクセス周期制御部
１０３  データ収集メッセージ発行部
１０４  データ書込メッセージ発行部
１０５  データ書込部
１０６  データ読込部
１０７  アクセス判定部
１０８  登録用メッセージ発行部
３０１  データ処理部
５０１  アプリケーション
【図１】
0005602474.tif 000002
【図２】
0005602474.tif 000003
【図３】
0005602474.tif 000004
【図４】
0005602474.tif 000005
【図５】
0005602474.tif 000006
【図６】
0005602474.tif 000007
【図７】
0005602474.tif 000008
【図８】
0005602474.tif 000009
【図９】
0005602474.tif 000010
【図１０】
0005602474.tif 000011
【図１１】
0005602474.tif 000012
【図１２】
0005602474.tif 000013
【図１３】
0005602474.tif 000014
【図１４】
0005602474.tif 000015
【図１５】
0005602474.tif 000016
【図１６】
0005602474.tif 000017
【図１７】
0005602474.tif 000018
【図１８】
0005602474.tif 000019
【図１９Ａ】
0005602474.tif 000020
【図１９Ｂ】
0005602474.tif 000021
【図１９Ｃ】
0005602474.tif 000022
【図１９Ｄ】
0005602474.tif 000023