[go: up one dir, main page]

JP4249719B2 - バックアップシステム、プログラム及びバックアップ方法 - Google Patents

バックアップシステム、プログラム及びバックアップ方法 Download PDF

Info

Publication number
JP4249719B2
JP4249719B2 JP2005094071A JP2005094071A JP4249719B2 JP 4249719 B2 JP4249719 B2 JP 4249719B2 JP 2005094071 A JP2005094071 A JP 2005094071A JP 2005094071 A JP2005094071 A JP 2005094071A JP 4249719 B2 JP4249719 B2 JP 4249719B2
Authority
JP
Japan
Prior art keywords
log
page
reusability
backup
updated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005094071A
Other languages
English (en)
Other versions
JP2006277208A (ja
Inventor
聡 渡辺
芳生 鈴木
真二 藤原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2005094071A priority Critical patent/JP4249719B2/ja
Priority to US11/132,175 priority patent/US7640276B2/en
Publication of JP2006277208A publication Critical patent/JP2006277208A/ja
Application granted granted Critical
Publication of JP4249719B2 publication Critical patent/JP4249719B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、データのバックアップシステムの改良に関し、特に、データベースに適したバックアップシステムに関する。
近年、二つの計算機システムを用いた、データベースのバックアップシステムが広く用いられている。データベースのバックアップとは、一方の計算機システムのデータと同じデータを作成し、他方の計算機システムに保存することである。バックアップ元の計算機システムを現用システム(または正サイト)、バックアップ先の計算機システムを待機システム(または副サイト)と呼ぶ。また、待機システムに保存するデータをバックアップデータと呼ぶ。
二重化システムによるデータベースバックアップの方式として、ログ転送方式が知られている(例えば、非特許文献1)。
ログ転送方式とは、現用システムのデータ更新記録を待機システムに転送し、待機システムでバックアップデータを作成する方式である。このログ転送方式では、バックアップ開始の段階で、現用システムのデータと待機システムのバックアップデータを同一にする。バックアップの開始後は、現用システムのデータ更新記録を待機システムに転送する。
待機システムでは、転送されたデータ更新記録をもとにバックアップデータを更新し、最新のバックアップデータを作成する。
一般に、計算機システムは外部記憶装置を含み、計算機システムのデータは外部記憶装置に格納される。外部記憶装置は計算機システムのデータを格納する装置であり、磁気記憶装置であるハードディスクやディスクアレイなどを指す。外部記憶装置には、二つの装置の間でデータを複写する複写機能(リモートコピー)を持つものが知られている(特許文献1)。このコピー機能はネットワークを介してデータを転送し、一方の外部記憶装置のデータを他方の外部記憶装置に複写する機能である。このコピー機能を用いると、複写元の外部記憶装置にデータが追加されると、複写先の外部記憶装置にも同一のデータが追加される。
ログ転送方式によるバックアップは、外部記憶装置の複写機能を用いて実施される。その仕組みは次のとおりである。バックアップを開始する際に、現用システムのデータと待機システムのバックアップデータを同一にする。データ更新記録に複写機能を使用し、現用システムの外部記憶装置に追加されたデータ更新記録を、待機システムの外部記憶装置に複写する。待機システムでは、複写されたデータ更新記録をもとに、最新のバックアップデータを作成する。
上記バックアップでは、待機システムのサーバのメモリ上にDBキャッシュを設定し、データのページ単位でデータの更新を行い、DBキャッシュを介して外部記憶装置にアクセスを行っている。このDBキャッシュは、外部記憶装置に対する書き込み命令の際には、以下のように使用される。
(i)更新対象のページがDBキャッシュに読み込まれていれば、このページを再利用する。DBキャッシュに読み込まれていなければ外部記憶装置から該当ページをDBキャッシュに読み込む。
(ii)該当ページを更新する。
(iii)更新したページをDBキャッシュに保持し、再利用を可能にする。
(iv)データのバックアップが終了した時点でDBキャッシュ上のページを外部記憶装置に書き込む。
以上により、DBキャッシュ上のページを再利用することで、外部記憶装置に対するI/O回数を低減する。このようなDBキャッシュに適用可能な技術としては、特許文献2、3等が知られている。
ここで、DBキャッシュはサーバのメモリ上に設定されるため有限の容量であり、ページを読み込む容量が不足すると、DBキャッシュのページを外部記憶装置に書き込む必要が生じる場合がある。しかし、DBキャッシュから外部記憶装置に書き込まれるページは、DBキャッシュで再利用できないことから、最も再利用性の低いページを選択して外部記憶装置に書き込むLRU方式((Least Recently Used : 未使用時間が最も長いページをページアウトするページング方式))が知られている。このLRU方式では、最後に読み書きされてからの経過時間が最も長いページを再利用性が低いと判定し、外部記憶装置に書き込んでいる。
特開2004−78746号公報 特開平5−225074号 特開2000−267936号 Cristos A.Polyzois,Hector Garcia-Molina 著、「Evaluation of remote backup algorithms for transaction processing systems」、ACM transactions on Database Systems 刊、Vol.19, No.3,1994年9月発行、第423頁−第449頁
しかしながら、上記従来例では、平常時から現用システムと待機システムのDBを稼動させる必要があり、災害時に業務を継続するためには、現用システムと同等の計算機及び外部記憶装置を待機システムで稼動しておく必要があるが、実際に、広域災害が生じる可能性は、全体の停止理由の数%にすぎないため、平常時から待機システムを現用システムと同等の構成にすることはバックアップシステムの導入コスト及び運用コストが高くなるという問題がある。
特に、上述のようなログ転送によるバックアップシステムでは、待機システムでデータを生成する際に、上記のようなLRU方式などでDBキャッシュを制御しても外部記憶装置に対するI/O回数の低減が難しいという問題があり、性能の高い外部記憶装置が必要になり、導入コストや運用コストを低減できなかった。
そこで本発明は、上記問題点に鑑みてなされたもので、ログ転送によりデータのバックアップを行う待機システムの外部記憶装置に対するI/O回数をさらに低減して、バックアップシステムの導入コスト及び平常時の運用コストを低減可能とすることを目的とする。
本発明は、データの更新差分であるログを受信するログ受信部と、前記ログ及びバックアップデータを格納するストレージ装置と、前記ログをバックアップデータに適用して更新するログ適用制御部と、を備えた計算機で前記ログをバックアップデータに適用して更新するバックアップ方法であって、前記計算機のログ受信部が受信したログを読み込んで、前記ログが更新対象とする前記バックアップデータの管理単位としてのページを特定するログ読み込みステップと、前記計算機のログ適用制御部、前記計算機のメモリに予め設定されたキャッシュ領域で前記ページ毎に前記バックアップデータを保持し、前記特定したページが、前記ログをバックアップデータに適用する際にアクセスされる頻度を再利用性とし、当該ページの再利用性の高低を判定する再利用性判定ステップと、前記特定したページの再利用性が低いと判定した場合には、前記計算機のログ適用制御部が、該ページに対応するログの適用を保留して、前記計算機のメモリに予め設定されたログ格納領域に格納し、その場合には後に前記ログ格納領域に空きがなくなった時点で前記計算機のログ適用制御部が前記キャッシュ領域に前記ログ格納領域のログが示すページを前記バックアップデータから読み込んで、前記キャッシュ領域のページに前記ログを適用して更新し、当該更新したページを前記ストレージ装置のバックアップデータに書き込むログ格納ステップと、前記特定したページの再利用性が高いと判定した場合には、前記計算機のログ適用制御部が、該ページに対応するログを、前記キャッシュ領域で前記特定されたページに適用し、前記キャッシュ領域の当該ページを更新するキャッシュ領域更新ステップと、を含み、前記再利用性判定ステップは、前記キャッシュ領域に前記ログが更新対象とするページが存在するときに再利用性が高いと判定するステップと、前記キャッシュ領域に前記ログが更新対象とするページが存在しないときには、当該ログが更新対象とするページと同一のページを更新対象とする前記ログ格納領域に格納されたログの容量と、当該ログの容量の合計値を演算するステップと、前記合計値が予め設定した第1の値よりも大きいときに再利用性が高いと判定し、前記合計値が前記第1の値以下のときに再利用性が低いと判定するステップと、を含む。
したがって、本発明によれば、読み込んだログに対応するデータ格納領域(ページ)の再利用性を判定し、再利用性の低いものを一時的にログ格納領域に蓄積しておき、再利用性の高いもののみをキャッシュに読み込んでログ適用を行う。このため、キャッシュ領域は、再利用性の高いページのみが蓄積され、ストレージ装置のI/O回数を大幅に低減することが可能となって、性能の低いストレージ装置を採用することが可能となり、バックアップシステムの導入コスト及び平常時の運用コストを低減することができる。
以下、本発明の一実施形態を添付図面に基づいて説明する。
図1は、本発明で用いられる典型的なバックアップシステムのブロック図を示し、2つのサイト(正副)間でデータのバックアップを行う一例を示す。
図1は、正サイト(現用システム)1の正データベース107の更新差分を示すログを副サイト(待機システム)2へ送信し、副サイト2で正データベースのバックアップデータ(DB117)を生成するディザスタリカバリを行うバックアップシステムを構成する。
正サイト(現用システム)1は正サーバ100と正ストレージ装置103(正外部記憶装置)から構成される。正サーバ100では、正DBMS(DataBase Management System)101が稼動しており、この正DBMS101(第1のDBMS)がユーザ端末160等から業務を受け付け、正データベース(以下、DB)107(第1のデータベース)を提供する。なお、正サーバ100は図示しないCPUやメモリ及び正ストレージ装置103とのインターフェースを備える。
また、正サーバ100(第1のサーバ)は、ネットワーク120に接続されてユーザ端末160や副サイトの副サーバ110(第2のサーバ、バックアップ計算機)と通信する。
正DBMS101は、正サーバ100に接続された正ストレージ装置103に格納される正DB107を管理し、ユーザ端末160等に業務を提供する。
正DBMS101には、正DB107のレコードを更新し、正ストレージ装置103に格納するデータ更新部104と、正DB107のレコードを読み込むデータ参照部108と、ユーザ端末160等から業務を受け付けてデータ更新部104またはデータ参照部108にデータの更新または参照を要求するトランザクション受付部102と、更新されたデータの更新差分についてログを生成し、正ストレージ装置103のログ106を更新するログ生成部109とを含んでいる。
正DB107は正ストレージ装置103に格納されるが、更新や参照がある度に正ストレージ装置103に直接アクセスすると性能が劣化するため、通常は正サーバ100のメモリ上に設けたバッファ(図示省略)で更新処理や参照処理を行う。正DBMS101は、正DB107のトランザクションがコミット(完了)された場合、あるいは、メモリ上のバッファがあふれた場合など、予め設定したタイミングで正DB107の更新を正ストレージ装置103に反映(書き込み)する。また、正DBMS101は、正DB107の更新時には更新したレコードの更新差分を生成し、正ストレージ装置103のログ106に格納する。
正ストレージ装置103は、ハードディスク装置またはディスクアレイなどで構成され、正DB107とログ106を格納する。そして、正ストレージ装置103には、正サーバ100からの要求に応じて正DB107やログ106への読み書きを制御する制御部105を有する。また、制御部105は、SAN(Storage Area Network)130等のストレージ装置用のネットワークに接続され、副サイト2の副ストレージ装置113(副外部記憶装置)と通信可能となっている。そして、正ストレージ装置103の制御部150には、ログ106が更新されると副サイト2の副ストレージ装置113へ更新されたログ106を送信(リモートコピー)するデータ更新記録送信部150を有する。なお、副サイト2の副ストレージ装置113へのログ106の送信は、同期リモートコピーの他に非同期リモートコピーで行うことができる。また、正ストレージ装置103と正サーバ100の接続は、SAN等のネットワークやI/Oなどにより接続される。
副サイト2は、副DBMS111(第2のDBMS)が稼動する副サーバ110と、正サイト1の正ストレージ装置103から送られてきたログと正DB107の複製である副DB117(第2のデータベース)を格納する副ストレージ装置113と、正サイト1からのログ106に基づいて副DB117を生成・更新する副DBMS111から構成される。
副DBMS111は、副サーバ110に接続された副ストレージ装置113に格納される副DB117を正ストレージ装置103から送られてきたログ116に基づいて更新する。そして、正サイト1に障害が発生したときには、副DBMS111がユーザ端末160等に業務を提供する。このため、副DBMS111は、図示はしないが正DBMS101と同様に、トランザクション受付部、データ更新部、データ参照部を有している。
副DBMS111は、副ストレージ装置113に格納されたログ116を適用して副DB117のレコードを更新し、副ストレージ装置113に格納するログ適用制御部140と、ログ116を読み込むログ参照部141と、副サーバ110のメモリ119に設定した所定の容量のキャッシュ領域143と、同じくメモリ119に設定したログ格納領域142とを備えている。
ここで、副サーバ110のメモリ119上に設定されたキャッシュ領域(DBキャッシュ)143は、副DBMS111がログ116を副DB117に適用する際に、副DB117のデータをページ(データ格納領域)単位で一時的に保持するものである。なお、DB117のページは、正DBMS101で設定されたものであり、後述するようにDBMS101が管理するデータ(DB107及びDB117)の管理単位の一つがページである。
また、副サーバ110のメモリ119上に設定されたログ格納領域142は、副DBMS111がログ116を副DB117に適用し、バックアップされた副DB117を正DB107と一致させる際に、ログ116のうち再利用性の低いデータに対応するログのみをエントリ単位で一時的に保持するものである。
副ストレージ装置113は、ハードディスク装置またはディスクアレイなどで構成され、副DB117とログ116を格納する。そして、副ストレージ装置113には、副サーバ110からの要求に応じて副DB117やログ116への読み書きを制御する制御部113を有する。また、制御部113は、SAN(Storage Area Network)130等のストレージ装置用のネットワークに接続され、正サイト1の正ストレージ装置103と通信可能となっている。そして、副ストレージ装置113の制御部115は、正ストレージ装置103のデータ更新記録受信部150から送られたログ106を受信し、副ストレージ装置113のログ116を更新するデータ更新記録受信部151を備える。また、副ストレージ装置113と副サーバ110の接続は、SAN等のネットワークやI/Oなどにより接続される。
副DB117は副ストレージ装置113に格納されるが、更新がある度に副サーバ110が副ストレージ装置113に直接アクセスすると性能が劣化するため、副DBMS111は、副サーバ110のメモリ119上に設けたキャッシュ領域143上で副DB117の更新処理を行う。
副DBMS111は、ログ116が更新されたときや副DB117のリカバリ時等、所定のタイミングでログ116を適用して副DB117を更新する。
また、副DBMS111のログ適用制御部140は、ログ116の適用時に用いるパラメータ(しきい値など)をユーザ端末160等から変更可能とするため、ネットワーク120からパラメータの変更を受け付けるパラメータ受付部145を備えている。なお、ログ適用時のパラメータとしては、後述する一定値A(第1の値)やログ格納領域142の容量などであり、これらのパラメータをユーザ端末160等からパラメータ受付部145を介して変更することが可能となっている。
<ログ適用制御部の概要>
次に、本発明のログ適用制御部140の動作の概要について、図2を参照しながら以下に説明する。
ログ適用制御部140の基本的な動作は、図2において、ログ参照部141が副ストレージ装置113からシーケンシャルにログ116からログデータ1161を読み込んで、読み込んだログデータ1161が指し示すページ1171の再利用性が高いか低いかを判定する。なお、再利用性とは、ログ適用の際に繰り返してアクセスする頻度を示し、同一のページ1171を指し示すログデータ1161の容量または数などで決定する。
そして、再利用性が高いと判定された場合には、ログデータ1161が指し示すデータを含むページ1171を副DB117からキャッシュ領域143に読み込んで、ログデータ1161を適用して副DB117を更新し、正DB107と内容を一致させる。
一方、再利用性が低いと判定された場合は、ログデータ1161をキャッシュ領域143とは異なるログ格納領域142に格納しておく。そして、ログ格納領域142の空き領域がなくなるまでログデータ1161を読み込むと、キャッシュ領域143の空き領域に各ログデータ1161が示すページ1171を順次副DB117から読み込んでログデータ1161を適用し、副DB117を更新する。なお、キャッシュ領域143に空きがなければ、前記従来例に示したLRU方式にて未使用時間が最も長いページ1171をページアウトし、空き領域を確保する。このようにして、ログ格納領域142の空き領域がなくなるまでログデータ1161を読込んだ場合には、ログ格納領域142内の全てのログデータ1161を副DB117に適用する。そして、ログ格納領域142内の全てのログデータ1161を副DB117に適用した後に、ログ格納領域142の全てのログデータ1161を削除し、新たなログデータ1161をログ116からログ格納領域142に読み込むことを可能にするのである。
すなわち、再利用性の高いページを示すログデータ1161は、すぐにログデータ1161を適用して副DB117を更新し、ログ格納領域142から削除される。これに対して、再利用性の低いページ1171を示すログデータ1161は、ログ格納領域142に格納されていく。そして、ログ格納領域142に空き領域がなくなってから、ログ格納領域142内の全てのログデータ1161を副DB117に適用して更新する。そして、更新が完了したログデータ1161はログ格納領域142から削除される。
つまり、ログ格納領域142には再利用性の低いページ1171に対応するログデータ1161のみが格納され、キャッシュ領域143には再利用性の高いページ1171のみが読み込まれてログの適用が行われる。そして、ログ格納領域142に空き領域が無くなった時点から、キャッシュ領域143の空き領域にて、再利用性の低いページ1171に対応するログデータ1161を副DB117に適用していく。
したがって、キャッシュ領域143には常に再利用性の高いページ1171が保持されることになり、この結果、副DB117を更新する際に副サーバ110が副ストレージ装置113をアクセスする頻度を抑制することが可能となる。このため、副ストレージ装置113を性能が低い機種で構成することが可能となり、バックアップシステムとなる副サイト2の導入コスト及び平常時の運用コストを低減できるのである。
<ログ適用制御部の詳細>
<ログとページの関係>
ログ適用制御部140の詳細を以下に説明する。まず、本実施形態の正DBMS101のログ106及びバックアップされたログ116の構成と、正DB107及び副DB117のページの関係について説明する。
まず、ログ106、116の構成を図3に示す。ログ106、116は一つのエントリ(=ログデータ1161とする)について、ログの識別子(例えば、LSN=Log Sequence Number)を示すログ番号201と、正DBMS101、副DBMS111が正DB107、副DB117を管理する単位の一つであるページ番号202と、ページ番号202の下位の管理単位であるページ内位置情報203と、ページ内位置情報203が指し示すデータに対して行われた更新差分を示す更新情報204と、から構成される。上記ログ番号201は、正DBMS101が付与したものである。
正DBMS101は、ページ内位置情報203とページ番号202で正DB107を管理し、更新内容を更新情報204として正ストレージ装置103のログ106に書き込む。正ストレージ装置103のログ106はリモートコピーにより副ストレージ装置113に転送され、ログ116として格納され、正副ストレージ装置のログ106、116は同期する。
副サーバ110のログ適用制御部140は、バックアップされたログ116からログデータ1161を読み込むことで、副DB117のデータのうち、ページ番号202とページ内位置情報203から、ログ116を適用すべき該当データを特定する。
正DB107と副DB117のページ内の構成は、図4に示すように、ページ内位置情報210と、実際のデータを格納するデータ211とから構成される。ひとつのページは、例えば数キロバイトで構成され、ページ内位置情報210毎にデータ211が格納されている。
ログ適用制御部140は、ログ116からページ番号202とページ内位置情報203を取得すると、該当するページを副DB117からキャッシュ領域143にページ単位で読み込み、ログ116の更新情報204を適用し、副DB117の内容を更新し正DB107に同期させる。なお、キャッシュ領域143で更新したページ1171は、所定のタイミングで副ストレージ装置113に書き込まれる。なお、更新されたページの書き込みタイミングは、ライトスルー、ライトバックなど所望の手法で行うことができる。
<処理の詳細>
以下、ログ適用制御部140及びログ参照部141で行われるログ適用の処理の一例について以下に説明する。
図5は、処理の全体的なフローチャートを示し、ログを適用する所定のタイミングとなる度に実行されるものである。
図5において、S1、S6はログ参照部141が行う処理であり、S2〜S5はログ適用制御部140が行う処理である。
まず、ログ参照部141は、前回読み込んだログ番号201の次のログデータ1161を読み込んでから、S2で当該ログデータ1161の再利用性が高いか低いかを判定する。ログデータ1161が指し示すページ1171の再利用性が高い場合には、S4に進んで当該ログデータ1161に基づいてキャッシュ領域143で該当ページ1171を更新する。
一方、ログデータ1161が指し示すページ1171の再利用性が低い場合には、S3に進んでログ格納領域142に空き領域が無くなるまでログデータ1161を格納する。
S3またはS4の処理の後には、ログ適用処理の終了を判定するためS5、S6でログ格納領域142にログデータ1161がない状態で、かつ、ログ116が終端に達しているかを判定し、S5、S6の一方がNOであればS1に戻って次のログデータ1161を読み込み、共にYESの場合には今回のログ適用処理を終了する。
図6は、上記S1で行われるログ読込処理のサブルーチンを示す。S10では、ログ参照部141が、副ストレージ装置113のログ116から1エントリのログデータ1161を読み込む。S11では、このログデータ1161のデータ領域(図3のページ番号202)を特定し、サブルーチンを終了して図5の処理に戻る。
図7は、上記図5のS2で行われる再利用性の判定処理を示す。まず、S20では、上記図6で特定したページ番号202に対応するページ1171が、キャッシュ領域143に存在するかを判定する。このページ番号202に対応するページ1171がキャッシュ領域143に存在する場合は、S24に進み、このページ1171の再利用性が高いと判定する。一方、このページ番号202に対応するページ1171がキャッシュ領域143に無い場合にはS21に進む。
S21では、ログ格納領域142に格納されているログデータ1161について、今回読み込んだページ番号202と同一のページ番号を有する全てのログデータ1161と今回読み込んだログデータ1161の合計容量を演算する。
S22では、S21で求めた合計容量と、予め設定した一定値Aを比較して、合計容量の方が大であればS24に進んで再利用性が高いと判定し、合計容量が一定値A以下であればS23に進んで再利用性が低いと判定し、サブルーチンを終了して図5の処理に戻る。なお、一定値Aはユーザ端末160などから管理者やユーザが設定するもので、例えば、ページ1171の容量に等しい値に設定される。
すなわち、ページ番号202に対応するページ1171がキャッシュ領域143に存在する場合には、当該ページ番号202は再利用性が高いデータ領域であると判定する。また、現在キャッシュ領域143に該当するページ1171がなくても、ログ格納領域142で同一のページ番号202を有するログデータ1161の合計容量が一定値Aよりも大であれば、当該ページ番号202の再利用性が高いと判定する。
一方、読み込んだログデータ1161のページ番号202に対応するページ1171がキャッシュ領域143に無い場合や、同一のページ番号202を有するログデータ1161の合計容量が一定値A以下の場合には、再利用性が低いと判定する。
そして、図5のS2では、上記S23またはS24の判定結果に応じて、再利用性が低い場合にはS3のログ格納処理に進み、再利用性が高い場合にはS4のキャッシュ領域更新処理に進む。
次に、図8は、上記図5のS3で行われるログ格納処理のサブルーチンを示す。まず、S30では、ログ格納領域142に今回読み込んだログデータ1161を格納する空き領域があるか否かを判定し、空き領域があればS37に進んで今回読み込んだログデータ1161をログ格納領域142に格納してサブルーチンを終了する。
一方、ログ格納領域142に空き領域が無い場合にはS31に進み、キャッシュ領域143にページ1171(データ格納領域)を読み込む空き領域があるかを判定する。キャッシュ領域143に空き領域があればそのままS33ヘ進み、キャッシュ領域143に空き領域が無い場合には、S32に進んで、キャッシュ領域143からLRU方式で最も長い時間アクセスされていないページ1171を副ストレージ装置113の副DB117に書き戻し、キャッシュ領域143に空き領域を確保してから、S33へ進む。
S33では、キャッシュ領域143の空き領域にログデータ1161のページ番号202に対応するデータ領域(ページ1171)を副DB117から読み込む。
そしてS34では、S33で読み込んだページ1171に対応するログ格納領域142内の全てのログデータ1161を、順次適用してキャッシュ領域143にある該当ページ1171をページ毎にまとめて更新し、更新したページ1171を副ストレージ装置113の副DB117に書き込む。
そして、S35では、上記ログ格納領域142内の全てのログデータ1161についてログ適用が完了したか否かを判定し、適用していないログデータ1161があればS33に戻って、同一のページ1171に対するログデータ1161が複数あれば、キャッシュ領域143上で順次ログデータ1161を適用し、更新する。
ログ格納領域142内の全てのログデータ1161について該当ページ1171の更新が完了すると、S36でログ格納領域142内の全てのログデータ1161を削除してサブルーチンを終了する。
つまり、このログ格納処理のサブルーチンでは、ログ格納領域142の空き領域が無くなるまでログデータ1161を読み込んでおき、空き領域が無くなった時点でログ格納領域142内のログデータ1161を副DB117に適用して更新する。
このログ適用時には、キャッシュ領域143の空き領域(キャッシュ領域143に空きがなければLRU方式で確保)を用いて、例えば、1ページ分の空き領域を確保し、同一ページに対するログ格納領域142のログデータ1161を順次適用する。このログ適用の際には、副ストレージ装置113へのI/O回数を低減するため、同一のページ番号202のログ適用について、まとめてログ適用を実施する。例えば、図3のようなログデータ1161がログ格納領域142に格納されていた場合、最初に読み込んだログ番号201=0のログデータ1161のページ番号202=3について、対応するページ1171をキャッシュ領域143に読み込む。そして、ログ番号201=0のログデータ1161について対象となるページ内位置情報=1と更新情報204(”BBB”)でキャッシュ領域143の該当ページ(ページ番号=3)を更新する。これに続いて、同一のページ番号=3のログデータ1161(ログ番号201=2)を読み込んで、キャッシュ領域143にある該当ページ1171にログを適用して更新する。
同一のページ番号=3についてログ適用が終わると、キャッシュ領域143にある該当ページ1171を副ストレージ装置113に書き戻し、次のログデータ1161(ログ番号=1、ページ番号=2)について同様に、ページ毎にまとめてログ適用を行う。
以上の操作により、1ページ分だけキャッシュ領域143に空き領域があれば、最小のI/O回数で再利用性の低いログデータ1161についてログ適用を行うことができるのである。
次に、図9は、上記図5のS4で行われるキャッシュ領域更新処理のサブルーチンを示す。まず、S40では、キャッシュ領域143に今回読み込んだログデータ1161のページ番号202に対応するページ1171があるか否かを判定し、ページ番号202に対応するページ1171が既にキャッシュ領域143にあれば、S46に進んでログデータ1161を当該ページ1171に適用し、キャッシュ領域143を更新する。
一方、読み込んだログデータ1161のページ番号202に対応するページ1171がキャッシュ領域143に無い場合には、S41に進んで、キャッシュ領域143にデータ領域(ページ1171)を読み込む空き容量があるか否かを判定する。
キャッシュ領域143に空き領域があれば、S43に進み、空き領域がなければS42へ進んで、LRU方式により1ページ分を副ストレージ装置113に書き込んで、空き領域を確保する。
S43では、更新対象のページ1171をキャッシュ領域143に読み込む。そして、S44では、上記図8のS34、S35と同様に、今回読み込んだログデータ1161と同一のページ番号202を有する他のログデータ1161があれば、ログ格納領域142内で該当する全ログデータ1161を順次ページ1171に適用して更新する。
そして、ログ格納領域142内の同一のページ番号202のログデータ1161を適用した後には、これら適用が完了したログデータ1161をログ格納領域142から削除してサブルーチンを終了する。
すなわち、今回読み込んだログデータ1161のページ番号202に対応するページ1171がキャッシュ領域143にあれば、このログデータ1161を適用してページ1171を更新する。
一方、キャッシュ領域143にログデータ1161のページ番号202に該当するページ1171が無い場合には、副ストレージ装置113の副DB117から該当ページ1171をキャッシュ領域143の空き領域に読み込む。
そして、今回読み込んだログデータ1161と同一のページ番号202を持つログ格納領域142内のログデータ1161を検索し、ログ格納領域142内に同一のページ番号202を持つログデータ1161があれば、これらのログデータ1161と、今回読み込んだログデータ1161をキャッシュ領域143にある該当ページ1171に適用し、更新する。これにより、副ストレージ装置113の副DB117からキャッシュ領域143に読み込んだページ1171に対して、1回の読み込みで複数のログデータ1161を適用することができるので、副サーバ110から副ストレージ装置113に対するI/O回数を低減できるのである。
以上のように、本発明では主サイト1からバックアップしたログ116を副DB117へ適用する際に、適用するログデータ1161を副ストレージ装置113のログ116からシーケンシャルに読み込む。そして、各ログデータ1161のページ番号202から副サーバ110のキャッシュ領域143に読み込むページ1171の再利用性を判定し、再利用性の高いページ1171についてはキャッシュ領域143に読み込んでログデータ1161を適用する。
また、再利用性が高いと判定されたページ1171であっても、キャッシュ領域143に無い場合には、LRU方式などで空き領域を作成し、この空き領域にページ1171をログデータ1161を適用する。このログ適用の際には、今回読み込んだログデータ1161と同一のページ番号202をもつログ格納領域142のログデータ1161についてもログ適用を行うことで、副ストレージ装置113からの一回の読み込み操作で、複数のログデータ1161をまとめて適用でき、副ストレージ装置113にてランダムアクセスとなるページ1171の読み込み及び書き込み回数を大幅に低減できるのである。
一方、再利用性が低いと判定された場合には、ログ格納領域142にログデータ1161を蓄積し、ログ格納領域142の空き領域がなくなった時点で、再利用性の低いページ1171のログ適用を開始する。
再利用性の低いページ1171のログ適用については、キャッシュ領域143の所定容量(例えば、1ページ分)をLRU方式などで空き領域とし、この空き領域に該当ページ1171を読み込み、今回読み込んだログデータ1161と、ログ格納領域142内で同一のページ番号202を持つログデータ1161を、キャッシュ領域143に読み込んだページ1171にまとめて適用して更新し、副ストレージ装置113の副DB117に書き戻す。これにより、副ストレージ装置113から1ページの読み書きで、複数のログデータ1161を適用することが可能となり、副ストレージ装置113のI/O回数を大幅に低減でき、さらに、有限のキャッシュ領域143を効率よく利用することができるのである。
そして、副サーバ110のメモリ119にキャッシュ領域143に加えてログ格納領域142を設け、再利用性の低いページ番号202を持つログデータ1161を、ログ格納領域142の空き領域がなくなるまで蓄積することで、同一のページ番号202を更新するログデータ1161の比率を高くすることができ、同一のページ番号202を持つログデータ1161をまとめて適用することが可能となるのである。
ここで、ログ格納領域142を持たない場合を、図11に示す。図11の場合のログ適用では、副ストレージ装置113からログ116をシーケンシャルに読み込んで、ログデータ1161を一個ずつキャッシュ領域143のページ1171に適用して更新する。このとき、キャッシュ領域143に該当するページ1171がなければ副ストレージ装置113からランダムアクセスにより読み込むことになる。そして、次のログデータ1161、さらに次のログデータ1161が示すページ番号202が異なれば、ログデータ1161毎に副ストレージ装置113にランダムアクセスが発生する。さらに、キャッシュ領域143にLRU方式を用いても、ログデータ1161の並び方によっては、再利用性の高いページ1171が副ストレージ装置113の副DB117へ書き戻される場合が生じてしまう。このため、アクセス性能及び読み出し速度が高い副ストレージ装置113が必要となってしまう。
これに対して、本発明では、図2で示したように、シーケンシャルに読み込んだログデータ1161の再利用性を判定し、再利用性の低いものを一時的にログ格納領域142に蓄積しておき、再利用性の高いもののみをキャッシュ領域143に読み込んでログ適用を行う。このため、キャッシュ領域143は、再利用性の高いページのみが蓄積され、副ストレージ装置113のI/O回数は、図11の例に比して大幅に低減される。
そして、ログ格納領域142に空き領域がなくなると、キャッシュ領域143の所定領域(例えば、1ページ分)のみをLRU方式などで空き領域とし、この空き領域でログ格納領域142に蓄積された再利用性の低いページ1171に、同一ページ番号202のログデータ1161をまとめて適用し、ストレージ装置113に書き戻す。この処理をログ格納領域142の全てのログデータ1161について行う。その後、ログ格納領域142をクリアし、新たなログデータ1161(再利用性=低)を蓄積していく。これにより、再利用性の低いページ1171は、キャッシュ領域143の所定領域のみを利用するだけであり、その他の領域は依然として再利用性の高いページ1171が保持されるので、副ストレージ装置113のI/O回数は、上記図11の例に比してさらに大幅に低減できる。また、ログ格納領域142に再利用性の低いページ1171を蓄積することにより、同一のページ番号202を有するログデータ1161の比率(ログ格納領域142の総データ数と同一のページ番号202のデータ数の比率)を高めることができ、一回のページ1171の読み込みで複数のログデータ1161を適用することができるので、上記図11の例に比してさらに大幅に副ストレージ装置113のI/O回数を低減できる。
このように、本発明によれば、副ストレージ装置113のI/O回数、特に、ランダムアクセスを大幅に低減することで、副ストレージ装置113を性能の低い装置で構成することが可能となり、バックアップシステムである副サイト2の導入コスト及び平常時の運用コストを低減することができるのである。
図10は、上記図7で行われる再利用性判定処理の他の例を示し、同一のページ番号202をログデータ1161の容量に代わって、同一のページ番号202をログデータ1161の数で再利用性の高低を判定するようにしたもので、その他の構成は前記図7と同様である。
S20では、上記図7と同様に今回読み込んだログデータ1161で特定したページ番号202に対応するページ1171が、キャッシュ領域143に存在するかを判定する。このページ番号202に対応するページ1171がキャッシュ領域143に存在する場合は、S24に進み、図7と同様に、このページ1171の再利用性が高いと判定する。一方、このページ番号202に対応するページ1171がキャッシュ領域143に無い場合にはS21Aに進む。
S21Aでは、ログ格納領域142に格納されているログデータ1161について、今回読み込んだページ番号202と同一のページ番号を有する全てのログデータ1161と今回読み込んだログデータ1161の数の合計を演算する。
S22Aでは、S21Aで求めた合計と、予め設定した一定値B(第2の値)とを比較して、合計の方が大であればS24に進んで再利用性が高いと判定し、前記合計が一定値B以下であればS23に進んで再利用性が低いと判定し、サブルーチンを終了して図5の処理に戻る。この場合も、上記図7と同様に的確に再利用性の判定を行うことができる。
なお、副ストレージ装置113のI/O回数低減は、ページ1171の1ページ当たりの容量や正DB107の種類や提供する業務などに応じて、一定値A、Bやログ格納領域142の容量を適宜変更することにより調整することができる。なお、一定値A、Bやログ格納領域142の容量は、ユーザ端末160から副サーバ110のパラメータ受付部145を介して変更することができる。
パラメータ受付部145で行われる処理の一例を、図12のフローチャートに示す。この処理は、ネットワーク120を介してユーザ端末160から指令を受信したときに実行されるものである。
S50では、受信した内容が一定値Aであるか否かを判定し、一定値AであればS51に進んで一定値Aを更新する。一方、受信した内容が一定値Aでない場合には、S52へ進み受信した内容がログ格納領域142の容量であるかを判定する。ログ格納領域の容量であれば、S53に進みログ格納領域142の容量を変更する。なお、ログ格納領域142の容量変更は、ログ適用部144がログ格納領域142に対して操作を行っていないときに実行する。
なお、上記実施形態においては、ディザスタリカバリに本発明を適用した例を示したが、ログに基づいて副サイト2の副DB117を更新するバックアップシステム(計算機システム)であれば、本発明を適用することができる。
以上のように、本発明によれば、副サイトの導入コスト及び運用コストを抑えて、金融業や大企業などに採用されるディザスタリカバリシステムに適用することができる。
本発明の一実施形態を示し、2つのサイトでディザスタリカバリを行う場合のシステム構成図。 ログ適用の処理を示す説明図。 ログデータの内容を示す説明図。 データベースのページの内容を示す説明図。 ログ適用制御部及びログ参照部で行われるログ適用処理の一例を示すフローチャート。 図5のS1で行われるログの読み込み処理の一例を示すフローチャート。 図5のS2で行われる再利用性の判定処理の一例を示すフローチャート。 図5のS3で行われるログ格納処理の一例を示すフローチャート。 図5のS4で行われるキャッシュ領域更新処理の一例を示すフローチャート。 図5のS2で行われる再利用性の判定処理の他の例を示すフローチャート。 ログ適用の処理を示す説明図で、ログ格納領域がない例を示す。 パラメータ受付部で行われる処理の一例を示すフローチャート。
符号の説明
1 主サイト
2 副サイト
100 主サーバ
101 主DBMS
103 主ストレージ
106、116 ログ
109 ログ生成部
110 副サーバ
111 副DBMS
113 副ストレージ
140 ログ適用制御部
141 ログ参照部
142 ログ格納領域
143 キャッシュ領域

Claims (17)

  1. データの更新差分であるログを受信するログ受信部と、前記ログ及びバックアップデータを格納するストレージ装置と、前記ログをバックアップデータに適用して更新するログ適用制御部と、を備えた計算機で前記ログをバックアップデータに適用して更新するバックアップ方法であって、
    前記計算機のログ受信部が受信したログを読み込んで、前記ログが更新対象とする前記バックアップデータの管理単位としてのページを特定するログ読み込みステップと、
    前記計算機のログ適用制御部、前記計算機のメモリに予め設定されたキャッシュ領域で前記ページ毎に前記バックアップデータを保持し、前記特定したページが、前記ログをバックアップデータに適用する際にアクセスされる頻度を再利用性とし、当該ページの再利用性の高低を判定する再利用性判定ステップと、
    前記特定したページの再利用性が低いと判定した場合には、前記計算機のログ適用制御部が、該ページに対応するログの適用を保留して、前記計算機のメモリに予め設定されたログ格納領域に格納し、その場合には後に前記ログ格納領域に空きがなくなった時点で前記計算機のログ適用制御部が前記キャッシュ領域に前記ログ格納領域のログが示すページを前記バックアップデータから読み込んで、前記キャッシュ領域のページに前記ログを適用して更新し、当該更新したページを前記ストレージ装置のバックアップデータに書き込むログ格納ステップと、
    前記特定したページの再利用性が高いと判定した場合には、前記計算機のログ適用制御部が、該ページに対応するログを、前記キャッシュ領域で前記特定されたページに適用し、前記キャッシュ領域の当該ページを更新するキャッシュ領域更新ステップと、を含み、
    前記再利用性判定ステップは、
    前記キャッシュ領域に前記ログが更新対象とするページが存在するときに再利用性が高いと判定するステップと、
    前記キャッシュ領域に前記ログが更新対象とするページが存在しないときには、当該ログが更新対象とするページと同一のページを更新対象とする前記ログ格納領域に格納されたログの容量と、当該ログの容量の合計値を演算するステップと、
    前記合計値が予め設定した第1の値よりも大きいときに再利用性が高いと判定し、前記合計値が前記第1の値以下のときに再利用性が低いと判定するステップと、
    を含むことを特徴とするバックアップ方法。
  2. データの更新差分であるログを受信するログ受信部と、前記ログ及びバックアップデータを格納するストレージ装置と、前記ログをバックアップデータに適用して更新するログ適用制御部と、を備えた計算機で前記ログをバックアップデータに適用して更新するバックアップ方法であって、
    前記計算機のログ受信部が受信したログを読み込んで、前記ログが更新対象とする前記バックアップデータのページを特定するログ読み込みステップと、
    前記計算機のログ適用制御部が、前記計算機のメモリに予め設定されたキャッシュ領域で管理単位としてのページ毎に前記バックアップデータを保持し、前記特定したページが、前記ログをバックアップデータに適用する際にアクセスされる頻度を再利用性とし、当該ページの再利用性の高低を判定する再利用性判定ステップと、
    前記特定したページの再利用性が低いと判定した場合には、前記計算機のログ適用制御部が、該ページに対応するログの適用を保留して、前記計算機のメモリに予め設定されたログ格納領域に格納し、その場合には後に前記ログ格納領域に空きがなくなった時点で前記計算機のログ適用制御部が前記キャッシュ領域に前記ログ格納領域のログが示すページを前記バックアップデータから読み込んで、前記キャッシュ領域のページに前記ログを適用して更新し、当該更新したページを前記ストレージ装置のバックアップデータに書き込むログ格納ステップと、
    前記特定したページの再利用性が高いと判定した場合には、前記計算機のログ適用制御部が、該ページに対応するログを、前記キャッシュ領域で前記特定されたページに適用し、前記キャッシュ領域の当該ページを更新するキャッシュ領域更新ステップと、を含み、
    前記再利用性判定ステップは、
    前記計算機のログ適用制御部は、前記キャッシュ領域に前記ログが更新対象とするページが存在するときに再利用性が高いと判定するステップと、
    前記計算機のログ適用制御部は、前記キャッシュ領域に前記ログが更新対象とするページが存在しないときには、当該ログが更新対象とするページと同一のページを更新対象とする前記ログ格納領域に格納されたログの個数と、当該ログの個数の合計値を演算するステップと、
    前記計算機のログ適用制御部は、前記合計値が予め設定した第2の値よりも大きいときに再利用性が高いと判定し、前記合計値が前記第2の値以下のときに再利用性が低いと判定するステップと、
    を含むことを特徴とするバックアップ方法。
  3. 前記計算機のログ適用制御部が、前記第1の値または前記ログ格納領域の容量を受け付けるステップと、
    前記計算機のログ適用制御部が、前記第1の値を受け付けたときには前記第1の値を変更し、前記容量を受け付けたときにはログ格納領域の容量を変更するステップと、
    を含むことを特徴とする請求項1に記載のバックアップ方法。
  4. 前記計算機のログ適用制御部が、前記第2の値または前記ログ格納領域の容量を受け付けるステップと、
    前記計算機のログ適用制御部が、前記第2の値を受け付けたときには前記第2の値を変更し、前記容量を受け付けたときにはログ格納領域の容量を変更するステップと、
    を含むことを特徴とする請求項2に記載のバックアップ方法。
  5. 前記ログ格納ステップは、
    前記ログ格納領域に空き領域がなくなったときに、当該ログ格納領域内の全てのログを前記バックアップデータに適用するステップと、
    前記ログ格納領域に格納されたログを削除するステップと、
    を含むことを特徴とする請求項1または請求項2に記載のバックアップ方法。
  6. 前記ログ格納領域内の全てのログを前記バックアップデータに適用するステップは、
    前記ログ格納領域に格納されたログに該当するページを前記ストレージ装置のバックアップデータから読み込んでからまとめて適用し、当該ページを更新するステップと、
    を含むことを特徴とする請求項5に記載のバックアップ方法。
  7. データの更新差分であるログを受信するログ受信部と、
    前記ログ及びバックアップデータを格納するストレージ装置と、
    前記ログをバックアップデータに適用して更新するログ適用制御部と、
    を備えたバックアップシステムであって、
    前記ストレージ装置からログを読み込むログ参照部と、
    メモリ上に設定されて前記バックアップデータを管理単位としてのページ毎に格納するキャッシュ領域と、
    前記メモリ上に設定されて前記ログを格納するログ格納領域と、を有し、
    前記ログ適用制御部は、
    前記ページが、前記ログをバックアップデータに適用する際にアクセスされる頻度を再利用性とし、前記ログ参照部が読み込んだログが更新対象とする前記バックアップデータのページの再利用性が高いか低いかを判定する再利用性判定部と、
    前記再利用性が低いと判定されたページに対応するログを、前記ログ格納領域に格納し、前記ログ格納領域に空きがなくなった場合に前記キャッシュ領域に前記ログ格納領域のログが示すページを前記バックアップデータから読み込んで、前記キャッシュ領域のページに前記ログを適用して更新し、当該更新したページを前記バックアップデータに書き込むログ格納部と、
    前記再利用性が高いと判定されたページに対応するログを、前記キャッシュ領域のページに適用し、前記キャッシュ領域の当該ページを更新するキャッシュ領域更新部と、を備え、
    前記再利用性判定部は、
    前記キャッシュ領域に前記ログが更新対象とするページが存在するときに再利用性が高いと判定する第1の判定部と、
    前記キャッシュ領域に前記ログが更新対象とするページが存在しないときには、当該ログが更新対象とするページと同一のページを更新対象とする前記ログ格納領域に格納されたログの容量と、当該ログの容量の合計値を演算する容量演算部と、
    前記合計値が予め設定した第1の値よりも大きいときに再利用性が高いと判定し、前記合計値が前記第1の値以下のときに再利用性が低いと判定する第2の判定部と、
    を有することを特徴とするバックアップシステム。
  8. データの更新差分であるログを受信するログ受信部と、
    前記ログ及びバックアップデータを格納するストレージ装置と、
    前記ログをバックアップデータに適用して更新するログ適用制御部と、
    を備えたバックアップシステムであって、
    前記ストレージ装置からログを読み込むログ参照部と、
    メモリ上に設定されて前記バックアップデータを管理単位としてのページ毎に格納するキャッシュ領域と、
    前記メモリ上に設定されて前記ログを格納するログ格納領域と、を有し、
    前記ログ適用制御部は、
    前記ページが、前記ログをバックアップデータに適用する際にアクセスされる頻度を再利用性とし、前記ログ参照部が読み込んだログが更新対象とする前記バックアップデータのページの再利用性が高いか低いかを判定する再利用性判定部と、
    前記再利用性が低いと判定されたページに対応するログを、前記ログ格納領域に格納し、前記ログ格納領域に空きがなくなった場合に前記キャッシュ領域に前記ログ格納領域のログが示すページを前記バックアップデータから読み込んで、前記キャッシュ領域のページに前記ログを適用して更新し、当該更新したページを前記バックアップデータに書き込むログ格納部と、
    前記再利用性が高いと判定されたページに対応するログを、前記キャッシュ領域のページに適用し、前記キャッシュ領域の当該ページを更新するキャッシュ領域更新部と、を備え、
    前記再利用性判定部は、
    前記キャッシュ領域に前記ログが更新対象とするページが存在するときに再利用性が高いと判定する第1の判定部と、
    前記キャッシュ領域に前記ログが更新対象とするページが存在しないときには、当該ログが更新対象とするページと同一のページを更新対象とする前記ログ格納領域に格納されたログの個数と、当該ログの個数の合計値を演算する合計値演算部と、
    前記合計値が予め設定した第2の値よりも大きいときに再利用性が高いと判定し、前記合計値が前記第2の値以下のときに再利用性が低いと判定する第2の判定部と、
    を備えたことを特徴とするバックアップシステム。
  9. 前記ログ適用制御部は、
    前記第1の値またはログ格納領域の容量を受け付けるパラメータ受付部と、
    前記パラメータ受付部が、前記第1の値を受け付けたときには前記第1の値を変更し、前記パラメータ受付部が前記容量を受け付けたときにはログ格納領域の容量を変更する設定変更部と、
    を有することを特徴とする請求項7に記載のバックアップシステム。
  10. 前記ログ適用制御部は、
    前記第2の値またはログ格納領域の容量を受け付けるパラメータ受付部と、
    前記パラメータ受付部が、前記第2の値を受け付けたときには前記第2の値を変更し、前記パラメータ受付部が前記容量を受け付けたときにはログ格納領域の容量を変更する設定変更部と、
    を有することを特徴とする請求項8に記載のバックアップシステム。
  11. 前記ログ格納部は、
    前記ログ格納領域に空き領域がなくなったときに、当該ログ格納領域内の全てのログを前記バックアップデータに適用した後に、前記ログ格納領域に格納されたログを削除することを特徴とする請求項7または請求項8に記載のバックアップシステム。
  12. 前記ログ格納部は、
    前記ログ格納領域内の全てのログを前記バックアップデータに適用する際に、前記ログ格納領域に格納されたログに該当するページを前記ストレージ装置のバックアップデータから読み込んでからまとめて適用し、当該ページを更新することを特徴とする請求項11に記載のバックアップシステム。
  13. データの更新差分であるログを受信するログ受信部と、前記ログ及びバックアップデータを格納するストレージ装置と、を備えたバックアップ計算機で前記ログをバックアップデータに適用して更新するプログラムであって、
    前記ログ受信部が受信したログを読み込んで、前記ログが更新対象とする前記バックアップデータの管理単位としてのページを特定するログ読み込み手順と、
    前記バックアップ計算機のメモリに予め設定されたキャッシュ領域で管理単位としてのページ毎に前記バックアップデータを保持し、前記特定したページが、前記ログをバックアップデータに適用する際にアクセスされる頻度を再利用性とし、前記特定したページの再利用性の高低を判定する再利用性判定手順と、
    前記特定したページの再利用性が低いと判定された場合には、前記バックアップ計算機のログ適用制御部が、該ページに対応するログを、当該バックアップ計算機のメモリ上に予め設定されたログ格納領域へ格納し、その場合には後に前記ログ格納領域に空きがなくなった時点で前記バックアップ計算機のログ適用制御部が前記キャッシュ領域に前記ログ格納領域のログが示すページを前記バックアップデータから読み込んで、前記キャッシュ領域のページに前記ログを適用して更新し、当該更新したページを前記ストレージ装置のバックアップデータに書き込むログ格納手順と、
    前記特定したページの再利用性が高いと判定された場合には、前記バックアップ計算機のログ適用制御部が、該ページに対応するログを、前記キャッシュ領域で前記特定されたページに適用し、前記キャッシュ領域の当該ページを更新するするキャッシュ領域更新手順と、
    を含み、
    前記再利用性判定手順は、
    前記キャッシュ領域に前記ログが更新対象とするページが存在するときに再利用性が高いと判定する手順と、
    前記キャッシュ領域に前記ログが更新対象とするページが存在しないときには、当該ログが更新対象とするページと同一のページを更新対象とする前記ログ格納領域に格納されたログの容量と、当該ログの容量の合計値を演算する手順と、
    前記合計値が予め設定した第1の値よりも大きいときに再利用性が高いと判定し、前記合計値が前記第1の値以下のときに再利用性が低いと判定する手順と、
    を含んで前記バックアップ計算機に機能させることを特徴とするプログラム。
  14. データの更新差分であるログを受信するログ受信部と、前記ログ及びバックアップデータを格納するストレージ装置と、を備えたバックアップ計算機で前記ログをバックアップデータに適用して更新するプログラムであって、
    前記ログ受信部が受信したログを読み込んで、前記ログが更新対象とする前記バックアップデータの管理単位としてのページを特定するログ読み込み手順と、
    前記バックアップ計算機のメモリに予め設定されたキャッシュ領域で管理単位としてのページ毎に前記バックアップデータを保持し、前記特定したページが、前記ログをバックアップデータに適用する際にアクセスされる頻度を再利用性とし、前記特定したページの再利用性の高低を判定する再利用性判定手順と、
    前記特定したページの再利用性が低いと判定された場合には、前記バックアップ計算機のログ適用制御部が、該ページに対応するログの適用を保留して、当該バックアップ計算機のメモリ上に予め設定されたログ格納領域へ格納し、その場合には後に前記ログ格納領域に空きがなくなった時点で前記バックアップ計算機のログ適用制御部が前記バックアップ計算機のメモリに予め設定されたキャッシュ領域へ、管理単位としてのページ毎に前記ログ格納領域のログが示すページを前記バックアップデータから読み込んで、前記キャッシュ領域のページに前記ログを適用して更新し、当該更新したページを前記ストレージ装置のバックアップデータに書き込むログ格納手順と、
    前記特定したページの再利用性が高いと判定された場合には、前記バックアップ計算機のログ適用制御部が、該ページに対応するログを、前記キャッシュ領域で前記特定されたページに適用し、前記キャッシュ領域の当該ページを更新するキャッシュ領域更新手順と、
    を含み、
    前記再利用性判定手順は、
    前記キャッシュ領域に前記ログが更新対象とするページが存在するときに再利用性が高いと判定する手順と、
    前記キャッシュ領域に前記ログが更新対象とするページが存在しないときには、当該ログが更新対象とするページと同一のページを更新対象とする前記ログ格納領域に格納されたログの個数と、当該ログの個数の合計値を演算する手順と、
    前記合計値が予め設定した第2の値よりも大きいときに再利用性が高いと判定し、前記合計値が前記第2の値以下のときに再利用性が低いと判定する手順と、
    を含んで、前記バックアップ計算機に機能させることを特徴とするプログラム。
  15. 前記第1の値または前記ログ格納領域の容量を受け付ける手順と、
    前記第1の値を受け付けたときには前記第1の値を変更し、前記容量を受け付けたときにはログ格納領域の容量を変更する手順と、
    を含むことを特徴とする請求項13に記載のプログラム。
  16. 前記第2の値または前記ログ格納領域の容量を受け付ける手順と、
    前記第2の値を受け付けたときには前記第2の値を変更し、前記容量を受け付けたときにはログ格納領域の容量を変更する手順と、
    を含むことを特徴とする請求項14に記載のプログラム。
  17. 前記ログ格納手順は、
    前記ログ格納領域に空き領域がなくなったときに、当該ログ格納領域内の全てのログを前記バックアップデータに適用する手順と、
    前記ログ格納領域に格納されたログを削除する手順と、
    を含むことを特徴とする請求項13または請求項14に記載のプログラム。
JP2005094071A 2005-03-29 2005-03-29 バックアップシステム、プログラム及びバックアップ方法 Expired - Fee Related JP4249719B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005094071A JP4249719B2 (ja) 2005-03-29 2005-03-29 バックアップシステム、プログラム及びバックアップ方法
US11/132,175 US7640276B2 (en) 2005-03-29 2005-05-19 Backup system, program and backup method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005094071A JP4249719B2 (ja) 2005-03-29 2005-03-29 バックアップシステム、プログラム及びバックアップ方法

Publications (2)

Publication Number Publication Date
JP2006277208A JP2006277208A (ja) 2006-10-12
JP4249719B2 true JP4249719B2 (ja) 2009-04-08

Family

ID=37071860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005094071A Expired - Fee Related JP4249719B2 (ja) 2005-03-29 2005-03-29 バックアップシステム、プログラム及びバックアップ方法

Country Status (2)

Country Link
US (1) US7640276B2 (ja)
JP (1) JP4249719B2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9047344B2 (en) * 2005-10-17 2015-06-02 International Business Machines Corporation Guaranteeing data and metadata referential integrity in content management archival solutions
US7467169B2 (en) * 2005-10-31 2008-12-16 Network Appliance, Inc. Circular and bi-directional mirroring of flexible volumes
JP5050358B2 (ja) * 2006-01-27 2012-10-17 日本電気株式会社 データ複製システムおよびデータ複製方法
US7711705B1 (en) * 2006-06-28 2010-05-04 Emc Corporation Methods and apparatus for processing partitioned changes
US20110040839A1 (en) * 2007-10-23 2011-02-17 Valeriu Zabalan System and method for transactional storage of email data
US8055943B2 (en) * 2009-04-24 2011-11-08 International Business Machines Corporation Synchronous and asynchronous continuous data protection
CN103176867B (zh) * 2013-04-02 2017-12-01 浪潮电子信息产业股份有限公司 一种快速文件差异备份方法
US9218142B2 (en) * 2013-08-22 2015-12-22 International Business Machines Corporation Log data store that stores data across a plurality of storage devices using non-disjoint layers
JP2015114784A (ja) * 2013-12-11 2015-06-22 日本電気株式会社 バックアップ制御装置及びバックアップ制御方法、ディスクアレイ装置、並びにコンピュータ・プログラム
US9436559B2 (en) 2014-01-17 2016-09-06 Hitachi, Ltd. Storage apparatus and method for controlling cache of storage apparatus
WO2016120988A1 (ja) * 2015-01-27 2016-08-04 株式会社日立製作所 データベースシステム及びデータベース管理方法
US20160217177A1 (en) * 2015-01-27 2016-07-28 Kabushiki Kaisha Toshiba Database system
US20160292055A1 (en) * 2015-04-02 2016-10-06 Infinidat Ltd. Failure recovery in an asynchronous remote mirroring process
US10083086B2 (en) * 2016-04-22 2018-09-25 Unisys Corporation Systems and methods for automatically resuming commissioning of a partition image after a halt in the commissioning process
US10459632B1 (en) * 2016-09-16 2019-10-29 EMC IP Holding Company LLC Method and system for automatic replication data verification and recovery
US20190354470A1 (en) * 2018-05-16 2019-11-21 Sap Se Reduced Database Backup Memory Usage
CN110489274A (zh) * 2019-07-11 2019-11-22 新华三大数据技术有限公司 数据备份方法、装置及交互系统

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4878167A (en) * 1986-06-30 1989-10-31 International Business Machines Corporation Method for managing reuse of hard log space by mapping log data during state changes and discarding the log data
CA2072728A1 (en) 1991-11-20 1993-05-21 Michael Howard Hartung Dual data buffering in separately powered memory modules
JPH06348595A (ja) * 1993-06-07 1994-12-22 Hitachi Ltd キャッシュ装置
US5644698A (en) * 1996-05-30 1997-07-01 International Business Machines Corporation Configurable reuse delay criterion for storage volumes
US5951695A (en) * 1997-07-25 1999-09-14 Hewlett-Packard Company Fast database failover
US6065018A (en) * 1998-03-04 2000-05-16 International Business Machines Corporation Synchronizing recovery log having time stamp to a remote site for disaster recovery of a primary database having related hierarchial and relational databases
US6226651B1 (en) * 1998-03-27 2001-05-01 International Business Machines Corporation Database disaster remote site recovery
EP0981099A3 (en) * 1998-08-17 2004-04-21 Connected Place Limited A method of and an apparatus for merging a sequence of delta files
JP2000267936A (ja) 1999-03-18 2000-09-29 Hitachi Ltd ディスクサブシステム
US6493721B1 (en) * 1999-03-31 2002-12-10 Verizon Laboratories Inc. Techniques for performing incremental data updates
US6681295B1 (en) * 2000-08-31 2004-01-20 Hewlett-Packard Development Company, L.P. Fast lane prefetching
GB2369902B (en) * 2000-12-07 2004-11-03 Ibm Log storage management in a data processing system using key-pointing
US6516380B2 (en) * 2001-02-05 2003-02-04 International Business Machines Corporation System and method for a log-based non-volatile write cache in a storage controller
JP2002244898A (ja) * 2001-02-19 2002-08-30 Hitachi Ltd データベース管理プログラム及びデータベースシステム
US7225204B2 (en) * 2002-03-19 2007-05-29 Network Appliance, Inc. System and method for asynchronous mirroring of snapshots at a destination using a purgatory directory and inode mapping
JP2004078746A (ja) 2002-08-21 2004-03-11 Hitachi Ltd ストレージシステムの制御方法、ストレージシステム、及び記憶装置
WO2004061620A2 (en) * 2003-01-02 2004-07-22 University Of Rochester Temporal affinity analysis using reuse signatures
JP4283576B2 (ja) * 2003-03-27 2009-06-24 株式会社日立製作所 トランザクション同期方法、データベースシステム及びデータベース装置
US7085788B2 (en) * 2003-12-03 2006-08-01 Hitachi, Ltd. Remote copy system configured to receive both a write request including a write time and a write request not including a write time.
JP4315016B2 (ja) * 2004-02-24 2009-08-19 株式会社日立製作所 コンピュータシステムの系切替方法
US7330860B2 (en) * 2004-02-26 2008-02-12 International Business Machines Corporation Fault tolerant mechanism to handle initial load of replicated object in live system
JP4512386B2 (ja) * 2004-03-05 2010-07-28 株式会社日立製作所 バックアップシステムおよび方法
CA2465155C (en) * 2004-04-21 2008-12-09 Ibm Canada Limited-Ibm Canada Limitee Recommendations for intelligent data caching
US7996363B2 (en) * 2004-05-19 2011-08-09 Oracle International Corporation Real-time apply mechanism in standby database environments
JP4489500B2 (ja) * 2004-05-26 2010-06-23 株式会社日立製作所 バックアップ方法、バックアップシステム、ディスク制御装置、及びバックアッププログラム
US7194486B2 (en) * 2004-06-03 2007-03-20 Hitachi, Ltd. Method and system for data processing with data replication for the same
JP4581500B2 (ja) * 2004-06-17 2010-11-17 株式会社日立製作所 ディザスタリカバリシステム、プログラム及びデータベースのリカバリ方法
JP4479431B2 (ja) * 2004-09-14 2010-06-09 株式会社日立製作所 情報ライフサイクル管理システム及びそのデータ配置決定方法
JP4489550B2 (ja) * 2004-09-30 2010-06-23 株式会社日立製作所 バックアップデータ作成管理方法
JP4731975B2 (ja) * 2005-04-20 2011-07-27 株式会社日立製作所 データベース管理方法、およびストレージシステム
JP4813924B2 (ja) * 2006-02-28 2011-11-09 株式会社日立製作所 データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法
JP4295326B2 (ja) * 2007-01-10 2009-07-15 株式会社日立製作所 計算機システム
JP5049618B2 (ja) * 2007-03-15 2012-10-17 株式会社日立製作所 ディザスタリカバリシステムおよび方法

Also Published As

Publication number Publication date
US20060224639A1 (en) 2006-10-05
JP2006277208A (ja) 2006-10-12
US7640276B2 (en) 2009-12-29

Similar Documents

Publication Publication Date Title
JP4249719B2 (ja) バックアップシステム、プログラム及びバックアップ方法
JP4839091B2 (ja) データベース回復方法及び計算機システム
US9081691B1 (en) Techniques for caching data using a volatile memory cache and solid state drive
US7769960B2 (en) Computer program product and a system for a priority scheme for transmitting blocks of data
US7793061B1 (en) Techniques for using flash-based memory as a write cache and a vault
US6397351B1 (en) Method and apparatus for rapid data restoration including on-demand output of sorted logged changes
JP4301849B2 (ja) 情報処理方法及びその実施システム並びにその処理プログラム並びにディザスタリカバリ方法およびシステム並びにその処理を実施する記憶装置およびその制御処理方法
JP4681249B2 (ja) ディスクアレイ装置
US7350043B2 (en) Continuous data protection of block-level volumes
US6618794B1 (en) System for generating a point-in-time copy of data in a data storage system
CN106055431B (zh) 基于快照在线回滚的数据备份与恢复的方法及装置
JP4813924B2 (ja) データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法
US6701455B1 (en) Remote copy system with data integrity
US20030200394A1 (en) Cache memory arrangement and methods for use in a cache memory system
US8856467B2 (en) Management of metadata in a storage subsystem
KR19980024086A (ko) 컴퓨터 시스템 및 화일 관리 방법
JP4290975B2 (ja) データベース処理方法及び装置並びにその処理プログラム及びディザスタリカバリ方法及びシステム
US10776044B2 (en) Storage apparatus, data management method, and non-transitory computer readable medium
JP4561168B2 (ja) データ処理システムおよび方法並びにその処理プログラム
US20050071550A1 (en) Increasing through-put of a storage controller by autonomically adjusting host delay
JP4916892B2 (ja) トランザクション処理のためのログ情報管理システムおよび方法
US20130339569A1 (en) Storage System and Method for Operating Thereof
US20060200500A1 (en) Method of efficiently recovering database
US20080222214A1 (en) Storage system and remote copy system restoring data using journal
US7761732B2 (en) Data protection in storage systems

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081212

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090113

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090115

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120123

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130123

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140123

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees