(57)【要約】【課題】ログ転送によりデータのバックアップを行う待機システムの外部記憶装置に対するＩ／Ｏ回数をさらに低減して、バックアップシステムの導入コスト及び平常時の運用コストを低減する。【解決手段】データの更新差分であるログを読み込んで、ログが更新対象とする前記バックアップデータのデータ格納領域（ページ）を特定し（Ｓ１）、特定したデータ格納領域の再利用性の高低を判定し（Ｓ２）、再利用性が低いと判定されたデータ格納領域に対応するログを、メモリ上に予め設定されたログ格納領域に格納し（Ｓ３）、再利用性が高いと判定されたデータ格納領域に対応するログを、メモリ上に設定されたキャッシュ領域で前記特定されたデータ格納領域に適用し、当該データ格納領域を更新する（Ｓ４）。【選択図】図５
2006277208.tif 000002
【特許請求の範囲】
【請求項１】
データの更新差分であるログをバックアップシステムが受信し、前記ログをバックアップデータに適用して更新するバックアップ方法であって、
前記受信したログを読み込んで、前記ログが更新対象とする前記バックアップデータのデータ格納領域を特定するログ読み込みステップと、
前記特定したデータ格納領域の再利用性の高低を判定する再利用性判定ステップと、
前記再利用性が低いと判定されたデータ格納領域に対応するログを、予め設定されたログ格納領域に格納するログ格納ステップと、
前記再利用性が高いと判定されたデータ格納領域に対応するログを、予め設定されたキャッシュ領域で前記特定されたデータ格納領域に適用し、当該データ格納領域を更新するキャッシュ領域更新ステップと、
を含むことを特徴とするバックアップ方法。
【請求項２】
前記再利用性判定ステップは、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在するときに再利用性が高いと判定するステップと、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在しないときには、当該ログが更新対象とするデータ格納領域と同一のデータ格納領域を更新対象とする前記ログ格納領域に格納されたログの容量と、当該ログの容量の合計値を演算するステップと、
前記合計値が予め設定した第１の値よりも大きいときに再利用性が高いと判定し、前記合計値が予め設定した値以下のときに再利用性が低いと判定するステップと、
を含むことを特徴とする請求項１に記載のバックアップ方法。
【請求項３】
前記再利用性判定ステップは、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在するときに再利用性が高いと判定するステップと、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在しないときには、当該ログが更新対象とするデータ格納領域と同一のデータ格納領域を更新対象とする前記ログ格納領域に格納されたログの個数と、当該ログの個数の合計値を演算するステップと、
前記合計値が予め設定した第２の値よりも大きいときに再利用性が高いと判定し、前記合計値が予め設定した値以下のときに再利用性が低いと判定するステップと、
を含むことを特徴とする請求項１に記載のバックアップ方法。
【請求項４】
前記第１の値または前記ログ格納領域の容量を受け付けるステップと、
前記第１の値を受け付けたときには前記第１の値を変更し、前記容量を受け付けたときにはログ格納領域の容量を変更するステップと、
を含むことを特徴とする請求項２に記載のバックアップ方法。
【請求項５】
前記第２の値または前記ログ格納領域の容量を受け付けるステップと、
前記第２の値を受け付けたときには前記第２の値を変更し、前記容量を受け付けたときにはログ格納領域の容量を変更するステップと、
を含むことを特徴とする請求項３に記載のバックアップ方法。
【請求項６】
前記ログ格納ステップは、
前記ログ格納領域に空き領域がなくなったときに、当該ログ格納領域内の全てのログを前記バックアップデータに適用するステップと、
前記ログ格納領域に格納されたログを削除するステップと、
を含むことを特徴とする請求項１に記載のバックアップ方法。
【請求項７】
前記ログ格納領域内の全てのログを前記バックアップデータに適用するステップは、
前記同一のデータ格納領域を更新対象とする前記ログ格納領域に格納されたログを、前記キャッシュ領域の所定の領域に該当するデータ格納領域をストレージ装置から読み込んでからまとめて適用し、当該データ格納領域を更新するステップと、
を含むことを特徴とする請求項６に記載のバックアップ方法。
【請求項８】
データの更新差分であるログを受信するログ受信部と、
前記ログ及びバックアップデータを格納するストレージ装置と、
前記ログをバックアップデータに適用して更新するログ適用制御部と、
を備えたバックアップシステムであって、
前記ストレージ装置からログを読み込むログ参照部と、
メモリ上に設定されて前記バックアップデータをデータ格納領域毎に格納するキャッシュ領域と、
前記メモリ上に設定されて前記ログを格納するログ格納領域と、を有し、
前記ログ適用制御部は、
前記ログ参照部が読み込んだログが更新対象とする前記バックアップデータのデータ格納領域の再利用性が高いか低いかを判定する再利用性判定部と、
前記再利用性が低いと判定されたデータ格納領域に対応するログを、前記ログ格納領域に格納するログ格納部と、
前記再利用性が高いと判定されたデータ格納領域に対応するログを、前記キャッシュ領域のデータ格納領域に適用し、当該データ格納領域を更新するキャッシュ領域更新部と、
を備えたことを特徴とするバックアップシステム。
【請求項９】
前記再利用性判定部は、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在するときに再利用性が高いと判定する第１の判定部と、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在しないときには、当該ログが更新対象とするデータ格納領域と同一のデータ格納領域を更新対象とする前記ログ格納領域に格納されたログの容量と、当該ログの容量の合計値を演算する容量演算部と、
前記合計値が予め設定した第１の値よりも大きいときに再利用性が高いと判定し、前記合計値が予め設定した値以下のときに再利用性が低いと判定する第２の判定部と、
を備えたことを特徴とする請求項８に記載のバックアップシステム。
【請求項１０】
前記再利用性判定部は、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在するときに再利用性が高いと判定する第１の判定部と、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在しないときには、当該ログが更新対象とするデータ格納領域と同一のデータ格納領域を更新対象とする前記ログ格納領域に格納されたログの個数と、当該ログの個数の合計値を演算する容量演算部と、
前記合計値が予め設定した第２の値よりも大きいときに再利用性が高いと判定し、前記合計値が予め設定した値以下のときに再利用性が低いと判定する第２の判定部と、
を備えたことを特徴とする請求項８に記載のバックアップシステム。
【請求項１１】
前記ログ適用制御部は、
前記第１の値またはログ格納領域の容量を受け付けるパラメータ受付部と、
前記パラメータ受付部が、前記第１の値を受け付けたときには前記第１の値を変更し、前記パラメータ受付部が前記容量を受け付けたときにはログ格納領域の容量を変更する設定変更部と、
を有することを特徴とする請求項９に記載のバックアップシステム。
【請求項１２】
前記ログ適用制御部は、
前記第２の値またはログ格納領域の容量を受け付けるパラメータ受付部と、
前記パラメータ受付部が、前記第２の値を受け付けたときには前記第１の値を変更し、前記パラメータ受付部が前記容量を受け付けたときにはログ格納領域の容量を変更する設定変更部と、
を有することを特徴とする請求項１０に記載のバックアップシステム。
【請求項１３】
前記ログ格納部は、
前記ログ格納領域に空き領域がなくなったときに、当該ログ格納領域内の全てのログを前記バックアップデータに適用した後に、前記ログ格納領域に格納されたログを削除することを特徴とする請求項８に記載のバックアップシステム。
【請求項１４】
前記ログ格納部は、
前記ログ格納領域内の全てのログを前記バックアップデータに適用する際に、前記同一のデータ格納領域を更新対象とする前記ログ格納領域に格納されたログを、前記キャッシュ領域の所定の領域に該当するデータ格納領域を前記ストレージ装置から読み込んでからまとめて適用し、当該データ格納領域を更新することを特徴とする請求項１３に記載のバックアップシステム。
【請求項１５】
データの更新差分であるログを受信し、前記ログをバックアップデータに適用して更新するプログラムであって、
前記受信したログを読み込んで、前記ログが更新対象とする前記バックアップデータのデータ格納領域を特定するログ読み込み手順と、
前記特定したデータ格納領域の再利用性の高低を判定する再利用性判定手順と、
前記再利用性が低いと判定されたデータ格納領域に対応するログを、当該バックアップ計算機のメモリ上に予め設定されたログ格納領域へ格納するログ格納手順と、
前記再利用性が高いと判定されたデータ格納領域に対応するログを、当該バックアップ計算機のメモリ上に予め設定されたキャッシュ領域で前記特定されたデータ格納領域に適用し、当該データ格納領域を更新するキャッシュ領域更新手順と、
を計算機に機能させることを特徴とするプログラム。
【請求項１６】
前記再利用性判定手順は、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在するときに再利用性が高いと判定する手順と、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在しないときには、当該ログが更新対象とするデータ格納領域と同一のデータ格納領域を更新対象とする前記ログ格納領域に格納されたログの容量と、当該ログの容量の合計値を演算する手順と、
前記合計値が予め設定した第１の値よりも大きいときに再利用性が高いと判定し、前記合計値が予め設定した値以下のときに再利用性が低いと判定する手順と、
を含むことを特徴とする請求項１５に記載のプログラム。
【請求項１７】
前記再利用性判定手順は、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在するときに再利用性が高いと判定する手順と、
前記キャッシュ領域に前記ログが更新対象とするデータ格納領域が存在しないときには、当該ログが更新対象とするデータ格納領域と同一のデータ格納領域を更新対象とする前記ログ格納領域に格納されたログの個数と、当該ログの個数の合計値を演算する手順と、
前記合計値が予め設定した第２の値よりも大きいときに再利用性が高いと判定し、前記合計値が予め設定した値以下のときに再利用性が低いと判定する手順と、
を含むことを特徴とする請求項１５に記載のプログラム。
【請求項１８】
前記第１の値または前記ログ格納領域の容量を受け付ける手順と、
前記第１の値を受け付けたときには前記第１の値を変更し、前記容量を受け付けたときにはログ格納領域の容量を変更する手順と、
を含むことを特徴とする請求項１６に記載のプログラム。
【請求項１９】
前記第２の値または前記ログ格納領域の容量を受け付ける手順と、
前記第２の値を受け付けたときには前記第２の値を変更し、前記容量を受け付けたときにはログ格納領域の容量を変更する手順と、
を含むことを特徴とする請求項１７に記載のプログラム。
【請求項２０】
前記ログ格納手順は、
前記ログ格納領域に空き領域がなくなったときに、当該ログ格納領域内の全てのログを前記バックアップデータに適用する手順と、
前記ログ格納領域に格納されたログを削除する手順と、
を含むことを特徴とする請求項１５に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データのバックアップシステムの改良に関し、特に、データベースに適したバックアップシステムに関する。
【背景技術】
【０００２】
近年、二つの計算機システムを用いた、データベースのバックアップシステムが広く用いられている。データベースのバックアップとは、一方の計算機システムのデータと同じデータを作成し、他方の計算機システムに保存することである。バックアップ元の計算機システムを現用システム（または正サイト）、バックアップ先の計算機システムを待機システム（または副サイト）と呼ぶ。また、待機システムに保存するデータをバックアップデータと呼ぶ。
【０００３】
二重化システムによるデータベースバックアップの方式として、ログ転送方式が知られている（例えば、非特許文献１）。
【０００４】
ログ転送方式とは、現用システムのデータ更新記録を待機システムに転送し、待機システムでバックアップデータを作成する方式である。このログ転送方式では、バックアップ開始の段階で、現用システムのデータと待機システムのバックアップデータを同一にする。バックアップの開始後は、現用システムのデータ更新記録を待機システムに転送する。
【０００５】
待機システムでは、転送されたデータ更新記録をもとにバックアップデータを更新し、最新のバックアップデータを作成する。
【０００６】
一般に、計算機システムは外部記憶装置を含み、計算機システムのデータは外部記憶装置に格納される。外部記憶装置は計算機システムのデータを格納する装置であり、磁気記憶装置であるハードディスクやディスクアレイなどを指す。外部記憶装置には、二つの装置の間でデータを複写する複写機能（リモートコピー）を持つものが知られている（特許文献１）。このコピー機能はネットワークを介してデータを転送し、一方の外部記憶装置のデータを他方の外部記憶装置に複写する機能である。このコピー機能を用いると、複写元の外部記憶装置にデータが追加されると、複写先の外部記憶装置にも同一のデータが追加される。
【０００７】
ログ転送方式によるバックアップは、外部記憶装置の複写機能を用いて実施される。その仕組みは次のとおりである。バックアップを開始する際に、現用システムのデータと待機システムのバックアップデータを同一にする。データ更新記録に複写機能を使用し、現用システムの外部記憶装置に追加されたデータ更新記録を、待機システムの外部記憶装置に複写する。待機システムでは、複写されたデータ更新記録をもとに、最新のバックアップデータを作成する。
【０００８】
上記バックアップでは、待機システムのサーバのメモリ上にＤＢキャッシュを設定し、データのページ単位でデータの更新を行い、ＤＢキャッシュを介して外部記憶装置にアクセスを行っている。このＤＢキャッシュは、外部記憶装置に対する書き込み命令の際には、以下のように使用される。
【０００９】
（ｉ）更新対象のページがＤＢキャッシュに読み込まれていれば、このページを再利用する。ＤＢキャッシュに読み込まれていなければ外部記憶装置から該当ページをＤＢキャッシュに読み込む。
【００１０】
（ii）該当ページを更新する。
【００１１】
（iii）更新したページをＤＢキャッシュに保持し、再利用を可能にする。
【００１２】
（iv）データのバックアップが終了した時点でＤＢキャッシュ上のページを外部記憶装置に書き込む。
【００１３】
以上により、ＤＢキャッシュ上のページを再利用することで、外部記憶装置に対するＩ／Ｏ回数を低減する。このようなＤＢキャッシュに適用可能な技術としては、特許文献２、３等が知られている。
【００１４】
ここで、ＤＢキャッシュはサーバのメモリ上に設定されるため有限の容量であり、ページを読み込む容量が不足すると、ＤＢキャッシュのページを外部記憶装置に書き込む必要が生じる場合がある。しかし、ＤＢキャッシュから外部記憶装置に書き込まれるページは、ＤＢキャッシュで再利用できないことから、最も再利用性の低いページを選択して外部記憶装置に書き込むＬＲＵ方式（(Least Recently Used : 未使用時間が最も長いページをページアウトするページング方式)）が知られている。このＬＲＵ方式では、最後に読み書きされてからの経過時間が最も長いページを再利用性が低いと判定し、外部記憶装置に書き込んでいる。
【特許文献１】特開２００４−７８７４６号公報
【特許文献２】特開平５−２２５０７４号
【特許文献３】特開２０００−２６７９３６号
【非特許文献１】Cristos A.Polyzois,Hector Garcia-Molina 著、「Evaluation of remote backup algorithms for transaction processing systems」、ACM transactions on Database Systems 刊、Vol.19, No.3,１９９４年９月発行、第４２３頁−第４４９頁
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、上記従来例では、平常時から現用システムと待機システムのＤＢを稼動させる必要があり、災害時に業務を継続するためには、現用システムと同等の計算機及び外部記憶装置を待機システムで稼動しておく必要があるが、実際に、広域災害が生じる可能性は、全体の停止理由の数％にすぎないため、平常時から待機システムを現用システムと同等の構成にすることはバックアップシステムの導入コスト及び運用コストが高くなるという問題がある。
【００１６】
特に、上述のようなログ転送によるバックアップシステムでは、待機システムでデータを生成する際に、上記のようなＬＲＵ方式などでＤＢキャッシュを制御しても外部記憶装置に対するＩ／Ｏ回数の低減が難しいという問題があり、性能の高い外部記憶装置が必要になり、導入コストや運用コストを低減できなかった。
【００１７】
そこで本発明は、上記問題点に鑑みてなされたもので、ログ転送によりデータのバックアップを行う待機システムの外部記憶装置に対するＩ／Ｏ回数をさらに低減して、バックアップシステムの導入コスト及び平常時の運用コストを低減可能とすることを目的とする。
【課題を解決するための手段】
【００１８】
本発明は、データの更新差分であるログをバックアップシステムが受信し、前記ログをストレージ装置に格納されたバックアップデータに適用して更新するバックアップ方法であって、前記受信したログを読み込んで、前記ログが更新対象とする前記バックアップデータのデータ格納領域（ページ）を特定し、前記特定したデータ格納領域の再利用性の高低を判定し、再利用性が低いと判定されたデータ格納領域に対応するログを、メモリ上に予め設定されたログ格納領域に格納し、再利用性が高いと判定されたデータ格納領域に対応するログを、メモリ上に設定されたキャッシュ領域で前記特定されたデータ格納領域に適用し、当該データ格納領域を更新する。
【発明の効果】
【００１９】
したがって、本発明によれば、読み込んだログに対応するデータ格納領域（ページ）の再利用性を判定し、再利用性の低いものを一時的にログ格納領域に蓄積しておき、再利用性の高いもののみをキャッシュに読み込んでログ適用を行う。このため、キャッシュ領域は、再利用性の高いページのみが蓄積され、ストレージ装置のＩ／Ｏ回数を大幅に低減することが可能となって、性能の低いストレージ装置を採用することが可能となり、バックアップシステムの導入コスト及び平常時の運用コストを低減することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の一実施形態を添付図面に基づいて説明する。
【００２１】
図１は、本発明で用いられる典型的なバックアップシステムのブロック図を示し、２つのサイト（正副）間でデータのバックアップを行う一例を示す。
【００２２】
図１は、正サイト（現用システム）１の正データベース１０７の更新差分を示すログを副サイト（待機システム）２へ送信し、副サイト２で正データベースのバックアップデータ（ＤＢ１１７）を生成するディザスタリカバリを行うバックアップシステムを構成する。
【００２３】
正サイト（現用システム）１は正サーバ１００と正ストレージ装置１０３（正外部記憶装置）から構成される。正サーバ１００では、正ＤＢＭＳ（DataBase Management System）１０１が稼動しており、この正ＤＢＭＳ１０１（第１のＤＢＭＳ）がユーザ端末１６０等から業務を受け付け、正データベース（以下、ＤＢ）１０７（第１のデータベース）を提供する。なお、正サーバ１００は図示しないＣＰＵやメモリ及び正ストレージ装置１０３とのインターフェースを備える。
【００２４】
また、正サーバ１００（第１のサーバ）は、ネットワーク１２０に接続されてユーザ端末１６０や副サイトの副サーバ１１０（第２のサーバ、バックアップ計算機）と通信する。
【００２５】
正ＤＢＭＳ１０１は、正サーバ１００に接続された正ストレージ装置１０３に格納される正ＤＢ１０７を管理し、ユーザ端末１６０等に業務を提供する。
【００２６】
正ＤＢＭＳ１０１には、正ＤＢ１０７のレコードを更新し、正ストレージ装置１０３に格納するデータ更新部１０４と、正ＤＢ１０７のレコードを読み込むデータ参照部１０８と、ユーザ端末１６０等から業務を受け付けてデータ更新部１０４またはデータ参照部１０８にデータの更新または参照を要求するトランザクション受付部１０２と、更新されたデータの更新差分についてログを生成し、正ストレージ装置１０３のログ１０６を更新するログ生成部１０９とを含んでいる。
【００２７】
正ＤＢ１０７は正ストレージ装置１０３に格納されるが、更新や参照がある度に正ストレージ装置１０３に直接アクセスすると性能が劣化するため、通常は正サーバ１００のメモリ上に設けたバッファ（図示省略）で更新処理や参照処理を行う。正ＤＢＭＳ１０１は、正ＤＢ１０７のトランザクションがコミット（完了）された場合、あるいは、メモリ上のバッファがあふれた場合など、予め設定したタイミングで正ＤＢ１０７の更新を正ストレージ装置１０３に反映（書き込み）する。また、正ＤＢＭＳ１０１は、正ＤＢ１０７の更新時には更新したレコードの更新差分を生成し、正ストレージ装置１０３のログ１０６に格納する。
【００２８】
正ストレージ装置１０３は、ハードディスク装置またはディスクアレイなどで構成され、正ＤＢ１０７とログ１０６を格納する。そして、正ストレージ装置１０３には、正サーバ１００からの要求に応じて正ＤＢ１０７やログ１０６への読み書きを制御する制御部１０５を有する。また、制御部１０５は、ＳＡＮ（Storage Area Network）１３０等のストレージ装置用のネットワークに接続され、副サイト２の副ストレージ装置１１３（副外部記憶装置）と通信可能となっている。そして、正ストレージ装置１０３の制御部１５０には、ログ１０６が更新されると副サイト２の副ストレージ装置１１３へ更新されたログ１０６を送信（リモートコピー）するデータ更新記録送信部１５０を有する。なお、副サイト２の副ストレージ装置１１３へのログ１０６の送信は、同期リモートコピーの他に非同期リモートコピーで行うことができる。また、正ストレージ装置１０３と正サーバ１００の接続は、ＳＡＮ等のネットワークやＩ／Ｏなどにより接続される。
【００２９】
副サイト２は、副ＤＢＭＳ１１１（第２のＤＢＭＳ）が稼動する副サーバ１１０と、正サイト１の正ストレージ装置１０３から送られてきたログと正ＤＢ１０７の複製である副ＤＢ１１７（第２のデータベース）を格納する副ストレージ装置１１３と、正サイト１からのログ１０６に基づいて副ＤＢ１１７を生成・更新する副ＤＢＭＳ１１１から構成される。
【００３０】
副ＤＢＭＳ１１１は、副サーバ１１０に接続された副ストレージ装置１１３に格納される副ＤＢ１１７を正ストレージ装置１０３から送られてきたログ１１６に基づいて更新する。そして、正サイト１に障害が発生したときには、副ＤＢＭＳ１１１がユーザ端末１５０等に業務を提供する。このため、副ＤＢＭＳ１１１は、図示はしないが正ＤＢＭＳ１０１と同様に、トランザクション受付部、データ更新部、データ参照部を有している。
【００３１】
副ＤＢＭＳ１１１は、副ストレージ装置１１３に格納されたログ１１６を適用して副ＤＢ１１７のレコードを更新し、副ストレージ装置１１３に格納するログ適用制御部１４０と、ログ１１６を読み込むログ参照部１４１と、副サーバ１１０のメモリ１１９に設定した所定の容量のキャッシュ領域１４３と、同じくメモリ１１９に設定したログ格納領域１４２とを備えている。
【００３２】
ここで、副サーバ１１０のメモリ１１９上に設定されたキャッシュ領域（ＤＢキャッシュ）１４３は、副ＤＢＭＳ１１１がログ１１６を副ＤＢ１１７に適用する際に、副ＤＢ１１７のデータをページ（データ格納領域）単位で一時的に保持するものである。なお、ＤＢ１１７のページは、正ＤＢＭＳ１０１で設定されたものであり、後述するようにＤＢＭＳ１０１が管理するデータ（ＤＢ１０７及びＤＢ１１７）の管理単位の一つがページである。
【００３３】
また、副サーバ１１０のメモリ１１９上に設定されたログ格納領域１４２は、副ＤＢＭＳ１１１がログ１１６を副ＤＢ１１７に適用し、バックアップされた副ＤＢ１１７を正ＤＢ１０７と一致させる際に、ログ１１６のうち再利用性の低いデータに対応するログのみをエントリ単位で一時的に保持するものである。
【００３４】
副ストレージ装置１１３は、ハードディスク装置またはディスクアレイなどで構成され、副ＤＢ１１７とログ１１６を格納する。そして、副ストレージ装置１１３には、副サーバ１１０からの要求に応じて副ＤＢ１１７やログ１１６への読み書きを制御する制御部１１３を有する。また、制御部１１３は、ＳＡＮ（Storage Area Network）１３０等のストレージ装置用のネットワークに接続され、正サイト１の正ストレージ装置１０３と通信可能となっている。そして、副ストレージ装置１１３の制御部１５１は、正ストレージ装置１０３のデータ更新記録受信部１５０から送られたログ１０６を受信し、副ストレージ装置１１３のログ１１６を更新するデータ更新記録受信部１５１を備える。また、副ストレージ装置１１３と副サーバ１１０の接続は、ＳＡＮ等のネットワークやＩ／Ｏなどにより接続される。
【００３５】
副ＤＢ１１７は副ストレージ装置１１３に格納されるが、更新がある度に副サーバ１１０が副ストレージ装置１１３に直接アクセスすると性能が劣化するため、副ＤＢＭＳ１１１は、副サーバ１１０のメモリ１１９上に設けたキャッシュ領域１４３上で副ＤＢ１１７の更新処理を行う。
【００３６】
副ＤＢＭＳ１１１は、ログ１１６が更新されたときや副ＤＢ１１７のリカバリ時等、所定のタイミングでログ１１６を適用して副ＤＢ１１７を更新する。
【００３７】
また、副ＤＢＭＳ１１１のログ適用制御部１４０は、ログ１１６の適用時に用いるパラメータ（しきい値など）をユーザ端末１６０等から変更可能とするため、ネットワーク１２０からパラメータの変更を受け付けるパラメータ受付部１４５を備えている。なお、ログ適用時のパラメータとしては、後述する一定値Ａ（第１の値）やログ格納領域１４２の容量などであり、これらのパラメータをユーザ端末１６０等からパラメータ受付部１４５を介して変更することが可能となっている。
【００３８】
＜ログ適用制御部の概要＞
次に、本発明のログ適用制御部１４０の動作の概要について、図２を参照しながら以下に説明する。
【００３９】
ログ適用制御部１４０の基本的な動作は、図２において、ログ参照部１４１が副ストレージ装置１１３からシーケンシャルにログ１１６からログデータ１１６１を読み込んで、読み込んだログデータ１１６１が指し示すページ１１７１の再利用性が高いか低いかを判定する。なお、再利用性とは、ログ適用の際に繰り返してアクセスする頻度を示し、同一のページ１１７１を指し示すログデータ１１６１の容量または数などで決定する。
【００４０】
そして、再利用性が高いと判定された場合には、ログデータ１１６１が指し示すデータを含むページ１１７１を副ＤＢ１１７からキャッシュ領域１４３に読み込んで、ログデータ１１６１を適用して副ＤＢ１１７を更新し、正ＤＢ１０７と内容を一致させる。
【００４１】
一方、再利用性が低いと判定された場合は、ログデータ１１６１をキャッシュ領域１４３とは異なるログ格納領域１４２に格納しておく。そして、ログ格納領域１４２の空き領域がなくなるまでログデータ１１６１を読み込むと、キャッシュ領域１４３の空き領域に各ログデータ１１６１が示すページ１１７１を順次副ＤＢ１１７から読み込んでログデータ１１６１を適用し、副ＤＢ１１７を更新する。なお、キャッシュ領域１４３に空きがなければ、前記従来例に示したＬＲＵ方式にて未使用時間が最も長いページ１１７１をページアウトし、空き領域を確保する。このようにして、ログ格納領域１４２の空き領域がなくなるまでログデータ１１６１を読込んだ場合には、ログ格納領域１４２内の全てのログデータ１１６１を副ＤＢ１１７に適用する。そして、ログ格納領域１４２内の全てのログデータ１１６１を副ＤＢ１１７に適用した後に、ログ格納領域１４２の全てのログデータ１１６１を削除し、新たなログデータ１１６１をログ１１６からログ格納領域１４２に読み込むことを可能にするのである。
【００４２】
すなわち、再利用性の高いページを示すログデータ１１６１は、すぐにログデータ１１６１を適用して副ＤＢ１１７を更新し、ログ格納領域１４２から削除される。これに対して、再利用性の低いページ１１７１を示すログデータ１１６１は、ログ格納領域１４２に格納されていく。そして、ログ格納領域１４２に空き領域がなくなってから、ログ格納領域１４２内の全てのログデータ１１６１を副ＤＢ１１７に適用して更新する。そして、更新が完了したログデータ１１６１はログ格納領域１４２から削除される。
【００４３】
つまり、ログ格納領域１４２には再利用性の低いページ１１７１に対応するログデータ１１６１のみが格納され、キャッシュ領域１４３には再利用性の高いページ１１７１のみが読み込まれてログの適用が行われる。そして、ログ格納領域１４２に空き領域が無くなった時点から、キャッシュ領域１４３の空き領域にて、再利用性の低いページ１１７１に対応するログデータ１１６１を副ＤＢ１１７に適用していく。
【００４４】
したがって、キャッシュ領域１４３には常に再利用性の高いページ１１７１が保持されることになり、この結果、副ＤＢ１１７を更新する際に副サーバ１１０が副ストレージ装置１１３をアクセスする頻度を抑制することが可能となる。このため、副ストレージ装置１１３を性能が低い機種で構成することが可能となり、バックアップシステムとなる副サイト２の導入コスト及び平常時の運用コストを低減できるのである。
【００４５】
＜ログ適用制御部の詳細＞
＜ログとページの関係＞
ログ適用制御部１４０の詳細を以下に説明する。まず、本実施形態の正ＤＢＭＳ１０１のログ１０６及びバックアップされたログ１１６の構成と、正ＤＢ１０７及び副ＤＢ１１７のページの関係について説明する。
【００４６】
まず、ログ１０６、１１６の構成を図３に示す。ログ１０６、１１６は一つのエントリ（＝ログデータ１１６１とする）について、ログの識別子（例えば、ＬＳＮ＝Log Sequence Number）を示すログ番号２０１と、正ＤＢＭＳ１０１、副ＤＢＭＳ１１１が正ＤＢ１０７、副ＤＢ１１７を管理する単位の一つであるページ番号２０２と、ページ番号２０２の下位の管理単位であるページ内位置情報２０３と、ページ内位置情報２０３が指し示すデータに対して行われた更新差分を示す更新情報２０４と、から構成される。上記ログ番号２０１は、正ＤＢＭＳ１０１が付与したものである。
【００４７】
正ＤＢＭＳ１０１は、ページ内位置情報２０３とページ番号２０２で正ＤＢ１０７を管理し、更新内容を更新情報２０４として正ストレージ装置１０３のログ１０６に書き込む。正ストレージ装置１０３のログ１０６はリモートコピーにより副ストレージ装置１１３に転送され、ログ１１６として格納され、正副ストレージ装置のログ１０６、１１６は同期する。
【００４８】
副サーバ１１０のログ適用制御部１４０は、バックアップされたログ１１６からログデータ１１６１を読み込むことで、副ＤＢ１１７のデータのうち、ページ番号２０２とページ内位置情報２０３から、ログ１１６を適用すべき該当データを特定する。
【００４９】
正ＤＢ１０７と副ＤＢ１１７のページ内の構成は、図４に示すように、ページ内位置情報２１０と、実際のデータを格納するデータ２１１とから構成される。ひとつのページは、例えば数キロバイトで構成され、ページ内位置情報２１０毎にデータ２１１が格納されている。
【００５０】
ログ適用制御部１４０は、ログ１１６からページ番号２０２とページ内位置情報２０３を取得すると、該当するページを副ＤＢ１１７からキャッシュ領域１４３にページ単位で読み込み、ログ１１６の更新情報２０４を適用し、副ＤＢ１１７の内容を更新し正ＤＢ１０７に同期させる。なお、キャッシュ領域１４３で更新したページ１１７１は、所定のタイミングで副ストレージ装置１１３に書き込まれる。なお、更新されたページの書き込みタイミングは、ライトスルー、ライトバックなど所望の手法で行うことができる。
【００５１】
＜処理の詳細＞
以下、ログ適用制御部１４０及びログ参照部１４１で行われるログ適用の処理の一例について以下に説明する。
【００５２】
図５は、処理の全体的なフローチャートを示し、ログを適用する所定のタイミングとなる度に実行されるものである。
【００５３】
図５において、Ｓ１、Ｓ６はログ参照部１４１が行う処理であり、Ｓ２〜Ｓ５はログ適用制御部１４０が行う処理である。
【００５４】
まず、ログ参照部１４１は、前回読み込んだログ番号２０１の次のログデータ１１６１をログ格納領域１４２に読み込んでから、Ｓ２で当該ログデータ１１６１の再利用性が高いか低いかを判定する。ログデータ１１６１が指し示すページ１１７１の再利用性が高い場合には、Ｓ４に進んで当該ログデータ１１６１に基づいてキャッシュ領域１４３で該当ページ１１７１を更新する。
【００５５】
一方、ログデータ１１６１が指し示すページ１１７１の再利用性が低い場合には、Ｓ３に進んでログ格納領域１４２に空き領域が無くなるまでログデータ１１６１を格納する。
【００５６】
Ｓ３またはＳ４の処理の後には、ログ適用処理の終了を判定するためＳ５、Ｓ６でログ格納領域１４２にログデータ１１６１がない状態で、かつ、ログ１１６が終端に達しているかを判定し、Ｓ５、Ｓ６の一方がＮＯであればＳ１に戻って次のログデータ１１６１を読み込み、共にＹＥＳの場合には今回のログ適用処理を終了する。
【００５７】
図６は、上記Ｓ１で行われるログ読込処理のサブルーチンを示す。Ｓ１０では、ログ参照部１４１が、副ストレージ装置１１３のログ１１６から１エントリのログデータ１１６１を読み込む。Ｓ１１では、このログデータ１１６１のデータ領域（図３のページ番号２０２）を特定し、サブルーチンを終了して図５の処理に戻る。
【００５８】
図７は、上記図５のＳ２で行われる再利用性の判定処理を示す。まず、Ｓ２０では、上記図６で特定したページ番号２０２に対応するページ１１７１が、キャッシュ領域１４３に存在するかを判定する。このページ番号２０２に対応するページ１１７１がキャッシュ領域１４３に存在する場合は、Ｓ２４に進み、このページ１１７１の再利用性が高いと判定する。一方、このページ番号２０２に対応するページ１１７１がキャッシュ領域１４３に無い場合にはＳ２１に進む。
【００５９】
Ｓ２１では、ログ格納領域１４２に格納されているログデータ１１６１について、今回読み込んだページ番号２０２と同一のページ番号を有する全てのログデータ１１６１と今回読み込んだログデータ１１６１の合計容量を演算する。
【００６０】
Ｓ２２では、Ｓ２１で求めた合計容量と、予め設定した一定値Ａを比較して、合計容量の方が大であればＳ２４に進んで再利用性が高いと判定し、合計容量が一定値Ａ以下であればＳ２３に進んで再利用性が低いと判定し、サブルーチンを終了して図５の処理に戻る。なお、一定値Ａはユーザ端末１６０などから管理者やユーザが設定するもので、例えば、ページ１１７１の容量に等しい値に設定される。
【００６１】
すなわち、ページ番号２０２に対応するページ１１７１がキャッシュ領域１４３に存在する場合には、当該ページ番号２０２は再利用性が高いデータ領域であると判定する。また、現在キャッシュ領域１４３に該当するページ１１７１がなくても、ログ格納領域１４２で同一のページ番号２０２を有するログデータ１１６１の合計容量が一定値Ａよりも大であれば、当該ページ番号２０２の再利用性が高いと判定する。
【００６２】
一方、読み込んだログデータ１１６１のページ番号２０２に対応するページ１１７１がキャッシュ領域１４３に無い場合や、同一のページ番号２０２を有するログデータ１１６１の合計容量が一定値Ａ以下の場合には、再利用性が低いと判定する。
【００６３】
そして、図５のＳ２では、上記Ｓ２３またはＳ２４の判定結果に応じて、再利用性が低い場合にはＳ３のログ格納処理に進み、再利用性が高い場合にはＳ４のキャッシュ領域更新処理に進む。
【００６４】
次に、図８は、上記図５のＳ３で行われるログ格納処理のサブルーチンを示す。まず、Ｓ３０では、ログ格納領域１４２に今回読み込んだログデータ１１６１を格納する空き領域があるか否かを判定し、空き領域があればＳ３７に進んで今回読み込んだログデータ１１６１をログ格納領域１４２に格納してサブルーチンを終了する。
【００６５】
一方、ログ格納領域１４２に空き領域が無い場合にはＳ３１に進み、キャッシュ領域１４３にページ１１７１（データ格納領域）を読み込む空き領域があるかを判定する。キャッシュ領域１４３に空き領域があればそのままＳ３３ヘ進み、キャッシュ領域１４３に空き領域が無い場合には、Ｓ３２に進んで、キャッシュ領域１４３からＬＲＵ方式で最も長い時間アクセスされていないページ１１７１を副ストレージ装置１１３の副ＤＢ１１７に書き戻し、キャッシュ領域１４３に空き領域を確保してから、Ｓ３３へ進む。
【００６６】
Ｓ３３では、キャッシュ領域１４３の空き領域にログデータ１１６１のページ番号２０２に対応するデータ領域（ページ１１７１）を副ＤＢ１１７から読み込む。
【００６７】
そしてＳ３４では、Ｓ３３で読み込んだページ１１７１に対応するログ格納領域１４２内の全てのログデータ１１６１を、順次適用してキャッシュ領域１４３にある該当ページ１１７１をページ毎にまとめて更新し、更新したページ１１７１を副ストレージ装置１１３の副ＤＢ１１７に書き込む。
【００６８】
そして、Ｓ３５では、上記ログ格納領域１４２内の全てのログデータ１１６１についてログ適用が完了したか否かを判定し、適用していないログデータ１１６１があればＳ３３に戻って、同一のページ１１７１に対するログデータ１１６１が複数あれば、キャッシュ領域１４３上で順次ログデータ１１６１を適用し、更新する。
【００６９】
ログ格納領域１４２内の全てのログデータ１１６１について該当ページ１１７１の更新が完了すると、Ｓ３６でログ格納領域１４２内の全てのログデータ１１６１を削除してサブルーチンを終了する。
【００７０】
つまり、このログ格納処理のサブルーチンでは、ログ格納領域１４２の空き領域が無くなるまでログデータ１１６１を読み込んでおき、空き領域が無くなった時点でログ格納領域１４２内のログデータ１１６１を副ＤＢ１１７に適用して更新する。
【００７１】
このログ適用時には、キャッシュ領域１４３の空き領域（キャッシュ領域１４３に空きがなければＬＲＵ方式で確保）を用いて、例えば、１ページ分の空き領域を確保し、同一ページに対するログ格納領域１４２のログデータ１１６１を順次適用する。このログ適用の際には、副ストレージ装置１１３へのＩ／Ｏ回数を低減するため、同一のページ番号２０２のログ適用について、まとめてログ適用を実施する。例えば、図３のようなログデータ１１６１がログ格納領域１４２に格納されていた場合、最初に読み込んだログ番号２０１＝０のログデータ１１６１のページ番号２０２＝３について、対応するページ１１７１をキャッシュ領域１４３に読み込む。そして、ログ番号２０１＝０のログデータ１１６１について対象となるページ内位置情報＝１と更新情報２０４（”ＢＢＢ”）でキャッシュ領域１４３の該当ページ（ページ番号＝３）を更新する。これに続いて、同一のページ番号＝３のログデータ１１６１（ログ番号２０１＝２）を読み込んで、キャッシュ領域１４３にある該当ページ１１７１にログを適用して更新する。
【００７２】
同一のページ番号＝３についてログ適用が終わると、キャッシュ領域１４３にある該当ページ１１７１を副ストレージ装置１１３に書き戻し、次のログデータ１１６１（ログ番号＝１、ページ番号＝２）について同様に、ページ毎にまとめてログ適用を行う。
【００７３】
以上の操作により、１ページ分だけキャッシュ領域１４３に空き領域があれば、最小のＩ／Ｏ回数で再利用性の低いログデータ１１６１についてログ適用を行うことができるのである。
【００７４】
次に、図９は、上記図５のＳ４で行われるキャッシュ領域更新処理のサブルーチンを示す。まず、Ｓ４０では、キャッシュ領域１４３に今回読み込んだログデータ１１６１のページ番号２０２に対応するページ１１７１があるか否かを判定し、ページ番号２０２に対応するページ１１７１が既にキャッシュ領域１４３にあれば、Ｓ４６に進んでログデータ１１６１を当該ページ１１７１に適用し、キャッシュ領域１４３を更新する。
【００７５】
一方、読み込んだログデータ１１６１のページ番号２０２に対応するページ１１７１がキャッシュ領域１４３に無い場合には、Ｓ４１に進んで、キャッシュ領域１４３にデータ領域（ページ１１７１）を読み込む空き容量があるか否かを判定する。
【００７６】
キャッシュ領域１４３に空き領域があれば、Ｓ４３に進み、空き領域がなければＳ４２へ進んで、ＬＲＵ方式により１ページ分を副ストレージ装置１１３に書き込んで、空き領域を確保する。
【００７７】
Ｓ４３では、更新対象のページ１１７１をキャッシュ領域１４３に読み込む。そして、Ｓ４４では、上記図８のＳ３４、Ｓ３５と同様に、今回読み込んだログデータ１１６１と同一のページ番号２０２を有する他のログデータ１１６１があれば、ログ格納領域１４２内で該当する全ログデータ１１６１を順次ページ１１７１に適用して更新する。
【００７８】
そして、ログ格納領域１４２内の同一のページ番号２０２のログデータ１１６１を適用した後には、これら適用が完了したログデータ１１６１をログ格納領域１４２から削除してサブルーチンを終了する。
【００７９】
すなわち、今回読み込んだログデータ１１６１のページ番号２０２に対応するページ１１７１がキャッシュ領域１４３にあれば、このログデータ１１６１を適用してページ１１７１を更新する。
【００８０】
一方、キャッシュ領域１４３にログデータ１１６１のページ番号２０２に該当するページ１１７１が無い場合には、副ストレージ装置１１３の副ＤＢ１１７から該当ページ１１７１をキャッシュ領域１４３の空き領域に読み込む。
【００８１】
そして、今回読み込んだログデータ１１６１と同一のページ番号２０２を持つログ格納領域１４２内のログデータ１１６１を検索し、ログ格納領域１４２内に同一のページ番号２０２を持つログデータ１１６１があれば、これらのログデータ１１６１と、今回読み込んだログデータ１１６１をキャッシュ領域１４３にある該当ページ１１７１に適用し、更新する。これにより、副ストレージ装置１１３の副ＤＢ１１７からキャッシュ領域１４３に読み込んだページ１１７１に対して、１回の読み込みで複数のログデータ１１６１を適用することができるので、副サーバ１１０から副ストレージ装置１１３に対するＩ／Ｏ回数を低減できるのである。
【００８２】
以上のように、本発明では主サイト１からバックアップしたログ１１６を副ＤＢ１１７へ適用する際に、適用するログデータ１１６１を副ストレージ装置１１３のログ１１６からシーケンシャルに読み込む。そして、各ログデータ１１６１のページ番号２０２から副サーバ１１０のキャッシュ領域１４３に読み込むページ１１７１の再利用性を判定し、再利用性の高いページ１１７１についてはキャッシュ領域１４３に読み込んでログデータ１１６１を適用する。
【００８３】
また、再利用性が高いと判定されたページ１１７１であっても、キャッシュ領域１４３に無い場合には、ＬＲＵ方式などで空き領域を作成し、この空き領域にページ１１７１をログデータ１１６１を適用する。このログ適用の際には、今回読み込んだログデータ１１６１と同一のページ番号２０２をもつログ格納領域１４２のログデータ１１６１についてもログ適用を行うことで、副ストレージ装置１１３からの一回の読み込み操作で、複数のログデータ１１６１をまとめて適用でき、副ストレージ装置１１３にてランダムアクセスとなるページ１１７１の読み込み及び書き込み回数を大幅に低減できるのである。
【００８４】
一方、再利用性が低いと判定された場合には、ログ格納領域１４２にログデータ１１６１を蓄積し、ログ格納領域１４２の空き領域がなくなった時点で、再利用性の低いページ１１７１のログ適用を開始する。
【００８５】
再利用性の低いページ１１７１のログ適用については、キャッシュ領域１４３の所定容量（例えば、１ページ分）をＬＲＵ方式などで空き領域とし、この空き領域に該当ページ１１７１を読み込み、今回読み込んだログデータ１１６１と、ログ格納領域１４２内で同一のページ番号２０２を持つログデータ１１６１を、キャッシュ領域１４３に読み込んだページ１１７１にまとめて適用して更新し、副ストレージ装置１１３の副ＤＢ１１７に書き戻す。これにより、副ストレージ装置１１３から１ページの読み書きで、複数のログデータ１１６１を適用することが可能となり、副ストレージ装置１１３のＩ／Ｏ回数を大幅に低減でき、さらに、有限のキャッシュ領域１４３を効率よく利用することができるのである。
【００８６】
そして、副サーバ１１０のメモリ１１９にキャッシュ領域１４３に加えてログ格納領域１４２を設け、再利用性の低いページ番号２０２を持つログデータ１１６１を、ログ格納領域１４２の空き領域がなくなるまで蓄積することで、同一のページ番号２０２を更新するログデータ１１６１の比率を高くすることができ、同一のページ番号２０２を持つログデータ１１６１をまとめて適用することが可能となるのである。
【００８７】
ここで、ログ格納領域１４２を持たない場合を、図１１に示す。図１１の場合のログ適用では、副ストレージ装置１１３からログ１１６をシーケンシャルに読み込んで、ログデータ１１６１を一個ずつキャッシュ領域１４３のページ１１７１に適用して更新する。このとき、キャッシュ領域１４３に該当するページ１１７１がなければ副ストレージ装置１１３からランダムアクセスにより読み込むことになる。そして、次のログデータ１１６１、さらに次のログデータ１１６１が示すページ番号２０２が異なれば、ログデータ１１６１毎に副ストレージ装置１１３にランダムアクセスが発生する。さらに、キャッシュ領域１４３にＬＲＵ方式を用いても、ログデータ１１６１の並び方によっては、再利用性の高いページ１１７１が副ストレージ装置１１３の副ＤＢ１１７へ書き戻される場合が生じてしまう。このため、アクセス性能及び読み出し速度が高い副ストレージ装置１１３が必要となってしまう。
【００８８】
これに対して、本発明では、図２で示したように、シーケンシャルに読み込んだログデータ１１６１の再利用性を判定し、再利用性の低いものを一時的にログ格納領域１４２に蓄積しておき、再利用性の高いもののみをキャッシュ領域１４３に読み込んでログ適用を行う。このため、キャッシュ領域１４３は、再利用性の高いページのみが蓄積され、副ストレージ装置１１３のＩ／Ｏ回数は、図１１の例に比して大幅に低減される。
【００８９】
そして、ログ格納領域１４２に空き領域がなくなると、キャッシュ領域１４３の所定領域（例えば、１ページ分）のみをＬＲＵ方式などで空き領域とし、この空き領域でログ格納領域１４２に蓄積された再利用性の低いページ１１７１に、同一ページ番号２０２のログデータ１１６１をまとめて適用し、ストレージ装置１１３に書き戻す。この処理をログ格納領域１４２の全てのログデータ１１６１について行う。その後、ログ格納領域１４２をクリアし、新たなログデータ１１６１（再利用性＝低）を蓄積していく。これにより、再利用性の低いページ１１７１は、キャッシュ領域１４３の所定領域のみを利用するだけであり、その他の領域は依然として再利用性の高いページ１１７１が保持されるので、副ストレージ装置１１３のＩ／Ｏ回数は、上記図１１の例に比してさらに大幅に低減できる。また、ログ格納領域１４２に再利用性の低いページ１１７１を蓄積することにより、同一のページ番号２０２を有するログデータ１１６１の比率（ログ格納領域１４２の総データ数と同一のページ番号２０２のデータ数の比率）を高めることができ、一回のページ１１７１の読み込みで複数のログデータ１１６１を適用することができるので、上記図１１の例に比してさらに大幅に副ストレージ装置１１３のＩ／Ｏ回数を低減できる。
【００９０】
このように、本発明によれば、副ストレージ装置１１３のＩ／Ｏ回数、特に、ランダムアクセスを大幅に低減することで、副ストレージ装置１１３を性能の低い装置で構成することが可能となり、バックアップシステムである副サイト２の導入コスト及び平常時の運用コストを低減することができるのである。
【００９１】
図１０は、上記図７で行われる再利用性判定処理の他の例を示し、同一のページ番号２０２をログデータ１１６１の容量に代わって、同一のページ番号２０２をログデータ１１６１の数で再利用性の高低を判定するようにしたもので、その他の構成は前記図７と同様である。
【００９２】
Ｓ２０では、上記図７と同様に今回読み込んだログデータ１１６１で特定したページ番号２０２に対応するページ１１７１が、キャッシュ領域１４３に存在するかを判定する。このページ番号２０２に対応するページ１１７１がキャッシュ領域１４３に存在する場合は、Ｓ２４に進み、図７と同様に、このページ１１７１の再利用性が高いと判定する。一方、このページ番号２０２に対応するページ１１７１がキャッシュ領域１４３に無い場合にはＳ２１Ａに進む。
【００９３】
Ｓ２１Ａでは、ログ格納領域１４２に格納されているログデータ１１６１について、今回読み込んだページ番号２０２と同一のページ番号を有する全てのログデータ１１６１と今回読み込んだログデータ１１６１の数の合計を演算する。
【００９４】
Ｓ２２Ａでは、Ｓ２１Ａで求めた合計と、予め設定した一定値Ｂ（第２の値）とを比較して、合計の方が大であればＳ２４に進んで再利用性が高いと判定し、合計容量が一定値Ｂ以下であればＳ２３に進んで再利用性が低いと判定し、サブルーチンを終了して図５の処理に戻る。この場合も、上記図７と同様に的確に再利用性の判定を行うことができる。
【００９５】
なお、副ストレージ装置１１３のＩ／Ｏ回数低減は、ページ１１７１の１ページ当たりの容量や正ＤＢ１０７の種類や提供する業務などに応じて、一定値Ａ、Ｂやログ格納領域１４２の容量を適宜変更することにより調整することができる。なお、一定値Ａ、Ｂやログ格納領域１４２の容量は、ユーザ端末１６０から副サーバ１１０のパラメータ受付部１４５を介して変更することができる。
【００９６】
パラメータ受付部１４５で行われる処理の一例を、図１２のフローチャートに示す。この処理は、ネットワーク１２０を介してユーザ端末１６０から指令を受信したときに実行されるものである。
【００９７】
Ｓ５０では、受信した内容が一定値Ａであるか否かを判定し、一定値ＡであればＳ５１に進んで一定値Ａを更新する。一方、受信した内容が一定値Ａでない場合には、Ｓ５２へ進み受信した内容がログ格納領域１４２の容量であるかを判定する。ログ格納領域の容量であれば、Ｓ５３に進みログ格納領域１４２の容量を変更する。なお、ログ格納領域１４２の容量変更は、ログ適用部１４４がログ格納領域１４２に対して操作を行っていないときに実行する。
【００９８】
なお、上記実施形態においては、ディザスタリカバリに本発明を適用した例を示したが、ログに基づいて副サイト２の副ＤＢ１１７を更新するバックアップシステム（計算機システム）であれば、本発明を適用することができる。
【産業上の利用可能性】
【００９９】
以上のように、本発明によれば、副サイトの導入コスト及び運用コストを抑えて、金融業や大企業などに採用されるディザスタリカバリシステムに適用することができる。
【図面の簡単な説明】
【０１００】
【図１】本発明の一実施形態を示し、２つのサイトでディザスタリカバリを行う場合のシステム構成図。
【図２】ログ適用の処理を示す説明図。
【図３】ログデータの内容を示す説明図。
【図４】データベースのページの内容を示す説明図。
【図５】ログ適用制御部及びログ参照部で行われるログ適用処理の一例を示すフローチャート。
【図６】図５のＳ１で行われるログの読み込み処理の一例を示すフローチャート。
【図７】図５のＳ２で行われる再利用性の判定処理の一例を示すフローチャート。
【図８】図５のＳ３で行われるログ格納処理の一例を示すフローチャート。
【図９】図５のＳ４で行われるキャッシュ領域更新処理の一例を示すフローチャート。
【図１０】図５のＳ２で行われる再利用性の判定処理の他の例を示すフローチャート。
【図１１】ログ適用の処理を示す説明図で、ログ格納領域がない例を示す。
【図１２】パラメータ受付部で行われる処理の一例を示すフローチャート。
【符号の説明】
【０１０１】
１  主サイト
２  副サイト
１００  主サーバ
１０１  主ＤＢＭＳ
１０３  主ストレージ
１０６、１１６  ログ
１０９  ログ生成部
１１０  副サーバ
１１１  副ＤＢＭＳ
１１３  副ストレージ
１４０  ログ適用制御部
１４１  ログ参照部
１４２  ログ格納領域
１４３  キャッシュ領域
【図１】
2006277208.tif 000003
【図２】
2006277208.tif 000004
【図３】
2006277208.tif 000005
【図４】
2006277208.tif 000006
【図５】
2006277208.tif 000007
【図６】
2006277208.tif 000008
【図７】
2006277208.tif 000009
【図８】
2006277208.tif 000010
【図９】
2006277208.tif 000011
【図１０】
2006277208.tif 000012
【図１１】
2006277208.tif 000013
【図１２】
2006277208.tif 000014