JP2007207063A - データベースを有するストレージシステムの記憶制御方法 - Google Patents

データベースを有するストレージシステムの記憶制御方法 Download PDF

Info

Publication number
JP2007207063A
JP2007207063A JP2006026676A JP2006026676A JP2007207063A JP 2007207063 A JP2007207063 A JP 2007207063A JP 2006026676 A JP2006026676 A JP 2006026676A JP 2006026676 A JP2006026676 A JP 2006026676A JP 2007207063 A JP2007207063 A JP 2007207063A
Authority
JP
Japan
Prior art keywords
log
storage device
storage
pair
logless
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.)
Granted
Application number
JP2006026676A
Other languages
English (en)
Other versions
JP4727437B2 (ja
Inventor
Nobuo Kawamura
信男 河村
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 JP2006026676A priority Critical patent/JP4727437B2/ja
Priority to US11/396,644 priority patent/US7353335B2/en
Publication of JP2007207063A publication Critical patent/JP2007207063A/ja
Application granted granted Critical
Publication of JP4727437B2 publication Critical patent/JP4727437B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/2053Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • 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/2053Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2074Asynchronous techniques
    • 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/2053Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2076Synchronous techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】DB更新履歴を含んだログを作成しないようにしてもデータベースの回復が行えるようにする。
【解決手段】ログレスモードで各トランザクションを実行する場合、該トランザクションの開始の際に、ログレス開始ログを作成して正ログVOL55Aに書き、且つ、そのログレス開始ログを、遠隔の副ログVOL55Bにも書く。その後、正DBVOL51AのDBに対してバッチ処理を行い、このトランザクションの実行中において、バッチ処理の開始前又は終了後に、DBVOLのペア解除状態を解除し、バッチ処理の終了後、DBVOL間の差分が無くなっていれば、ログレス終了ログを作成して正ログVOL55Aに書き、且つ、それを副ログVOL55Aにも書く。
【選択図】図7

Description

本発明は、データベースを有するストレージシステムでの記憶制御に関する。
例えば、データベース(以下、DB)を格納したストレージシステムでは、障害に備えるために、いわゆるディザスタリカバリという手法が採用されることがある。これは、あるサイトのデータを地理的に離れた他のサイトに複製として格納しておき、あるサイトが災害等により障害にあった場合、他のサイトで業務を復旧させるというものである。
サイト間では、同期型のリモートコピー或いは非同期型のリモートコピーが行われる。同期型のリモートコピーでは、或るサイトでのデータの更新と同期で、そのデータが他のサイトに転送される。非同期型リモートコピーでは、或るサイトでのデータの更新と非同期で、そのデータが他のサイトに転送される。
米国特許第5640561号公報の開示によれば、非同期型リモートコピーについて、データ書き込みの順序性を正サイト(メインサイトと呼んでも良い)と副サイト(リモートサイトと呼んでも良い)で一致することを保証する方式と保証しない方式がある。トランザクションの途中の状態が残りデータベースの一貫性が保証できないことを避けるためにはこのデータ書き込みの順序性を保証する必要がある。この順序性保証は複数のディスクの組に対しても有効にするよう構成することができる。米国特許第5640561号公報には、ログ(ジャーナル)用ディスクとDB用ディスクの組に対して順序性を保証するような技術が開示されている。
DBを格納したストレージシステムでは、データそのものを格納するDB用ディスクと、DB更新履歴情報を時系列に格納したログ用ディスクとを用意することができる。災害等の発生により正サイトにおけるホスト計算機がダウンすると、DB用ディスク内のデータは中途半端な更新状態となることがあるが、ホスト計算機内のDBMS(データベース管理システム)のリスタート時にログ用ディスク内のDB更新履歴情報を元に一貫性の取れた状態に回復している(このような技術は非特許文献1に開示されている)。すなわち、ホスト計算機のダウン時に、完了済みのトランザクションの更新データについてはDB用ディスクに反映させ(ロールフォワード)、サーバダウン時に未完了だったトランザクションの更新データについては無効化(ロールバック)している。
米国特許第5640561号公報 Jim Gray,Andreas Reuter著「TRANSCATION PROCESSING;Concepts and Techniques」、MORGAN KAUFMANN PUBLISHERS発行
DBMSは、作成するログに、トランザクションに関わるステータス(以下、トランザクションステータス、例えば、開始或いはコミット)の他に、DBに対する更新履歴(以下、DB更新履歴、例えば、どこのブロックに何を書いたか)等を含める。これにより、正サイトがダウンしても、副サイトで、正サイトから副サイトへとコピーされたログのDB更新履歴を用いてDBを回復することができる。
ところで、或る時間内にDBの更新回数が或る回数よりも多い処理(以下、多数更新処理)が行われることがある。多数更新処理の代表的な例として、バッチ処理を挙げることができる。
バッチ処理のような多数更新処理で、トランザクションステータス及びDB更新履歴の両方を含んだログを、DBの更新の都度に作成するようにすると、多数更新処理の速度が遅くなってしまう。
そこで、それを緩和するための方法として、作成するログに少なくともDB更新履歴を含めないようにする方法を採用することが考えられる。
しかし、単純にその方法を採用すると、ログにはDB更新履歴が含まれていないため、ログを用いたDBの回復はできない。
従って、本発明の目的は、DB更新履歴を含んだログを作成しないようにしてもデータベースの回復が行えるようにすることにある。
例えば、ストレージシステムには、第一のストレージサブシステムと第二のストレージサブシステムとが備えられる。前記第一のストレージサブシステムが、データベースを記憶することができる第一のDB記憶装置と、前記データベースのログを記憶することができる第一のログ記憶装置とを備える。前記第二のストレージサブシステムが、前記第一のDB記憶装置とペアを構成することができる第二のDB記憶装置と、前記第一のログ記憶装置とペアを構成することができる第二のログ記憶装置とを備える。
前記第一のストレージサブシステムが、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア状態であるDBペア状態がペア解除状態になっている場合に、前記第一のDB記憶装置と前記第二のDB記憶装置とに差分が生じたならば該差分を管理し、該ペア解除状態が解除された場合に、管理されている前記差分を前記第二のストレージサブスシステムに送信することで、前記第二のDB記憶装置に該差分を更新させ、それにより、前記第一のDB記憶装置と前記第二のDB記憶装置との差分を無くすことができるように構成されている。
上記の構成において、本発明に従う記憶制御方法は、データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に発行することで、該ログレス開始ログを前記第一のログ記憶装置に書く。前記第一のログ記憶装置に書かれる前記ログレス開始ログを前記第一のストレージサブシステムから前記第二のストレージサブシステムに送信することにより、該ログレス開始ログを前記第二のログ記憶装置に書く。前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行することで該データベースを複数回更新するDB更新処理を実行する。開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除する。前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に書く。前記第一のログ記憶装置に書かれる前記ログレス終了ログを前記第一のストレージサブシステムから前記第二のストレージサブシステムに送信することにより、該ログレス終了ログを前記第二のログ記憶装置に書く。
各記憶装置は、物理的な記憶装置(例えばハードディスクドライブなどの、記憶メディアを搭載可能なメディアドライブ)であっても良いし、物理的な記憶装置が有する記憶領域を用いて設定された論理的な記憶装置(例えば論理ボリューム)であっても良い。
第一の実施態様では、前記第一のストレージサブシステムを含む第一のシステムに、前記データベースを管理するデータベース管理部と、各記憶装置のペア状態に従うコピーを制御する第一の記憶制御部とが備えられてもよい。前記第二のストレージサブシステムに、前記第一の記憶制御部と通信することができる第二の記憶制御部が備えられてもよい。前記データベース管理部及び前記第一の記憶制御部のうちの少なくとも前記第一の記憶制御部が、前記第一のストレージサブシステムに備えられてもよい。前記ログレスモードでのトランザクションの開始前に、前記第一のログ記憶装置と前記第二のログ記憶装置とのペア状態であるログペア状態が、前記第一のログ記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のログ記憶装置へと転送される同期/非同期ペア状態となっていてもよい。前記データベース管理部が、前記ログレス開始ログを作成して前記第一のログ記憶装置に書くことができる。前記第一の記憶制御部が、前記ログペア状態が同期/非同期ペア状態になっているために、前記第一のログ記憶装置に書かれる前記ログレス開始ログを前記第二の記憶制御部に送信し、前記第二の記憶制御部が、前記第一の記憶制御部からのログレス開始ログを前記第二のログ記憶装置に書くことができる。前記データベース管理部が、前記DB更新処理を実行することができる。開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記データベース管理部が、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除することができる。前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記データベース管理部が、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に書くことができる。前記第一の記憶制御部が、前記ログペア状態が同期/非同期ペア状態になっているために、前記第一のログ記憶装置に書かれる前記ログレス終了ログを前記第二の記憶制御部に送信し、前記第二の記憶制御部が、前記第一の記憶制御部からの前記ログレス終了ログを前記第二のログ記憶装置に書くことができる。
第二の実施態様では、前記ログレスモードでのトランザクションの開始から終了までの間、少なくとも前記ログレス開始ログと前記ログレス終了ログが、前記第一のストレージサブシステムの所定の領域(例えば第一のログ記憶装置)への書込みと同期で前記第二のログ記憶装置へと転送されてもよい。
第三の実施態様では、前記データベースに書くデータをメモリに一時記憶し、該メモリに記憶したデータを前記第一のDB記憶装置に書くことで前記データベースを更新するようになっている場合に、前記ログレス開始ログを前記第一のログ記憶装置に発行した後、前記DB更新処理の開始前に、前記データベースに書かれていないデータである未反映データを前記メモリから前記第一のDB記憶装置へと書き出し、該書き出しが完了した後に、前記DB更新処理を開始することができる。
第四の実施態様では、前記DBペア状態が、前記第一のDB記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のDB記憶装置へと転送される同期/非同期ペア状態となっている場合、前記ログレス開始ログを前記第一のログ記憶装置に書くことができる。前記未反映データを前記メモリから前記第一のDB記憶装置に書き出し、それにより、前記第一のDB記憶装置に書かれる前記未反映データを、前記第一のストレージサブシステムから前記第二のストレージサブシステムに送信し、前記第二のログ記憶装置に書くことができる。前記未反映データが前記第一のログ記憶装置及び第二のログ記憶装置の両方に書かれた後、前記DBペア状態を同期/非同期ペア状態から前記ペア解除状態にすることができる。前記DBペア状態を前記ペア解除状態にした後、前記DB更新処理を開始することができる。前記DB更新処理の終了後、前記DBペア状態のペア解除状態を解除することができる。前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記ログレス終了ログを前記第一のログ記憶装置に書くことができる。
第五の実施態様では、前記DBペア状態が前記ペア解除状態となっている場合、前記ログレス開始ログを前記第一のログ記憶装置に書くことができる。前記未反映データを前記メモリから前記第一のDB記憶装置に書き出すことができる。前記DB更新処理を開始する前までに、前記第二のログ記憶装置にログレス開始ログよりも前に書かれたログを用いて、前記第二のDB記憶装置のデータベースを更新し、且つ、該更新後の第二のDB記憶装置のバックアップを前記第二のストレージサブシステムに取得することができる。前記DB更新処理の終了後、前記DBペア状態のペア解除状態を解除することができる。前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記ログレス終了ログを前記第一のログ記憶装置に書くことができる。
第六の実施態様では、前記未反映データを前記メモリから前記第一のDB記憶装置に書き出した後、前記DB更新処理の開始前までに、前記未反映データが反映された前記第一のDB記憶装置のバックアップを前記第一のストレージサブシステムに取得することができる。
第七の実施態様では、前記DBペア状態が前記ペア解除状態となっている場合、前記ログレス開始ログを前記第一のログ記憶装置に書くことができる。前記未反映データを前記メモリから前記第一のDB記憶装置に書き出すことができる。前記DBペア状態のペア解除状態を解除することができる。前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記DB更新処理を開始することができる。前記DB更新処理の終了後、前記DBペア状態を再び前記ペア解除状態とし、その後、前記ログレス終了ログを前記第一のログ記憶装置に書くことができる。
第八の実施態様では、前記DB更新処理の終了後、前記DBペア状態を再び前記ペア解除状態とした後、前記第二のストレージサブシステムが前記第一のストレージサブシステムに対してログレスモードの解除の要求を行い、前記第一のストレージサブシステムが、該要求に従って、前記ログレス終了ログを前記第一のログ記憶装置に書くことができる。
第九の実施態様では、前記第一のDB記憶装置がダウンした場合、前記第一のログ記憶装置又は前記第二のログ記憶装置に、前記ログレス開始ログが記憶されているが前記ログレス終了ログが記憶されていなければ、前記ログレスモードに対応した回復処理を実行することで、前記第一のDB記憶装置に記憶されていた、前記ダウンの時点になるべく近いデータベースを回復することができる。
本発明に従うデータ管理システム又は方法は、データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に対して発行することができる。また、前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行するDB更新処理を実行することができる。また、開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除するためのペア命令を前記第一のストレージサブシステムに発行することができる。また、前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に発行することができる。
本発明に従う計算機は、ログレス開始ログ発行部、DB操作部、ペア命令部及びログレス終了ログ発行部を備えることができる。ログレス開始ログ発行部は、データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に対して発行することができる。DB操作部は、前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行するDB更新処理を実行することができる。ペア命令部は、開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除するためのペア命令を前記第一のストレージサブシステムに発行することができる。ログレス終了ログ発行部は、前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に発行することができる。
本発明に従うストレージサブシステムは、上述した第一のDB記憶装置及び第一のログ記憶装置と、制御装置とを備える。外部のストレージサブシステムが、前記第一のDB記憶装置とペアを構成することができる第二のDB記憶装置と、前記第一のログ記憶装置とペアを構成することができる第二のログ記憶装置とを備える。この場合、前記制御装置が、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア状態であるDBペア状態がペア解除状態になっている場合に、前記第一のDB記憶装置と前記第二のDB記憶装置とに差分が生じたならば該差分を管理し、該ペア解除状態が解除された場合に、前記第一の記憶制御部が、管理されている前記差分を前記第二の記憶制御部に送信することで、前記第二の記憶制御部に前記差分を前記第二のDB記憶装置に更新させ、それにより、前記第一のDB記憶装置と前記第二のDB記憶装置との差分を無くすことができるように構成されている。また、トランザクションの開始前に、前記第一のログ記憶装置と前記第二のログ記憶装置とのペア状態であるログペア状態が、前記第一のログ記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のログ記憶装置へと転送される同期/非同期ペア状態となっており、それにより、前記第一のログ記憶装置にデータが書かれる場合、前記制御装置が、該データを前記第二のログ記憶装置に書くよう前記外部のストレージサブシステムに送信するようになっている。前記制御装置は、データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に書くことができる。また、前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行するDB更新処理を実行することができる。また、開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除することができる。また、前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に書くことができる。
上述した記憶制御方法、データベース管理システム又は方法、計算機、又はストレージサブシステムで行われる処理は、所定の各部によって実行することができる。各部は各手段と言い換えることができる。各部或いは各手段は、ハードウェア(例えば回路)、コンピュータプログラム、或いはそれらの組み合わせ(例えば、コンピュータプログラムを読み込んで実行する一又は複数のCPU)によって実現することもできる。各コンピュータプログラムは、コンピュータマシンに備えられる記憶資源(例えばメモリ)から読み込むことができる。その記憶資源には、CD−ROMやDVD(Digital Versatile Disk)等の記録媒体を介してインストールすることもできるし、インターネットやLAN等の通信ネットワークを介してダウンロードすることもできる。上述したデータベース管理システムは、コンピュータプログラムとすることができる。また、上述したデータベース管理システムは、ストレージサブシステムに搭載することもできるし、ストレージサブシステムを制御するホスト計算機に搭載することもできる。
本発明によれば、DB更新履歴を含んだログを作成しないようにしてもデータベースの回復が行うことができる。
図1は、本発明の一実施形態のシステム全体の構成例を示す。
例えば、正サイト30Aと、正サイト30Aから地理的に離れた副サイト30Bとがある。クライアント1が、第一の通信ネットワーク10を介して、正サイト30A内の後述の正サーバ11A、又は、副サイト30B内の後述の副サーバ11Bにアクセスすることができる。クライアント1は、一種の計算機であり、例えば、CPU3や、記憶資源5や、第一通信ネットワーク10に接続することができるポート9を備えることができる。記憶資源5は、例えば、メモリ及び/又は補助記憶装置(例えばハードディスクドライブ(以下、HDD))である。記憶資源5は、データや複数種類のコンピュータプログラム、例えば、バッチ業務を実行するためのコンピュータプログラム(以下、バッチ業務プログラム)7を記憶することができる。CPU3は、バッチ業務プログラムを読み込んで実行することができる。以下、CPUがコンピュータプログラムを読み込んで実行することにより行われる処理の主体を、説明を分かりやすくするために、CPUではなくコンピュータプログラムとする場合がある。
正サイト30Aと副サイト30Bは同様の構成にすることができる。以下、各サイト内の同種の要素には、親番号と子符号のセットを付し、正サイト30A内の要素には、子符号としてAを付し、副サイト30B内の要素には、子符号としてBを付す。以下、正サイト30Aと副サイト30Bについて、正サイト30Aを代表的に例に採り説明する。
正サイト30Aには、正サーバ11Aと正ストレージサブシステム31Aが備えられる。正サーバ11Aは、第二通信ネットワーク20Aを介して正ストレージサブシステム31Aにアクセスすることができる。
正サーバ11Aは、ホスト計算機の一種であり、例えば、CPU13Aや、記憶資源15Aや、第一通信ネットワーク10に接続することができるポート18Aや、第二通信ネットワーク20Aに接続することができるポート19Aを備えることができる。記憶資源15Aは、例えば、メモリ及び/又は補助記憶装置(例えばHDD)である。記憶資源15Aは、データや複数種類のコンピュータプログラム、例えば、データベース管理システム(以下、DBMS)17Aを記憶することができる。CPU13Aは、DBMS17Aを読み込んで実行することができる。
正ストレージサブシステム31Aは、複数のディスク装置(例えばHDD、他種の物理的な記憶装置であっても良い)37Aと、ディスク装置へのアクセスを制御する制御装置34Aとを備える。制御装置34Aは、例えば、第二通信ネットワーク20Aに接続することができるポート32Aと、第三通信ネットワーク40に接続することができるポート38Aと、ディスク装置37Aに接続することができるポート36Aと、CPU33Aと、メモリ35Aとを備える。制御装置34Aは、ポート38Aから第三通信ネットワーク40を介して、副サイト30Bの副ストレージサブシステム31Bにアクセスすることができる。副ストレージサブシステム31Bは、副サーバ11Bと第二通信ネットワーク20Bを介して通信することができる。
上記の構成において、第一通信ネットワーク10、第二通信ネットワーク20A、20B及び第三通信ネットワーク40のうちの少なくとも二つが一つのネットワークであっても良い。また、クライアント1、サーバ11A、11B、ストレージサブシステム31A及び31Bの少なくとも一つが、一つの装置に仮想的に生成されたもの(つまりいわゆる仮想コンピュータ)であっても良い。また、制御装置34A、34Bの上述した構成は一例であり、他の構成を採用することもできる。例えば、制御装置34A及び34Bの少なくとも一方が、上記の構成に代えて、外部の装置(例えばサーバ或いは自分以外のストレージサブシステム)との通信を制御する複数の第一の制御部(例えば制御回路基板)と、ディスク装置との通信を制御する複数の第二の制御部(例えば制御回路基板)と、外部の装置とディスク装置との間で授受されるデータを記憶することができるキャッシュメモリと、ストレージサブシステムを制御するためのデータを記憶することができる制御メモリと(キャッシュメモリと制御メモリとは別々のメモリでなくても良い)、各第一の制御部、各第二の制御部、キャッシュメモリ及び制御メモリを接続する接続部(例えば、クロスバスイッチなどのスイッチ)とを備えることができる。この場合、第一の制御部と第二の制御部の一方が、又は双方が協働して、制御装置34A或いは34Bとしての処理を行うことができる。また、正サーバ11Aと正ストレージサブシステム31Aが一体的になっていてもよい(具体的には、例えば、正サーバ11Aの機能(例えばDBMS17A)が正ストレージサブシステム31Aに備えられても良い)。同様に、副サーバ11Bと副ストレージサブシステム31Bが一体的になっていてもよい。
図2は、本実施形態に係るストレージシステムの構成例を示す。前述した通り、正サイト30Aも副サイト30Bも実質的に同じ構成とすることができるので、以下、正サイト30Aについて主に説明する。
DBMS17Aは、DBアクセス制御部111と、チェックポイント処理部112Aと、ログ管理部113と、DB遅延書き込み処理部114とを有している。正サーバ11Aの記憶資源15A(例えばメモリ)では、DBバッファ211Aとログバッファ212Aが用意される。また、記憶資源15Aには、DB−ディスクマッピングテーブル213Aが記憶される。
DBアクセス制御部111Aは、DBバッファ211Aを介して正DBVOL51Aにデータを格納(つまりDBを更新)したり、ログバッファ212Aを介して正ログVOL55Aにログを格納したりすることを制御する。チェックポイント処理部112Aは、DBバッファ211Aに記憶されているデータを正ストレージサブシステム31Aに反映させる必要が生じた場合に、DBバッファ211Aで更新された全DBブロック及びその時点で最新のログレコードの正ログVOL55Aとその位置を示すステータス情報の書き込み要求を、正ストレージサブシステム31Aへ送信する。
チェックポイント時にトランザクションが完結していないものもあるため、このステータス情報は最新のログレコードの位置以外にも、未完了トランザクションに関連する最も古いログレコードの位置を示す場合がある。また、ステータス情報がディスク上で更新されるのが遅延している場合もある。どちらの場合にも、このステータス情報は、DBMS17Aがリスタートする際に参照を開始するログの位置を示す情報として利用することができる。
ログ管理部113は、DBバッファ211Aに対して行われたDB処理の内容を示すログ情報であるログブロックの書き込み要求を正ストレージサブシステム31Aへ送信する。DB遅延書き込み処理部114は、DBバッファ211A上のデータの書き込み要求を正ストレージサブシステム31Aへ送信する。
制御装置34AのCPU33Aに読み込まれて実行されるコンピュータプログラムとしては、ディスク制御プログラム315Aと、ディスクアクセス制御部313Aとがある。ディスク制御プログラム315Aは、コマンド処理部321Aと、正リモートコピー処理部317Aとがある。ディスク制御プログラム315Aは、正リモートコピー管理テーブル319Aをメモリ35Aから取得することができる。また、正ストレージサブシステム31Aには、複数のディスク装置37Aが有する物理的な記憶資源を利用して複数の論理ボリューム(以下、VOL)を設定することができる。複数のVOLには、例えば、DBが格納されるVOL(以下、正DBVOL)51Aと、ステータス情報が格納されるVOL(以下、正ステータスVOL)53Aと、ログが格納されるVOL(以下、正ログVOL)55Aとが備えられる。本実施形態では、VOLペアのコピー元となるVOLを正VOLとし、コピー先となるVOLを副VOLとしている。VOLの属性(正と副)を反転させれば、コピー元とコピー先を逆にすることができ、故に、副VOLから正VOLへのコピーも行うことができる。また、VOL間のデータコピーでは、正VOLからデータが読み出されて副VOLへとコピーされても良いし、正VOLに書かれるデータであってキャッシュメモリ311Aに残されているデータが副VOLへとコピーされても良い。
ディスク制御プログラム315Aは、正ストレージサブシステム装置全体の動作を制御することができる。コマンド処理部321Aは、DBブロック(DBに含められるデータブロック)、前述したステータス情報、又はログブロック(ログを構成するデータブロック)の書き込み要求を正サーバ11Aから受信し、その受信した書き込み要求の内容に従って、正DBVOL51A、正ステータVOL53A及び正ログVOL55A、またはそれらの内容を格納したキャッシュメモリ311A(メモリ35Aの一部)の更新を行うことができる。
正リモートコピー処理部317Aは、正リモートコピー管理テーブル319Aを参照し、その構成情報により同期もしくは非同期のリモートコピーを行うことができる。本実施形態では、受信した書き込み要求がログブロックの書き込み要求である場合に、副ストレージサブシステム31Bへのログブロックの同期型リモートコピーを行うことができる。一方、受信した書き込み要求がDBブロック(又はステータス情報)の書き込み要求である場合に、その書き込み要求を一時的にメモリ35Aに蓄積し、副ストレージサブシステム31Bへの非同期型リモートコピーを行うことができる。
ディスクアクセス制御部23は、各ディスク装置37Aへのアクセスを制御することができる。
正ストレージサブシステム31Aでは、正サーバ11Aからの命令を受けて動作するディスク制御プログラム315Aと、キャッシュメモリ311Aと、ディスクアクセス制御部313Aとを通して、ディスク装置37A上の各VOLへのアクセスが行われており、ディスクアクセスは常にキャッシュメモリ22を介して行われることになる。キャッシュメモリ22は、不揮発性メモリとして構成されても良い。この場合キャッシュメモリ22にデータが格納された時点でそのデータは保証される。
DBアクセス制御部111Aは、トランザクションにより正DBVOL51Aへのアクセスが要求されると、リードコマンドにより、正ストレージサブシステム31AからDBブロックを取得してDBバッファ211Aへ格納し、DBバッファ211A上のDBブロックに対してデータベース処理を行った後、その処理内容を示すログ情報をログバッファ212Aのログブロックに格納することができる。
チェックポイント処理部112Aは、DBバッファ211A上のレコードが更新されたことを示すログレコードが所定件数に達する等、正サーバ11AのDBバッファ211Aの内容を正ストレージサブシステム31A内のディスク装置へ反映させる必要が生じた場合に、DBバッファ211Aで更新された全DBブロック及びその時点で最新のログレコードの位置を示すステータス情報の書き込み要求として、DBブロックやステータス情報の書き込みを行う為のライトコマンドを生成して正ストレージサブシステム31Aへ送信することができる。
ログ管理部113Aは、トランザクションのコミット時、ログ情報の記録が開始されてから所定の時間が経過するかログバッファ212Aの空きが無くなる等の所定条件に達した場合に、ログバッファ212Aに格納されているログブロックの正ログVOL55Aへの書き込み要求として、ログブロックの書き込みを行う為のライトコマンドを生成して正ストレージサブシステム31Aに送信することができる。
DB遅延書き込み処理部114Aは、データベース処理が開始されてから所定の時間が経過するかDBバッファ211Aの空きが無くなる等の所定条件に達した場合に、DBバッファ211A上のDBブロックの正DBVOL51Aへの書き込み要求として、DBブロックの書き込みを行う為のライトコマンドを生成して正ストレージサブシステム31Aへ送信することができる。
本実施形態では、前述した通り、ログブロックは、同期型のリモートコピーがされる。具体的には、例えば、正サーバ11Aからログブロックの書き込みを要求が送信されると、正ストレージサブシステム31Aは、その書き込み要求と共に送信されたログブロックをキャッシュメモリ311Aに書き込み、副ストレージサブシステム31Bに、そのログブロックの書き込み要求(以下、リモートコピー要求)を送信し、その完了を待つ。副ストレージサブシステム31Bは、そのリモートコピー要求と共に送信されたログブロックをキャッシュメモリ311Bに書き込んだ後、その書き込みが完了したことを示すリモートコピー完了通知を生成して正ストレージサブシステム31Aへ送信する。正ストレージサブシステム31Aは、副ストレージサブシステム31Bからリモートコピー完了通知を受信すると、ログブロックの書き込みが完了したことを示す完了通知を生成して正サーバ17Aへ送信する。
一方、本実施形態では、前述した通り、DBブロック(或いはステータス情報)は、非同期型のリモートコピーがされる。具体的には、例えば、正サーバ11AからDBブロックの書き込み要求が送信されると、正ストレージサブシステム31Aは、その書き込み要求と共に送信されたDBブロックをキャッシュメモリ311Aに書き込み、そのDBブロックの書き込みが完了したことを示す完了通知を生成して正サーバ11Aへ送信する。その後、正ストレージサブシステム31Aは、キャッシュメモリ311A上のDBブロックのリモートコピー要求を副ストレージサブシステム31Bへ送信して、その完了を待つ。副ストレージサブシステム31Bは、そのリモートコピー要求と共に送信されたDBブロックを受信した後、その要求が完了したことを示すリモートコピー完了通知を生成して正ストレージサブシステム31Aへ送信する。
さて、以下、前述したDB−ディスクマッピングテーブル213Aや正リモートコピー管理テーブル319Aについて説明する。
図3Aは、DB−ディスクマッピングテーブル213Aの構成例を示す。
DB−ディスクマッピングテーブル213Aには、例えば、DB領域を識別する為の情報であるデータベース領域IDと、そのデータベース領域IDで識別されるDB領域が複数のファイルで構成される場合のファイルの番号を示すファイルIDと、そのDB領域中のデータがDBデータ(DB)、ログ情報(ログ)またはステータス情報(ステータス)のいずれであるかを示す種別とが記録される。また、例えば、そのDB領域にアクセスする制御装置34Aを識別する為のID(正制御装置ID)と、そのDB領域を有するVOLのID(正物理デバイスID)と、そのDB領域に対応付けられている制御装置34BのID(副制御装置ID)と、そのDB領域を有したVOLとペアを構成することができる副VOLのID(副物理デバイスID)も記録される。
図3Bは、正リモートコピー管理テーブル319Aの構成例を示す。
正リモートコピー管理テーブル319Aには、例えば、各VOLペア毎に、書き込み処理が同期または非同期のいずれで行われるかを示すコピーモードと、そのコピーモードで書き込み処理が行われる正と副の制御装置のIDと、VOLペアを構成する正VOLのID(LUN)と副VOLのIDとが記録される。更に、各VOLペア毎に、ペア状態を記録することもできる。ペア状態としては、例えば、同期/非同期ペア状態(正VOLに書かれるデータが同期又は非同期で副VOLにコピーされることにより、正VOL内のデータ群と副VOL内のデータ群とを同じにできるような状態)、ペア解除状態(正VOLが更新されても副VOLにデータが更新されず、正VOLと副VOLとの差分が正ストレージサブシステム31Aで管理される状態)がある。
DB−ディスクマッピングテーブル213Aと正リモートコピー管理テーブル319Aの情報により、ログブロック、DBブロック及びステータス情報がそれぞれ同期または非同期のどちらで副ストレージサブシステム31Bへ書き込まれるかがわかる。例えば、データベース領域ID「LOG1」のログブロックは、図3Aより、正制御装置IDが「CTL#A1」で正物理デバイスIDが「VOL12-A」のVOLに書き込まれるが、図3Bより、正制御装置ID「CTL#A1」で正VOLID「VOL12-A」のVOLのコピーモードは「同期」であるので、データベース領域ID「LOG1」のログブロックは、同期型リモートコピーにより副ストレージサブシステム31Bへ書き込まれる。
本実施形態では、複数種類のコピー方式、例えば、以下の二種類のコピー方式を採用することができる。複数種類のコピー方式は、自動或いは手動で、選択することができる。
第一種のコピー方式は、図4Aに例示するように、正ログVOL55Aにログブロックが書かれた場合に、そのログブロックを同期型リモートコピーで、ペア相手の副ログVOL55Bに書き、正DBVOL51AにDBブロックが書かれた場合に、そのDBブロックを非同期型リモートコピーで、ペア相手の副DBVOL51Bに書く方式である。このコピー方式は、例えば、特願2003−96725号の明細書及び図面に記載の技術を援用することができる。
第二種のコピー方式は、図4Bに例示するように、正ログVOL55Aにログブロックが書かれた場合に、そのログブロックを同期型リモートコピーで、ペア相手の副ログVOL55Bに書くが、正DBVOL51AにDBブロックが書かれた場合には、原則、そのDBブロックをペア相手の副DBVOL51Bには書かない方式である。第二種のコピー方式では、DBMS17Bのサブセット600が、副ログVOL55B内のログを用いて、副DBVOL51Bを更新する。それにより、正DBVOL51Aに書かれたDBブロックが副DBVOL51Bに書かれなくても、副DBVOL51B内のDBを、正DBVOL51A内の更新後のDBと同じにすることができる。なお、本実施形態で言うサブセット600は、特願2003−128163号の明細書及び図面に記載のサブセットを援用することができる。また、サブセット600は、更なる機能を有することもできる。
ログを用いてDBを更新するためには、ログに、トランザクションに関わるステータス(以下、トランザクションステータス、例えば、開始或いはコミット)の他に、DBに対する更新履歴(以下、DB更新履歴、例えば、どこのブロックに何を書いたか)が記録されている必要がある。すなわち、正サーバ11AのDBMS17Aが、トランザクションステータス及びDB更新履歴の両方を含んだログを正ログVOL55Aに書くようにすることで、サブセット600が、ログを用いて副DBVOL51Bを更新することができる。
しかし、どんな場合にも必ず、トランザクションステータス及びDB更新履歴の両方を含んだログを作成するようにすると、処理の遅延が生じ得る。これは、或る時間内にDBの更新回数が或る回数よりも多い処理(以下、多数更新処理)の場合に特に問題となり得る。多数更新処理の代表的な例としては、バッチ処理を挙げることができる。
そこで、本実施形態では、ログの制御(例えば、ログを作成するか否か、ログにどんな情報を記載するかなど)に関するモード(以下、ログ制御モード)という概念が用意される。ログ制御モードには、ログ取得モードと、ログレスモードとの少なくとも2種類がある。ログ取得モードでは、作成するログに、トランザクションステータス及びDB更新履歴の両方が含められ、DBの更新の都度に作成される。ログレスモードでは、作成するログに、トランザクションステータス及びDB更新履歴のうち、トランザクションステータスが含められるが、DB更新履歴が含められず、且つ、トランザクションの開始と終了以外では、ログそのものが作成されない。なお、例えば、ログレスモードでのトランザクションにおいて、DBが更新された場合、DB更新履歴の無いログが作成されて正ログVOL55Aに書かれても良い。
図5は、DBMS17Aが行う処理の流れの一例の概要を示す。DBMS17Aが手動で操作されることによりこの処理流れが行われるが、自動で行われても良い。
DBMS17Aは、例えば、クライアント計算機1のバッチ業務プログラム7からトランザクション開始指示(具体的には、バッチ業務の開始指示)を受信した場合に、トランザクション開始指示に含まれているログ制御モードがログレスモードかログ取得モードかを判定する(ステップS1)。ログレスモードであれば(S1でYES)、DBMS17Aは、正DBVOL51Aの更新前のDBのバックアップを取得した後に(S2)、S3を行い、ログ取得モードであれば(S1でNO)、S2を行うことなくS3を行う。なお、S2でのバックアップの取得とは、例えば、DBMS17Aが、正DBVOL51Aと同じVOLを正ストレージサブシステム31A内に生成することである。具体的には、例えば、DBMS17Aが、正ストレージサブシステム31Aに対し、正ストレージサブシステム31A内のVOLであって、所定の条件に適合するVOL(例えば正DBVOL51Aと記憶容量が同じであるVOL)を正DBVOL51Aとペアにさせ、そのVOLに、正DBVOL51A内の更新前のDBをコピーさせることができる。その後、DBMS17Aが、スプリット命令を送ることにより、そのVOLと正DBVOL51Aとのペア状態をペア解除状態にさせることができる。
S3では、DBMS17Aは、バッチ業務を実行する。バッチ業務では、例えば、DBMS17Aが、ログ取得モードであれば、クライアント計算機1のバッチ業務プログラム7からのデータを正DBVOL51Aに書くと共に、DB更新履歴を含んだログを生成して正ログVOL55Aに書く。一方、ログレスモードであれば、バッチ業務ではログが作成されない。
正常にバッチ業務が完了した場合(S4でYES)、S1でログレスモードであれば(S5でYES)、DBMS17Aは、正DBVOL51A内の更新後のDBのバックアップを取得し(S6)、ログレスモード解除の旨のログを正ログVOL55Aに書く(S7)。それによりトランザクションが決着する。S4でYESの場合、S1でログ取得モードであれば(S5でNO)、DBMS17Aは、S6及びS7を行うことなく終了する。S6では、例えば、S2と同様の方法でバックアップを取得することができる。或いは、例えば、S3のバッチ業務において、S2で取得したバックアップと、正DBVOL51A内のDBの差分(例えば、DBVOL51Aのどのブロックで最終的にどんなデータが書かれたか)を管理し、その差分を、S2で取得したバックアップに反映することで(例えば、差分として管理されていた更新後のデータを該バックアップに上書きすることで)、更新後のDBのバックアップを取得しても良い。
正常にバッチ業務が完了しなかった場合(S4でNO)、例えば、障害が生じたことにより異常終了となった場合、正DBVOL51A内のDB領域が閉塞され(S8)、そのDB領域のDBの回復処理が行われる(S9)。
図6Aは、クライアント計算機1のバッチ業務プログラム7と正サーバ11AのDBMS17Aとの通信の流れの一例の概要を示す。この図6Aは、特に、ログレスモードを設定する場合の概要を示す。
バッチ業務プログラム7は、ログレスモードを例えば環境変数の一種として設定したトランザクション開始指示を生成し、そのトランザクション開始指示を正サーバ11Aに送信する(S10A)。DBMS17Aは、トランザクション開始指示を受付けており、トランザクション開始指示を受けた場合には、その旨のログを作成して正ログVOL55Aに書く(S10B)。作成されるログには、例えば、図6Bに示すように、ログシーケンス番号、トランザクション番号、ログ制御モード(ログ取得モードかログレスモードか)及びトランザクションステータスなどが書かれる。
バッチ業務プログラム7は、バッチ処理を行う(S11A)。具体的には、例えば、バッチ業務プログラム7は、書込み対象の複数のデータをそれぞれ正サーバ11Aに送信する。DBMS17Aは、複数のデータをそれぞれ受信してバッチ処理(DB操作処理)を行う(S11B)。このDB操作処理では、ログレスモードでの処理であり、ログは作成されない。
バッチ業務プログラム7は、ログレスモードでのバッチ処理が終わったならば、ログレスモード解除を設定したコマンドを正サーバ11Aに送信することにより、トランザクションを決着させる(S12A)。DBMS17Aは、そのコマンドからログレスモード解除を認識し、ログレスモード解除を表すログを作成して正ログVOL55Aに書くことで、トランザクションを決着させる(S12B)。
図7は、一つのトランザクションの開始から終了までに行われる処理の流れの一例の詳細を示す。
この図7に示す流れは、例えば、正DBVOL51Aと副DBVOL51Bとのペア状態が同期/非同期ペア状態の場合、或いは、図4Aを参照して説明した第一種のコピー方式が選択されている場合に行われる流れである。この流れでは、正ログVOL55Aと副ログVOL55Bとが同期/非同期ペア状態にされているが、もし、そのペア状態になっていない場合には、例えば、DBMS17Aが、前もって、所定のコマンドを正ストレージサブシステム31Aに送信することにより、そのペア状態を同期/非同期ペア状態にさせることができる。
DBMS17Aは、まず、ログレスモードの開始を表すログを作成して正ログVOL55Aに書く。この場合、正ログVOL55Aと副ログVOL55Bとが同期/非同期ペア状態でありコピーモードが同期になっているので、正ログVOL55Aに書かれたログが、同期型リモートコピーにより、副ログVOL55Bに書かれる。
DBMS17Aは、そのログの書込みの完了通知を正ストレージサブシステム31Aから受けた後(つまり、同期型リモートコピーが完了した後)、正DBVOL51Aに更新されていないDBブロックがDBバッファ211に残っていれば、強制的に、そのDBブロックを正DBVOL51Aに書き出す。その書き出されたDBブロックは、非同期型リモートコピーにより、副DBVOL51Bに書かれる。
DBMS17Aは、DBブロックのライトコマンド(強制的な書き出し)についての完了通知を正ストレージサブシステム31Aから受けた後(つまり、非同期型リモートコピーが完了した後)、正DBVOL51Aと副DBVOL51Bとのペア状態をペア解除状態にするためのスプリット命令を正ストレージサブシステム31Aに送信する。制御装置34Aのディスク制御プログラム315Aは、例えば、非同期型リモートコピーの完了通知を副ストレージサブシステム31Aから受けていれば、スプリット命令を副ストレージサブシステム31Bに送信する(その完了通知を受けていない場合には、その命令を受けてからスプリット命令を送信するようにしてもよい)。DBブロックの非同期型リモートコピーが完了している場合には、その命令に対して所定の応答が、副ストレージサブシステム31Bから正ストレージサブシステム31Aに返り、その時点で、正DBVOL51Aと副DBVOL51Bとのペア状態をペア解除状態にされる(例えば、その旨が、正リモートコピー管理テーブル319Aに書かれる)。正ストレージサブシステム31Aは、スプリット完了をDBMS17Aに報告する。
その報告を受けたら、DBMS17Aは、バッチ処理(DB操作処理)を実行する。すなわち、正DBVOL51A内のDBの更新を開始する。その間、ログレスモードでのDB操作処理なので、DBMS17Aは、ログを作成することなくDBの更新を行う。制御装置34Aは、正DBVOL51Aと副DBVOL51Bとの差分を管理することができる。その差分とは、バッチ処理により生じた差分であって、例えば、正DBVOL51Aのどのブロックにどんなデータが書かれたかである。
DBの更新が終了した場合(バッチ処理が終了した場合)、DBMS17Aは、正DBVOL51Aと副DBVOL51Bとのペア解除状態を解除する命令(以下、再ペア命令)を正ストレージサブシステム31Aに送信する。これにより、再ペア中となる。具体的には、正DBVOL51Aと副DBVOL51Bとのペア状態が同期/非同期ペア状態に戻されると共に、正DBVOL51Aと副DBVOL51Bとの差分が、副DBVOL51Bに反映される。より具体的には、例えば、副DBVOL51Bには書かれていないが正DBVOL51Aに最終的に書かれたデータの全てが、副DBVOL51BのDBに書かれる。
差分の反映が終了した旨の通知を正ストレージサブシステム31Aから受信した場合、DBMS17Aは、ログレスモードの解除を表すログを正ログVOL55Aに書く。そのログは、同期型リモートコピーにより、副ログVOL55Bに書かれる。そのログの書き込みの完了を正ストレージサブシステム31Aから受信したならば、トランザクションの終了となる。
図8は、一つのトランザクションの開始から終了までに行われる処理の流れの別の一例の詳細を示す。以下、図7との相違点を主に説明し共通点については説明を省略或いは簡略する。
この図8に示す流れは、例えば、正DBVOL51Aと副DBVOL51Bとのペア状態がペア解除状態の場合、或いは、図4Bを参照して説明した第二種のコピー方式が選択されている場合に行われる流れである。
DBMS17Aは、DBブロックのライトコマンドについての完了通知を正ストレージサブシステム31Aから受けた後(つまり、DBブロックの強制的な書き出しが終了した後)、正DBVOL51Aのバックアップを取得する。具体的には、例えば、図9に例示するように、DBMS17Aが、正ストレージサブシステム31Aに対し、正ストレージサブシステム31A内のVOLであって、所定の条件に適合するVOL(例えば正DBVOL51Aと記憶容量が同じであるVOL)52Aを、副DBVOLとして、正DBVOL51Aとペアにさせ(例えば同期/非同期ペア状態にさせ)、その副DBVOL52Aに、正DBVOL51A内の更新前のDBをコピーさせることができる。その後、DBMS17Aが、スプリット命令を送ることにより、そのVOLと正DBVOL51Aとのペア状態をペア解除状態にさせることができる。これにより、正DBVOL51Aの以後の更新が、副DBVOL52Aに反映されてしまうことを防ぐことができる。
その後、DBMS17Aは、DB更新を開始することができる。
なお、この図8では、DBブロックの強制的な書き出しの前から、正DBVOL51Aと副DBVOL51Bとのペア状態がペア解除状態になっているので、その書き出しについても、差分管理を行うことができる。副サイト10Bでは、サブセット600が、DB更新終了後の再ペアまでの間に、副ログVOL55Bに書かれた、ログレスモード設定を表すログの前までのログを用いて、副DBVOL51BのDBを更新し、更に、その更新後のDBのバックアップを取得することができる。具体的には、例えば、図9に例示するように、サブセット600が、副ストレージサブシステム31B内のVOLであって、所定の条件に適合するVOL(例えば副DBVOL51Bと記憶容量が同じであるVOL)を、副DBVOL52Bとし、副DBVOL51Bを正DBVOLとして、それらをペアにさせ(例えば同期/非同期ペア状態にし)、DBVOL52Bに、副DBVOL51B内の更新後のDBをコピーさせることができる。その後、サブセット600が、スプリット命令を送ることにより、そのVOL52Bと副DBVOL51Bとのペア状態をペア解除状態にさせることができる。
このように、ログを用いて副DBVOL51Bを更新しておくことで、副DBVOL51Bを、ログレスモードによるトランザクション開始前の正DBVOL51Aと同じにすることができる。また、その更新後の副DBVOL51Bのバックアップを取得しておくことで、例えば、正DBVOL51AのDB更新終了後の再ペア化による差分反映中に、正DBVOL51A及び副DBVOL51Bに障害が発生しても、副DBVOL51Bの上記バックアップを、正ストレージサブシステム31Aにコピーすることにより、トランザクション開始前の正DBVOL51Aを回復することができる。
なお、副DBVOL51Bのバックアップの取得は、例えば、副ログVOL55Bに、ログレスモード設定を表すログが書かれ、サブセット600がそれを検出した場合に、自動的に行われても良い。抽象的には、副DBVOL51Bのバックアップの取得は、例えば、副ログVOL55Bに、ログレスモード設定を表すログが同期型リモートコピーにより書かれた場合に、行われても良い。
図10は、一つのトランザクションの開始から終了までに行われる処理の流れのまた別の一例の詳細を示す。
この図10に示す流れは、例えば、正DBVOL51Aと副DBVOL51Bとのペア状態がペア解除状態の場合、或いは、図4Bを参照して説明した第二種のコピー方式が選択されている場合に行われる流れである。言い換えれば、この図10に示す流れは、図8に示した流れの別の例である。図8と図10のどちらの処理流れが行われるようにするかは、自動或いは手動で選択することができる。以下、図8の相違点を主に説明する。
この流れでは、DBバッファの強制的な書き出しの後、DB更新開始までに、正DBVOL51Aのバックアップ取得が行われず、その代わりに、正DBVOL51Aと副DBVOL51Bとが再ペア化される(再ペア命令が発行される)。この再ペア化では、同期/非同期ペア状態にされても良い。正ストレージサブシステム31AがDBMS17Aから再ペア命令を受けた場合には、前述したように、正DBVOL51Aと副DBVOL51Bとの差分が副DBVOL51Bに反映されることにより、副DBVOL51Bが正DBVOL51Aの複製となる。その後、DB更新(バッチ処理)が開始される。
DB更新の終了後、DBMS17Aは、正DBVOL51Aと副DBVOL51Bとのペア状態をペア解除状態にするためのスプリット命令を正ストレージサブシステム31Aに送信する。正DBVOL51Aと副DBVOL51Bとのペア状態は、バッチ処理における最後のデータが副DBVOL51Bに書かれた場合に、ペア解除状態となる。その後、ログレスモードの解除を表すログが正ログVOL55Aに書かれ、それにより、そのログが副ログVOL55Bにも書かれて、トランザクションの終了となる。
図11は、一つのトランザクションの開始から終了までに行われる処理の流れの更にまた別の一例の詳細を示す。
図11に示す流れは、図10の流れと実質的に同じである。相違点は、図10に示す流れでは、サブセット600が、副サーバ11Bに存在する場合の流れであるが(図8でも、サブセット600は副サーバ11Bに存在してもよい)、この図11に示す流れは、サブセット600が、副ストレージサブシステム31Bに存在する場合の流れである。すなわち、サブセット600は、副サーバ11Bと副ストレージサブシステム31Bのどちらに存在してもよい。
ディスク制御プログラム315Aは、DBMS17Aからスプリット命令を受けた場合、スプリット命令を、副ストレージサブシステム31Bのディスク制御プログラム315Bに送信する。DBMS17Aからのスプリット命令に応答して、正DBVOL51Aと副DBVOL51Bとのペア状態が再びペア解除状態にされた場合、ディスク制御プログラム315Bが、サブセット600に対して、スプリット終了を通知することができる。その場合、サブセット600が、ディスク制御プログラム315Bに対して、ログレスモードの解除を指定することができる。ディスク制御プログラム315Bは、サブセット600からログレスモードの解除を受けた場合、ログレスモードの解除をディスク制御プログラム315Aに通知する。ディスク制御プログラム315Aが、その通知に応答して、ログレスモード解除を表すログを生成し、そのログを正ログVOL55Aに書込む。それにより、ログレスモード解除が書かれたログが、副ログVOL55Bに書かれる。
以上が、トランザクションの開始から終了までに行われる処理流れの幾つかの例である。
トランザクション中に障害が生じた場合、回復処理を行うことができる。その際、例えば、図12Aに示すように、正DBVOL51Aに障害が発生した場合、DBMS17A或いはディスク制御プログラム315Aが、正ログVOL55Aを参照し、ログレスモード設定のログがあるがログレスモード解除のログが無い場合には(S20でYES)、ログレスモードに対応した回復処理を行い(S22)、そうでない場合には(S20でNO)、ログ取得モードに対応した回復処理を行うことができる。また、例えば、正サイトがダウン(或いは正ストレージサブシステム31Aがダウン)した場合、いわゆるディザスタリカバリが行われ、その際、図12Aに例示したように、DBMS17B或いはディスク制御プログラム315Bが、副ログVOL55Aを参照し、ログレスモード設定のログがあるがログレスモード解除のログが無い場合には(S20でYES)、ログレスモードに対応した回復処理を行い(S22)、そうでない場合には(S20でNO)、ログ取得モードに対応した回復処理を行うことができる。
図12Bは、ログレスモードに対応した回復処理の一例を示す。以下、(A)図7の場合と、(B)図8、図10及び図11の場合とに分けて説明する。
(A)図7の場合。
トランザクション開始〜DB更新開始の間で正DBVOL51Aがダウンした場合、特段の回復処理が行われない。もし、強制的に書き出されたDBブロックの非同期型リモートコピーが完了した旨の通知を副ストレージサブシステム31Bから受けた後に、正DBVOL51Aがダウンしたならば、DBMS17A或いはディスク制御プログラム315Aは、副DBVOL51Bを正ストレージサブシステム31Aにリモートコピーし、それによる副DBVOL51Bの複製を、正DBVOL51Aとして回復しても良い。また、例えば、副ログVOL55Bに、ログレスモード設定を表すログが書かれた場合に、それよりも前のログを用いて更新された後の副DBVOL51Bのバックアップが取得されても良く、その場合には、そのバックアップが正ストレージサブシステム31Aにリモートコピーされることにより、正DBVOL51Aが回復されてもよい。
DB更新開始〜終了(つまりバッチ処理中)で正DBVOL51Aがダウンした場合、DBMS17A或いはディスク制御プログラム315Aは、副DBVOL51Bを正ストレージサブシステム31Aにリモートコピーし、それによる副DBVOL51Bの複製を、正DBVOL51Aとして回復することができる。
再ペア中に正DBVOL51Aがダウンした場合、DBMS17A或いはディスク制御プログラム315Aは、ログレスモードの解除を表すログを生成して正ログVOL55Aに書込む。
ログレスモードの解除を開始してから終了までの間に正DBVOL51Aがダウンした場合、DBMS17A或いはディスク制御プログラム315Aは、特段の回復処理を行わない。
(B)図8、図10及び図11の場合。
トランザクション開始〜DB更新開始の間で正DBVOL51Aがダウンした場合、特段の回復処理が行われない。もし、強制的に書き出されたDBブロックの非同期型リモートコピーが完了した旨の通知を副ストレージサブシステム31Bから受けた後に、正DBVOL51Aがダウンしたならば、DBMS17A或いはディスク制御プログラム315Aは、副DBVOL51Bを正ストレージサブシステム31Aにリモートコピーし、それによる副DBVOL51Bの複製を、正DBVOL51Aとして回復しても良い。また、例えば、正DBVOL51A或いは副DBVOL51Bのバックアップが取得されていれば、そのバックアップが正ストレージサブシステム31Aにコピーされ、それにより、正DBVOL51Aが回復されてもよい。
DB更新開始〜終了(つまりバッチ処理中)で正DBVOL51Aがダウンした場合、DBMS17A或いはディスク制御プログラム315Aは、正DBVOL51Aのバックアップ、副DBVOL51Bのバックアップ、又は副DBVOL51Bを正ストレージサブシステム31Aにコピーし、それによる複製を、正DBVOL51Aとして回復することができる。
図8における再ペア中、或いは、図10、図11におけるスプリット中に、正DBVOL51Aがダウンした場合、DBMS17A或いはディスク制御プログラム315Aは、正DBVOL51Aと副DBVOL51Bとのペア状態をペア解除状態にし(つまりスプリットし)、ログレスモードの解除を表すログを生成して正ログVOL55Aに書込む。更に、正DBVOL51A或いは副DBVOL51Bのバックアップが正ストレージサブシステム31Aにコピーされ、それにより、正DBVOL51Aが回復されてもよい。
ログレスモードの解除を開始してから終了までの間に正DBVOL51Aがダウンした場合、DBMS17A或いはディスク制御プログラム315Aは、特段の回復処理を行わない。正DBVOL51Aのバックアップ、副DBVOL51Bのバックアップ、又は副DBVOL51Bが正ストレージサブシステム31Aにコピーされ、それにより、正DBVOL51Aが回復されてもよい。
なお、図7、図8、図10及び図11のいずれにおいても、トランザクション中に正サイト30Aがダウンした場合には、いわゆるディザスタリカバリが行われれば、特段の回復処理が行われなくても良い。ディザスタリカバリの際には、例えば、ログレスモード設定を表すログの前までのログ(DB更新履歴が書かれたログ)を用いて副DBVOL51Bを更新し、その更新後の副DBVOL51Bを、バッチ業務プログラム7のバッチ処理で出力されたデータの書き込み先に割り当てることができる。或いは、既に副DBVOL51Bの更新が済んでいる、又は、副DBVOL51Bのバックアップが取得されている場合には、更新済みの副DBVOL51B或いはそのバックアップにより回復が行われても良い。ディザスタリカバリが行われることにより、クライアント1がバッチ業務で送信するデータを、DBMS17Bが受け、DBMS17Bが、そのデータを副DBVOL51Bのデータベースに記録することができる。
以上、上述した実施形態によれば、ログレスモードでトランザクションを実行する場合には、トランザクションの開始の際に、ログレスモードの開始を表すログが生成されて、正ストレージサブシステム31Aと副ストレージサブシステム31Bの両方にそのログが書かれる。また、トランザクションの終了の際には、ログレスモードの終了を表すログが生成されて、正ストレージサブシステム31Aと副ストレージサブシステム31Bの両方にそのログが書かれる。これにより、トランザクション中に障害が生じた場合、そのトランザクションがログレスモードでのトランザクションであるか否かを、最新のログから判別し、その判別の結果に応じた回復処理を実行することができる。具体的には、例えば、最新のログが、ログレスモードの開始を表すログ(ログレスモード設定を表すログ)であれば、ログレスモードでのトランザクションであると判別することができるし、ログレスモードの終了を表すログ(ログレスモード解除を表すログ)或いはDB更新履歴の入ったログであれば、少なくともログレスモードではないトランザクションであると判別することができる。
また、上述した実施形態によれば、ログレスモードの開始を表すログが正ストレージサブシステム31Aに書かれてから、バッチ処理が開始されるまでに、正サーバ11Aのメモリに残っていてDBに未反映のDBデータが強制的にそのDBに書き出される。これにより、正ストレージサブシステム31AでのDBとDBMS17Aで認識されているDBとを一致させることができる。
また、上述した実施形態によれば、ログレスモードでのトランザクション中は、正ストレージサブシステム31A(更には副ストレージサブシステム31B)が有するどの機能をどの時点で発揮させるかを巧みに制御することで、ログレスモードでのトランザクション中に障害が生じても、障害発生時になるべく近いDBを回復することが可能とされている。その機能とは、例えば、以下の通りである。
(1)正VOLと副VOLとのペア状態を同期/非同期ペア状態とすると、正VOLにデータが書かれる場合、それと同期或いは非同期に、副VOLにそのデータが書かれる。
(2)正VOLと副VOLとのペア状態をペア解除状態とすると、正VOLにデータが書かれても、副VOLにはそのデータがコピーされず、正VOLと副VOLとの差分が管理される。
(3)正VOLと副VOLとのペア状態がペア解除状態のときに再ペア命令を発行した場合、正VOLと副VOLとの差分が副VOLに反映されることで、正VOL内のデータ群と副VOL内のデータ群とが同じになる。
以上、本発明の実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲をこの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。例えば、同期型と非同期型のどちらのコピーが行われるかは、コピーモードで制御することに代えて、ペア状態で制御してもよい。具体的には、例えば、同期/非同期ペア状態が、同期型のコピーが行われる同期ペア状態と、非同期型のコピーが行われる非同期ペア状態とに分かれていてもよい。
図1は、本発明の一実施形態のシステム全体の構成例を示す。 図2は、本実施形態に係るストレージシステムの構成例を示す。 図3Aは、DB−ディスクマッピングテーブル213Aの構成例を示す。図3Bは、正リモートコピー管理テーブル319Aの構成例を示す。 図4Aは、第一種のコピー方式の説明図。図4Bは、第二種のコピー方式の説明図。 図5は、DBMS17Aが行う処理の流れの一例の概要を示す。 図6Aは、クライアント計算機1のバッチ業務プログラム7と正サーバ11AのDBMS17Aとの通信の流れの一例の概要を示す。図6Bは、ログの構成例を示す。 図7は、一つのトランザクションの開始から終了までに行われる処理の流れの一例の詳細を示す。 図8は、一つのトランザクションの開始から終了までに行われる処理の流れの別の一例の詳細を示す。 図9は、図8でのバックアップ取得の一例の説明図。 図10は、一つのトランザクションの開始から終了までに行われる処理の流れのまた別の一例の詳細を示す。 図11は、一つのトランザクションの開始から終了までに行われる処理の流れの更にまた別の一例の詳細を示す。 図12Aは、障害が発生した場合に行われる回復処理の選択の一例を示す。図12Bは、ログレスモードに対応した回復処理の一例を示す。
符号の説明
1…クライアント 7…バッチ業務プログラム 11A…正サーバ 11B…副サーバ 17A…DBMS 30A…正サイト 30B…副サイト 31A…正ストレージサブシステム 31B…副ストレージサブシステム 33A…CPU 34A…制御装置 35A…メモリ 211A…DBバッファ 212A…ログバッファ、213A…DB−ディスクマッピングテーブル 311A…キャッシュ領域 51A…正DBVOL 51B…副DBVOL 55A…正ログVOL 55B…副ログVOL

Claims (18)

  1. データベースを備えたストレージシステムで行われる記憶制御方法であって、
    前記ストレージシステムには、第一のストレージサブシステムと第二のストレージサブシステムとが備えられ、前記第一のストレージサブシステムが、データベースを記憶することができる第一のDB記憶装置と、前記データベースのログを記憶することができる第一のログ記憶装置とを備え、前記第二のストレージサブシステムが、前記第一のDB記憶装置とペアを構成することができる第二のDB記憶装置と、前記第一のログ記憶装置とペアを構成することができる第二のログ記憶装置とを備え、
    前記第一のストレージサブシステムが、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア状態であるDBペア状態がペア解除状態になっている場合に、前記第一のDB記憶装置と前記第二のDB記憶装置とに差分が生じたならば該差分を管理し、該ペア解除状態が解除された場合に、管理されている前記差分を前記第二のストレージサブスシステムに送信することで、前記第二のDB記憶装置に該差分を更新させ、それにより、前記第一のDB記憶装置と前記第二のDB記憶装置との差分を無くすことができるように構成されており、
    データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に発行することで、該ログレス開始ログを前記第一のログ記憶装置に書き、
    前記第一のログ記憶装置に書かれる前記ログレス開始ログを前記第一のストレージサブシステムから前記第二のストレージサブシステムに送信することにより、該ログレス開始ログを前記第二のログ記憶装置に書き、
    前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行することで該データベースを複数回更新するDB更新処理を実行し、
    開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除し、
    前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に書き、
    前記第一のログ記憶装置に書かれる前記ログレス終了ログを前記第一のストレージサブシステムから前記第二のストレージサブシステムに送信することにより、該ログレス終了ログを前記第二のログ記憶装置に書く、
    記憶制御方法。
  2. 前記第一のストレージサブシステムを含む第一のシステムに、前記データベースを管理するデータベース管理部と、各記憶装置のペア状態に従うコピーを制御する第一の記憶制御部とが備えられ、前記第二のストレージサブシステムに、前記第一の記憶制御部と通信することができる第二の記憶制御部が備えられ、
    前記データベース管理部及び前記第一の記憶制御部のうちの少なくとも前記第一の記憶制御部が、前記第一のストレージサブシステムに備えられ、
    前記ログレスモードでのトランザクションの開始前に、前記第一のログ記憶装置と前記第二のログ記憶装置とのペア状態であるログペア状態が、前記第一のログ記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のログ記憶装置へと転送される同期/非同期ペア状態となっており、
    前記データベース管理部が、前記ログレス開始ログを作成して前記第一のログ記憶装置に書き、
    前記第一の記憶制御部が、前記ログペア状態が同期/非同期ペア状態になっているために、前記第一のログ記憶装置に書かれる前記ログレス開始ログを前記第二の記憶制御部に送信し、前記第二の記憶制御部が、前記第一の記憶制御部からのログレス開始ログを前記第二のログ記憶装置に書き、
    前記データベース管理部が、前記DB更新処理を実行し、
    開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記データベース管理部が、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除し、
    前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記データベース管理部が、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に書き、
    前記第一の記憶制御部が、前記ログペア状態が同期/非同期ペア状態になっているために、前記第一のログ記憶装置に書かれる前記ログレス終了ログを前記第二の記憶制御部に送信し、前記第二の記憶制御部が、前記第一の記憶制御部からの前記ログレス終了ログを前記第二のログ記憶装置に書く、
    請求項1記載の記憶制御方法。
  3. 前記ログレスモードでのトランザクションの開始から終了までの間、少なくとも前記ログレス開始ログと前記ログレス終了ログが、前記第一のストレージサブシステムの所定の領域への書込みと同期で前記第二のログ記憶装置へと転送される、
    請求項2記載の記憶制御方法。
  4. 前記データベースに書くデータをメモリに一時記憶し、該メモリに記憶したデータを前記第一のDB記憶装置に書くことで前記データベースを更新するようになっている場合に、
    前記ログレス開始ログを前記第一のログ記憶装置に発行した後、前記DB更新処理の開始前に、前記データベースに書かれていないデータである未反映データを前記メモリから前記第一のDB記憶装置へと書き出し、該書き出しが完了した後に、前記DB更新処理を開始する、
    請求項1記載の記憶制御方法。
  5. 前記DBペア状態が、前記第一のDB記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のDB記憶装置へと転送される同期/非同期ペア状態となっている場合、
    前記ログレス開始ログを前記第一のログ記憶装置に書き、
    前記未反映データを前記メモリから前記第一のDB記憶装置に書き出し、それにより、前記第一のDB記憶装置に書かれる前記未反映データを、前記第一のストレージサブシステムから前記第二のストレージサブシステムに送信し、前記第二のログ記憶装置に書き、
    前記未反映データが前記第一のログ記憶装置及び第二のログ記憶装置の両方に書かれた後、前記DBペア状態を同期/非同期ペア状態から前記ペア解除状態にし、
    前記DBペア状態を前記ペア解除状態にした後、前記DB更新処理を開始し、
    前記DB更新処理の終了後、前記DBペア状態のペア解除状態を解除し、
    前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記ログレス終了ログを前記第一のログ記憶装置に書く、
    請求項4記載の記憶制御方法。
  6. 前記DBペア状態が前記ペア解除状態となっている場合、
    前記ログレス開始ログを前記第一のログ記憶装置に書き、
    前記未反映データを前記メモリから前記第一のDB記憶装置に書き出し、
    前記DB更新処理を開始する前までに、前記第二のログ記憶装置にログレス開始ログよりも前に書かれたログを用いて、前記第二のDB記憶装置のデータベースを更新し、且つ、該更新後の第二のDB記憶装置のバックアップを前記第二のストレージサブシステムに取得し、
    前記DB更新処理の終了後、前記DBペア状態のペア解除状態を解除し、
    前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記ログレス終了ログを前記第一のログ記憶装置に書く、
    請求項4記載の記憶制御方法。
  7. 前記未反映データを前記メモリから前記第一のDB記憶装置に書き出した後、前記DB更新処理の開始前までに、前記未反映データが反映された前記第一のDB記憶装置のバックアップを前記第一のストレージサブシステムに取得する、
    請求項6記載の記憶制御方法。
  8. 前記DBペア状態が前記ペア解除状態となっている場合、
    前記ログレス開始ログを前記第一のログ記憶装置に書き、
    前記未反映データを前記メモリから前記第一のDB記憶装置に書き出し、
    前記DBペア状態のペア解除状態を解除し、
    前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記DB更新処理を開始し、
    前記DB更新処理の終了後、前記DBペア状態を再び前記ペア解除状態とし、その後、前記ログレス終了ログを前記第一のログ記憶装置に書く、
    請求項4記載の記憶制御方法。
  9. 前記DB更新処理の終了後、前記DBペア状態を再び前記ペア解除状態とした後、前記第二のストレージサブシステムが前記第一のストレージサブシステムに対してログレスモードの解除の要求を行い、前記第一のストレージサブシステムが、該要求に従って、前記ログレス終了ログを前記第一のログ記憶装置に書く、
    請求項8記載の記憶制御方法。
  10. 前記第一のDB記憶装置がダウンした場合、前記第一のログ記憶装置又は前記第二のログ記憶装置に、前記ログレス開始ログが記憶されているが前記ログレス終了ログが記憶されていなければ、前記ログレスモードに対応した回復処理を実行することで、前記第一のDB記憶装置に記憶されていた、前記ダウンの時点になるべく近いデータベースを回復する、
    請求項1記載の記憶制御方法。
  11. ストレージシステムに備えられるデータベースを管理するデータベース管理システムであって、
    前記ストレージシステムには、第一のストレージサブシステムと第二のストレージサブシステムとが備えられ、
    前記第一のストレージサブシステムが、データベースを記憶することができる第一のDB記憶装置と、前記データベースのログを記憶することができる第一のログ記憶装置と、各記憶装置のペア状態に従うコピーを制御する第一の記憶制御部とを備え、
    前記第二のストレージサブシステムが、前記第一のDB記憶装置とペアを構成することができる第二のDB記憶装置と、前記第一のログ記憶装置とペアを構成することができる第二のログ記憶装置と、前記第一の記憶制御部と通信することができる第二の記憶制御部とを備え、
    前記第一のストレージサブシステムが、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア状態であるDBペア状態がペア解除状態になっている場合に、前記第一のDB記憶装置と前記第二のDB記憶装置とに差分が生じたならば該差分を管理し、該ペア解除状態が解除された場合に、前記第一の記憶制御部が、管理されている前記差分を前記第二の記憶制御部に送信することで、前記第二の記憶制御部に前記差分を前記第二のDB記憶装置に更新させ、それにより、前記第一のDB記憶装置と前記第二のDB記憶装置との差分を無くすことができるように構成されており、
    トランザクションの開始前に、前記第一のログ記憶装置と前記第二のログ記憶装置とのペア状態であるログペア状態が、前記第一のログ記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のログ記憶装置へと転送される同期/非同期ペア状態となっており、それにより、前記第一のログ記憶装置にデータが書かれる場合、前記第一の記憶制御部が、該データを前記第二の記憶制御部に送信し、前記第二の記憶制御部が該データを前記第二のログ記憶装置に書くようになっており、
    前記データベース管理システムが、
    データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に対して発行し、それにより、該ログレス開始ログが前記第一のログ記憶装置に書かれ、
    前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行するDB更新処理を実行し、
    開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除するためのペア命令を前記第一のストレージサブシステムに発行し、それにより、該ペア解除状態が解除され、
    前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に発行し、それにより、該ログレス終了ログが前記第一のログ記憶装置に書かれる、
    データベース管理システム。
  12. 前記データベースに書くデータをメモリに一時記憶し、該メモリに記憶したデータを前記第一のDB記憶装置に発行することで前記データベースを更新するようになっており、前記ログレス開始ログを前記第一のログ記憶装置に発行した後、前記DB更新処理の開始前に、前記データベースに書かれていないデータである未反映データを前記メモリから前記第一のDB記憶装置へと書き出し、該書き出しが完了した後に、前記DB更新処理を開始する、
    請求項11記載のデータベース管理システム。
  13. 前記DBペア状態が、前記第一のDB記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のDB記憶装置へと転送される同期/非同期ペア状態となっている場合、
    前記ログレス開始ログを前記第一のログ記憶装置に発行した後、前記未反映データを前記メモリから前記第一のDB記憶装置へと書き出し、
    前記未反映データが前記第一のログ記憶装置及び第二のログ記憶装置の両方に書かれた後、前記DBペア状態を同期/非同期ペア状態から前記ペア解除状態にするためのスプリット命令を前記第一のストレージサブシステムに発行し、それにより、該DBペア状態がペア解除状態とされ、
    前記DBペア状態を前記ペア解除状態にした後、前記DB更新処理を開始し、
    前記DB更新処理の終了後、前記DBペア状態のペア解除状態を解除するための前記ペア命令を前記第一のストレージサブシステムに発行し、
    前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記ログレス終了ログを前記第一のログ記憶装置に発行する、
    請求項12記載のデータベース管理システム。
  14. 前記DBペア状態が前記ペア解除状態となっている場合、
    前記ログレス開始ログを前記第一のログ記憶装置に発行した後に、前記未反映データを前記メモリから前記第一のDB記憶装置に書き出し、
    前記DB更新処理の終了後、前記DBペア状態のペア解除状態を解除するための前記ペア命令を前記第一のストレージサブシステムに発行し、
    前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記ログレス終了ログを前記第一のログ記憶装置に発行する、
    請求項12記載のデータベース管理システム。
  15. 前記DBペア状態が前記ペア解除状態となっている場合、
    前記ログレス開始ログを前記第一のログ記憶装置に発行した後に、前記未反映データを前記メモリから前記第一のDB記憶装置に書き出し、
    前記DBペア状態のペア解除状態を解除するための前記ペア命令を前記第一のストレージサブシステムに発行し、
    前記ペア解除状態の解除による前記差分の前記第二のDB記憶装置への更新が終了した後、前記DB更新処理を開始し、
    前記DB更新処理の終了後、前記DBペア状態を再び前記ペア解除状態とするために前記スプリット命令を前記第一のストレージサブシステムに発行し、前記DBペア状態がペア解除状態とされた後、前記ログレス終了ログを前記第一のログ記憶装置に発行する、
    請求項12記載のデータベース管理システム。
  16. ストレージシステムに備えられるデータベースを管理するデータベース管理方法であって、
    前記ストレージシステムには、第一のストレージサブシステムと第二のストレージサブシステムとが備えられ、
    前記第一のストレージサブシステムが、データベースを記憶することができる第一のDB記憶装置と、前記データベースのログを記憶することができる第一のログ記憶装置と、各記憶装置のペア状態に従うコピーを制御する第一の記憶制御部とを備え、
    前記第二のストレージサブシステムが、前記第一のDB記憶装置とペアを構成することができる第二のDB記憶装置と、前記第一のログ記憶装置とペアを構成することができる第二のログ記憶装置と、前記第一の記憶制御部と通信することができる第二の記憶制御部とを備え、
    前記第一のストレージサブシステムが、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア状態であるDBペア状態がペア解除状態になっている場合に、前記第一のDB記憶装置と前記第二のDB記憶装置とに差分が生じたならば該差分を管理し、該ペア解除状態が解除された場合に、前記第一の記憶制御部が、管理されている前記差分を前記第二の記憶制御部に送信することで、前記第二の記憶制御部に前記差分を前記第二のDB記憶装置に更新させ、それにより、前記第一のDB記憶装置と前記第二のDB記憶装置との差分を無くすことができるように構成されており、
    トランザクションの開始前に、前記第一のログ記憶装置と前記第二のログ記憶装置とのペア状態であるログペア状態が、前記第一のログ記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のログ記憶装置へと転送される同期/非同期ペア状態となっており、それにより、前記第一のログ記憶装置にデータが書かれる場合、前記第一の記憶制御部が、該データを前記第二の記憶制御部に送信し、前記第二の記憶制御部が該データを前記第二のログ記憶装置に書くようになっており、
    前記データベース管理方法が、
    データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に対して発行し、それにより、該ログレス開始ログが前記第一のログ記憶装置に書かかれ、
    前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行するDB更新処理を実行し、
    開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除するためのペア命令を前記第一のストレージサブシステムに発行し、それにより、該ペア解除状態が解除され、
    前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に発行し、それにより、該ログレス終了ログが前記第一のログ記憶装置に書かれる、
    データベース管理方法。
  17. ストレージシステムに備えられるデータベースを管理する計算機であって、
    前記ストレージシステムには、第一のストレージサブシステムと第二のストレージサブシステムとが備えられ、
    前記第一のストレージサブシステムが、データベースを記憶することができる第一のDB記憶装置と、前記データベースのログを記憶することができる第一のログ記憶装置と、各記憶装置のペア状態に従うコピーを制御する第一の記憶制御部とを備え、
    前記第二のストレージサブシステムが、前記第一のDB記憶装置とペアを構成することができる第二のDB記憶装置と、前記第一のログ記憶装置とペアを構成することができる第二のログ記憶装置と、前記第一の記憶制御部と通信することができる第二の記憶制御部とを備え、
    前記第一のストレージサブシステムが、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア状態であるDBペア状態がペア解除状態になっている場合に、前記第一のDB記憶装置と前記第二のDB記憶装置とに差分が生じたならば該差分を管理し、該ペア解除状態が解除された場合に、前記第一の記憶制御部が、管理されている前記差分を前記第二の記憶制御部に送信することで、前記第二の記憶制御部に前記差分を前記第二のDB記憶装置に更新させ、それにより、前記第一のDB記憶装置と前記第二のDB記憶装置との差分を無くすことができるように構成されており、
    トランザクションの開始前に、前記第一のログ記憶装置と前記第二のログ記憶装置とのペア状態であるログペア状態が、前記第一のログ記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のログ記憶装置へと転送される同期/非同期ペア状態となっており、それにより、前記第一のログ記憶装置にデータが書かれる場合、前記第一の記憶制御部が、該データを前記第二の記憶制御部に送信し、前記第二の記憶制御部が該データを前記第二のログ記憶装置に書くようになっており、
    前記計算機が、
    データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に対して発行するログレス開始ログ発行部と、
    前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行するDB更新処理を実行するDB操作部と、
    開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除するためのペア命令を前記第一のストレージサブシステムに発行するペア命令部と、
    前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に発行するログレス終了ログ発行部と
    を備えた計算機。
  18. 外部のストレージサブシステムと通信可能なストレージサブシステムであって、
    データベースを記憶することができる第一のDB記憶装置と、
    前記データベースのログを記憶することができる第一のログ記憶装置と、
    制御装置と
    を備え、
    前記外部のストレージサブシステムが、前記第一のDB記憶装置とペアを構成することができる第二のDB記憶装置と、前記第一のログ記憶装置とペアを構成することができる第二のログ記憶装置とを備え、
    前記制御装置が、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア状態であるDBペア状態がペア解除状態になっている場合に、前記第一のDB記憶装置と前記第二のDB記憶装置とに差分が生じたならば該差分を管理し、該ペア解除状態が解除された場合に、前記第一の記憶制御部が、管理されている前記差分を前記第二の記憶制御部に送信することで、前記第二の記憶制御部に前記差分を前記第二のDB記憶装置に更新させ、それにより、前記第一のDB記憶装置と前記第二のDB記憶装置との差分を無くすことができるように構成されており、
    トランザクションの開始前に、前記第一のログ記憶装置と前記第二のログ記憶装置とのペア状態であるログペア状態が、前記第一のログ記憶装置に書かれるデータが、前記第一のストレージサブシステムの所定の領域への書込みと同期又は非同期で前記第二のログ記憶装置へと転送される同期/非同期ペア状態となっており、それにより、前記第一のログ記憶装置にデータが書かれる場合、前記制御装置が、該データを前記第二のログ記憶装置に書くよう前記外部のストレージサブシステムに送信し、
    前記制御装置が、
    データベースのログの制御に関するモードであるログ制御モードとして、トランザクション中に前記データベースを更新しても少なくとも該データベースの更新履歴を含んだログを作成しないモードであるログレスモードと、前記ログレスモードとは別のモードとがあり、前記ログレスモードで一つのトランザクションを実行する場合、該トランザクションの開始の際に、前記ログレスモードの開始を表すログであるログレス開始ログを作成し前記第一のログ記憶装置に書き、
    前記第一のDB記憶装置のデータベースに複数のデータをそれぞれ発行するDB更新処理を実行し、
    開始されたトランザクションの実行中において、前記DB更新処理の開始前又は終了後に、前記第一のDB記憶装置と前記第二のDB記憶装置とのペア解除状態を解除し、
    前記DB更新処理の終了後、前記第一のDB記憶装置と前記第二のDB記憶装置との差分が無くなっている場合に、前記ログレスモードの終了を表すログであるログレス終了ログを作成し、該ログレス終了ログを前記第一のログ記憶装置に書く、
    ストレージサブシステム。
JP2006026676A 2006-02-03 2006-02-03 データベースを有するストレージシステムの記憶制御方法 Active JP4727437B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006026676A JP4727437B2 (ja) 2006-02-03 2006-02-03 データベースを有するストレージシステムの記憶制御方法
US11/396,644 US7353335B2 (en) 2006-02-03 2006-04-04 Storage control method for database recovery in logless mode

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006026676A JP4727437B2 (ja) 2006-02-03 2006-02-03 データベースを有するストレージシステムの記憶制御方法

Publications (2)

Publication Number Publication Date
JP2007207063A true JP2007207063A (ja) 2007-08-16
JP4727437B2 JP4727437B2 (ja) 2011-07-20

Family

ID=38335269

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006026676A Active JP4727437B2 (ja) 2006-02-03 2006-02-03 データベースを有するストレージシステムの記憶制御方法

Country Status (2)

Country Link
US (1) US7353335B2 (ja)
JP (1) JP4727437B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009151637A (ja) * 2007-12-21 2009-07-09 Nomura Research Institute Ltd 業務継続システム
JP2009217700A (ja) * 2008-03-12 2009-09-24 Toshiba Corp ディスクアレイ装置及び物理配置最適化方法

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7340741B2 (en) * 2003-02-28 2008-03-04 International Business Machines Corporation Auto-restart processing in an IMS batch application
US8014321B2 (en) * 2004-10-22 2011-09-06 Microsoft Corporation Rendezvousing resource requests with corresponding resources
US20110082928A1 (en) 2004-10-22 2011-04-07 Microsoft Corporation Maintaining consistency within a federation infrastructure
US20080288659A1 (en) * 2006-11-09 2008-11-20 Microsoft Corporation Maintaining consistency within a federation infrastructure
US8392515B2 (en) 2004-10-22 2013-03-05 Microsoft Corporation Subfederation creation and maintenance in a federation infrastructure
US8549180B2 (en) * 2004-10-22 2013-10-01 Microsoft Corporation Optimizing access to federation infrastructure-based resources
US7849361B2 (en) * 2005-12-22 2010-12-07 Emc Corporation Methods and apparatus for multiple point in time data access
US8990613B2 (en) 2006-06-29 2015-03-24 Dssdr, Llc Data transfer and recovery
US9015520B2 (en) 2006-06-29 2015-04-21 Dssdr, Llc Data transfer and recovery
US7487383B2 (en) * 2006-06-29 2009-02-03 Dssdr, Llc Data transfer and recovery process
JP5103807B2 (ja) * 2006-06-30 2012-12-19 富士通株式会社 制御プログラム、制御方法、情報処理装置及び情報処理システム
JP2008171032A (ja) * 2007-01-05 2008-07-24 Hitachi Ltd ストレージ装置、及びこれを用いた記憶制御方法
US8706687B2 (en) * 2007-01-24 2014-04-22 Hewlett-Packard Development Company, L.P. Log driven storage controller with network persistent memory
US7958263B2 (en) * 2007-02-20 2011-06-07 International Business Machines Corporation Address reduction for data storage enclosures
US8818936B1 (en) * 2007-06-29 2014-08-26 Emc Corporation Methods, systems, and computer program products for processing read requests received during a protected restore operation
US7805632B1 (en) * 2007-09-24 2010-09-28 Net App, Inc. Storage system and method for rapidly recovering from a system failure
US9501542B1 (en) 2008-03-11 2016-11-22 Emc Corporation Methods and apparatus for volume synchronization
US20100146188A1 (en) * 2008-12-09 2010-06-10 Bramante William J Replicated file system for electronic devices
US9256598B1 (en) 2009-08-19 2016-02-09 Emc Corporation Systems, methods, and computer readable media for copy-on-demand optimization for large writes
US8504526B2 (en) * 2010-06-04 2013-08-06 Commvault Systems, Inc. Failover systems and methods for performing backup operations
US8694700B1 (en) 2010-09-29 2014-04-08 Emc Corporation Using I/O track information for continuous push with splitter for storage device
US8335771B1 (en) 2010-09-29 2012-12-18 Emc Corporation Storage array snapshots for logged access replication in a continuous data protection system
US9864772B2 (en) * 2010-09-30 2018-01-09 International Business Machines Corporation Log-shipping data replication with early log record fetching
US8793343B1 (en) 2011-08-18 2014-07-29 Amazon Technologies, Inc. Redundant storage gateways
US9367501B2 (en) * 2011-11-10 2016-06-14 International Business Machines Corporation Dynamic streaming data dispatcher
US9223659B1 (en) 2012-06-28 2015-12-29 Emc International Company Generating and accessing a virtual volume snapshot in a continuous data protection system
US9336094B1 (en) 2012-09-13 2016-05-10 Emc International Company Scaleout replication of an application
US10235145B1 (en) 2012-09-13 2019-03-19 Emc International Company Distributed scale-out replication
US9152339B1 (en) 2013-03-15 2015-10-06 Emc Corporation Synchronization of asymmetric active-active, asynchronously-protected storage
US9087112B1 (en) 2013-06-24 2015-07-21 Emc International Company Consistency across snapshot shipping and continuous replication
US9069709B1 (en) 2013-06-24 2015-06-30 Emc International Company Dynamic granularity in data replication
US9146878B1 (en) 2013-06-25 2015-09-29 Emc Corporation Storage recovery from total cache loss using journal-based replication
WO2015041685A1 (en) * 2013-09-20 2015-03-26 Georgia Tech Research Corporation Hardware-assisted log protection devices and systems
US9535612B2 (en) 2013-10-23 2017-01-03 International Business Machines Corporation Selecting a primary storage device
US9367260B1 (en) 2013-12-13 2016-06-14 Emc Corporation Dynamic replication system
US9405765B1 (en) 2013-12-17 2016-08-02 Emc Corporation Replication of virtual machines
US9158630B1 (en) 2013-12-19 2015-10-13 Emc Corporation Testing integrity of replicated storage
US9189339B1 (en) 2014-03-28 2015-11-17 Emc Corporation Replication of a virtual distributed volume with virtual machine granualarity
US10082980B1 (en) 2014-06-20 2018-09-25 EMC IP Holding Company LLC Migration of snapshot in replication system using a log
US9274718B1 (en) 2014-06-20 2016-03-01 Emc Corporation Migration in replication system
US9619543B1 (en) 2014-06-23 2017-04-11 EMC IP Holding Company LLC Replicating in virtual desktop infrastructure
US10101943B1 (en) 2014-09-25 2018-10-16 EMC IP Holding Company LLC Realigning data in replication system
US10437783B1 (en) 2014-09-25 2019-10-08 EMC IP Holding Company LLC Recover storage array using remote deduplication device
US10324798B1 (en) 2014-09-25 2019-06-18 EMC IP Holding Company LLC Restoring active areas of a logical unit
US9529885B1 (en) 2014-09-29 2016-12-27 EMC IP Holding Company LLC Maintaining consistent point-in-time in asynchronous replication during virtual machine relocation
US9910621B1 (en) 2014-09-29 2018-03-06 EMC IP Holding Company LLC Backlogging I/O metadata utilizing counters to monitor write acknowledgements and no acknowledgements
US9600377B1 (en) 2014-12-03 2017-03-21 EMC IP Holding Company LLC Providing data protection using point-in-time images from multiple types of storage devices
US10496487B1 (en) 2014-12-03 2019-12-03 EMC IP Holding Company LLC Storing snapshot changes with snapshots
US9405481B1 (en) 2014-12-17 2016-08-02 Emc Corporation Replicating using volume multiplexing with consistency group file
US9632881B1 (en) 2015-03-24 2017-04-25 EMC IP Holding Company LLC Replication of a virtual distributed volume
US10296419B1 (en) 2015-03-27 2019-05-21 EMC IP Holding Company LLC Accessing a virtual device using a kernel
US9411535B1 (en) 2015-03-27 2016-08-09 Emc Corporation Accessing multiple virtual devices
US9678680B1 (en) 2015-03-30 2017-06-13 EMC IP Holding Company LLC Forming a protection domain in a storage architecture
US10853181B1 (en) 2015-06-29 2020-12-01 EMC IP Holding Company LLC Backing up volumes using fragment files
US10083082B2 (en) * 2015-09-07 2018-09-25 International Business Machines Corporation Efficient index checkpointing in log-structured object stores
US10083089B2 (en) * 2015-09-07 2018-09-25 International Business Machines Corporation Efficient index recovery in log-structured object stores
JP2017091456A (ja) * 2015-11-17 2017-05-25 富士通株式会社 制御装置、制御プログラムおよび制御方法
US9684576B1 (en) 2015-12-21 2017-06-20 EMC IP Holding Company LLC Replication using a virtual distributed volume
US10133874B1 (en) 2015-12-28 2018-11-20 EMC IP Holding Company LLC Performing snapshot replication on a storage system not configured to support snapshot replication
US10235196B1 (en) 2015-12-28 2019-03-19 EMC IP Holding Company LLC Virtual machine joining or separating
US10067837B1 (en) 2015-12-28 2018-09-04 EMC IP Holding Company LLC Continuous data protection with cloud resources
US10152267B1 (en) 2016-03-30 2018-12-11 Emc Corporation Replication data pull
US10235087B1 (en) 2016-03-30 2019-03-19 EMC IP Holding Company LLC Distributing journal data over multiple journals
US10579282B1 (en) 2016-03-30 2020-03-03 EMC IP Holding Company LLC Distributed copy in multi-copy replication where offset and size of I/O requests to replication site is half offset and size of I/O request to production volume
US10235060B1 (en) 2016-04-14 2019-03-19 EMC IP Holding Company, LLC Multilevel snapshot replication for hot and cold regions of a storage system
US10146961B1 (en) 2016-09-23 2018-12-04 EMC IP Holding Company LLC Encrypting replication journals in a storage system
US10235091B1 (en) 2016-09-23 2019-03-19 EMC IP Holding Company LLC Full sweep disk synchronization in a storage system
US10019194B1 (en) 2016-09-23 2018-07-10 EMC IP Holding Company LLC Eventually consistent synchronous data replication in a storage system
US10210073B1 (en) 2016-09-23 2019-02-19 EMC IP Holding Company, LLC Real time debugging of production replicated data with data obfuscation in a storage system
US10235090B1 (en) 2016-09-23 2019-03-19 EMC IP Holding Company LLC Validating replication copy consistency using a hash function in a storage system
JP2023012217A (ja) * 2021-07-13 2023-01-25 富士通株式会社 管理プログラム、管理方法、管理装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62297948A (ja) * 1986-06-18 1987-12-25 Hitachi Ltd デ−タベ−スの障害回復方式
JPH04242842A (ja) * 1990-12-29 1992-08-31 Nec Corp データベースバッファ制御装置
JP2005267301A (ja) * 2004-03-19 2005-09-29 Hitachi Ltd ログ同期dbデータ非同期転送によるリカバリ方式および装置
JP2006004147A (ja) * 2004-06-17 2006-01-05 Hitachi Ltd ディザスタリカバリシステム、プログラム及びデータベースのリカバリ方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530855A (en) 1992-10-13 1996-06-25 International Business Machines Corporation Replicating a database by the sequential application of hierarchically sorted log records
JP4318902B2 (ja) * 2002-10-15 2009-08-26 株式会社日立製作所 記憶装置システムの制御方法、記憶装置システム、およびプログラム
JP4575119B2 (ja) * 2004-11-25 2010-11-04 株式会社日立製作所 ストレージシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62297948A (ja) * 1986-06-18 1987-12-25 Hitachi Ltd デ−タベ−スの障害回復方式
JPH04242842A (ja) * 1990-12-29 1992-08-31 Nec Corp データベースバッファ制御装置
JP2005267301A (ja) * 2004-03-19 2005-09-29 Hitachi Ltd ログ同期dbデータ非同期転送によるリカバリ方式および装置
JP2006004147A (ja) * 2004-06-17 2006-01-05 Hitachi Ltd ディザスタリカバリシステム、プログラム及びデータベースのリカバリ方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009151637A (ja) * 2007-12-21 2009-07-09 Nomura Research Institute Ltd 業務継続システム
JP2009217700A (ja) * 2008-03-12 2009-09-24 Toshiba Corp ディスクアレイ装置及び物理配置最適化方法

Also Published As

Publication number Publication date
US7353335B2 (en) 2008-04-01
JP4727437B2 (ja) 2011-07-20
US20070185924A1 (en) 2007-08-09

Similar Documents

Publication Publication Date Title
JP4727437B2 (ja) データベースを有するストレージシステムの記憶制御方法
JP4741371B2 (ja) システム、サーバ装置及びスナップショットの形式変換方法
US8977826B1 (en) Extent commands in replication
JP4756992B2 (ja) ストレージシステム及び記憶制御方法
US8285824B2 (en) Storage system and data replication method that refuses one or more requests for changing the first logical configuration information until the first storage apparatus and second storage apparatus are synchronized
US20140208012A1 (en) Virtual disk replication using log files
US7571292B2 (en) Producing tertiary instant virtual copies without volume suspension
US8024537B2 (en) Storage system, remote copy and management method therefor
JP2006023889A (ja) リモートコピーシステム及び記憶装置システム
JP2007179342A (ja) ストレージシステム及びスナップショット管理方法
JP2007200114A (ja) データベース回復方法及び計算機システム
JP5286212B2 (ja) ストレージクラスタ環境でのリモートコピー制御方法及びシステム
JP4508798B2 (ja) ストレージリモートコピー方式
JP6136629B2 (ja) ストレージ制御装置,ストレージシステム,および制御プログラム
US20090254722A1 (en) Data storage apparatus
US8108637B2 (en) Information processing system, controlling method in information processing system, and managing apparatus to manage remote copy in consideration of saving power
JP5561334B2 (ja) データ転送装置
US20090177916A1 (en) Storage system, controller of storage system, control method of storage system
JP5170169B2 (ja) ディスクアレイ装置間のリモートコピー処理システム、処理方法、及び処理用プログラム
JP4489500B2 (ja) バックアップ方法、バックアップシステム、ディスク制御装置、及びバックアッププログラム
JP2005234860A (ja) バージョン管理システム、バージョン管理サーバ装置、及び記憶デバイス制御装置
JP2007034551A (ja) データの二重化管理方法
US10656867B2 (en) Computer system, data management method, and data management program
JP4294692B2 (ja) 情報処理システム
JP7050707B2 (ja) ストレージ制御装置、ストレージシステム、ストレージ制御方法、及び、ストレージ制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110328

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110412

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: 20110413

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: 20140422

Year of fee payment: 3