(57)【要約】【課題】  待機システムに未確定データを含まないバックアップデータを作成することにより、バックアップデータを利用可能にするバックアップデータの利用技術を提供する。【解決手段】  現用システム１０１と待機システム１０２とを含むバックアップシステムにおいて、更新用バックアップデータ２１５に対してデータ更新を再現するデータ更新再現ステップと、参照用バックアップデータＢ２１７に対する参照を開始し、参照用バックアップデータＡ２１６に対する参照を停止し、更新用バックアップデータ２１５を参照用バックアップデータＡ２１６に複写し、参照用バックアップデータＡ２１６に対する参照を開始し、参照用バックアップデータＢ２１７に対する参照を停止し、参照用バックアップデータＡ２１６を参照用バックアップデータＢ２１７に複写する参照用データ作成ステップと、を含む。【選択図】  図２
2006099536.tif 000002
【特許請求の範囲】
【請求項１】
データベースのデータ更新記録を受信し、前記データベースをバックアップするバックアップシステムにおいて、第一のバックアップデータと、第二のバックアップデータを用いて、バックアップデータを利用する方法であって、
前記第一のバックアップデータに対してデータ更新を再現するデータ更新再現ステップと、
前記第二のバックアップデータに対する参照を停止し、前記第一のバックアップデータを前記第二のバックアップデータに複写し、前記第二のバックアップデータに対する参照を開始する参照用データ作成ステップと、を含むことを特徴とするバックアップデータの利用方法。
【請求項２】
請求項１記載のバックアップデータの利用方法において、
前記参照用データ作成ステップは、再現途中のトランザクションのデータ更新を取消す処理を含むことを特徴とするバックアップデータの利用方法。
【請求項３】
請求項１記載のバックアップデータの利用方法において、
前記データ更新再現ステップは、前記第一のバックアップデータに対して決着したトランザクションのデータ更新を再現することを特徴とするバックアップデータの利用方法。
【請求項４】
データベースのデータ更新記録を受信し、前記データベースをバックアップするバックアップシステムにおいて、第一、第二、第三のバックアップデータを用いて、バックアップデータを利用する方法であって、
前記第一のバックアップデータに対してデータ更新を再現するデータ更新再現ステップと、
前記第三のバックアップデータに対する参照を開始し、前記第二のバックアップデータに対する参照を停止し、前記第一のバックアップデータを前記第二のバックアップデータに複写し、前記第二のバックアップデータに対する参照を開始し、前記第三のバックアップデータに対する参照を停止し、前記第二のバックアップデータを前記第三のバックアップデータに複写する参照用データ作成ステップと、を含むことを特徴とするバックアップデータの利用方法。
【請求項５】
請求項４記載のバックアップデータの利用方法において、
前記参照用データ作成ステップは、再現途中のトランザクションのデータ更新を取消す処理を含むことを特徴とするバックアップデータの利用方法。
【請求項６】
請求項５記載のバックアップデータの利用方法において、
前記参照用データ作成ステップは、前記第二のバックアップデータのうち前記第一のバックアップデータと異なるデータを前記第三のバックアップデータに格納し、前記第一のバックアップデータを前記第二のバックアップデータに複写する参照用データ作成ステップであり、
前記データ更新再現ステップの実行中は前記第二のバックアップデータを参照し、
前記参照用データ作成ステップの実行中は前記第二のバックアップデータと前記第三のバックアップデータを参照することを特徴とするバックアップデータの利用方法。
【請求項７】
請求項６記載のバックアップデータの利用方法において、
前記参照用データ作成ステップの実行中に前記第二のバックアップデータと前記第三のバックアップデータを参照する場合に、
前記第三のバックアップデータに格納されているデータは前記第三のバックアップデータを参照し、
前記第三のバックアップデータに格納されていないデータは前記第二のバックアップデータを参照することを特徴とするバックアップデータの利用方法。
【請求項８】
請求項４記載のバックアップデータの利用方法において、
前記データ更新再現ステップは、前記第一のバックアップデータに対して決着したトランザクションのデータ更新を再現することを特徴とするバックアップデータの利用方法。
【請求項９】
請求項８記載のバックアップデータの利用方法において、
前記参照用データ作成ステップは、前記第二のバックアップデータのうち前記第一のバックアップデータと異なるデータを前記第三のバックアップデータに格納し、前記第一のバックアップデータを前記第二のバックアップデータに複写する参照用データ作成ステップであり、
前記データ更新再現ステップの実行中は前記第二のバックアップデータを参照し、
前記参照用データ作成ステップの実行中は前記第二のバックアップデータと前記第三のバックアップデータを参照することを特徴とするバックアップデータの利用方法。
【請求項１０】
請求項９記載のバックアップデータの利用方法において、
前記参照用データ作成ステップの実行中に前記第二のバックアップデータと前記第三のバックアップデータを参照する場合に、
前記第三のバックアップデータに格納されているデータは前記第三のバックアップデータを参照し、
前記第三のバックアップデータに格納されていないデータは前記第二のバックアップデータを参照することを特徴とするバックアップデータの利用方法。
【請求項１１】
データベースのデータ更新記録を受信し、前記データベースをバックアップするバックアップシステムにおいて、バックアップデータを利用する方法であって、
前記バックアップデータに対してデータ更新を再現するデータ更新再現ステップと、
前記バックアップデータを参照するデータ参照ステップと、
前記データ更新再現ステップと前記データ参照ステップのどちらを実行するかを判断する判断ステップと、を含むことを特徴とするバックアップデータの利用方法。
【請求項１２】
請求項１１記載のバックアップデータの利用方法において、
前記データ更新再現ステップは、
前記バックアップデータの参照を停止する処理と、
再現途中のトランザクションのデータ更新を取消すデータ更新取消し処理と、
前記バックアップデータの参照を開始する処理と、を含むことを特徴とするバックアップデータの利用方法。
【請求項１３】
請求項１１記載のバックアップデータの利用方法において、
前記データ更新再現ステップは、前記バックアップデータに対して決着したトランザクションのデータ更新を再現することを特徴とするバックアップデータの利用方法。
【請求項１４】
請求項１１記載のバックアップデータの利用方法において、
前記判断ステップに対して、前記データ更新再現ステップの重要度と前記データ参照ステップの重要度を設定可能であり、
前記判断ステップは、設定された重要度の高いステップの実行を判断することを特徴とするバックアップデータの利用方法。
【請求項１５】
請求項１４記載のバックアップデータの利用方法において、
前記判断ステップは、受信したデータ更新記録のデータ量をもとに設定された重要度を変更することを特徴とするバックアップデータの利用方法。
【請求項１６】
データベースのデータ更新記録を受信し、前記データベースをバックアップするバックアップシステムにおいて、第一のバックアップデータと、第二のバックアップデータを用いて、バックアップデータを利用するプログラムであって、
前記第一のバックアップデータに対してデータ更新を再現するデータ更新再現ステップと、
前記第二のバックアップデータに対する参照を停止し、前記第一のバックアップデータを前記第二のバックアップデータに複写し、前記第二のバックアップデータに対する参照を開始する参照用データ作成ステップと、を実行することを特徴とするプログラム。
【請求項１７】
データベースのデータ更新記録を受信し、前記データベースをバックアップするバックアップシステムにおいて、第一、第二、第三のバックアップデータを用いて、バックアップデータを利用するプログラムであって、
前記第一のバックアップデータに対してデータ更新を再現するデータ更新再現ステップと、
前記第三のバックアップデータに対する参照を開始し、前記第二のバックアップデータに対する参照を停止し、前記第一のバックアップデータを前記第二のバックアップデータに複写し、前記第二のバックアップデータに対する参照を開始し、前記第三のバックアップデータに対する参照を停止し、前記第二のバックアップデータを前記第三のバックアップデータに複写する参照用データ作成ステップと、を実行することを特徴とするプログラム。
【請求項１８】
データベースのデータ更新記録を受信し、前記データベースをバックアップするバックアップシステムにおいて、バックアップデータを利用するプログラムであって、
前記バックアップデータに対してデータ更新を再現するデータ更新再現ステップと、
前記バックアップデータを参照するデータ参照ステップと、
前記データ更新再現ステップと前記データ参照ステップのどちらを実行するかを判断する判断ステップと、を実行することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バックアップデータの利用技術に関し、特に、二つの計算機システムを用いたバックアップシステムにおいて、バックアップ先の計算機システムである待機システムに未確定データを含まないバックアップデータを作成する方法に適用して有効な技術に関する。
【背景技術】
【０００２】
本発明者が検討したところによれば、従来のバックアップデータの利用技術に関しては、以下のような技術が考えられる。
【０００３】
例えば、二つの計算機システムを用いた、データベースのバックアップシステムが広く用いられている。データベースのバックアップとは、一方の計算機システムのデータと同じデータを作成し、他方の計算機システムに保存することである。バックアップ元の計算機システムを現用システム、バックアップ先の計算機システムを待機システムと呼ぶ。また、待機システムに保存するデータをバックアップデータと呼ぶ。二重化システムによるデータベースのバックアップについては、例えば、非特許文献１に記載されている。
【０００４】
二重化システムによるデータベースバックアップの方式として、ログ転送方式がある。ログ転送方式とは、現用システムのデータ更新記録を待機システムに転送し、待機システムでバックアップデータを作成する方式である。ログ転送方式では、バックアップ開始の段階で、現用システムのデータと待機システムのバックアップデータを同一にする。バックアップの開始後は、現用システムのデータ更新記録を待機システムに転送する。待機システムでは、転送されたデータ更新記録をもとにバックアップデータを更新し、最新のバックアップデータを作成する。ログ転送方式については、前記非特許文献１に記載されている。
【０００５】
一般に、計算機システムは外部記憶装置を含み、計算機システムのデータは外部記憶装置に格納される。外部記憶装置は計算機システムのデータを格納する装置であり、磁気記憶装置であるハードディスクやディスクアレイなどを指す。
【０００６】
外部記憶装置には、二つの装置の間でデータを複写する複写機能を持つものがある。例えば、特許文献１にコピー機能が記載されている。このコピー機能はネットワークを介してデータを転送し、一方の外部記憶装置のデータを他方の外部記憶装置に複写する機能である。このコピー機能を用いると、複写元の外部記憶装置にデータが追加されると、複写先の外部記憶装置にも同一のデータが追加される。
【０００７】
ログ転送方式によるバックアップは、外部記憶装置の複写機能を用いて実施される。その仕組みは次のとおりである。バックアップを開始する際に、現用システムのデータと待機システムのバックアップデータを同一にする。データ更新記録に複写機能を使用し、現用システムの外部記憶装置に追加されたデータ更新記録を、待機システムの外部記憶装置に複写する。待機システムでは、複写されたデータ更新記録をもとに、最新のバックアップデータを作成する。
【０００８】
また、待機システムのバックアップデータを二重化することが広く行われている。バックアップデータを二重化する場合、待機システムの外部記憶装置にバックアップデータを格納する領域を二つ用意する。一方の格納領域にログ転送方式によりバックアップデータを作成し、他方の格納領域にバックアップデータをコピーする。
【０００９】
外部記憶装置の格納領域をコピーする方法として、例えば特許文献２に記載されている。このコピー機能は、指定された二つの格納領域のデータをコピーする機能であり、この機能を用いることでバックアップデータを二重化することができる。
【非特許文献１】ＣＨＲＩＳＴＯＳ  Ａ．ＰＯＬＹＺＯＩＳ，ＨＥＣＴＯＲ  ＧＡＲＣＩＡ−ＭＯＬＩＮＡ，“Ｅｖａｌｕａｔｉｏｎ  ｏｆ  Ｒｅｍｏｔｅ  Ｂａｃｋｕｐ  Ａｌｇｏｒｉｔｈｍｓ  ｆｏｒ  Ｔｒａｎｓａｃｔｉｏｎ−Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍｓ”，ＡＣＭ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｄａｔａｂａｓｅ  Ｓｙｓｔｅｍｓ，Ｖｏｌ．１９，Ｎｏ．３，Ｓｅｐｔｅｍｂｅｒ  １９９４，Ｐａｇｅｓ  ４２３−４４９
【特許文献１】特開２００４−７８７４６号公報
【特許文献２】特開２００３−３４５５２３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
ところで、前記のような従来のバックアップデータの利用技術に関して、本発明者が検討した結果、以下のようなことが明らかとなった。
【００１１】
例えば、従来、待機システムのバックアップデータが、利用できないデータを含んでいる問題があった。これは、待機システムのバックアップデータのなかに未決着トランザクションが使用中のデータがあることに起因する。トランザクションとは一連のデータ操作であり、トランザクションが決着した時点で、データ操作が有効になる。未決着のトランザクションが使用中のデータは未確定のデータであり、未確定のデータは利用できない。
【００１２】
一例として、あるトランザクションが、現用システムのデータを更新する場合を用いて説明する。トランザクションが現用システムのデータを更新すると、データ更新記録が待機システムに転送され、待機システムのデータも更新される。しかし、トランザクションを決着するまではデータ操作は有効ではない。例えば、トランザクションが決着する前にロールバックされ、データが元に戻されてしまう場合がある。そのため、データ更新からトランザクションの決着までの間、バックアップデータは利用できない未確定のデータを含む。
【００１３】
そこで、本発明は、待機システムに未確定データを含まないバックアップデータを作成することにより、バックアップデータを利用可能にするバックアップデータの利用技術を提供することを目的とするものである。
【００１４】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１５】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１６】
（１）本発明のバックアップデータの利用方法およびプログラムの一つ目は、データベースのデータ更新記録を受信し、データベースをバックアップするバックアップシステムにおいて、第一のバックアップデータと、第二のバックアップデータを用いて、バックアップデータを利用する技術に適用され、第一のバックアップデータに対してデータ更新を再現するデータ更新再現ステップと、第二のバックアップデータに対する参照を停止し、第一のバックアップデータを第二のバックアップデータに複写し、第二のバックアップデータに対する参照を開始する参照用データ作成ステップと、を含むものである。
【００１７】
さらに、参照用データ作成ステップは、再現途中のトランザクションのデータ更新を取消す処理を含むものである。また、データ更新再現ステップは、第一のバックアップデータに対して決着したトランザクションのデータ更新を再現するものである。
【００１８】
（２）本発明のバックアップデータの利用方法およびプログラムの二つ目は、データベースのデータ更新記録を受信し、データベースをバックアップするバックアップシステムにおいて、第一、第二、第三のバックアップデータを用いて、バックアップデータを利用する技術に適用され、第一のバックアップデータに対してデータ更新を再現するデータ更新再現ステップと、第三のバックアップデータに対する参照を開始し、第二のバックアップデータに対する参照を停止し、第一のバックアップデータを第二のバックアップデータに複写し、第二のバックアップデータに対する参照を開始し、第三のバックアップデータに対する参照を停止し、第二のバックアップデータを第三のバックアップデータに複写する参照用データ作成ステップと、を含むものである。
【００１９】
さらに、参照用データ作成ステップは、再現途中のトランザクションのデータ更新を取消す処理を含むものである。また、データ更新再現ステップは、第一のバックアップデータに対して決着したトランザクションのデータ更新を再現するものである。
【００２０】
さらに、参照用データ作成ステップは、第二のバックアップデータのうち第一のバックアップデータと異なるデータを第三のバックアップデータに格納し、第一のバックアップデータを第二のバックアップデータに複写する参照用データ作成ステップであり、データ更新再現ステップの実行中は第二のバックアップデータを参照し、参照用データ作成ステップの実行中は第二のバックアップデータと第三のバックアップデータを参照するものである。
【００２１】
さらに、参照用データ作成ステップの実行中に第二のバックアップデータと第三のバックアップデータを参照する場合に、第三のバックアップデータに格納されているデータは第三のバックアップデータを参照し、第三のバックアップデータに格納されていないデータは第二のバックアップデータを参照するものである。
【００２２】
（３）本発明のバックアップデータの利用方法およびプログラムの三つ目は、データベースのデータ更新記録を受信し、データベースをバックアップするバックアップシステムにおいて、バックアップデータを利用する技術に適用され、バックアップデータに対してデータ更新を再現するデータ更新再現ステップと、バックアップデータを参照するデータ参照ステップと、データ更新再現ステップとデータ参照ステップのどちらを実行するかを判断する判断ステップと、を含むものである。
【００２３】
さらに、データ更新再現ステップは、バックアップデータの参照を停止する処理と、再現途中のトランザクションのデータ更新を取消すデータ更新取消し処理と、バックアップデータの参照を開始する処理と、を含むものである。また、データ更新再現ステップは、バックアップデータに対して決着したトランザクションのデータ更新を再現するものである。
【００２４】
さらに、判断ステップに対して、データ更新再現ステップの重要度とデータ参照ステップの重要度を設定可能であり、判断ステップは、設定された重要度の高いステップの実行を判断するものである。さらに、判断ステップは、受信したデータ更新記録のデータ量をもとに設定された重要度を変更するものである。
【発明の効果】
【００２５】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００２６】
本発明によれば、待機システムに未確定データを含まないバックアップデータを作成することにより、バックアップデータを利用可能にすることができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の機能を有する部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２８】
本発明は、第一のバックアップデータ（更新用バックアップデータ）と第二のバックアップデータ（参照用バックアップデータＡ）と第三のバックアップデータ（参照用バックアップデータＢ）を用いてバックアップデータを利用するバックアップシステムからなる実施の形態１、第一のバックアップデータ（更新用バックアップデータ）と第二のバックアップデータ（参照用バックアップデータＡ）を用いてバックアップデータを利用するバックアップシステムからなる実施の形態２、バックアップデータ（更新用バックアップデータ）を利用するバックアップシステムからなる実施の形態３があり、さらに各実施の形態において、参照用データ作成ステップが再現途中のトランザクションのデータ更新を取消す処理を含む方法（ロールバックする方法）と、データ更新再現ステップがバックアップデータに対して決着したトランザクションのデータ更新を再現する方法（決着トランザクションだけをログ適用する方法）とがあり、以下において具体的に説明する。
【００２９】
（実施の形態１）
図１は、本発明の実施の形態における、二重化システムによるデータのバックアップシステムの構成を示すブロック図である。なお、以下に順次説明する実施の形態１、２、３の全てにおいてシステム構成は図１に示す範囲で共通である。
【００３０】
二重化システムによるデータのバックアップシステムは、二つの計算機システムを含む。バックアップ元の計算機システムを現用システム１０１、バックアップ先の計算機システムを待機システム１０２と呼ぶ。現用システム１０１は、現用システムのサーバ１０３と現用システムの外部記憶装置１０４を含む。待機システム１０２は、待機システムのサーバ１０５と待機システムの外部記憶装置１０６を含む。現用システム１０１のサーバ１０３と待機システム１０２のサーバ１０５は、例えばインターネットなどのネットワーク１０７によって接続されている。このネットワーク１０７には、利用者端末１０９が接続されている。現用システム１０１の外部記憶装置１０４と待機システム１０２の外部記憶装置１０６は、例えばＳＡＮなどのネットワーク１０８によって接続されている。
【００３１】
図２は、実施の形態１における、二重化システムによるデータのバックアップシステムの各部の機能を詳細に示す機能ブロック図である。
【００３２】
現用システム１０１のサーバ１０３は、トランザクション受付部２０１、データ更新部２０２、データ参照部２０３を持つ。現用システム１０１の外部記憶装置１０４は、データ更新記録送信部２０４を持ち、データ更新記録２０５とデータ２０６を格納する。待機システム１０２のサーバ１０５は、トランザクション受付部２０７、制御部２０８、データ更新再現部２０９、データ参照部２１０、データ更新取消し部２１１を持つ。待機システム１０２の外部記憶装置１０６は、データ更新記録受信部２１２、データ複写部２１３を持ち、データ更新記録２１４と更新用バックアップデータ２１５と参照用バックアップデータＡ２１６と参照用バックアップデータＢ２１７を格納する。
【００３３】
図３は、データ、更新用バックアップデータ、参照用バックアップデータＡ、参照用バックアップデータＢの格納内容を説明するための図である。
【００３４】
データ２０６、更新用バックアップデータ２１５、参照用バックアップデータＡ２１６、参照用バックアップデータＢ２１７は、それぞれ、格納位置識別情報とデータを含む。
【００３５】
図４は、データ更新記録の格納内容を説明するための図である。
【００３６】
データ更新記録２０５，２１４は、データ更新記録番号と、ログを含む。ログには、トランザクション開始ログ、データ更新ログ、トランザクション決着ログの三種類がある。トランザクション開始ログは、トランザクション番号と、トランザクションを開始したことを示す情報を含む。データ更新ログは、トランザクション番号と、更新したデータの格納位置識別情報と、更新前のデータと、更新後のデータを含む。トランザクション決着ログは、トランザクション番号と、トランザクションを決着したことを示す情報を含む。
【００３７】
このような二重化システムによるデータのバックアップシステムの構成において、利用者端末１０９は、現用システム１０１のトランザクション受付部２０１に対して、トランザクションの実行を要求することができる。トランザクションの実行を要求された現用システム１０１のトランザクション受付部２０１は、データ更新部２０２とデータ参照部２０３を用いて、トランザクションの一連のデータ操作を実行し、利用者端末１０９にデータ操作の実行結果を返す。また、利用者端末１０９は、待機システム１０２のトランザクション受付部２０７に対して、トランザクションの実行を要求することができる。トランザクションの実行を要求された待機システム１０２のトランザクション受付部２０７は、データ参照部２１０を用いて、トランザクションの一連のデータ操作を実行し、利用者端末１０９にデータ操作の結果を返す。
【００３８】
このように、本実施の形態における、二重化システムによるデータのバックアップシステムでは、利用者端末１０９から現用システム１０１と待機システム１０２の両方のシステムに対してトランザクションの実行の要求を出すことができる。両方のシステムでトランザクションを実行することにより、計算機資源を有効に活用できる。
【００３９】
次に、現用システム１０１のトランザクション受付部２０１がトランザクションの実行要求を受けたときの動作について説明する。
【００４０】
現用システム１０１のトランザクション受付部２０１がトランザクションの実行要求を受けると、トランザクション受付部２０１はトランザクション開始ログをデータ更新記録２０５に追加する。トランザクション受付部２０１は、利用者端末１０９から受け付けたトランザクションのデータ操作に従って、データ更新部２０２とデータ参照部２０３を用いてデータの操作を行う。
【００４１】
データ更新部２０２は、トランザクション受付部２０１からデータ更新の要求を受け付けると、データを更新し、データ更新記録２０５にデータ更新ログを追加し、トランザクション受付部２０１にデータ更新の完了を通知する。データ参照部２０３は、トランザクション受付部２０１からデータ参照の要求を受け付けると、データを読み取り、読み取ったデータをトランザクション受付部２０１に返す。
【００４２】
トランザクション受付部２０１は、利用者端末１０９から受け付けたトランザクションの一連のデータ操作が完了すると、トランザクション完了ログをデータ更新記録２０５に追加し、トランザクションの実行結果を利用者端末１０９に返す。
【００４３】
待機システム１０２のトランザクション受付部２０７がトランザクションの実行要求を受けると、トランザクション受付部２０７は、利用者端末１０９から受け付けたトランザクションのデータ操作に従って、データ参照部２１０を用いてデータの操作を行う。受け付けたトランザクションがデータ更新の操作を含む場合は、利用者端末１０９にエラーを返す。
【００４４】
待機システム１０２のデータ参照部２１０は、トランザクション受付部２０７からデータ参照の要求を受け付けると、参照用バックアップデータＡ２１６を読み取り、読み取ったデータをトランザクション受付部２０７に返す。なお、データ参照部２１０は、参照用バックアップデータＢ２１７を参照することも可能であり、制御部２０８から参照するバックアップデータの変更指示を受けた場合は、参照するバックアップデータを変更する。
【００４５】
待機システム１０２のトランザクション受付部２０７は、利用者端末１０９から受け付けたトランザクションの一連のデータ操作が完了すると、トランザクションの実行結果を利用者端末１０９に返す。
【００４６】
次に、現用システム１０１のデータ更新記録２０５を待機システム１０２のデータ更新記録２１４に複写する仕組みを説明する。
【００４７】
現用システム１０１のデータ更新記録送信部２０４は、データ更新記録２０５に新たなログが追加されると、そのログを待機システム１０２のデータ更新記録受信部２１２に送信する。待機システム１０２のデータ更新記録受信部２１２は受信したログをデータ更新記録２１４に追加する。
【００４８】
次に、本実施の形態における制御部の動作を説明する。図５は、制御部の動作を示すフローチャートである。図６（ａ），（ｂ）は、ロールバックする方法と決着トランザクションだけをログ適用する方法を説明するための図である。
【００４９】
待機システム１０２の制御部２０８は、利用者端末１０９から終了指示を受けることが可能であり、利用者端末１０９から終了指示を受けたか否かを判断し（Ｓ５０１）、終了指示を受けた場合（Ｙｅｓ）は動作を停止し、終了指示を受けない場合（Ｎｏ）には、データ更新再現ステップを実行し（Ｓ５０２）、そして、参照用データ作成ステップを実行する（Ｓ５０３）。
【００５０】
これらの、データ更新再現ステップ、参照用データ作成ステップを含む動作は、後述するフローチャートに従って動作するように生成された制御プログラムの実行により制御される。
【００５１】
データ更新再現ステップ、参照用データ作成ステップの実行においては、図６（ａ）に示すようにロールバックする方法と、図６（ｂ）に示すように決着トランザクションだけをログ適用する方法とがある。図６（ａ）ロールバックする方法では、転送されたログを逐次ログ適用し、データ更新再現ステップから参照用データ作成ステップに切り替えるときに未決着の状態にあるトランザクションのログ適用を取り消す。このログ適用とは、転送されたデータを読み込み、データを更新する処理である。図６（ｂ）決着トランザクションだけをログ適用する方法では、決着したトランザクションだけをデータに反映する。
【００５２】
図７は、データ更新再現ステップの動作を示すフローチャートである。
【００５３】
データ更新再現ステップ（Ｓ５０２）を開始すると、データ更新再現部２０９にデータ更新の再現を指示し（Ｓ７０１）、そして、データ更新再現部２０９の動作終了の応答を受信する（Ｓ７０２）。
【００５４】
制御部２０８は、利用者端末１０９からデータ更新再現ステップの終了指示を受けることが可能であり、利用者端末１０９からデータ更新再現ステップの終了指示を受けたか否かを判断する（Ｓ７０３）。データ更新再現ステップの終了指示を受けた場合（Ｙｅｓ）は、データ更新再現ステップを終了し、受けていない場合（Ｎｏ）はＳ７０１の処理に戻る。
【００５５】
データ更新再現部２０９は、制御部２０８からデータ更新の再現の指示を受けると、動作を開始する。
【００５６】
図８は、データ更新再現部の動作を示すフローチャートである。このフローチャートは、ロールバックする方法に適用されるものである。
【００５７】
データ更新再現部２０９は、全てのログを読み込み済みか否かを判断し（Ｓ８０１）、読み込み済みの場合（Ｙｅｓ）は制御部２０８に動作終了を応答して（Ｓ８０２）、終了となり、読み込み済みでない場合（Ｎｏ）には、データ更新記録のログを読み込む（Ｓ８０３）。この読み込んだログの種類を判定し（Ｓ８０４）、更新ログの場合には参照用バックアップデータＡを更新し（Ｓ８０５）、トランザクション開始の場合にはトランザクション番号を内部メモリに登録し（Ｓ８０６）、トランザクション終了の場合にはトランザクション番号を内部メモリから削除し（Ｓ８０７）、そしてＳ８０１に戻る。
【００５８】
図９は、データ更新再現部の動作を示すフローチャートである。このフローチャートは、決着トランザクションだけをログ適用する方法に適用されるものである。
【００５９】
データ更新再現部２０９は、全てのログを読み込み済みか否かを判断し（Ｓ９０１）、読み込み済みの場合（Ｙｅｓ）は制御部２０８に動作終了を応答して（Ｓ９０２）、終了となり、読み込み済みでない場合（Ｎｏ）には、次の番号のログを読み込む（Ｓ９０３）。この読み込んだログがトランザクション終了ログか否かを判定し（Ｓ９０４）、トランザクション終了ログの場合（Ｙｅｓ）には終了したトランザクションのログを読み込み、参照用バックアップデータＡを更新し（Ｓ９０５）、そしてＳ９０１に戻る。また、トランザクション終了ログでない場合（Ｎｏ）は直ちにＳ９０１に戻る。
【００６０】
図１０は、参照用データ作成ステップの動作を示すフローチャートである。このフローチャートは、ロールバックする方法に適用されるものである。
【００６１】
参照用データ作成ステップ（Ｓ５０３）を開始すると、データ参照部２１０に参照用バックアップデータＢの参照開始と、参照用バックアップデータＡの参照停止を指示し（Ｓ１００１）、さらに、データ更新取消し部２１１に未決着トランザクションの取消しを指示し（Ｓ１００２）、そして、データ複写部２１３に更新用バックアップデータを参照用バックアップデータＡに複写を指示する（Ｓ１００３）。さらに、データ参照部２１０に参照用バックアップデータＡの参照開始と、参照用バックアップデータＢの参照停止を指示し（Ｓ１００４）、そして、データ複写部２１３に参照用バックアップデータＡを参照用バックアップデータＢに複写を指示する（Ｓ１００５）。
【００６２】
図１１は、参照用データ作成ステップの動作を示すフローチャートである。このフローチャートは、決着トランザクションだけをログ適用する方法に適用されるものである。
【００６３】
参照用データ作成ステップ（Ｓ５０３）を開始すると、データ参照部２１０に参照用バックアップデータＢの参照開始と、参照用バックアップデータＡの参照停止を指示し（Ｓ１１０１）、そして、データ複写部２１３に更新用バックアップデータを参照用バックアップデータＡに複写を指示する（Ｓ１１０２）。さらに、データ参照部２１０に参照用バックアップデータＡの参照開始と、参照用バックアップデータＢの参照停止を指示し（Ｓ１１０３）、そして、データ複写部２１３に参照用バックアップデータＡを参照用バックアップデータＢに複写を指示する（Ｓ１１０４）。
【００６４】
特に、参照用データ作成ステップでは、参照用バックアップデータＡのうち更新用バックアップデータと異なるデータを参照用バックアップデータＢに格納し、更新用バックアップデータを参照用バックアップデータＡに複写する処理を行い、データ更新再現ステップの実行中は参照用バックアップデータＡを参照し、参照用データ作成ステップの実行中は参照用バックアップデータＡと参照用バックアップデータＢを参照する。さらに、参照用データ作成ステップの実行中に参照用バックアップデータＡと参照用バックアップデータＢを参照する場合に、参照用バックアップデータＢに格納されているデータは参照用バックアップデータＢを参照し、参照用バックアップデータＢに格納されていないデータは参照用バックアップデータＡを参照する。
【００６５】
図１２は、データ更新取消し部の動作を示すフローチャートである。
【００６６】
データ更新取消し部２１１は、データ更新再現部２０９に未決着トランザクションの番号の通知を指示し（Ｓ１２０１）、そして、データ更新部２０２から未決着トランザクションの番号を取得する（Ｓ１２０２）。さらに、データ更新記録２０５から未決着トランザクションのログを取得し（Ｓ１２０３）、そして、未決着トランザクションのログから更新用バックアップデータをトランザクション開始前の状態にする（Ｓ１２０４）。
【００６７】
以上の実施の形態１によれば、参照用バックアップデータＡおよび、参照用バックアップデータＢに、未決着トランザクションが使用中のデータがなく、利用できないデータがない。そのため、バックアップデータの利用が可能である。
【００６８】
（実施の形態２）
また、本発明には、参照用バックアップデータＢを用いない場合もある。参照用バックアップデータＢを用いない場合は、前記実施の形態１の説明のうち、図１０（図１１）の参照用データ作成ステップのフローチャートが変更になる。
【００６９】
実施の形態２において、参照用バックアップデータＢを用いない場合の参照用データ作成ステップの動作を説明する。図１３は、参照用データ作成ステップの動作を示すフローチャートである。
【００７０】
参照用データ作成ステップ（Ｓ５０３）を開始すると、データ参照部２１０に参照用バックアップデータＡの参照停止を指示し（Ｓ１３０１）、さらに、データ更新取消し部２１１に未決着トランザクションの取消しを指示し（Ｓ１３０２）、そして、データ複写部２１３に更新用バックアップデータを参照用バックアップデータＡに複写を指示する（Ｓ１３０３）。さらに、データ参照部２１０に参照用バックアップデータＡの参照開始を指示する（Ｓ１３０４）。
【００７１】
このように、参照用データ作成ステップの動作を図１３のフローチャートに変更することにより、データ参照部２１０が参照をしている間、参照用バックアップデータＡに、未決着トランザクションが使用中のデータがない。そのため、参照用バックアップデータＡに利用できないデータがなく、バックアップデータの利用が可能である。
【００７２】
（実施の形態３）
また、本発明には、参照用バックアップデータを用いない実施の形態がある。図１４は、実施の形態３における、二重化システムによるデータのバックアップシステムの各部の機能を示す機能ブロック図である。
【００７３】
本実施の形態では、データ参照部と制御部の動作が、前記実施の形態１，２に説明した動作と異なる。以下、本実施の形態の詳細を説明する。
【００７４】
データ参照部２１０は、トランザクション受付部２０７からデータ参照の要求を受け付けると、更新用バックアップデータ２１５を読み取り、読み取ったデータをトランザクション受付部２０７に返す。データ参照部２１０が、更新用バックアップデータ２１５を参照するのは、制御部２０８から指示を受けた場合だけであり、その他の場合は、トランザクション受付部２０７にエラーを返す。
【００７５】
図１５は、制御部の動作を示すフローチャートである。
【００７６】
制御部２０８には、データ更新再現ステップの重要度とデータ参照ステップの重要度を設定可能である。判断ステップは、受信したデータ量などによってデータ更新再現ステップの重要度とデータ参照ステップの重要度を変更し、重要度の高い方のステップを実行する判断をする。
【００７７】
すなわち、待機システム１０２の制御部２０８は、利用者端末１０９から終了指示を受けたか否かを判断し（Ｓ１５０１）、終了指示を受けた場合（Ｙｅｓ）は動作を停止し、終了指示を受けない場合（Ｎｏ）には、判断ステップを実行し（Ｓ１５０２）、重要度の高い方の、データ更新再現ステップ（Ｓ１５０３）、データ参照ステップ（Ｓ１５０４）を実行する。
【００７８】
図１６は、データ更新再現ステップの動作を示すフローチャートである。
【００７９】
データ更新再現ステップ（Ｓ１５０３）を開始すると、データ参照部２１０に更新用データの参照停止を指示し（Ｓ１６０１）、さらに、データ更新再現部２０９にデータ更新の再現を指示し（Ｓ１６０２）、そして、データ更新再現部２０９の動作終了の応答を受信する（Ｓ１６０３）。さらに、データ更新取消し部２１１に未決着トランザクションの取消しを指示し（Ｓ１６０４）、そして、データ参照部２１０に更新用データの参照開始を指示する（Ｓ１６０５）。
【００８０】
図１７は、データ参照ステップの動作を示すフローチャートである。
【００８１】
データ参照ステップ（Ｓ１５０４）では、トランザクション受付部２０７に対し、データ操作が完了していないトランザクションの個数を問い合わせる（Ｓ１７０１）。そして、データ操作が完了していないトランザクションの個数が０か否かを判定し（Ｓ１７０２）、０の場合（Ｙｅｓ）はデータ参照ステップを終了し、トランザクションの個数が０でない場合（Ｎｏ）には、Ｓ１７０１に戻ってデータ参照ステップを継続する。
【００８２】
以上の参照用バックアップデータを用いない実施の形態３によれば、データ参照部２１０が更新用バックアップデータを参照する時点では、更新用バックアップデータに未決着トランザクションが使用中のデータがない。そのため、更新用バックアップデータに利用できないデータがなく、バックアップデータの利用が可能である。
【００８３】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【図面の簡単な説明】
【００８４】
【図１】本発明の各実施の形態における、二重化システムによるデータのバックアップシステムの構成を示すブロック図である。
【図２】本発明の実施の形態１における、二重化システムによるデータのバックアップシステムの各部の機能を示す機能ブロック図である。
【図３】本発明の実施の形態１において、データ、更新用バックアップデータ、参照用バックアップデータＡ、参照用バックアップデータＢの格納内容を説明するための図である。
【図４】本発明の実施の形態１において、データ更新記録の格納内容を説明するための図である。
【図５】本発明の実施の形態１において、制御部の動作を示すフローチャートである。
【図６】本発明の実施の形態１において、ロールバックする方法（ａ）と決着トランザクションだけをログ適用する方法（ｂ）を説明するための図である。
【図７】本発明の実施の形態１において、データ更新再現ステップの動作を示すフローチャートである。
【図８】本発明の実施の形態１において、データ更新再現部の動作を示すフローチャート（ロールバックする方法）である。
【図９】本発明の実施の形態１において、データ更新再現部の動作を示すフローチャート（決着トランザクションだけをログ適用する方法）である。
【図１０】本発明の実施の形態１において、参照用データ作成ステップの動作を示すフローチャート（ロールバックする方法）である。
【図１１】本発明の実施の形態１において、参照用データ作成ステップの動作を示すフローチャート（決着トランザクションだけをログ適用する方法）である。
【図１２】本発明の実施の形態１において、データ更新取消し部の動作を示すフローチャートである。
【図１３】本発明の実施の形態２において、参照用データ作成ステップの動作を示すフローチャートである。
【図１４】本発明の実施の形態３における、二重化システムによるデータのバックアップシステムの各部の機能を示す機能ブロック図である。
【図１５】本発明の実施の形態３において、制御部の動作を示すフローチャートである。
【図１６】本発明の実施の形態３において、データ更新再現ステップの動作を示すフローチャートである。
【図１７】本発明の実施の形態３において、データ参照ステップの動作を示すフローチャートである。
【符号の説明】
【００８５】
１０１…現用システム、１０２…待機システム、１０３…現用システムのサーバ、１０４…現用システムの外部記憶装置、１０５…待機システムのサーバ、１０６…待機システムの外部記憶装置、１０７…ネットワーク、１０８…ネットワーク、１０９…利用者端末、２０１…トランザクション受付部、２０２…データ更新部、２０３…データ参照部、２０４…データ更新記録送信部、２０５…データ更新記録、２０６…データ、２０７…トランザクション受付部、２０８…制御部、２０９…データ更新再現部、２１０…データ参照部、２１１…データ更新取消し部、２１２…データ更新記録受信部、２１３…データ複写部、２１４…データ更新記録、２１５…更新用バックアップデータ、２１６…参照用バックアップデータＡ、２１７…参照用バックアップデータＢ。
【図１】
2006099536.tif 000003
【図２】
2006099536.tif 000004
【図３】
2006099536.tif 000005
【図４】
2006099536.tif 000006
【図５】
2006099536.tif 000007
【図６】
2006099536.tif 000008
【図７】
2006099536.tif 000009
【図８】
2006099536.tif 000010
【図９】
2006099536.tif 000011
【図１０】
2006099536.tif 000012
【図１１】
2006099536.tif 000013
【図１２】
2006099536.tif 000014
【図１３】
2006099536.tif 000015
【図１４】
2006099536.tif 000016
【図１５】
2006099536.tif 000017
【図１６】
2006099536.tif 000018
【図１７】
2006099536.tif 000019