(57)【要約】【課題】更新ログのデータ量を効率的に低減すること。【解決手段】記憶手段１ａは、データ項目２ａ，２ｂ，２ｃを含むレコード２の初期設定と、データ項目２ａ，２ｂ，２ｃに対する初期設定からの更新内容を示す第１の更新データ群３とを記憶する。特定手段１ｂは、記憶手段１ａを参照して、データ項目２ａ，２ｂ，２ｃのうち、最新の更新データによる設定が初期設定と同一でないデータ項目２ａ，２ｃにつき最新の更新データ３ｄ，３ｅを特定する。処理手段１ｃは、特定手段１ｂにより特定された更新データ３ｄ，３ｅを用いて、データ項目２ａ，２ｂ，２ｃに対する１つの第２の更新データ４を生成して記憶手段１ａに格納し、記憶手段１ａから第１の更新データ群３を削除する。【選択図】図１
2012155634.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
複数のデータ項目を含むレコードの初期設定と、前記複数のデータ項目に対する前記初期設定からの更新内容を示す複数の第１の更新データとを記憶する記憶手段、
前記記憶手段を参照して、前記複数のデータ項目それぞれのうち、最新の更新データによる設定が前記初期設定と同一でないデータ項目につき前記最新の更新データを特定する特定手段、
前記特定手段により特定された全てのデータ項目の前記最新の更新データを用いて、前記複数のデータ項目に対する１つの第２の更新データを生成して前記記憶手段に格納し、前記記憶手段から前記複数の第１の更新データを削除する処理手段、
として機能させることを特徴とする情報処理プログラム。
【請求項２】
前記処理手段は、前記特定手段により前記複数のデータ項目の何れかにつき前記最新の更新データとして前記レコードの削除が特定された場合、前記レコードを削除するための処理の記述を含む前記第２の更新データを生成する、
ことを特徴とする請求項１記載の情報処理プログラム。
【請求項３】
前記コンピュータを、
前記記憶手段に記憶された前記第２の更新データを用いて前記レコードの設定と他のコンピュータが記憶するレコードの設定とを同期させる同期処理手段、
として機能させることを特徴とする請求項１または２の何れか一項に記載の情報処理プログラム。
【請求項４】
複数のデータ項目を含むレコードの初期設定と、前記複数のデータ項目に対する前記初期設定からの更新内容を示す複数の第１の更新データとを記憶する記憶手段と、
前記記憶手段を参照して、前記複数のデータ項目それぞれのうち、最新の更新データによる設定が前記初期設定と同一でないデータ項目につき前記最新の更新データを特定する特定手段と、
前記特定手段により特定された全てのデータ項目の前記最新の更新データを用いて、前記複数のデータ項目に対する１つの第２の更新データを生成して前記記憶手段に格納し、前記記憶手段から前記複数の第１の更新データを削除する処理手段と、
を有することを特徴とする情報処理装置。
【請求項５】
コンピュータの情報処理方法であって、
複数のデータ項目を含むレコードの初期設定と、前記複数のデータ項目に対する前記初期設定からの更新内容を示す複数の第１の更新データとを記憶する記憶手段を参照して、前記複数のデータ項目それぞれのうち、最新の更新データによる設定が前記初期設定と同一でないデータ項目につき前記最新の更新データを特定し、
特定した全てのデータ項目の前記最新の更新データを用いて、前記複数のデータ項目に対する１つの第２の更新データを生成して前記記憶手段に格納し、前記記憶手段から前記複数の第１の更新データを削除する、
ことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は更新ログを処理する情報処理プログラム、情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
従来、システムとしての可用性や信頼性を向上するため、構成部品を冗長化して運用する情報処理システムが利用されている。その１つとして、例えば、データベースを冗長化するものがある。具体的には、一方のデータベースを運用系として業務処理に用い、他方のデータベースを待機系として用いる。当該情報処理システムは運用系での更新内容を待機系にも反映して、両方のデータベースを同期する。そして、運用系の障害時には、運用系での業務処理を待機系に引き継がせる。
【０００３】
ここで、データベースを冗長化する場合、両方のデータベースでデータの同期を高速に行えることが、信頼性の観点からは望ましい。そこで、一方のデータベースでの差分を記録した差分ログを取得し、当該差分ログを複数の並列処理対象に振り分けて、当該並列処理対象の差分ログを他方のデータベースに適用する処理を並列に行うことで、差分ログを高速に処理する方法が提案されている（例えば、特許文献１参照）。
【０００４】
また、データベースの同じデータにアクセスする可能性のあるトランザクション同士を同じコネクションにまとめ、コネクションごとの複数のトランザクションを一まとめにしてコミットを実行することで、トランザクションの速度を高速化する方法も提案されている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２００４／０９０７２６号
【特許文献２】特開２００９−２６０２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、障害の起きたデータベースが復旧した場合に、当該復旧したデータベースにそれまでの更新内容を反映することが考えられる。そのために、運用中のもう一方のデータベースで、更新内容を記録した更新ログを取得することがある。
【０００７】
その場合、片方のデータベースのみによる運用時間が長いほど、更新ログに蓄積されるデータ量は増加する。このため、一方が障害から復旧して、差分を同期しようとする場合に、更新ログのデータ量の分だけ処理時間が長くなるという問題がある。また、更新ログの最大データ量が所定量に制限されていることもあり、当該所定量を超えた更新ログの取得が困難になるという問題がある。
【０００８】
本発明はこのような点に鑑みてなされたものであり、更新ログのデータ量を効率的に低減できる情報処理プログラム、情報処理装置および情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
コンピュータを記憶手段、特定手段および処理手段として機能させる情報処理プログラムが提供される。記憶手段は、複数のデータ項目を含むレコードの初期設定と、複数のデータ項目に対する初期設定からの更新内容を示す複数の第１の更新データとを記憶する。特定手段は、記憶手段を参照して、複数のデータ項目それぞれのうち、最新の更新データによる設定が初期設定と同一でないデータ項目につき最新の更新データを特定する。処理手段は、特定手段により特定された全てのデータ項目の最新の更新データを用いて、複数のデータ項目に対する１つの第２の更新データを生成して記憶手段に格納し、記憶手段から複数の第１の更新データを削除する。
【００１０】
また、情報処理プログラムを実行するコンピュータと同様の機能を有する情報処理装置が提供される。
また、コンピュータの情報処理方法が提供される。この情報処理方法では、コンピュータが、複数のデータ項目を含むレコードの初期設定と、複数のデータ項目に対する初期設定からの更新内容を示す複数の第１の更新データとを記憶する記憶手段を参照して、複数のデータ項目それぞれのうち、最新の更新データによる設定が初期設定と同一でないデータ項目につき最新の更新データを特定する。そして、特定した全てのデータ項目の最新の更新データを用いて、複数のデータ項目に対する１つの第２の更新データを生成して記憶手段に格納し、記憶手段から複数の第１の更新データを削除する。
【発明の効果】
【００１１】
上記情報処理プログラム、情報処理装置および情報処理方法によれば、更新ログのデータ量を効率的に低減できる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態の情報処理装置を示す図である。
【図２】第２の実施の形態の金融窓口システムを示す図である。
【図３】各装置の関係を示す図である。
【図４】振込ワークフローを例示する図である。
【図５】ＤＢサーバのハードウェア構成を示す図である。
【図６】ＤＢサーバの機能構成を示す図である。
【図７】伝票管理テーブルのデータ構造例を示す図である。
【図８】更新ログファイルのデータ構造例を示す図である。
【図９】最新レコードテーブルのデータ構造例を示す第１の図である。
【図１０】最新レコードテーブルのデータ構造例を示す第２の図である。
【図１１】更新ログ圧縮処理を示すフローチャートである。
【図１２】圧縮処理後の更新ログファイルを例示する第１の図である。
【図１３】圧縮処理後の更新ログファイルを例示する第２の図である。
【図１４】圧縮処理後の更新ログファイルを例示する第３の図である。
【発明を実施するための形態】
【００１３】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の情報処理装置を示す図である。情報処理装置１は、データベース上のテーブル“ｔａｂｌｅ−Ａ”に関する更新ログを管理する。更新ログは、冗長化されたデータベースにつき両方の同期を行うためのものである。情報処理装置１は、記憶手段１ａ、特定手段１ｂおよび処理手段１ｃを有する。
【００１４】
記憶手段１ａは、レコード２の初期設定を記憶する。初期設定とは、更新ログの取得が開始された時点におけるレコード２の設定内容を示す。複数のレコードがある場合、初期設定はレコードごとに記憶される。当該レコードに複数のデータ項目があれば、初期設定は更にデータ項目ごとに記憶される。
【００１５】
レコード２は、複数のデータ項目を含む。例えば、データ項目２ａ，２ｂ，２ｃを含むとする。ここで、データ項目２ａは“ｄａｔａ１”、データ項目２ｂは“ｄａｔａ２”、データ項目２ｃは“ｄａｔａ３”の項目名が付されている。初期設定は、データ項目２ａ，２ｂ，２ｃの何れも“１０”であるとする。
【００１６】
記憶手段１ａは、データ項目２ａ，２ｂ，２ｃに対する初期設定からの更新ログとして、第１の更新データ群３を記憶する。第１の更新データ群３は、例えば時系列の古い順に更新データ３ａ，３ｂ，３ｃ，３ｄ，３ｅ，３ｆ，３ｇを有する。
【００１７】
特定手段１ｂは、記憶手段１ａを参照して、データ項目２ａ，２ｂ，２ｃそれぞれのうち、最新の更新データによる設定が初期設定と同一でないデータ項目につき最新の更新データを特定する。
【００１８】
例えば、データ項目２ａに関する最新の更新データ３ｅは“１２”への更新を示す。よって、初期設定“１０”と同一でないので、特定手段１ｂは当該最新の更新データ３ｅを特定する。また、データ項目２ｂに関する最新の更新データ３ｇは“１０”への更新を示す。よって、初期設定“１０”と同一であるので、特定の対象外となる。また、データ項目２ｃに関する最新の更新データ３ｄは“２０”への更新を示す。よって、初期設定“１０”と同一でないので、特定手段１ｂは当該最新の更新データ３ｄを特定する。
【００１９】
処理手段１ｃは、特定手段１ｂにより特定された全てのデータ項目の最新の更新データを用いて、複数のデータ項目に対する１つの第２の更新データ４を生成して記憶手段１ａに格納する。そして、処理手段１ｃは記憶手段１ａから第１の更新データ群３を削除する。第２の更新データ４は、冗長化された両方のデータベースの同期を行うために、第１の更新データ群３に代えて用いることができる。
【００２０】
例えば、上述の例では特定手段１ｂは、データ項目２ａに対して更新データ３ｅを、データ項目２ｃに対して更新データ３ｄを特定している。処理手段１ｃは、当該更新データ３ｄ，３ｅを用いて、第２の更新データ４を生成する。第２の更新データ４は、データ項目２ａを“１２”に、データ項目２ｃを“２０”に、それぞれ更新するためのデータである。そして、処理手段１ｃは記憶手段１ａから第１の更新データ群３を削除する。
【００２１】
情報処理装置１によれば、特定手段１ｂにより、記憶手段１ａが参照されて、データ項目２ａ，２ｂ，２ｃそれぞれのうち、最新の更新データによる設定が初期設定と同一でないデータ項目２ａ，２ｃにつき最新の更新データ３ｄ，３ｅが特定される。処理手段１ｃにより、特定手段１ｂが特定した更新データ３ｄ，３ｅを用いて、データ項目２ａ，２ｂ，２ｃに対する１つの第２の更新データ４が作成されて記憶手段１ａに格納され、記憶手段１ａから第１の更新データ群３が削除される。
【００２２】
これにより、更新ログのデータ量を効率的に低減できる。具体的には、データ項目２ａ，２ｂ，２ｃそれぞれの最新の更新データを反映した第２の更新データ４を生成して、それ以外の更新データを削除するようにしたので、更新ログのデータ量を低減できる。ここで、データ項目２ａ，２ｂ，２ｃそれぞれの最新の更新データのみから第２の更新データ４を生成できるのは、最新の更新データ以外の更新データが、最終的に新しい更新データによって別の設定に更新されるものだからである。このため、最新の更新データのみを参照することで、当該データ項目を同期させるために必要な情報を得ることができる。
【００２３】
特に、レコード２に対して、１つの新たな更新データ（第２の更新データ４）を生成するので、レコード２に対して複数存在していた更新データのデータ量を効率的に低減できる。
【００２４】
更に、最新の更新データによる設定が初期設定と異なるデータ項目２ａ，２ｃについて第２の更新データ４を生成することで、第２の更新データ４の中に初期設定と同一設定のデータ項目２ｂにつき無駄な更新コマンドを含めずに済む。
【００２５】
このため、第２の更新データ４を用いて冗長化したデータベースの同期を行えば、同期処理に掛かる時間を短縮できる。また、更新ログの最大データ量が所定量に制限されていても、第２の更新データ４の生成および第１の更新データ群３の削除を定期的に行うことで、更新ログの増加量を緩和できる。
【００２６】
以下に説明する第２の実施の形態では、情報処理装置１を金融窓口システムに適用する場合を例示して説明する。
［第２の実施の形態］
図２は、第２の実施の形態の金融窓口システムを示す図である。この金融窓口システムは、金融機関のセンタ１０および営業店２０における為替業務を支援する。ここで、以下では振込業務を例示して説明する。ただし、他の業務に関しても同様である。センタ１０および営業店２０には、金融窓口システムを構成するサーバ装置（以下、単にサーバということもある）や端末装置などの情報処理装置が設置されている。
【００２７】
この金融窓口システムは、ＤＢ（DataBase）サーバ１００，１００ａ、ＡＰ（Application）サーバ２００、Ｗｅｂサーバ３００、手続端末装置４００、窓口端末装置５００および承認端末装置６００を含む。
【００２８】
ＤＢサーバ１００，１００ａ、ＡＰサーバ２００およびＷｅｂサーバ３００はセンタ１０内のネットワーク１１に接続されている。手続端末装置４００はセンタ１０内のネットワーク１２に接続されている。また、ネットワーク１２はネットワーク１１に接続されている。更に、窓口端末装置５００および承認端末装置６００は営業店２０内のネットワーク２１に接続されている。そして、ネットワーク１１，２１は、ネットワーク３０を介して接続されている。ネットワーク３０は、インターネット、イントラネットまたは当該金融窓口システムのための専用の通信網である。
【００２９】
ＤＢサーバ１００，１００ａは、金融窓口システムの処理に利用するデータを格納するためのサーバ装置である。ＤＢサーバ１００，１００ａは、冗長化（ミラーリング）されている。すなわち、ＤＢサーバ１００，１００ａは、一方（運用系）の更新内容を他方（待機系）へ同期する機能を有する。特に、ＤＢサーバ１００，１００ａは運用系が障害により運用継続できなくなると、待機系へ業務処理を引き継ぐ。例えば、ＤＢサーバ１００ａが運用系であった場合に、ＤＢサーバ１００ａで障害が発生し、運用継続できなくなると、待機系であるＤＢサーバ１００に業務処理を引き継ぐ。その際、ＤＢサーバ１００は、ＤＢサーバ１００での更新内容を記録した更新ログを生成する。更新ログは、ＤＢサーバ１００ａが復旧したときに、ＤＢサーバ１００での更新内容をＤＢサーバ１００ａに同期させるために用いる。
【００３０】
ＡＰサーバ２００は、金融窓口システムの業務処理を実現するためのアプリケーションを実行するサーバ装置である。ＡＰサーバ２００は、Ｗｅｂサーバ３００から受け付けた要求に応じてＤＢサーバ１００，１００ａを参照し、業務処理を実行する。
【００３１】
Ｗｅｂサーバ３００は、手続端末装置４００、窓口端末装置５００および承認端末装置６００から業務処理要求を受け付けるためのＧＵＩ（Graphical User Interface）を提供するサーバ装置である。手続端末装置４００、窓口端末装置５００および承認端末装置６００の各オペレータは、各装置に設けられたブラウザによって当該ＧＵＩを利用できる。
【００３２】
手続端末装置４００は、振込手続を行うための情報処理装置である。手続端末装置４００は、センタ１０に駐在する手続オペレータが操作する。
窓口端末装置５００は、顧客が記入した振込伝票を受け付ける情報処理装置である。窓口端末装置５００は、営業店２０に駐在する窓口オペレータが操作する。
【００３３】
承認端末装置６００は、振込手続の継続を承認するための情報処理装置である。承認端末装置６００は、営業店２０に駐在する承認者が操作する。
図３は、各装置の関係を示す図である。窓口端末装置５００、承認端末装置６００および手続端末装置４００の各オペレータは、Ｗｅｂサーバ３００にアクセスして業務処理要求を入力できる。窓口端末装置５００、承認端末装置６００および手続端末装置４００はＷｅｂサーバ３００のＧＵＩをブラウザにより取得して表示する。
【００３４】
窓口端末装置５００が表示するＧＵＩは、振込伝票の受付完了の入力を受け付けるためのものである。
承認端末装置６００が表示するＧＵＩは、入力された振込伝票の情報に基づいて、振込手続を行ってもよい旨の承認を行うためのＧＵＩである。
【００３５】
手続端末装置４００が表示するＧＵＩは、振込手続の確定の入力を行うためのＧＵＩである。
Ｗｅｂサーバ３００は、窓口端末装置５００、承認端末装置６００および手続端末装置４００から取得した各業務処理要求に応じてＡＰサーバ２００に対するリクエスト（ＡＰリクエストと称する）を生成し、ＡＰサーバ２００に送信する。Ｗｅｂサーバ３００は、ＡＰリクエストに応じた処理応答（ＡＰレスポンスと称する）をＡＰサーバ２００から受信すると、当該ＡＰレスポンスに基づき業務処理応答を生成し、窓口端末装置５００、承認端末装置６００および手続端末装置４００に送信する。
【００３６】
ＡＰサーバ２００は、Ｗｅｂサーバ３００から受信したＡＰリクエストに応じてＤＢサーバ１００，１００ａに対するリクエスト（ＤＢリクエストと称する）を生成し、ＤＢサーバ１００，１００ａに送信する。ここで、ＡＰサーバ２００は、現在運用系のＤＢサーバに対してＤＢリクエストを送信する。例えば、ＤＢサーバ１００ａが運用系であれば、ＤＢサーバ１００ａにＤＢリクエストを送信する。すると、ＡＰサーバ２００は、ＤＢリクエストに応じた処理応答（ＤＢレスポンスと称する）をＤＢサーバ１００ａから受信し、当該ＤＢレスポンスに基づきＡＰレスポンスを生成してＷｅｂサーバ３００に送信する。ＤＢリクエストにはＳＱＬ文に対応する情報が含まれる。
【００３７】
ＤＢサーバ１００，１００ａは、ＡＰサーバ２００から受信したＤＢリクエストに応じてデータ処理を行う。ＤＢサーバ１００，１００ａは、当該データ処理の結果に基づきＡＰサーバ２００に対する応答を生成し、ＡＰサーバ２００に送信する。ここで、ＤＢサーバ１００，１００ａのうち、運用系の一方が当該処理を行う。待機系の他方には、運用系で実行したデータ処理の結果が同期される。
【００３８】
以下の説明では、ＤＢサーバ１００ａは障害により停止している場合を想定する。すなわち、金融窓口システムがＤＢサーバ１００のみで縮退運用されている場合を想定する。ただし、ＤＢサーバ１００が障害で停止し、ＤＢサーバ１００ａのみで縮退運用されている場合も以下の説明と同様である。
【００３９】
図４は、振込ワークフローを例示する図である。振込ワークフロー５０は、金融窓口システムの振込処理の順序を示す。振込ワークフロー５０には、各拠点（営業店２０およびセンタ１０）における、業務処理要求の発生元（要求元）の装置、当該要求に伴う処理および当該処理後の伝票状態が示されている。ここで、伝票状態は、ＤＢサーバ１００，１００ａで管理される振込伝票の状態を示す。振込ワークフロー５０による処理順序は、次の通りである。
【００４０】
まず、顧客が金融機関に対して振込依頼を行うための振込伝票を作成する。振込ワークフロー５０では、要求元が“（顧客）”、処理が“（振込依頼）”、伝票状態が“（作成）”と括弧で括られている。これは、当該手順が顧客によって行われるものであり、金融窓口システムが行う手順ではないためである。ただし、金融窓口システムによる処理の起点となる入力データは当該伝票に基づいて生成されるため、それが分かり易いように図示している。以下、それ以降の手順を説明する。なお、ＤＢサーバ１００の処理は、上述したようにＷｅｂサーバ３００およびＡＰサーバ２００を介したＤＢリクエストに基づき実行される。
【００４１】
（１）窓口端末装置５００は、振込伝票の情報の登録要求をＷｅｂサーバ３００に送信する。すると、ＤＢサーバ１００は当該伝票の情報を登録する。ＤＢサーバ１００は、伝票状態を“受付”に設定する。
【００４２】
（２）窓口端末装置５００は、振込伝票による振込の承認依頼要求をＷｅｂサーバ３００に送信する。すると、ＤＢサーバ１００は、伝票状態を“承認待ち”に設定する。これによって、承認端末装置６００による承認が可能となる。
【００４３】
（３）承認端末装置６００は、振込伝票の承認の設定要求をＷｅｂサーバ３００に送信する。すると、ＤＢサーバ１００は伝票状態を“承認”に設定する。
（４）承認端末装置６００は、振込伝票につき振込手続の委譲要求をＷｅｂサーバ３００に送信する。すると、ＤＢサーバ１００は、伝票状態を“委譲”に設定する。
【００４４】
（５）手続端末装置４００は、振込伝票による振込手続の実行要求をＷｅｂサーバ３００に送信する。すると、ＤＢサーバ１００は、伝票状態を“手続中”に設定する。そして、ＡＰサーバ２００により、他の支店や他の金融機関等との間で振込処理が実行される。
【００４５】
（６）ＡＰサーバ２００は、振込処理が完了すると、その旨をＤＢサーバ１００に通知する。すると、ＤＢサーバ１００は、伝票状態を“完了”に設定する。
以上の順序で振込処理が行われ、ＤＢサーバ１００上の電子伝票の状態が更新される。ＤＢサーバ１００は、このように順次変更される電子伝票の更新の履歴を更新ログとして記録する。ＤＢサーバ１００ａが復旧した際に、当該更新ログを用いてデータの同期を図るためである。その際、ＤＢサーバ１００は、当該更新ログのデータ量を効率的に低減する。以下では、そのようなＤＢサーバ１００の構成を詳細に説明する。まず、ＤＢサーバ１００が備えるデバイス（ハードウェア）の構成を説明する。
【００４６】
図５は、ＤＢサーバのハードウェア構成を示す図である。ＤＢサーバ１００は、ＣＰＵ（Central Processing Unit）１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３、ＨＤＤ（Hard Disk Drive）１０４、グラフィック処理装置１０５、入力インタフェース１０６、記録媒体読取装置１０７および通信インタフェース１０８を有する。
【００４７】
ＣＰＵ１０１は、ＯＳ（Operating System）プログラムやアプリケーションプログラムを実行して、ＤＢサーバ１００全体を制御する。
ＲＯＭ１０２は、ＤＢサーバ１００の起動時に実行されるＢＩＯＳ（Basic Input / Output System）プログラムなどの所定のプログラムを記憶する。ＲＯＭ１０２は、書き換え可能な不揮発性メモリであってもよい。
【００４８】
ＲＡＭ１０３は、ＣＰＵ１０１が実行するＯＳプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０３は、ＣＰＵ１０１の処理に用いられるデータの少なくとも一部を一時的に記憶する。
【００４９】
ＨＤＤ１０４は、ＯＳプログラムやアプリケーションプログラムを記憶する。また、ＨＤＤ１０４は、ＣＰＵ１０１の処理に用いられるデータを記憶する。なお、ＨＤＤ１０４に代えて（または、ＨＤＤ１０４と併せて）、ＳＳＤ（Solid State Drive）など他の種類の不揮発性の記憶装置を用いてもよい。
【００５０】
グラフィック処理装置１０５は、モニタ１３に接続される。グラフィック処理装置１０５は、ＣＰＵ１０１からの命令に従って、画像をモニタ１３に表示させる。
入力インタフェース１０６は、キーボード１４やマウス１５などの入力デバイスに接続される。入力インタフェース１０６は、入力デバイスから送られる入力信号をＣＰＵ１０１に出力する。
【００５１】
記録媒体読取装置１０７は、記録媒体１６に格納されたデータを読み取る読取装置である。記録媒体１６には、例えば、ＤＢサーバ１００に実行させるプログラムが記録されている。ＤＢサーバ１００は、例えば、記録媒体１６に記録された情報処理プログラムを実行することで、後述するような更新ログの圧縮機能を実現することができる。すなわち、情報処理プログラムはコンピュータ読み取り可能な記録媒体１６に記録して配布することが可能である。
【００５２】
記録媒体１６としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリを使用できる。磁気記録装置には、ＨＤＤ、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＣＤ（Compact Disc）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−Ｒ／ＲＷ／ＲＡＭなどがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。半導体メモリには、ＵＳＢ（Universal Serial Bus）メモリなどのフラッシュメモリがある。
【００５３】
通信インタフェース１０８は、ネットワーク１１に接続される。通信インタフェース１０８は、ネットワーク１１を介してＤＢサーバ１００ａ、ＡＰサーバ２００、Ｗｅｂサーバ３００、手続端末装置４００、窓口端末装置５００および承認端末装置６００とデータ通信を行える。
【００５４】
なお、ネットワーク１１やネットワーク３０等に接続された他のサーバ装置（図示せず）に情報処理プログラムを格納しておいてもよい。その場合、ＤＢサーバ１００は、当該サーバ装置から情報処理プログラムをダウンロードして実行することもできる。
【００５５】
また、ＤＢサーバ１００ａ、ＡＰサーバ２００、Ｗｅｂサーバ３００、手続端末装置４００、窓口端末装置５００および承認端末装置６００もＤＢサーバ１００と同様のハードウェア構成により実現できる。
【００５６】
図６は、ＤＢサーバの機能構成を示す図である。ＤＢサーバ１００は、伝票データベース１１０、トランザクションログ記憶部１２０、更新ログ記憶部１３０、最新レコード記憶部１４０、通信部１５０、データベース管理部１６０、解析処理部１７０、圧縮処理部１８０および同期処理部１９０を有する。これらのユニットの機能は、ＣＰＵ１０１が情報処理プログラムを実行することによりＤＢサーバ１００上に実現される。ただし、これらのユニットの機能の全部または一部を専用のハードウェアで実現してもよい。
【００５７】
伝票データベース１１０は、電子伝票を保存し、管理するための記憶領域である。伝票データベース１１０は、１つの電子伝票を、複数の設定項目を含む１つのレコードとして管理する。
【００５８】
トランザクションログ記憶部１２０は、トランザクションログを記憶する。トランザクションログは、伝票データベース１１０に対する全てのトランザクションを記録したものである。トランザクションログは、伝票データベース１１０に対する個別のトランザクションのロールバックやロールフォワードを行うために用いられる。
【００５９】
更新ログ記憶部１３０は、更新ログを記憶する。更新ログは、ＤＢサーバ１００ａが障害により停止状態にあるときにデータベース管理部１６０により取得される。更新ログは、ＤＢサーバ１００ａが障害から復旧した際に、ＤＢサーバ１００，１００ａで同期をとるために用いられる。
【００６０】
最新レコード記憶部１４０は、最新レコード管理データを記憶する。最新レコード管理データは、伝票データベース１１０に記録されたレコードに含まれる各設定項目につき、最新の状態を特定するために用いる情報である。
【００６１】
通信部１５０は、ＡＰサーバ２００と通信する。通信部１５０は、ＡＰサーバ２００から受信したＤＢリクエストをデータベース管理部１６０に出力する。通信部１５０は、データベース管理部１６０から取得したＤＢレスポンスをＡＰサーバ２００に送信する。
【００６２】
データベース管理部１６０は、通信部１５０から取得したＤＢリクエストを解析してＳＱＬ文を取得（あるいは生成）する。データベース管理部１６０は、当該ＳＱＬ文を実行して伝票データベース１１０を操作する。操作内容は、例えば、更新（ＵＰＤＡＴＥ）、削除（ＤＥＬＥＴＥ）および挿入（ＩＮＳＥＲＴ）である。
【００６３】
解析処理部１７０は、更新ログ記憶部１３０に記憶された更新ログを参照して、最新レコード管理データを生成し、最新レコード記憶部１４０に格納する。
圧縮処理部１８０は、最新レコード記憶部１４０に記憶された最新レコード管理データを参照して更新ログの圧縮処理を行う。
【００６４】
同期処理部１９０は、ＤＢサーバ１００ａが障害から復旧した際に、更新ログ記憶部１３０に記憶された更新ログを参照して、ＤＢサーバ１００ａが備える伝票データベースを伝票データベース１１０に同期させる。
【００６５】
なお、ＤＢサーバ１００ａもＤＢサーバ１００と同様の機能構成である。
図７は、伝票管理テーブルのデータ構造例を示す図である。伝票管理テーブル１１１は、伝票データベース１１０に格納され、データベース管理部１６０によって更新される。伝票管理テーブル１１１は電子伝票を管理するためのデータである。伝票管理テーブル１１１には、レコード番号、エントリ店舗番号、伝票通番、伝票状態、取出中フラグおよびメディアファイルを示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つの電子伝票の情報を示す。
【００６６】
レコード番号の項目には、レコードを識別するための番号が設定される。エントリ店舗番号の項目には、営業店２０を識別するための識別情報が設定される。伝票通番の項目には、電子伝票に付された通し番号が設定される。伝票状態の項目には、振込ワークフロー５０上の伝票状態が設定される。取出中フラグの項目には、当該フラグがＯＮまたはＯＦＦの何れであるかを示す情報が設定される。ここで、取出中フラグとは、振込ワークフロー５０における何れかの処理により利用を行っているため、他の処理によって更新できない状態（排他状態）であることを示すフラグである。このようなフラグは、排他フラグと呼ばれることもある。メディアファイルの項目には、振込伝票の記入内容を画像化したファイルが設定される（伝票管理テーブル１１１ではファイル名で示している）。
【００６７】
例えば、伝票管理テーブル１１１には、レコード番号が“１”、エントリ店舗番号が“Ｅ００１”、伝票通番が“Ｄ０００１”、伝票状態が“受付”、取出中フラグが“ＯＦＦ”、メディアファイルが“Ｄ０００１．ｄａｔ”という情報が設定されている。
【００６８】
これは、当該電子伝票を示すレコード番号が“１”であること、営業店２０で登録された伝票であること、伝票通番が“Ｄ０００１”であること、伝票状態が振込ワークフロー５０における“受付”の状態であることを示す。また、取出中フラグが“ＯＦＦ”であるので、何れの処理にも用いられていないことを示す。更に、当該電子伝票に対応するメディアファイルが“Ｄ０００１．ｄａｔ”として、伝票管理テーブル１１１に格納されていることを示す。
【００６９】
また、例えば、伝票管理テーブル１１１には、レコード番号が“２”、エントリ店舗番号が“Ｅ００１”、伝票通番が“Ｄ０００２”、伝票状態が“承認待ち”、取出中フラグが“ＯＮ”、メディアファイルが“Ｄ０００２．ｄａｔ”という情報が設定される。
【００７０】
これは、当該電子伝票を示すレコード番号が“２”であること、営業店２０で登録された伝票であること、伝票通番が“Ｄ０００２”であること、伝票状態が振込ワークフロー５０における“承認待ち”の状態であることを示す。また、取出中フラグが“ＯＮ”であるので、何れかの処理（ここでは、振込ワークフロー５０における（２）または（３）の何れか）に利用されており、当該処理以外の処理には、更新が禁止された状態であることを示す。更に、当該電子伝票に対応するメディアファイルが“Ｄ０００２．ｄａｔ”として、伝票管理テーブル１１１に格納されていることを示す。
【００７１】
ここで、以下の説明では電子伝票を示すそれぞれのレコードを伝票管理レコードと称することとする。
図８は、更新ログファイルのデータ構造例を示す図である。更新ログファイル１３１は、データベース管理部１６０により生成され、更新ログ記憶部１３０に格納される。更新ログファイル１３１には、複数の更新データが記述される。更新ログファイル１３１では、更新データに対応付けて、当該更新データを識別するための項番を便宜的に表記している。項番は、時系列に昇順に付されており、番号が小さい程古く、番号が大きいほど新しい。なお、各更新データにつき、テーブル名は“伝票管理”の表記によって伝票管理テーブル１１１を指定しているとする。
【００７２】
更新データには、データベース管理部１６０による伝票データベース１１０の更新内容が記述される。更新ログファイル１３１では、１つの電子伝票に関する新たなレコードの挿入（ＩＮＳＥＲＴ）から始まって、振込ワークフロー５０の（１）〜（６）（以下、単に“（１）の処理”等と表記する）に示した一連の処理に対応する更新データを例示している。
【００７３】
具体的には、新たな伝票の登録（レコードの挿入）は項番１の更新データに対応する。（１）の処理は項番２〜４の更新データに対応する。（２）の処理は項番５〜７の更新データに対応する。（３）の処理は項番８〜１０の更新データに対応する。（４）の処理は項番１１〜１３の更新データに対応する。（５）の処理は項番１４〜１６の更新データに対応する。（６）の処理は項番１７〜１９の更新データに対応する。
【００７４】
ここで、（１）の処理に対応する項番２〜４の更新データが示す内容について説明する。更新対象のレコードのレコード番号は“１”とする。（１）の処理では、まず、項番２の更新データによって、取出中フラグが“ＯＮ”に設定される。これによって、当該レコードが排他状態となる。次に、項番３の更新データによって、伝票状態が“受付”に設定される。更に、項番４の更新データによって、取出中フラグが“ＯＦＦ”に設定される。これによって、当該レコードの排他状態が解除される。
【００７５】
（２）〜（６）の処理に関しても（１）の処理と同様にして、伝票状態が更新される。すなわち、まず、当該レコードを排他状態にし、伝票状態を更新して、排他状態を解除する。
【００７６】
また、更新ログファイル１３１において、項番１の更新データは更新種別が“ＩＮＳＥＲＴ”（新規追加）であるから更新ログファイル１３１の取得を開始した時点におけるレコード番号“１”の伝票管理レコードの状態を示している。すなわち、当該項番１の更新データは当該レコードに含まれる各データ項目の初期設定である。
【００７７】
一方、項番１の更新データの更新種別が“ＵＰＤＡＴＥ”である場合もある。その場合、項番１の更新データは“ＵＰＤＡＴＥ”対象のデータ項目の初期設定を示すことになる。そして、他のデータ項目の初期設定は、当該他のデータ項目が最初に更新対象となったときに取得され記憶される。よって、この場合、初期設定を示す更新データは複数存在することになる。
【００７８】
図９は、最新レコードテーブルのデータ構造例を示す第１の図である。最新レコードテーブル１４１は、解析処理部１７０によって生成され、最新レコード記憶部１４０に格納される。最新レコードテーブル１４１ａ，１４１ｂは、解析処理部１７０による最新レコードテーブル１４１の更新の変遷を示すものである。最新レコードテーブルには、テーブル名、レコード番号、削除フラグおよび更新内容の項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つのレコードの最新の状態を示す。
【００７９】
テーブル名の項目には、テーブルの名称が設定される。レコード番号の項目には、テーブル内のレコードを識別するための番号が設定される。削除フラグの項目には、当該レコードが削除（ＤＥＬＥＴＥ）されたものか否かを示す削除フラグが設定される。削除フラグは、当該レコードが削除されたものであれば“ＯＮ”、それ以外では“ＯＦＦ”が設定される。更新内容の項目には、データの項目名と当該データ項目の更新値が設定される。更新内容の項目は、データ項目名ごとに設けられる。このため、複数のデータ項目の更新値を管理する場合には、更新内容の項目も複数設けられる。最新レコードテーブル１４１ａ，１４１ｂでは、更新内容（Ａ），（Ｂ）の項目を設けて、複数の更新内容を区別する。
【００８０】
以下、最新レコードテーブル１４１の更新の変遷について具体的に説明する。
最新レコードテーブル１４１は、更新ログファイル１３１の項番２の更新データに対応する。すなわち、最新レコードテーブル１４１は、伝票管理テーブル１１１のレコード番号“１”のレコードにつき、項目名“取出中フラグ”を更新値“ＯＮ”に設定した旨を記録したものである。
【００８１】
最新レコードテーブル１４１ａは、更新ログファイル１３１の項番３の更新データに対応する。すなわち、最新レコードテーブル１４１ａは、伝票管理テーブル１１１のレコード番号“１”のレコードにつき、項目名“伝票状態”を更新値“受付”に設定した旨を記録したものである。
【００８２】
最新レコードテーブル１４１ｂは、更新ログファイル１３１の項番４の更新データに対応する。すなわち、最新レコードテーブル１４１ｂは、伝票管理テーブル１１１のレコード番号“１”のレコードにつき、項目名“取出中フラグ”を更新値“ＯＦＦ”に設定した旨を記録したものである。
【００８３】
以下、更新ログファイル１３１の項番５〜１９についても、同様にして最新レコードテーブル１４１ｂを更新していく。
図１０は、最新レコードテーブルのデータ構造例を示す第２の図である。最新レコードテーブル１４１ｎは、更新ログファイル１３１の項番１９の更新データに対応する。すなわち、最新レコードテーブル１４１ｎは、伝票管理テーブル１１１のレコード番号“１”のレコードの最新の状態を特定したものである。
【００８４】
次に、以上の構成のＤＢサーバ１００の処理手順を説明する。以下に示す処理は、例えば縮退運用時に定期的に実行される。
図１１は、更新ログ圧縮処理を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。
【００８５】
［ステップＳ１］解析処理部１７０は、更新ログ記憶部１３０に更新ログファイル１３１が有るか否かを判定する。更新ログファイル１３１が有る場合、処理をステップＳ２に進める。更新ログファイル１３１が無い場合、処理を終了する。
【００８６】
［ステップＳ２］解析処理部１７０は、更新ログファイル１３１から未処理の更新データのうち最も古い更新データを１つ取得する。
［ステップＳ３］解析処理部１７０は、更新データに記述された更新種別を判定する。“ＵＰＤＡＴＥ”の場合、処理をステップＳ４に進める。“ＤＥＬＥＴＥ”の場合、処理をステップＳ５に進める。“ＩＮＳＥＲＴ”の場合、処理をステップＳ６に進める。
【００８７】
［ステップＳ４］解析処理部１７０は、最新レコード記憶部１４０に記憶された最新レコードテーブル１４１に更新内容を上書き記録する。
［ステップＳ５］解析処理部１７０は、最新レコード記憶部１４０に記憶された最新レコードテーブル１４１の削除フラグの項目を“ＯＮ”に設定する。
【００８８】
［ステップＳ６］解析処理部１７０は、更新ログファイル１３１に含まれる全ての更新データを処理済みであるか否かを判定する。全ての更新データを処理済みである場合、処理をステップＳ７に進める。なお、処理をステップＳ７に進める時点で最新レコード記憶部１４０には最新レコードテーブル１４１ｎが格納されているとする。未処理の更新データが有る場合、処理をステップＳ２に進める。
【００８９】
［ステップＳ７］圧縮処理部１８０は、最新レコードテーブル１４１ｎを参照して、レコードごとに単一の更新データを生成する。単一の更新データとは、当該レコードに対して１つの処理コマンド（“ＵＰＤＡＴＥ”や“ＤＥＬＥＴＥ”）で、各データ項目の更新を行う更新データである。このとき、圧縮処理部１８０は最新レコードテーブル１４１ｎの更新値が初期設定と異なるデータ項目のみを、更新データに含める。レコードの更新を行う場合（削除フラグが“ＯＦＦ”の場合）、更新種別“ＵＰＤＡＴＥ”の更新データを生成する。レコードの削除を行う場合（削除フラグが“ＯＮ”の場合）、更新種別“ＤＥＬＥＴＥ”の更新データを生成する。圧縮処理部１８０は、生成した更新データを更新ログファイル１３１に記述する。
【００９０】
［ステップＳ８］圧縮処理部１８０は、更新ログ記憶部１３０に記憶されたステップＳ７で生成した更新データ以外の更新データ（初期設定の更新データを除く）を削除する。
このようにして、解析処理部１７０および圧縮処理部１８０は更新ログファイル１３１のデータ量を低減する。
【００９１】
図１２は、圧縮処理後の更新ログファイルを例示する第１の図である。更新ログファイル１３１ａは、更新ログファイル１３１および最新レコードテーブル１４１ｎに基づいて、圧縮処理部１８０により生成されたものであり、図１１のステップＳ８の圧縮処理部１８０による処理後の更新ログである。更新ログファイル１３１と比較すると、項番２０の更新データが追加されて、項番２〜１９のデータが削除されていることが分かる。
【００９２】
特に、項番２０の更新データでは、対象の伝票管理レコードにつき伝票状態を“完了”に更新する処理が記述されている。これは、最新レコードテーブル１４１ｎの更新内容（Ｂ）に対応する。一方、項番２０の更新データでは、最新レコードテーブル１４１ｎの更新内容（Ａ）に対応する処理は記述されていない。これは、項番１の更新データに示される取出中フラグ“ＯＦＦ”と、最新レコードテーブル１４１ｎの更新内容（Ａ）で特定された取出中フラグの最新の設定“ＯＦＦ”と、が同一だからである。すなわち、更新の必要がないため、当該データ項目に関する処理の記述を省ける。
【００９３】
次に、最新レコードテーブル１４１ｎの他の例と、それに応じて圧縮処理部１８０により生成される更新ログファイル１３１ａの他の例とを具体的に説明する。
図１３は、圧縮処理後の更新ログファイルを例示する第２の図である。まず、最新レコードテーブル１４１ｘは、最新レコードテーブル１４１ｎの他の例を示す。具体的には、更新内容（Ｃ）の項目が追加されている。当該更新内容（Ｃ）の項目には、項目名“伝票通番”および更新値“Ｄ１００１”が設定されている。これは、レコード番号“１”に対して、伝票通番が“Ｄ１００１”に変更されていることを示す。更新内容（Ｃ）は、圧縮前の更新ログファイルから、更新内容（Ｂ）とは別個の更新データにより特定されたものである。
【００９４】
圧縮処理部１８０は、圧縮処理前の更新ログファイルと最新レコードテーブル１４１ｘとに基づいて更新ログファイル１３１ｂを生成する。ここで、圧縮処理前の更新ログファイルでは、初期設定（項番１）の更新データの更新種別が“ＩＮＳＥＲＴ”、取出中フラグが“ＯＦＦ”、伝票状態が“完了”以外、伝票通番が“Ｄ１００１”以外であったとする。この場合、更新種別が“ＵＰＤＡＴＥ”なので、上述したように項番１の更新データも削除できる。
【００９５】
更新ログファイル１３１ｂには、項番１の更新データに加えて、項番３１の更新データが記述されている。当該項番３１の更新データでは、対象の伝票管理レコードにつき伝票状態を“完了”に、伝票通番を“Ｄ１００１”に更新する処理が記述されている。これは、最新レコードテーブル１４１ｘの更新内容（Ｂ）、（Ｃ）に対応する。また、項番３１の更新データでは最新レコードテーブル１４１ｘの更新内容（Ａ）に対応する処理は記述されていない。これは、初期設定の取出中フラグ“ＯＦＦ”と、最新レコードテーブル１４１ｘの更新内容（Ａ）で特定された取出中フラグの最新の設定“ＯＦＦ”と、が同一だからである。
【００９６】
このように、圧縮処理部１８０は圧縮処理前には複数の更新データで記述されていた複数の更新内容を単一の更新データにまとめて、更新ログファイルに記述する。そして、当該伝票管理レコードの更新内容を記述していた複数の更新データを圧縮前の更新ログファイルから削除する。その結果、更新ログファイル１３１ｂが生成される。
【００９７】
これにより、更新ログファイルのデータ量を効率的に低減できる。特に、複数の更新内容を単一の更新データにまとめる。このため、当該更新ログファイル１３１ｂを用いて同期処理を行えば、圧縮前の更新ログファイルを用いて同期を行う場合に比べて、更新処理の回数を低減できる。よって、同期処理を高速に行える。
【００９８】
このとき、初期設定と最新の設定とで相違がないデータ項目に関しては、更新データに更新処理を記述しない。よって、更新ログファイルのデータ量を一層低減できる。また、同期処理において当該データ項目に対する更新処理を行わずに済む。よって、同期処理を一層高速に行える。
【００９９】
このような制御は、更新ログファイル中に、取出中フラグなどの排他フラグのように、データ処理に用いる時だけ更新し、データ処理が完了すると元の設定に戻すようなデータ項目が含まれる場合に特に有効である。なぜなら、このような排他フラグは、一連のデータ処理において頻繁に更新されるにも関わらず、最終的には当初の設定値に戻される。したがって、これら全ての更新処理を同期処理の際に再現すると、処理に無駄が生じ易いためである。
【０１００】
図１４は、圧縮処理後の更新ログファイルを例示する第３の図である。まず、最新レコードテーブル１４１ｙは、最新レコードテーブル１４１ｎの他の例を示す。具体的には、レコード番号“２”の伝票管理レコードに対して削除フラグが“ＯＮ”に設定されている。これは、レコード番号“２”に対して、“ＤＥＬＥＴＥ”の処理が行われたことを示す。なお、圧縮処理前の更新ログファイルには、レコード番号“２”の伝票管理レコードにつき、“ＵＰＤＡＴＥ”の処理が複数記述されていたものとする。初期設定も“ＵＰＤＡＴＥ”の更新種別を含む複数の更新データにより取得されていたものとする。
【０１０１】
圧縮処理部１８０は、圧縮処理前の更新ログファイルと最新レコードテーブル１４１ｙとに基づいて、更新ログファイル１３１ｃを生成する。更新ログファイル１３１ｃには、項番４１の更新データが記述されている。当該項番４１の更新データでは、対象の伝票管理レコードを削除する処理が記述されている。
【０１０２】
このように、圧縮処理部１８０は圧縮処理前には複数の更新データで複数の更新内容が記述されていたとしても、削除処理が行われた場合には当該削除処理を記述した更新データのみを生成し、他の更新データを削除する。削除処理を記述した更新データ以外の他の更新データを削除できるのは、削除された伝票管理レコードに対しては、その後新たな処理に用いられることは無いと考えられるからである。
【０１０３】
これにより、更新ログファイルのデータ量を一層効率的に低減できる。具体的には、削除処理以外の処理を示す更新データを削除するので、当該削除した更新データ分のデータ量を低減できる。また、更新ログファイル１３１ｃを用いれば、同期処理において、当該伝票管理レコードに対する削除処理以外の処理を行わずに済む。よって、同期処理を一層高速に行える。
【０１０４】
特に、レコードの削除処理用の更新データを生成する際には、更新ログファイル１３１ｃに示したように、更新種別“ＵＰＤＡＴＥ”で記述された更新データを初期設定も含めて削除してもよい（更新種別“ＤＥＬＥＴＥ”で記述された更新データが残る）。削除されるレコードにつき同期時に更新処理を再現するのは無駄だからである。
【０１０５】
また、以上に示した圧縮処理を定期的に行えば、更新ログファイルの増加量を緩和できる。よって、更新ログファイルの最大データ量が所定量に制限されていたとしても、当該ファイルのデータ量が所定量に達するまでに時間的な余裕が得られる。その結果、縮退運転の稼働時間や保守用の時間等を確保し易くなる。
【０１０６】
以上、本発明の情報処理プログラム、情報処理装置および情報処理方法を図示の実施の形態に基づいて説明したが、これらに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。更に、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【符号の説明】
【０１０７】
１  情報処理装置
１ａ  記憶手段
１ｂ  特定手段
１ｃ  処理手段
２  レコード
２ａ，２ｂ，２ｃ  データ項目
３  第１の更新データ群
３ａ，３ｂ，３ｃ，３ｄ，３ｅ，３ｆ，３ｇ  第１の更新データ
４  第２の更新データ
【図１】
2012155634.tif 000003
【図２】
2012155634.tif 000004
【図３】
2012155634.tif 000005
【図４】
2012155634.tif 000006
【図５】
2012155634.tif 000007
【図６】
2012155634.tif 000008
【図７】
2012155634.tif 000009
【図８】
2012155634.tif 000010
【図９】
2012155634.tif 000011
【図１０】
2012155634.tif 000012
【図１１】
2012155634.tif 000013
【図１２】
2012155634.tif 000014
【図１３】
2012155634.tif 000015
【図１４】
2012155634.tif 000016