(57)【特許請求の範囲】
【請求項１】
コンピュータに、
第１のデータベースに含まれる送信対象データが、前記第１のデータベースにおいて更新可能な状態にない場合に、前記第１のデータベースに対して行われた更新の更新内容を示す更新ログを前記第１のデータベースの複写先である第２のデータベースに送信する第１の処理と、前記送信対象データを前記第２のデータベースに送信する第２の処理とのうち、前記第１の処理を優先的に実行させる制御を行い、かつ、
前記送信対象データが、前記第１のデータベースにおいて更新可能な状態にある場合に、前記第１の処理を優先的に実行させる制御を抑制する、
ことを実行させることを特徴とする送信制御プログラム。
【請求項２】
前記コンピュータに、さらに、
前記送信対象データが前記第１のデータベースにおいて更新可能な状態にあるか否かを示す情報を含む更新状況ログデータを取得し、
取得した前記更新状況ログデータに応じて更新可能な状態か否かを判断する、
ことを実行させることを特徴とする請求項１に記載の送信制御プログラム。
【請求項３】
前記更新状況ログデータは、
前記第２のデータベースを含むシステムにおいて、前記第１のデータベースについての更新ログを前記第２のデータベースに反映させるか否かの判定に用いられるデータである、
ことを特徴とする請求項２に記載の送信制御プログラム。
【請求項４】
前記更新状況ログデータは、
前記送信対象データと前記更新ログとを前記第２のデータベースに反映する際の順序保証に用いられるデータである、
ことを特徴とする請求項３に記載の送信制御プログラム。
【請求項５】
前記コンピュータが、さらに、
前記送信対象データを送信する処理が完了する予測時刻が、所定の時刻を越える場合に、前記第１の処理を優先的に実行させる制御を抑制する、
ことを実行させることを特徴とする請求項１乃至４のいずれか１つに記載の送信制御プログラム。
【請求項６】
コンピュータが、
第１のデータベースに含まれる送信対象データが、前記第１のデータベースにおいて更新可能な状態にない場合に、前記第１のデータベースに対して行われた更新の更新内容を示す更新ログを前記第１のデータベースの複写先である第２のデータベースに送信する第１の処理と、前記送信対象データを前記第２のデータベースに送信する第２の処理とのうち、前記第１の処理を優先的に実行させる制御を行い、かつ、
前記送信対象データが、前記第１のデータベースにおいて更新可能な状態にある場合に、前記第１の処理を優先的に実行させる制御を抑制する、
ことを実行することを特徴とする送信制御方法。
【請求項７】
第１のデータベースに含まれる送信対象データが、前記第１のデータベースにおいて更新可能な状態にない場合に、前記第１のデータベースに対して行われた更新の更新内容を示す更新ログを前記第１のデータベースの複写先である第２のデータベースに送信する第１の処理と、前記送信対象データを前記第２のデータベースに送信する第２の処理とのうち、前記第１の処理を優先的に実行させる制御を行う制御部と、
前記送信対象データが、前記第１のデータベースにおいて更新可能な状態にある場合に、前記第１の処理を優先的に実行させる制御を抑制する抑制部と、
を有する送信制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、データベースの二重化技術に関する。
【背景技術】
【０００２】
災害対策や負荷分散を目的とする、データベースの二重化を実現する方式として、正システムにおけるＳＱＬ（Structured Query Language）アプリケーションによる複写元データベースの更新結果を表すログを、副システムの複写先データベースに伝送して適用する方式が存在している。
【０００３】
このようなデータベースの二重化システムでは、副システムにおいて自立的に復旧できないような障害が発生する場合もある。このような場合、副システムに送信すべきＤＢデータを抽出して副システムに搬送し、複写先データベースに、正システムから送られてきたＤＢデータを格納することで、論理的に複写元データベースからのＤＢデータで複写先データベースを復旧する。
【０００４】
なお、二重化システムにおけるデータの同期技術については、以下のようなものがある。すなわち、正ストレージシステムは、ログ用論理ディスクへのライトデータを同期リモートコピーによりリカバリサイトの副ストレージシステムに転送する。また、正ストレージシステムは、ＤＢデータ用論理ディスクへのライトデータをライトの順序性を保証した非同期リモートコピーを用いてリカバリサイトの副ストレージシステムに転送する。ログ用論理ディスクと、ＤＢデータ用論理ディスクとを分けているが、ライトデータは、正ストレージシステムにトランザクションの結果としてライトされるデータであって、リカバリなどのために別途抽出されたデータではない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−２１０６０６号公報
【特許文献２】特開２００５−２６７３０１号公報
【特許文献３】特開２０１０−１５７８８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従って、本技術は、一側面として、データベースの二重化システムにおいて、主システムから副システムへのデータ搬送が、主システムのデータベースの更新処理の増大によって遅延することを抑制することを目的とする。
【課題を解決するための手段】
【０００７】
本技術の一態様に係る送信制御方法は、（Ａ）第１のデータベースに対して行われた更新の更新内容を示す更新ログを前記第１のデータベースの複写先である第２のデータベースに送信する第１の処理と、前記第１のデータベースに含まれる送信対象データを前記第２のデータベースに送信する第２の処理とのうち、第１の処理を優先的に実行させる制御を行い、（Ｂ）送信対象データが、第１のデータベースにおいて更新可能な状態にある場合に、第１の処理を優先的に実行させる制御を抑制するものである。
【発明の効果】
【０００８】
本技術の一側面として、データベースの二重化システムにおいて、主システムから副システムへのデータ搬送が、主システムのデータベースの更新処理の増大によって遅延することを抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、データベースの二重化システムの一例を示す図である。
【図２】図２は、データベースからのデータ抽出を模式的示した図である。
【図３】図３は、本実施の形態において想定しているシステム及び状況を説明するための図である。
【図４】図４は、本実施の形態における正システムの機能ブロック図である。
【図５】図５は、本実施の形態における副システムの機能ブロック図である。
【図６】図６は、チェックポイントのログのフォーマット例を示す図である。
【図７】図７は、ＤＢデータのフォーマット例を示す図である。
【図８】図８は、更新ログのフォーマット例を示す図である。
【図９】図９は、キューの構成例を示す図である。
【図１０】図１０は、キューのエントリのデータフォーマット例を示す図である。
【図１１】図１１は、管理表のエントリのフォーマット例を示す図である。
【図１２】図１２は、データ送信処理部の処理フローを示す図である。
【図１３】図１３は、データ送信処理部の処理フローを示す図である。
【図１４】図１４は、管理表のエントリの一例を示す図である。
【図１５】図１５は、優先度評価処理の処理フローを示す図である。
【図１６】図１６は、管理表のエントリの一例を示す図である。
【図１７】図１７は、搬送路の使用帯域について説明するための図である。
【図１８】図１８は、搬送路の使用帯域について説明するための図である。
【図１９】図１９は、搬送路の使用帯域について説明するための図である。
【図２０】図２０は、搬送路の使用帯域について説明するための図である。
【図２１】図２１は、搬送路の使用帯域について説明するための図である。
【図２２】図２２は、データ送信処理部の処理フローを示す図である。
【図２３】図２３は、コンピュータの機能ブロック図である。
【図２４】図２４は、本実施の形態に係るコンピュータシステムの機能ブロック図である。
【図２５】図２５は、本実施の形態に係る送信制御装置の機能ブロック図である。
【発明を実施するための形態】
【００１０】
本技術の実施の形態を詳細に説明する前に、本実施の形態において想定しているシステムの構成の概要及び状況の一例について図１乃至図３を用いて説明する。
【００１１】
図１に示すように、正システムにおけるＤＢＭＳ（DataBase Management System）は、アプリケーションから入力されたＳＱＬ文に従って複写元データベースのＤＢ更新を行うと共に更新ログを生成する。正システムにおける二重化処理部は、当該更新ログを取得して、ログ搬送路を介して副システムにおける二重化処理部に送信する。副システムにおける二重化処理部は、更新ログを受信すると、副システムにおけるＤＢＭＳに更新ログの適用を指示する。副システムのＤＢＭＳは、指示に応じて、副システムにおける複写先データベースに対してログ適用を実施する。なお、ログ搬送路は、ネットワークであってもよいし、リモートコピーのディスク装置であってもよい。
【００１２】
このような方式によれば、データベースのデータが配置されているディスクボリュームそのものを二重化する方式と比べて、以下の利点がある。すなわち、システム間のデータ伝送量が少なく、データベースの二重化運用を継続した状態で副システムの活用（例えば参照業務など）が可能となる。
【００１３】
このようなデータベースの二重化システムでは、副システムにおいて自立的に復旧できないような障害が発生する場合もある。このような場合、図２に示すように、ＤＢＭＳのＤＢデータ抽出機能を用いて、副システムに送信すべきＤＢデータを抽出し、副システムに搬送する。そして、副システムにおけるＤＢＭＳのＤＢデータ格納機能を用いて、複写先データベースに、正システムから送られてきたＤＢデータを格納することで、論理的に複写元データベースからのＤＢデータで複写先データベースを復旧する。なお、ＤＢデータの搬送には、ログ搬送路と同様に、ネットワークを用いても良いし、リモートコピーのディスク装置を用いるようにしても良い。
【００１４】
正システムは、複数の業務で用いられる複数のデータベース資源を含む複写元データベース（ＤＢ）と、当該複写元ＤＢを管理しているＤＢＭＳと、二重化処理部と、リカバリなどのために複写元ＤＢの一部のデータを抽出するＤＢデータ抽出部とを有する。また、副システムは、複写元ＤＢと同一のデータを保持すべき複写先ＤＢと、当該複写先ＤＢを管理しているＤＢＭＳと、二重化処理部と、ＤＢデータ書き込み処理部とを有する。正システムと副システムとは搬送路で接続されている。
【００１５】
例えば、点線矩形Ａで表されるように、ある業務に関してＤＢ更新を伴うＳＱＬ文が正システムのＤＢＭＳに入力されると、ＤＢＭＳは複写元ＤＢに対して更新を実施し、当該更新についての更新ログを生成する。生成された更新ログは、正システムの二重化処理部が、搬送路を介して副システムに送信する。副システムの二重化処理部は、正システムから更新ログを受信すると、副システムのＤＢＭＳに出力し、ＤＢＭＳは、複写先ＤＢに対して、複写元ＤＢに対して行われたＤＢ更新と同一のＤＢ更新を実施する。このようにすることで、複写元ＤＢと複写先ＤＢとの間でデータの同期が図られることになる。
【００１６】
一方、点線矩形Ｂで示されるように、例えば複写先ＤＢ内のあるデータベース資源について障害が発生したような場合には、管理者などの指示に応じて、ＤＢデータ抽出部は、そのデータベース資源に係るＤＢデータを抽出して、更新ログを搬送する搬送路と同一の搬送路を介して副システムに送信する。副システムのＤＢデータ書き込み処理部は、正システムから送られてきたＤＢデータを副システムのＤＢＭＳに出力して、複写先ＤＢに対する書き込みを行わせる。
【００１７】
このように正システムと副システムとの間の搬送路には、更新ログとＤＢデータとが送信される状態が想定される。点線矩形Ａのように正常に動作しているデータベース資源については、可能な限り早期に複写元ＤＢと複写先ＤＢと間でデータの同期が図られることが好ましい。これは副システムを参照用として別途用いる場合等があるためである。
【００１８】
一方、点線矩形Ｂのようにリカバリを行っているデータベース資源に対しては、完全に業務を停止している場合もあれば、業務の性質等から本来なら複写先ＤＢをも使用したいがやむを得ず複写元ＤＢのみを用いてでも業務を続行することが求められる場合もある。前者であっても、業務再開時刻が迫っている場合もあれば、業務再開時刻まで十分時間がある場合もある。
【００１９】
正システムのデータ抽出部がＤＢデータを抽出するための処理と、副システムのＤＢデータ書き込み処理部がＤＢデータを書き込むための処理とについては、複写元ＤＢ及び複写先ＤＢに対して負荷を与えることになるが、一般的にデータベース設計において何らかの負荷分散がなされて、業務に対してそれほど大きな影響を及ぼすことはない。一方、搬送路については、更新ログのみを搬送する場合と、ＤＢデータをも搬送する場合とでは、データ伝送量は大幅に異なっているので、何らの考慮なくＤＢデータを搬送路に流すと、矩形点線Ａのような正常稼働中の業務に大きな影響を及ぼす可能性がある。
【００２０】
そこで、可能な限り更新ログの搬送について影響を及ぼさないように、ＤＢデータの搬送を行うようにすることが好ましい。すなわち、更新ログを可能な限り優先して搬送する。但し、上で述べたようにＤＢデータの搬送については、障害に係るデータベース資源を用いる業務が停止しているのか、稼働しているのか、業務再開時刻が迫っているのか、業務再開時刻まで余裕があるのかというような、業務の稼働状況と、ＤＢデータの搬送状況とのうち少なくともいずれかを考慮した上で搬送状態を変更する。
【００２１】
図４及び図５に本実施の形態に係るシステムの構成を示す。図４に示すように、コンピュータシステムである正システム１００は、管理者などが操作する例えばパーソナルコンピュータである管理者端末３００と、他のコンピュータシステムである副システム２００と接続されている搬送路４００とに接続されている。また、正システム１００は、ＤＢ１４０と、当該ＤＢ１４０を管理するＤＢＭＳ１２０と、ＤＢ１４０から特定のデータベース資源についてのデータを抽出するＤＢデータ抽出部１３０と、搬送路４００を介して副システム２００に対するデータ搬送についての処理を実施する二重化処理部１１０とを有する。
【００２２】
二重化処理部１１０は、ＤＢＭＳ１２０が生成するログのデータを取得するログ取得部１１１と、ＤＢデータ抽出部１３０からＤＢデータを取得するための処理を実施するデータ読み込み処理部１１５と、ログのデータを格納する第１送信バッファ１１２と、ＤＢデータを格納する第２送信バッファ１１６と、ログ及びＤＢデータを送信するための処理を実施するデータ送信処理部１１４と、ログ取得部１１１及びデータ読み込み処理部１１５からの要求等を管理するための要求キュー１１３とを有する。データ送信処理部１１４は、第１送信バッファ１１２及び第２送信バッファ１１６から送信対象と判断された要求についてのデータを読み出して送信する処理を実施する。
【００２３】
図５に示した副システム２００は、ＤＢ２３０と、当該ＤＢ２３０を管理するＤＢＭＳ２２０と、更新ログ及びＤＢデータについて処理を行う二重化処理部２１０とを有する。二重化処理部２１０は、データ受信処理部２１３と、更新ログ反映処理部２１１と、ＤＢデータ書き込み処理部２１４とを有する。
【００２４】
副システム２００における二重化処理部２１０のデータ受信処理部２１３は、正システム１００からログのデータを受信すると更新ログ反映処理部２１１に出力し、正システム１００からＤＢファイルを受信するとＤＢデータ書き込み処理部２１４に出力する。更新ログ反映処理部２１１は、ＤＢＭＳ２２０に、更新ログに係るＤＢ更新をＤＢ２３０に対して実施させる。また、ＤＢデータ書き込み処理部２１４は、ＤＢＭＳ２２０に、ＤＢデータをＤＢ２３０に書き込む処理を実施させる。副システム２００側の二重化処理部２１０により実施される処理は、従来と同様であるからこれ以上述べない。
【００２５】
このようなシステムにおいて、管理者などは管理者端末３００を介してＤＢデータ抽出部１３０に対して、データを抽出すべきデータベース資源の識別子と、搬送終了保証時刻とを指定してデータ抽出を指示する。これに応じて、ＤＢデータ抽出部１３０は、指定されたデータベース資源についてのＤＢデータを抽出するようにＤＢＭＳ１２０に要求し、ＤＢＭＳ１２０から要求に係るＤＢデータを取得する。
【００２６】
なお、この際、ＤＢＭＳ１２０は、抽出されたＤＢデータの更新状況を示すチェックポイントのログを取得する。図６に、チェックポイント（ＣＰとも記す）のログのフォーマット例を示す。図６の例では、ＣＰ種別と、抽出されたＤＢデータの元となるデータベース資源の識別子（ＩＤ）と、抽出されたデータベース資源の更新状況を示すデータとが含まれる。ＣＰ種別は、本実施の形態では、抽出されたＤＢデータの元となるデータベース資源に対するＤＢ更新が可能状態であるか、ＤＢ更新が不可能な状態であるかを表すデータである。例えば、当該データベース資源についての業務が稼働していれば、ＤＢ更新が可能な状態となっており、当該データベース資源についての業務が停止していれば、ＤＢ更新が不可能な状態となっている。場合によっては、ＤＢ更新が可能な状態となっている場合にのみ、ＤＢデータ抽出を表すチェックポイントのログを二重化処理部２１０に出力するようにしてもよい。この場合には、ＣＰ種別のデータがチェックポイントのログに含まれない場合もある。
【００２７】
なお、一般的に、ＤＢデータの更新状況を示すチェックポイントのログは、主システムから副システムに搬送されたＤＢデータを、副システムのＤＢに格納した後に、ＤＢデータの抽出以降に発生した更新ログをＤＢに適用するといった順序保証に利用されるものである。本実施の形態では、これを異なる目的にも利用する。
【００２８】
また、図７に、ＤＢデータのデータフォーマットの一例を示す。本実施の形態では、データベース資源の単位で１つのファイルになっており、当該ファイルには、データベース資源に含まれる複数の行のデータが含まれる。さらに、１つの行のデータには、複数の列のデータが含まれる。なお、ＤＢデータはファイル形式でなくともよい。
【００２９】
また、ＤＢＭＳ１２０は、ある業務に関してＤＢ更新を伴うＳＱＬ文を受信すると、ＤＢ１４０に対してＤＢ更新を行い、当該ＤＢ更新についての更新ログを生成する。図８に更新ログのフォーマット例を示す。図８の例では、操作種別（挿入・更新・削除）、データベース資源の識別子（ＩＤ）、行を特定するための主キー（但し、更新後データに含まれる場合には省略）、及び更新後データ（更新されたデータ更新後イメージデータ）を含む。
【００３０】
さらに、ログ取得部１１１は、ＤＢＭＳ１２０からログを受信すると、チェックポイントのログ及び更新ログそのものについては第１送信バッファ１１２に格納し、ログの送信要求をデータ送信処理部１１４に出力する。一方、ＤＢデータ抽出部１３０は、管理者などからの指示に応じて、データベース資源の識別子と、抽出したＤＢデータの全体サイズ（容量）と、搬送終了保証時刻とを含む通知をデータ読み込み処理部１１５に出力する。データ読み込み処理部１１５は、当該通知に応じて、データベース資源ＩＤを含むＤＢデータ開始通知をデータ送信処理部１１４に出力する。ＤＢデータ開始通知には、全体サイズ及び搬送終了保証時刻が含まれる場合もある。その場合には、以下で述べるステップＳ２１及びＳ２３を省略することができる。
【００３１】
さらに、データ読み込み処理部１１５は、ＤＢデータ抽出部１３０が抽出したＤＢデータを、所定のサイズに分割して第２送信バッファ１１６に格納すると共に、分割によって生成されたデータ部分毎に送信要求をデータ送信処理部１１４に出力する。なお、通知に係るデータについては、例えばデータ送信処理部１１４から要求があるまで保持する。また、データ読み込み処理部１１５は、ＤＢデータの全てのデータ部分について送信要求を送信した後、データベース資源ＩＤを含むＤＢデータ終了通知をデータ送信処理部１１４に出力する。
【００３２】
データ送信処理部１１４は、更新ログについての送信要求、チェックポイントのログについての送信要求及びＤＢデータの送信要求と、ＤＢデータ開始通知及びＤＢデータ終了通知とを、要求キュー１１３に格納する。例えば、要求キュー１１３は、図９に示すような構成となっている。
【００３３】
図９の例では、要求キュー１１３は、更新ログについての送信要求を格納する第１キュー１１３１と、チェックポイントのログについての送信要求を格納する第２キュー１１３３と、ＤＢデータについての送信要求を格納する第３キュー１１３５と、送信対象と判定された送信要求を格納する第４キュー１１３７とを有する。なお、第４キュー１１３７については、更新ログについての送信要求のためのキューと、チェックポイントのログについての送信要求のためのキューと、ＤＢデータについての送信要求のためのキューとに分けられている場合もある。また、更新ログについての送信要求及びチェックポイントのログについての送信要求のためのキューと、ＤＢデータについての送信要求のためのキューとに分けられている場合もある。
【００３４】
要求キュー１１３の各キューにおける各エントリのデータフォーマットの一例を図１０に示す。図１０の例では、キュー種別と、複写先データベースにおけるデータベース資源を特定するためのデータベース資源ＩＤと、次の送信要求のアドレスと、ログ又はＤＢデータが格納されている送信バッファ内のアドレスとを格納するようになっている。キュー種別は、第１乃至第４のキューのいずれかである。なお、複数のデータベース資源についてＤＢデータを同時期に搬送する場合には、第３キュー１１３５をデータベース資源毎に設けるようにしても良い。
【００３５】
また、データ送信処理部１１４は、ＤＢデータのデータ搬送状態を管理するための管理表１１４１を保持している。管理表の各エントリは、例えば図１１に示すようなデータフォーマットを有する。図１１の例では、複写先データベースにおけるデータベース資源を特定するためのデータベース資源ＩＤと、優先度と、全体サイズと、搬送終了保証時刻と、送信済データ量と、送信開始時刻と、管理表１１４１における次のエントリのアドレスとが格納されるようになっている。優先度については以下で説明するが、初期的には「低」が設定され、場合によっては「高」が設定される。データベース資源ＩＤ、全体サイズ及び搬送終了保証時刻については、データ読み込み処理部１１５から取得したデータである。以下で説明するように、送信済データ量及び送信開始時刻に基づき平均送信速度を算出する。
【００３６】
次に、データ送信処理部１１４の処理について図１２乃至図２２を用いて説明する。まず、データ送信処理部１１４は、ログ取得部１１１又はデータ読み込み処理部１１５からの送信要求等を待ち受け、各種送信要求等を受信すると、要求キュー１１３の該当するキューに格納する（図１２：ステップＳ１）。データ送信処理部１１４は、データ読み込み処理部１１５からＤＢデータ開始通知及びＤＢデータ終了通知をも受信するが、処理の順番を維持するために、これらについてはＤＢデータの送信要求と同一のキューである第３キュー１１３５に格納するものとする。
【００３７】
上でも述べたように、更新ログ及びＤＢデータ抽出についてのチェックポイントのログ（以下、ＣＰログと記す。）そのものは、第１送信バッファ１１２に格納され、抽出されたＤＢデータについては複数のデータ部分に分けられて第２送信バッファ１１６に格納される。
【００３８】
そして、本実施の形態では、例えば管理者端末３００などから処理の終了要求を受信するまで、例えば第１乃至第３キュー１１３１乃至１１３５の先頭の要求等について以下の処理を繰り返す（ステップＳ３）。終了要求を受信した場合には、処理を終了する。
【００３９】
終了要求を受信していない場合には、データ送信処理部１１４は、要求キュー１１３の第１キュー１１３１に更新ログの送信要求が格納されているか判断する（ステップＳ５）。第１キュー１１３１に更新ログの送信要求が格納されている場合には、データ送信処理部１１４は、当該更新ログの送信要求を送信対象に設定する（ステップＳ７）。具体的には、当該更新ログの送信要求を、第４キュー１１３７に移動させる。そしてステップＳ９に移行する。
【００４０】
要求キュー１１３の第１キュー１１３１に更新ログの送信要求が格納されていない場合又はステップＳ７の後に、データ送信処理部１１４は、要求キュー１１３の第２キュー１１３３にＣＰログの送信要求が格納されているか判断する（ステップＳ９）。第２キュー１１３３にＣＰログの送信要求が格納されている場合には、データ送信処理部１１４は、当該ＣＰログの送信要求を送信対象に設定する（ステップＳ１１）。そして、データ送信処理部１１４は、第１送信バッファ１１２に格納されている当該ＣＰログに含まれるＣＰ種別が、ＤＢ更新可能を表しているか判断する（ステップＳ１３）。ここでは、ＣＰログは図６に示すようなデータフォーマットであるものとする。但し、ＣＰログがＤＢ更新可能な場合にのみ送信要求が出される場合には、ステップＳ１３で判断することなくステップＳ１５に移行する。
【００４１】
ＣＰ種別がＤＢ更新可能を表している場合には、データ送信処理部１１４は、管理表１１４１において本ＣＰログ送信要求について優先度「高」のエントリを設定する（ステップＳ１５）。具体的には、ＣＰログに含まれるデータベース資源ＩＤと優先度「高」とを含むエントリを、管理表１１４１に登録する。このように、更新ログ等と同等の優先度を設定することで、ＤＢデータの搬送を早期に終了させるようにする。そして、端子Ａを介して図１３の処理に移行する。
【００４２】
一方、ＣＰ種別がＤＢ更新不可能を表している場合には、データ送信処理部１１４は、管理表１１４１において本ＣＰログ送信要求について優先度「低」のエントリを設定する（ステップＳ１７）。具体的には、ＣＰログに含まれるデータベース資源ＩＤと優先度「低」とを含むエントリを、管理表１１４１に登録する。このように、ＤＢ更新可能という状態でデータベース資源に対する業務を稼働させつつリカバリを実施するような特別な場合を除き、基本的には更新ログ等よりもＤＢデータの搬送の優先度は低くなる。
【００４３】
そして端子Ａを介して図１３の処理に移行する。ステップＳ９で第２キュー１１３３にＣＰログ送信要求が格納されていない場合にも、端子Ａを介して図１３の処理に移行する。
【００４４】
図１３の処理の説明に移行して、データ送信処理部１１４は、第３キュー１１３５にＤＢデータ開始通知があるか判断する（ステップＳ２１）。ＤＢデータ開始通知があれば、データ送信処理部１１４は、当該ＤＢデータ開始通知に含まれるデータベース資源ＩＤについて属性データ（全体サイズ及び搬送終了保証時刻）をデータ読み込み処理部１１５から取得し、管理表１１４１の該当エントリに格納する（ステップＳ２３）。例えば、図１４に示すようなエントリのデータが管理表に格納される。図１４の例では、データベース資源ＩＤがデータベーススキーマ名「Ｓ１及びテーブル名「会社表」で特定されるエントリについて、優先度「低」、全体サイズ「５ＭＢｙｔｅｓ」、搬送終了保証時刻「２０１１／０５／１２／１３：００」とが登録されている。まだ送信が行われていないので、送信済データ量及び送信開始時刻についてはデータが登録されていない。次のエントリがない場合には次のエントリのアドレスも登録されない。なお、ＤＢデータ開始通知及びＤＢデータ終了通知については、副システム２００に送信しないので、ここで破棄される。
【００４５】
ステップＳ２３の後又は第３キュー１１３５にＤＢデータ開始通知が格納されていない場合には、データ送信処理部１１４は、第３キュー１１３５にＤＢデータ送信要求が格納されているか判断する（ステップＳ２５）。第３キュー１１３５にＤＢデータ送信要求が格納されている場合には、データ送信処理部１１４は、優先度評価処理を実施する（ステップＳ２７）。優先度評価処理については、図１５を用いて説明する。
【００４６】
優先度評価処理において、データ送信処理部１１４は、管理表１１４１における該当エントリにおいて優先度「低」が設定されているか判断する（図１５：ステップＳ４１）。既にＣＰログによって優先度「高」が設定されている場合には、優先度「高」でＤＢデータの搬送を行うので、本優先度評価処理で変更処理を実行せずとも良い。従って、優先度「高」である場合には呼び出し元の処理に戻る。
【００４７】
一方、優先度「低」である場合には、データ送信処理部１１４は、ＤＢデータについての平均送信速度を算出し、例えばメインメモリなどの記憶装置に格納する（ステップＳ４３）。例えば、図１６に示すような管理表１１４１のエントリが存在するものとする。図１７の例では、「２０１１／０５／１２／０８：００」に送信を開始しており、現時刻が「２０１１／０５／１２／１２：００」までに「３．６ＭＢｙｔｅｓ」送信済みであるものとする。以下で説明するが、優先度「低」の場合であっても、更新ログ等がキューに入っていない場合には、ＤＢデータを送信する。すなわち、図１７に示すように、搬送路の帯域のうち一部はログの搬送に用いられ、他の部分はＤＢデータの搬送に用いられることになる。但し、更新ログ等がキューに入っていない場合にＤＢデータを送信するので、搬送路の帯域のうち固定の帯域が両者に割り当てられるわけではなく、時々刻々と使用帯域の割合は変化する。そこで、ステップＳ４３を実行する時点において送信済みのデータ量を送信開始時刻からの経過時間で除することによって、平均送信速度を算出する。図１６の例では、３．６ＭＢｙｔｅｓ／４時間＝０．９ＭＢｙｔｅｓ／時間が平均送信速度として算出される。
【００４８】
なお、複数のデータベース資源についてＤＢデータを同時期に搬送する場合もある。例えば２つのデータベース資源のＤＢデータを同時期に搬送する場合、両方の優先度が「低」であれば、図１８に示すように更新ログ等の帯域は図１７と同じである。しかし、ＤＢデータ搬送用の帯域は、図１８において帯域Ａと帯域Ｂのように分割されてしまう。従って、ステップＳ４３では、データベース資源毎に平均送信速度を算出する。
【００４９】
そして、データ送信処理部１１４は、平均送信速度を用いて未送信データを搬送するのにかかる時間の見積もりを実施する（ステップＳ４５）。具体的には、（全体サイズ−送信済データ量）／平均送信速度という演算を実施する。なお、この式にて算出された値にマージンを持たせるため所定値を加算するようにしても良い。上の例では、（５−３．６）／０．９＝１．５６時間と算出される。
【００５０】
その後、データ送信処理部１１４は、ステップＳ４５で見積もられた時間が搬送終了保証時刻までの時間より長くなっているか判断する（ステップＳ４７）。搬送終了保証時刻までの時間は、搬送終了保証時刻−現時刻で算出される。上の例では、搬送終了保証時刻までの時間は、１３：００−１２：００＝１時間であり、上で見積もられた時間は１．５６時間であるから、見積もられた時間が搬送終了保証時刻までの時間より長くなっている。このような場合には、このままでは搬送終了保証時刻までにＤＢデータの搬送が完了しない可能性が高い。
【００５１】
そこで、見積もられた時間が搬送終了保証時刻までの時間より長くなっている場合には、データ送信処理部１１４は、管理表１１４１における該当エントリにおいて優先度を「高」に変更して設定する（ステップＳ４９）。すなわち、更新ログの方を優先する状態から更新ログとＤＢログとを同等に優先させる状態に遷移させる。そして呼び出し元の処理に戻る。
【００５２】
このような場合、図１９に模式的に示すように、現時刻「１２：００」からＤＢデータの搬送完了まで優先度「高」となって、ＤＢデータの搬送には通常より多くの帯域が使用される。これによって、搬送終了保証時刻前にＤＢデータの搬送が完了して、ログ搬送が使用する帯域が元に戻る。
【００５３】
一方、見積もられた時間が搬送終了保証時刻までの時間以下であれば、現時点ではそのまま優先度「低」であっても搬送終了保証時刻までにＤＢデータの搬送が完了する予定であるから、そのままにする。すなわち呼び出し元の処理に戻る。
【００５４】
このような場合、ログ搬送が優先されるが、ログがキューに入っていない場合には、ＤＢデータが搬送が行われるため、図２０に模式的に示すように、ＤＢデータの搬送に使用される帯域は、ログ搬送が使用する帯域の残りになる。
【００５５】
なお、ＣＰログで優先度「高」に設定された場合には、図２１に模式的に示すように、送信開始当初からＤＢデータ搬送もログ搬送と同様に優先される。点線で示した優先度「低」の場合に比して高速にＤＢデータが搬送される。そして、例えば１１：３０ごろにＤＢデータ搬送が完了すれば、ログ搬送のみが優先される状態に戻るようになる。
【００５６】
このようにデータ搬送状態に応じて、更新ログ等の優先度より低い優先度「低」から優先度「高」に変更するか否かを判断して、搬送終了保証時刻よりＤＢデータの搬送完了が遅くなりそうになれば、更新ログ等と同等の優先度「高」に変更する。
【００５７】
図１３の処理の説明に戻って、ステップＳ２７の後に、データ送信処理部１１４は、ＤＢデータ送信要求に係るデータベース資源について管理表１１４１の該当エントリに優先度が「高」に設定されているか判断する（ステップＳ２９）。優先度が「高」に設定されている場合には、ステップＳ３３に移行して、データ送信処理部１１４は、処理に係るＤＢデータ送信要求を送信対象に設定する（ステップＳ３３）。具体的には、処理に係るＤＢデータの送信要求を、第４キュー１１３７に移動させる。そしてステップＳ３５に移行する。
【００５８】
一方、優先度が「低」に設定されている場合には、データ送信処理部１１４は、送信対象となっている更新ログ送信要求又はＣＰログ送信要求が存在しているか判断する（ステップＳ３１）。具体的には、第４キュー１１３７に更新ログ送信要求又はＣＰ送信要求が格納されているかを確認する。送信対象となっているログの送信要求が存在する場合には、ステップＳ３５に移行する。一方、送信対象となっているログの送信要求が存在しない場合には、ステップＳ３３に移行する。すなわち、送信すべきログが存在しないので、ＤＢデータを送信してしまう。
【００５９】
ステップＳ３５の処理に移行して、データ送信処理部１１４は、ＤＢデータ終了通知が第３キュー１１３５にあるか判断する（ステップＳ３５）。ＤＢデータ終了通知が第３キュー１１３５に格納されている場合には、当該ＤＢデータ終了通知に係るＤＢデータの搬送が完了したことになるため、データ送信処理部１１４は、管理表１１４１における該当エントリを破棄する（ステップＳ３７）。そして、端子Ｃを介して図２２の処理に移行する。また、ＤＢデータ終了通知が第３キュー１１３５に格納されていない場合にも、端子Ｃを介して図２２の処理に移行する。
【００６０】
図２２の処理の説明に移行して、データ送信処理部１１４は、第４キュー１１３７において送信対象とされた送信要求が格納されているか判断する（ステップＳ５１）。もし第４キュー１１３７に何らの送信要求も格納されていない場合には、端子Ｂを介して図１２のステップＳ１に戻る。一方、送信対象とされた送信要求が第４キュー１１３７に格納されている場合には、データ送信処理部１１４は、送信対象の送信要求について第１送信バッファ１１２又は第２送信バッファ１１６に格納されているデータを搬送路４００を介して副システム２００に送信する（ステップＳ５３）。
【００６１】
そして、ステップＳ５３において送信されたデータの中にＤＢデータが含まれている場合には（ステップＳ５５：Ｙｅｓルート）、データ送信処理部１１４は、当該ＤＢデータのデータベース資源ＩＤから管理表１１４１の該当エントリにおける送信済データ量を、送信したＤＢデータ分だけ増加させるように更新する（ステップＳ５７）。そして端子Ｂを介して図１２のステップＳ１に戻る。また、ステップＳ５３において送信されたデータの中にＤＢデータが含まれていない場合にも（ステップＳ５５：Ｎｏルート）、端子Ｂを介して図１２のステップＳ１に戻る。
【００６２】
このような処理を実施することで、例えばリカバリに係るデータベース資源に対する業務が稼働しているか否か、リカバリに係るデータベース資源についてのＤＢデータの搬送状況が搬送終了保証時刻を保証できそうか否かに基づき、ＤＢデータの優先度を優先度「低」から優先度「高」に変更するか適切に判断できるようになる。すなわち、結果として搬送路を状況に応じて効率的に活用することができるようになる。
【００６３】
さらに結果として、他の正常なデータベース資源に対するユーザ業務への影響を最小限に抑えることができ、柔軟なリカバリを行うことができるようになる。
【００６４】
なお、管理表１１４１のデータを管理者端末３００に送信することで、管理者にデータ搬送の状況を提示することもできる。管理者は、例えば搬送終了保証時刻を変更したり、優先度を手動で変更するなどの処置を行うようにしても良い。
【００６５】
また、上では副システム２００において障害が発生した場合を想定しているが、他の理由で正システム１００における複写元ＤＢから特定のデータベース資源のＤＢデータを副システム２００に送信する場合においても本実施の形態は活用可能である。
【００６６】
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、図４及び図５に示した機能ブロック図は一例であって、必ずしも実際のプログラムモジュール構成と一致しない場合もある。特に、二重化処理部１１０については、ＤＢＭＳ１２０と一体化されている場合もある。同様に、二重化処理部２１０についても、ＤＢＭＳ２２０と一体化されている場合もある。さらに、キューやバッファの使用方法や構成についても、一例を示したに過ぎず、実装においては様々な変更が可能である。キューは、単なるデータ格納部であってもよい。
【００６７】
さらに、処理フローについても上で述べたものは一例であって、処理結果が変わらない限りにおいて、処理順番を入れ替えたり、並列実行するようにしても良い。例えば、データ送信処理部１１４については送信要求の種類毎に並列処理を実施するようにしても良い。
【００６８】
また、ＤＢデータ送信要求の優先度をログ送信要求と同じ「高」にする例を示したが、より多段の優先度設定が可能であれば、ＤＢデータ送信要求の優先度をログ送信要求の優先度よりも高く設定するようにしても良い。
【００６９】
正システム１００及び副システム２００は、各々１台のコンピュータで実施される場合もあれば、複数のコンピュータによって機能分担している場合もある。
【００７０】
なお、上で述べた正システム１００及び副システム２００は、１又は複数のコンピュータ装置であって、図２３に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００７１】
以上述べた本実施の形態をまとめると、以下のようになる。
【００７２】
本実施の形態に係るデータ通信方法は、（Ａ）第１のシステムにおける第１のデータベースに対する更新内容を含む第１のデータを、第１のシステムに搬送路を介して接続されており且つ第１のデータベースと同一のデータを保持すべき第２のデータベースを有する第２のシステムに送信するように要求する第１の要求を受信するステップと、（Ｂ）第１のデータベースの少なくとも一部のデータである第２のデータを搬送路を介して第２のシステムに送信するように要求する第２の要求を受信するステップと、（Ｃ）第１のデータベースにおける少なくとも第２のデータについての部分に対する業務の稼働状態と第２のデータの搬送状態とのうち少なくともいずれかに基づいて、第１のデータを第２のデータより優先させて送信する第１の状態を変更するか否かを判断するステップと、（Ｄ）業務の稼働状態と第２のデータの搬送状態との少なくともいずれかに応じて第１の状態を変更すると判断された場合、第１の状態から、第２のデータを第１のデータと同等以上に優先させて送信する第２の状態に変更を行うステップとを含む。
【００７３】
このようにすれば、第１のデータを優先させる状態をベースにしつつ、適切に第２のデータを優先させる状態に遷移させることができ、状況に応じた適切なデータ搬送が可能となる。
【００７４】
また、上記データ通信方法は、（Ｅ）第２のデータを第１のデータベースから抽出した際に少なくとも第２のデータについての部分に対するデータ更新を許容していたことを表す第３のデータを第２のシステムに送信するように要求する第３の要求を受信するステップをさらに含むようにしてもよい。その場合、上で述べた判断するステップにおいて、第３の要求に応じて、第１の状態を変更すると判断するようにしてもよい。このような第３のデータは、第２のデータについてのデータベース資源に対して業務が稼働中であることを示しており、このような場合には可能な限り早期に第２のデータを第２のシステムに送信することが好ましい。なお、第３のデータの出力自体が「第２のデータを第１のデータベースから抽出した際に少なくとも第２のデータについての部分に対するデータ更新を許容していたことを表す」場合がある。
【００７５】
さらに、上記データ通信方法は、（Ｆ）第２のデータを第１のデータベースから抽出した際に少なくとも第２のデータについての部分に対するデータ更新を許容していたか否かを表す第４のデータを第２のシステムに送信するように要求する第４の要求を受信するステップをさらに含むようにしてもよい。その際、上で述べた判断するステップが、（Ｃ１）第４の要求に応じて、第４のデータがデータ更新を許容していたことを表しているか判断するステップと、（Ｃ２）第４のデータがデータ更新を許容していたことを表している場合には、第１の状態を変更すると判断するステップとを含むようにしてもよい。第４のデータが生成される場合には、このような処理を実施する。
【００７６】
また、上記データ通信方法は、（Ｇ）第２の要求の受信に応じて、第２のデータの搬送終了保証時刻、第２のデータのデータ量及び第２のデータの送信済みデータ量を管理するステップをさらに含むようにしてもよい。その際、上で述べた判断するステップが、（Ｃ３）送信速度、第２のデータのデータ量及び第２のデータの送信済みデータ量から見積もられる、第２のデータの送信にかかる時間が、搬送終了保証時刻までの時間より長くなるかを判断するステップと、（Ｃ４）第２のデータの送信にかかる時間が搬送終了保証時刻までの時間より長くなる場合に、第１の状態を変更すると判断するステップとを含むようにしてもよい。このように第２のデータの搬送終了保証時刻が指定されている場合には、現在の第２のデータの搬送状態からして搬送終了保証時刻までにデータ搬送が完了しないことが予測される場合もある。従って、このような判断を実施して状態変更を行うことで、搬送終了保証時刻までに第２のデータのデータ搬送を完了させるようにする。
【００７７】
また、搬送路（図２４：３５００）を介して他のシステム（図２４：３６００）に接続されるコンピュータシステム（図２４：３０００）は、（Ａ）データ送信処理部（図２４：３０１０）と、（Ｂ）コンピュータシステムにおける第１のデータベース（図２４：３０４０）に対する更新内容を含む第１のデータを、第１のデータベースと同一のデータを保持すべき第２のデータベースを有する他のシステムに送信するように要求する第１の要求をデータ送信処理部に出力する第１の処理部（図２４：３０２０）と、（Ｃ）第１のデータベースの少なくとも一部のデータである第２のデータを搬送路を介して上で述べた他のシステムに送信するように要求する第２の要求を上で述べたデータ送信処理部に出力する第２の処理部（図２４：３０３０）とを有する。そして、上で述べたデータ送信処理部が、（Ａ１）第１のデータベースにおける少なくとも第２のデータについての部分に対する業務の稼働状態と第２のデータの搬送状態とのうち少なくともいずれかに基づいて、第１のデータを第２のデータより優先させて送信する第１の状態を変更するか否かを判断する。そして、（Ａ２）業務の稼働状態と第２のデータの搬送状態との少なくともいずれかに応じて第１の状態を変更すると判断された場合、データ送信処理部は、第１の状態から、第２のデータを第１のデータと同等以上に優先させて送信する第２の状態に変更を行う。
【００７８】
さらに、本実施の形態に係る送信制御装置（図２５）は、（Ａ）例えば送信処理部（図２５：４１００）による、第１のデータベースに対して行われた更新の更新内容を示す更新ログを前記第１のデータベースの複写先である第２のデータベースに送信する第１の処理と、第１のデータベースに含まれる送信対象データを第２のデータベースに送信する第２の処理とのうち、第１の処理を優先的に実行させる制御を行う制御部（図２５：４２００）と、（Ｂ）送信対象データが、第１のデータベースにおいて更新可能な状態にある場合に、第１の処理を優先的に実行させる制御を抑制する抑制部（図２５：４３００）とを有する。
【００７９】
なお、上で述べたような処理をコンピュータに実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、ＣＤ−ＲＯＭなどの光ディスク、光磁気ディスク、半導体メモリ（例えばＲＯＭ）、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、ＲＡＭ等の記憶装置に一時保管される。
【００８０】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００８１】
（付記１）
コンピュータに、
第１のデータベースに対して行われた更新の更新内容を示す更新ログを前記第１のデータベースの複写先である第２のデータベースに送信する第１の処理と、前記第１のデータベースに含まれる送信対象データを前記第２のデータベースに送信する第２の処理とのうち、前記第１の処理を優先的に実行させる制御を行い、
前記送信対象データが、前記第１のデータベースにおいて更新可能な状態にある場合に、前記第１の処理を優先的に実行させる制御を抑制する、
ことを実行させることを特徴とする送信制御プログラム。
【００８２】
（付記２）
前記コンピュータに、さらに、
前記送信対象データが前記第１のデータベースにおいて更新可能な状態にあるか否かを示す更新状況データを、前記送信処理対象データから取得し、
取得した前記更新状況データに応じて更新可能な状態か否かを判断する、
ことを実行させることを特徴とする付記１に記載の送信制御プログラム。
【００８３】
（付記３）
前記更新状況データは、
前記第２のデータベースを含むシステムにおいて、前記第１のデータベースについての更新ログを前記第２のデータベースに反映させるか否かの判定に用いられるデータである、
ことを特徴とする付記２に記載の送信制御プログラム。
【００８４】
（付記４）
前記コンピュータが、さらに、
前記送信対象データを送信する処理が完了する予測時刻が、所定の時刻を越える場合に、前記第１の処理を優先的に実行させる制御を抑制する、
ことを実行させることを特徴とする付記１乃至３のいずれか１つに記載の送信制御プログラム。
【００８５】
（付記５）
コンピュータが、
第１のデータベースに対して行われた更新の更新内容を示す更新ログを前記第１のデータベースの複写先である第２のデータベースに送信する第１の処理と、前記第１のデータベースに含まれる送信対象データを前記第２のデータベースに送信する第２の処理とのうち、前記第１の処理を優先的に実行させる制御を行い、
前記送信対象データが、前記第１のデータベースにおいて更新可能な状態にある場合に、前記第１の処理を優先的に実行させる制御を抑制する、
ことを実行することを特徴とする送信制御方法。
【００８６】
（付記６）
第１のデータベースに対して行われた更新の更新内容を示す更新ログを前記第１のデータベースの複写先である第２のデータベースに送信する第１の処理と、前記第１のデータベースに含まれる送信対象データを前記第２のデータベースに送信する第２の処理とのうち、前記第１の処理を優先的に実行させる制御を行う制御部と、
前記送信対象データが、前記第１のデータベースにおいて更新可能な状態にある場合に、前記第１の処理を優先的に実行させる制御を抑制する抑制部と、
を有する送信制御装置。
【符号の説明】
【００８７】
１００  正システム
２００  副システム
４００  搬送路
３００  管理者端末
１１０  二重化処理部
１２０  ＤＢＭＳ
１３０  ＤＢデータ抽出部
１４０  ＤＢ
１１１  ログ取得部
１１２  第１送信バッファ
１１３  要求キュー
１１４  データ送信処理部
１１５  データ読み込み処理部
１１６  第２送信バッファ
２１０  二重化処理部
２２０  ＤＢＭＳ
２１１  更新ログ反映処理部
２１３  データ受信処理部
２１４  ＤＢデータ書き込み処理部
【図１】
0005741254.tif 000002
【図２】
0005741254.tif 000003
【図３】
0005741254.tif 000004
【図４】
0005741254.tif 000005
【図５】
0005741254.tif 000006
【図６】
0005741254.tif 000007
【図７】
0005741254.tif 000008
【図８】
0005741254.tif 000009
【図９】
0005741254.tif 000010
【図１０】
0005741254.tif 000011
【図１１】
0005741254.tif 000012
【図１２】
0005741254.tif 000013
【図１３】
0005741254.tif 000014
【図１４】
0005741254.tif 000015
【図１５】
0005741254.tif 000016
【図１６】
0005741254.tif 000017
【図１７】
0005741254.tif 000018
【図１８】
0005741254.tif 000019
【図１９】
0005741254.tif 000020
【図２０】
0005741254.tif 000021
【図２１】
0005741254.tif 000022
【図２２】
0005741254.tif 000023
【図２３】
0005741254.tif 000024
【図２４】
0005741254.tif 000025
【図２５】
0005741254.tif 000026