JP2014142852A - ストレージシステムおよび制御装置 - Google Patents
ストレージシステムおよび制御装置 Download PDFInfo
- Publication number
- JP2014142852A JP2014142852A JP2013011694A JP2013011694A JP2014142852A JP 2014142852 A JP2014142852 A JP 2014142852A JP 2013011694 A JP2013011694 A JP 2013011694A JP 2013011694 A JP2013011694 A JP 2013011694A JP 2014142852 A JP2014142852 A JP 2014142852A
- Authority
- JP
- Japan
- Prior art keywords
- journal
- data
- backup
- storage
- change history
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1461—Backup scheduling policy
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)
Abstract
【課題】性能低下を招くことなくバックアップ対象データの変更箇所の情報を取得する。
【解決手段】バックアップ元ストレージ20のデータをバックアップ先ストレージ30にバックアップを行なうストレージシステム1であって、バックアップ元ストレージ20のデータに対する変更履歴に係る変更履歴情報を取得する取得部11aと、取得された変更履歴情報と当該変更履歴情報に対応する差分データとをバックアップ先ストレージ30へ転送する転送部11bと、バックアップ先ストレージ30において、変更履歴情報に基づき、バックアップ元ストレージ20のデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部32a1と、を備える。
【選択図】図1
【解決手段】バックアップ元ストレージ20のデータをバックアップ先ストレージ30にバックアップを行なうストレージシステム1であって、バックアップ元ストレージ20のデータに対する変更履歴に係る変更履歴情報を取得する取得部11aと、取得された変更履歴情報と当該変更履歴情報に対応する差分データとをバックアップ先ストレージ30へ転送する転送部11bと、バックアップ先ストレージ30において、変更履歴情報に基づき、バックアップ元ストレージ20のデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部32a1と、を備える。
【選択図】図1
Description
本発明は、ストレージシステムおよび制御装置に関する。
図13に示すように、LAN(Local Area Network)300を介しホスト装置200に接続されるストレージシステム(ファイルシステム)100では、バックアップ元ストレージ120のデータがバックアップ先ストレージ130によってバックアップされる。ストレージシステム100は、サーバ110,バックアップ元ストレージ120およびバックアップ先ストレージ130により構築されている。
サーバ110は、バックアップ元ストレージ120およびバックアップ先ストレージ130を管理するもので、プロセッサ111,メモリ112,メモリコントローラ113,ネットワークI/F(InterFace)114およびデータI/F115を有している。プロセッサ111は、各種処理や各種制御を実行する。メモリ112は、バックアップ元ストレージ120に対する書込みデータやバックアップ元ストレージ120からの読出しデータを一時的に保存するほか、プロセッサ111が実行するソフトウエアや、後述する変更点リストなどを格納する。メモリコントローラ113は、メモリ112の動作を制御する。ネットワークI/F114は、LAN300を介してホスト装置200を接続されホスト装置200と通信を行なう。データI/F115は、バックアップ元ストレージ120(データI/F123)を接続されバックアップ元ストレージ120とデータ通信を行なう。
バックアップ元ストレージ120は、ディスク121,コントローラ122およびデータI/F123,124を有している。ディスク121は、ホスト装置200によってアクセスされるデータや、当該データに関するメタデータを保存する。コントローラ122は、ホスト装置200やサーバ110からの指示に応じ、ディスク121に対するアクセス制御や、ディスク121のデータをバックアップ先ストレージ130によってバックアップすべくデータを転送する制御などを行なう。データI/F123は、サーバ110(データI/F115)を接続されサーバ110とデータ通信を行なう。データI/F124は、バックアップ先ストレージ130(データI/F133)を接続されバックアップ先ストレージ130とデータ通信を行なう。
バックアップ先ストレージ130は、ディスク131,コントローラ132,データI/F133およびネットワークI/F134を有している。ディスク131は、バックアップ元ストレージ120(ディスク121)のバックアップデータを保存する。コントローラ132は、ホスト装置200,サーバ110およびバックアップ元ストレージ120からの指示に応じ、ディスク131に対するアクセス制御やデータバックアップ制御などを行なう。データI/F133は、バックアップ元ストレージ120(データI/F124)を接続されバックアップ元ストレージ120とデータ通信を行なう。ネットワークI/F134は、LAN300を介してホスト装置200に接続されホスト装置200と通信を行なう。
図13に示すようなストレージシステム(ファイルシステム)100においてデータのバックアップを行なう場合、まず、バックアップ元ストレージ120からバックアップ先ストレージ130に対し、ディスク121のデータの全面コピーが行なわれる。つまり、最初に、バックアップ先ストレージ130のディスク131に対しディスク121におけるバックアップ対象の全てのデータがコピーされ、ディスク131に全面バックアップデータが保存される。そして、適当なタイミングで、バックアップ元ストレージ120のディスク121上で変更されたデータ(差分データ)が取得され、バックアップ元ストレージ120からバックアップ先ストレージ130に転送され、ディスク131に保存される。これにより、バックアップ元ストレージ120のディスク121上のバックアップ対象データがバックアップ先ストレージ130のディスク131においてバックアップされる。
差分データを取得する際、サーバ110は、例えば図14に示すように、ディスク121におけるメタデータの全領域を参照して全領域のタイムスタンプをチェックし、前回、差分データを取得した以降に変更された領域(データブロック)を認識する。そして、サーバ110は、前回、差分データを取得した以降に変更された領域を特定する情報をリストアップした変更点リストを作成され、メモリ112に保存する。
このような変更点リストの作成処理は、サーバ110が、メモリ112に格納されたバックアップソフトウエアを実行することで行なわれる。また、ここで作成された変更点リストは、取得すべき差分データを認識するために用いられるほか、バックアップ先ストレージ130のディスク131に保存された全面バックアップデータと差分データとから所望時点のデータを作成するために用いられる。
上述のように差分データをバックアップする際、バックアップ対象データの一部に対し変更が施された場合でも、メタデータの全領域をスキャンして変更点リストを作成する必要がある。このため、変更点をチェックし変更点リストを作成する間、バックアップ対象データに対する変更をロックしなければならず、データ更新が待たされることから、システム性能が低下してしまう。したがって、現行システムのバックアップのほとんどは負荷の低い夜間に実行されているが、近年、グローバル化や仮想化環境の導入により業務システムの無停止での運用が通常となっており、日本では夜間であってもシステムを停止することが非常に難しくなってきている。
一つの側面で、本発明は、性能低下を招くことなくバックアップ対象データの変更箇所の情報を取得することを目的とする。
なお、前記目的に限らず、後述する発明を実施するための最良の形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本件の他の目的の一つとして位置付けることができる。
なお、前記目的に限らず、後述する発明を実施するための最良の形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本件の他の目的の一つとして位置付けることができる。
本件のストレージシステムは、バックアップ元ストレージのデータをバックアップ先ストレージにバックアップを行なうストレージシステムであって、前記バックアップ元ストレージのデータに対する変更履歴に係る変更履歴情報を取得する取得部と、前記取得部によって取得された変更履歴情報と当該変更履歴情報に対応する差分データとを、前記バックアップ先ストレージへ転送する転送部と、前記バックアップ先ストレージにおいて、前記変更履歴情報に基づき、前記バックアップ元ストレージのデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部と、を備えている。
一実施形態によれば、性能低下を招くことなくバックアップ対象データの変更箇所の情報を取得することができる。
以下、図面を参照して実施の形態を説明する。
〔1〕本実施形態のストレージシステムの構成
図1を参照しながら、本実施形態のストレージシステム1のハードウエア構成および機能構成について説明する。図1は、本実施形態のストレージシステム(ジャーナルファイルシステム)1のハードウエア構成および機能構成を示すブロック図である。
〔1〕本実施形態のストレージシステムの構成
図1を参照しながら、本実施形態のストレージシステム1のハードウエア構成および機能構成について説明する。図1は、本実施形態のストレージシステム(ジャーナルファイルシステム)1のハードウエア構成および機能構成を示すブロック図である。
本実施形態では、ジャーナルファイルシステムを採用したストレージシステム1が対象となっている。ジャーナルファイルシステムでは、データの整合性を高めるために、データをディスク(図1の符号21参照)に書き込む前に、ジャーナルバッファ(図1の符号12a参照)に、メタデータおよびデータの変更履歴がジャーナルログとして記録される。本実施形態では、Linux(登録商標)で使用されるext3 (third extended system)のjournalモードが、ジャーナルの方式(ジャーナルファイルシステム)として採用された場合について説明する。
なお、Linuxのext3のジャーナルの方式には、journalモード,orderedモードおよびwritbackモードの3種類があり、いずれのモードを採用してもよい。
journalモードは、メタデータと実際のデータとの両者をジャーナリングの対象としており、不正なシャットダウン後に、一部のデータが不正に残ってしまうことはなく、整合性が最も高くなるモードである。journalモードでは、全ての操作がジャーナリングの対象となるため、ディスクへの書き込み速度は遅くなる。
journalモードは、メタデータと実際のデータとの両者をジャーナリングの対象としており、不正なシャットダウン後に、一部のデータが不正に残ってしまうことはなく、整合性が最も高くなるモードである。journalモードでは、全ての操作がジャーナリングの対象となるため、ディスクへの書き込み速度は遅くなる。
orderedモードでは、メタデータのみがジャーナリングの対象で、実際のデータは、メタデータを書き込む前にディスク上に書き込まれるように、書込み順序が保証される。このモードでは、メタデータが不正なデータを指し示してしまうことがない。そして、メタデータはジャーナリングされるため、不正なシャットダウン後にもメタデータは正しく修復される。
writebackモードでは、メタデータのみがジャーナリングの対象であり、実際のデータの書込みはジャーナリングの対象としない。実データとメタデータとのどちらが先にディスクに書き出されるかは不定である。
また、本実施形態では、ジャーナルファイルシステムがLinuxのext3のジャーナルの方式(journalモード)である場合について説明するが、本発明は、これに限定されるものでなく、例えばJFS(Journaled File System),ReiserFS(Reiser File System)にも適用可能である。ただし、JFSやReiserFSによるジャーナルログの管理、つまりメモリからディスクへの書込み方法やタイミングは、以下のように異なる。JFSでは、ジャーナルログは、まずメモリに記録され、JFSのフラッシュデーモンによってメモリからディスクへ書き込まれる。また、ReiserFSでは、内部的にジャーナリング処理の開始命令であるjounal_begin機能が呼び出されてメタデータがロギングされ、処理の終了時にjounal_endが呼び出されて実際のコミットまでの処理が実施される。
また、本実施形態では、ジャーナルファイルシステムがLinuxのext3のジャーナルの方式(journalモード)である場合について説明するが、本発明は、これに限定されるものでなく、例えばJFS(Journaled File System),ReiserFS(Reiser File System)にも適用可能である。ただし、JFSやReiserFSによるジャーナルログの管理、つまりメモリからディスクへの書込み方法やタイミングは、以下のように異なる。JFSでは、ジャーナルログは、まずメモリに記録され、JFSのフラッシュデーモンによってメモリからディスクへ書き込まれる。また、ReiserFSでは、内部的にジャーナリング処理の開始命令であるjounal_begin機能が呼び出されてメタデータがロギングされ、処理の終了時にjounal_endが呼び出されて実際のコミットまでの処理が実施される。
さて、図1に示すように、本実施形態のストレージシステム1は、LAN3を介しホスト装置2に接続される。ストレージシステム1では、バックアップ元ストレージ20におけるバックアップ対象データがバックアップ先ストレージ30によってバックアップされる。ストレージシステム1は、バックアップサーバ10,バックアップ元ストレージ20およびバックアップ先ストレージ30により構築され、バックアップ元ストレージ20のデータをバックアップ先ストレージ30にバックアップを行なう。
バックアップサーバ10は、バックアップ元ストレージ20およびバックアップ先ストレージ30を管理するもので、バックアップ元ストレージ20のデータをバックアップ先ストレージ30に転送してバックアップさせる制御を行なう制御装置として機能する。そして、バックアップサーバ10は、プロセッサ11,メモリ12,メモリコントローラ13,ネットワークI/F14,データI/F15およびタイマ16を有している。プロセッサ11は、各種処理や各種制御を実行するもので、ジャーナル受渡プログラムを実行することにより、後述する取得部11aおよび転送部11bとして機能する。メモリ12は、RAM(Random Access Memory)等であり、後述するジャーナル領域12aおよび仮ジャーナル領域12bを有するほか、バックアップ元ストレージ20に対する書込みデータやバックアップ元ストレージ20からの読出しデータを一時的に保存するとともに、ジャーナル受渡プログラムなどを格納する。メモリコントローラ13は、メモリ12の動作を制御する。ネットワークI/F14は、LAN3を介してホスト装置2を接続されホスト装置2と通信を行なう。データI/F15は、バックアップ元ストレージ20(データI/F23)を接続されバックアップ元ストレージ20とデータ通信を行なう。タイマ(ジャーナルタイマ)16は、後述するごとく、ジャーナルの監視インターバルに対応する時間Xs秒を計時する。なお、プロセッサ11,メモリ12およびメモリコントローラ13の詳細な機能等については後述する。
バックアップ元ストレージ20は、ディスク21,コントローラ22およびデータI/F23,24を有している。ディスク21は、後述する一時保存領域21aを有するほか、ホスト装置2によってアクセスされるデータや、当該データに関するメタデータを保存する。バックアップ元ストレージ20では、ディスク21として複数のHDD(Hard Disk Drive)が備えられ、RAID(Redundant Arrays of Independent Disks)装置が構成されている。コントローラ(制御装置)22は、ホスト装置2やバックアップサーバ10からの指示に応じ、ディスク21に対するアクセス制御や、ディスク21のデータをバックアップ先ストレージ30によってバックアップすべくデータを転送する制御などを行なう。データI/F23は、バックアップサーバ10(データI/F15)を接続されサーバ10とデータ通信を行なう。データI/F24は、バックアップ先ストレージ30(データI/F33)を接続されバックアップ先ストレージ30とデータ通信を行なう。
バックアップ先ストレージ30は、ディスク31,コントローラ32,データI/F33およびネットワークI/F34を有している。ディスク31は、バックアップ元ストレージ20(ディスク21)のバックアップデータを保存する。バックアップ先ストレージ30でも、ディスク31として複数のHDDが備えられ、RAID装置が構成されている。コントローラ(制御装置)32は、ホスト装置2,バックアップサーバ10およびバックアップ元ストレージ20からの指示に応じ、ディスク31に対するアクセス制御やデータバックアップ制御などを行なう。コントローラ32は、プロセッサ32aおよびメモリ32bを有している。プロセッサ32aは、各種処理や各種制御を実行するもので、ジャーナル管理プログラムを実行することにより、後述するリスト作成部32a1および復元部32a2として機能する。メモリ32bは、RAM等であり、ディスク31に対する書込みデータやディスク31からの読出しデータを一時的に保存するとともに、ジャーナル管理プログラムなどを格納する。データI/F33は、バックアップ元ストレージ20(データI/F24)を接続されバックアップ元ストレージ20とデータ通信を行なう。ネットワークI/F34は、LAN3を介してホスト装置2に接続されホスト装置2と通信を行なう。なお、プロセッサ32aの詳細な機能等については後述する。
ここで、バックアップサーバ10において、プロセッサ11は、メモリ12に格納されるジャーナル受渡プログラムを実行することにより、ファイルシステムのジャーナルログをバックアップ元ストレージ20からバックアップ先ストレージ30へ受け渡すためのインターフェイスとして機能する。以下、プロセッサ11がジャーナル受渡プログラムを実行することにより実現される、取得部11aおよび転送部11bとしての機能を含む各種機能(a1)〜(a4)について説明する。
(a1)ジャーナリングのためのLinuxのデーモンであるkjournaldを監視する機能を果たす。トランザクションのコミット操作は、カーネルスレッドであるkjournaldによって定期的(本実施形態ではXs秒毎)に行なわれる。トランザクションのコミットのタイミングは、OS(Operating System)のタイマ16によって管理されており、本実施形態において、インターバルに対応する時間Xs秒は、タイマ16によって計時される。Xs秒後にkjournaldのタイマ期限が来ると、トランザクションデータに該当するデータブロック(差分データ)は、バックアップサーバ10のメモリ12上からバックアップ元ストレージ20のディスク21(一時保存領域21a)へコミットされる。その後、コミット済みのジャーナルログが、バックアップサーバ10のメモリ12上のジャーナル領域(ジャーナルバッファI)12aからディスク21(一時保存領域21a)に書き込まれる。ここで、図2を参照しながら、ストレージシステム1におけるジャーナルのコミットについて説明する。kjournaldは、カーネルから起動されると、インターバルXs秒毎に実行されるタイマリストを作成する。図2における一トランザクションがタイマリストの一エントリ(一レコード)を示す。次に、各トランザクションは、タイマリストに現在の時刻+Xs秒後にコミットが実行されるように、タイマ16をセットする。kjournaldは、Xs秒毎に起動され、コミットを予定されているトランザクションが登録されていた場合は、そのトランザクションがコミットされる。ここで、コミットとは、メモリ12上のメタデータバッファ(図示略)のデータを、バックアップ元ストレージ20のディスク21に書き込むことである。なお、ext3では、コミットとチェックポイントとはkjournaldの中に一緒に実装されているため、コミットが完了すると、チェックポイント(メモリ12上のジャーナルログのバッファ12aをディスク21上にフラッシュすること)が実施される。
(a2)ジャーナルログをダンプ(取得)する機能を果たす。つまり、バックアップ元ストレージ20のデータに対する変更処理に応じて生成されるジャーナル(ジャーナルログ)を、バックアップ元ストレージ20のデータに対する変更履歴に係る変更履歴情報として取得する取得部11aとしての機能を果たす。ジャーナルログは、前記変更処理に伴い、メモリ12上のジャーナル領域12a(ジャーナルバッファI)に記録され、取得部11aは、ジャーナル領域12aからジャーナルログを取得する。
(a3)取得部11aによって、メモリ12上のジャーナル領域12aにおけるジャーナルログと当該ジャーナルログに対応する差分データ(差分データブロック)とを取得してバックアップ元ストレージ20の一時保存領域21aに一時的に保存する機能を果たす。このとき、転送部11bは、バックアップ元ストレージ20のデータに対する新しい更新データが保存されたことを、ジャーナル管理プログラム(バックアップ先ストレージ30のプロセッサ32a)に通知する機能を果たす。そして、転送部11bは、当該通知に対するプロセッサ32aからの応答に応じ、一時保存領域21aに保存したジャーナルログと差分データとを、バックアップ元ストレージ20からバックアップ先ストレージ30へ受け渡すように制御する機能を果たす。つまり、転送部11bは、当該通知に対するプロセッサ32aからの応答に応じ、ジャーナルログと差分データとをバックアップ先ストレージ30へ転送する。
(a4)ジャーナルログの取得中(ダンプ中)にホスト装置2からジャーナルログ(ジャーナル領域12a)への書込みがあった場合にそれを検知し、メモリ12上の他の領域12bを用いて当該書込みを管理する機能を果たす。つまり、取得部11aは、ジャーナルログを取得している間、ジャーナル領域12aに対する書込み処理をロックするとともに、メモリ12上にジャーナル領域12aと同容量の仮ジャーナル領域12bを確保し、ロック中のジャーナル領域12aに対する書込みを仮ジャーナル領域12b(ジャーナルバッファII)に対して行なう機能を果たす。そして、取得部11aは、ジャーナルログの取得完了後に、ジャーナル領域12aに対する書込み処理のロックを解除するとともに、仮ジャーナル領域12bに書き込まれたデータをジャーナル領域12aに書き戻す機能を果たす。なお、プロセッサ11からメモリ12に対するアクセスは、メモリコントローラ13を介して実行される。
また、バックアップ先ストレージ30において、プロセッサ32aは、メモリ32bに格納されるジャーナル管理プログラムを実行することにより、バックアップサーバ10からバックアップ元ストレージ20経由で受け取ったジャーナルを管理する機能を果たす。以下、プロセッサ32aがジャーナル管理プログラムを実行することにより実現される、リスト作成部32a1および復元部32a2としての機能を含む各種機能(b1)〜(b4)について説明する。
(b1)全面バックアップデータ(全面コピー)を管理する機能を果たす。ストレージシステム1においてデータのバックアップを行なう場合、まず、バックアップ元ストレージ20からバックアップ先ストレージ30に対し、ディスク21におけるバックアップ対象データの全面コピーが行なわれる。つまり、最初に、バックアップ先ストレージ30のディスク31に対しディスク21におけるバックアップ対象の全てのデータがコピーされ、ディスク31に全面バックアップデータが保存される。プロセッサ32aは、このような全面バックアップデータを管理する機能を果たす。
(b2)コピーしたジャーナルログおよび差分データを、トランザクションID(identification)を用いたジャーナル管理テーブル50(図3,図10参照)によって管理する機能を果たす。
(b3)変更点リスト60(図3,図11参照)を作成・マージする機能を果たす。つまり、リスト作成部32a1は、バックアップ先ストレージ30において、ジャーナルログ(ジャーナル管理テーブル50)に基づき、バックアップ元ストレージ20のデータにおける変更箇所をリストアップした変更点リスト60を作成する機能を果たす。特に、リスト作成部32a1は、外部から指示された範囲に対応するジャーナルログに基づき、変更点リスト60を作成する。その際、リスト作成部32a1は、ジャーナルログ(ジャーナル管理テーブル50)における前記範囲内から読出しコマンド(Readコマンド)に係るエントリ(レコード)を削除して変更点リスト60を作成する。
(b4)外部から指示された範囲に基づき作成された変更点リスト60に従って、バックアップ元ストレージ20における所望時点のデータを復元する機能を果たす。つまり、復元部32a2は、リスト作成部32a1によって作成された変更点リスト60と、バックアップ先ストレージ30における差分データとを用いて、バックアップ元ストレージ20におけるデータを復元する機能を果たす。その際、復元部32a2は、リスト作成部32a1によって作成された変更点リスト60に基づき、差分データを全面バックアップデータに対し反映させることにより、バックアップ元ストレージ20における所望時点のデータを復元する。
〔2〕本実施形態のストレージシステムの動作
次に、上述のごとく構成された本実施形態のストレージシステム1の動作について、図3〜図12を参照しながら説明する。
〔2−1〕本実施形態のストレージシステムの概略的な動作
まず、図3を参照しながら本実施形態のストレージシステム1の動作について、概略的に説明する。図3はストレージシステム1の動作を概略的に説明する図である。
次に、上述のごとく構成された本実施形態のストレージシステム1の動作について、図3〜図12を参照しながら説明する。
〔2−1〕本実施形態のストレージシステムの概略的な動作
まず、図3を参照しながら本実施形態のストレージシステム1の動作について、概略的に説明する。図3はストレージシステム1の動作を概略的に説明する図である。
本実施形態においても、バックアップを開始するに先立ち、バックアップ先ストレージ30のディスク31に対しディスク21におけるバックアップ対象の全てのデータがコピーされ、ディスク31に全面バックアップデータが保存される。
また、ジャーナルファイルシステムを採用した本実施形態のストレージシステム1では、データの整合性を高めるために、データをディスク21に書き込む前に、ジャーナルバッファ12aに、メタデータおよびデータの変更履歴がジャーナルログとして記録される(図3の矢印(1)参照)。
また、ジャーナルファイルシステムを採用した本実施形態のストレージシステム1では、データの整合性を高めるために、データをディスク21に書き込む前に、ジャーナルバッファ12aに、メタデータおよびデータの変更履歴がジャーナルログとして記録される(図3の矢印(1)参照)。
そして、バックアップサーバ10において、取得部11aにより、メモリ12上のジャーナル領域12aにおけるジャーナルログと、当該ジャーナルログに対応する差分データとが取得され、バックアップ元ストレージ20の一時保存領域21aに一時的に保存される(図3の矢印(2)参照)。この後、転送部11bにより、一時保存領域21aに保存されたジャーナルログと差分データとが、バックアップ元ストレージ20からバックアップ先ストレージ30へ受け渡される(図3の矢印(3)参照)。
バックアップ先ストレージ30において、ジャーナルログおよび差分データは、トランザクションIDを用いたジャーナル管理テーブル50によって管理される。リストア時には、リスト作成部32a1により、ホスト装置2からの要求に応じ、当該要求で指定される範囲に対応するジャーナルログ(ジャーナル管理テーブル50)に基づき、バックアップ元ストレージ20のデータにおける変更箇所をリストアップした変更点リスト60が作成される(図3の矢印(4)参照)。そして、復元部32a2により、リスト作成部32a1によって作成された変更点リスト60に基づき、差分データを全面バックアップデータに対し反映させることにより、バックアップ元ストレージ20における所望時点のデータが復元される。
このように、本実施形態のストレージシステム1では、バックアップサーバ10のプロセッサ11にジャーナル受渡プログラムを実行させ、バックアップ先ストレージ30のプロセッサ32aにジャーナル管理プログラムを実行させる。これにより、ジャーナルファイルシステムの差分データをバックアップする際に、ジャーナルファイルシステム自体の整合性を保証するためのジャーナルログが活用され、当該ジャーナルログが差分データの変更箇所の情報として取得される。したがって、バックアップ時に業務アプリケーションの性能低下を最小限に抑えることができる。
〔2−2〕本実施形態のストレージシステムの具体的な動作
次に、図4〜図6に示すフローチャート(ステップS11〜S24,S31〜S36,S41〜S43)および図7に示すシーケンス図に従って、図8〜図12を参照しながら本実施形態のストレージシステム1の具体的な動作について説明する。なお、図8および図9は、本実施形態で管理されるジャーナルの具体例を示す図である。図10は、本実施形態におけるジャーナル管理テーブル50の具体例を示す図である。図11は、図10に示すジャーナル管理テーブル50から作成される変更点リスト60の具体例を示す図である。図12は、図11に示す変更点リスト60に基づき復元されたバックアップデータの具体例を示す図である。
次に、図4〜図6に示すフローチャート(ステップS11〜S24,S31〜S36,S41〜S43)および図7に示すシーケンス図に従って、図8〜図12を参照しながら本実施形態のストレージシステム1の具体的な動作について説明する。なお、図8および図9は、本実施形態で管理されるジャーナルの具体例を示す図である。図10は、本実施形態におけるジャーナル管理テーブル50の具体例を示す図である。図11は、図10に示すジャーナル管理テーブル50から作成される変更点リスト60の具体例を示す図である。図12は、図11に示す変更点リスト60に基づき復元されたバックアップデータの具体例を示す図である。
上述した通り、バックアップを開始するに先立ち、ディスクアレイ装置の既存機能を用いて、バックアップ先ストレージ30のディスク31に対しディスク21におけるバックアップ対象の全てのデータがコピーされ、ディスク31に全面バックアップデータ(全面コピー)が取得・保存される。この後、バックアップサーバ10のプロセッサ11においてジャーナル受渡プログラムを実行することで、図4および図5に示すステップS11〜S24の処理が実行される。また、バックアップ先ストレージ30のプロセッサ32aにおいてジャーナル管理プログラムを実行することで、図5および図6に示すステップS31〜S36,S41〜S43の処理が実行される。
まず、取得部11aは、バックアップ元のディスク21に、ジャーナルログのコピーと当該ジャーナルログに対応する差分データとを一時的に保存する一時保存領域21aを確保する。また、取得部11aは、バックアップサーバ10のメモリ12上に、ジャーナル領域12a(ジャーナルバッファI)と同容量の仮ジャーナル領域12b(ジャーナルバッファII)を確保する(図4のステップS11)。なお、一時保存領域21aにおいて、ジャーナルログのコピーを保存する領域としては、ファイルシステムがジャーナルログを管理する領域(メモリ12上のジャーナル領域12a)の大きさ以上の領域が確保される。また、一時保存領域21aにおいて、差分データを保存する領域としては、バックアップ対象データの全容量の1/10〜1/2程度の容量を有する領域が確保される。
この後、バックアップサーバ10のプロセッサ11は、ジャーナルタイマ16の監視を開始し、kjournaldがプロセスキューへ追加し、トランザクションのコミット操作を、カーネルスレッドであるkjournaldによって定期的(Xs秒毎)に行なう(図4のステップS12)。また、プロセッサ11は、メモリコントローラ13に、ジャーナルバッファIIへの書込み指示を行なうとともに、ジャーナルバッファIの内容が変更されないようにジャーナルバッファIに対する書込み処理のロック指示を行なう(図4のステップS13;図7の矢印A1,A2参照)。
これ以降、kjournaldのタイマ期限が来ると(Xs秒経過すると)、取得部11aは、トランザクションのジャーナルログと当該ジャーナルログに対応する差分データブロックとを取得する(図4のステップS14)。そして、取得部11aは、ジャーナルバッファIから取得したジャーナルログと、当該ジャーナルログに対応する差分データブロックを、バックアップ元ストレージ20の一時保存領域21aに一時的に保存する(図4のステップS15)。このような取得処理は、図2に示すように、Xs秒後にコミットされる次のトランザクションのコミットの完了のタイミングまでの間に行なわれる(図2のジャーナル取得タイミング参照)。このようにして、ジャーナルログおよび差分データブロックのコピーを完了した後、取得部11aは、元のジャーナルバッファIに対する書込み処理のロックを解除する(図4のステップS16)。
一方、ジャーナルバッファIIへの書込み指示およびジャーナルバッファIに対する書込み処理のロック指示の後、ロックが解除されるまで、ホスト装置2からジャーナルバッファIのジャーナルログに対する書込みコマンド(Writeコマンド)を受けた場合、当該書込みコマンドに応じたアクセスは、ジャーナルバッファIIに対して行なわれる。つまり、ジャーナルログの取得中、図7に示すように、ジャーナル受渡プログラム(取得部11a)は、ホスト装置2側のI/O(Input/Output)ドライバとメモリコントローラ13との間に入って、ジャーナルログに対するI/Oコマンドを検知する。そして、メモリコントローラ13は、検知したI/Oコマンドに応じたジャーナルログを、メモリ12上のジャーナルバッファIIに保存する。
より具体的に、取得部11aは、メモリコントローラ13を介し、取得部11aによる取得処理(ステップS14,S15の処理)の実行中、ホスト装置2等からジャーナルバッファIに対する書込みコマンドの受理を監視する(図4のステップS21)。書込みコマンドを受理すると(図4のステップS21のYESルート;図7の矢印A3参照)、取得部11aは、メモリコントローラ13を介し、ホスト装置2等に対し準備完了通知(Ready)を返信し(図7の矢印A4参照)、ジャーナルバッファIIに対する書込み処理を実行する(図4のステップS22)。当該書込み処理後、または、書込みコマンドの未受理時(図4のステップS21のNOルート)に、ジャーナルバッファIに対する書込み処理のロックが解除されたか否かが判定される(図4のステップS23)。ロックが解除されていない場合(図4のステップS23のNOルート)、プロセッサ11は、ステップS21の処理に戻る。一方、ジャーナルログの取得に伴いロックが解除されている場合(図4のステップS23のYESルート)、取得部11aは、メモリコントローラ13に書戻し指示を行なう(図7の矢印A5,A6参照)。これにより、メモリコントローラ13は、ジャーナルバッファIIに書き込まれたデータを、元のジャーナルバッファIに書き戻す(図4のステップS24)。これ以降、ホスト装置2等から書込みコマンドが受理されると(図7の矢印A7参照)、メモリコントローラ13によって、ホスト装置2等に対し準備完了通知が返信され(図7の矢印A8参照)、通常通り、ジャーナルバッファIに対する書込み処理が実行される。
ジャーナル受渡プログラム(取得部11a)は、ジャーナルログおよび差分データを一時保存領域21aに一時保存する際、当該ジャーナルログがバックアップ先ストレージ30に転送コピー済みであるか否かを示すデータコピー情報Data Copyを、当該ジャーナルログに追加する。この時点では、当該ジャーナルログは未だコピー済みでないので、図8に示すように当該ジャーナルログにData Copy=0が追加される(図4のステップS17)。その後、ジャーナル受渡プログラム(転送部11b)は、新しいデータが来たこと、つまりバックアップ元ストレージ20のデータに対する新しい更新データが保存されたことを、バックアップ先ストレージ30のジャーナル管理プログラム(プロセッサ32a)に通知する(図5のステップS18)。
なお、図8に示すジャーナルでは、各エントリ(レコード)において、トランザクションID,シーケンシャル番号,種別(Type;1/2),データブロック番号(Block Number),開始ブロック番号(Descriptor Block),終了ブロック番号(Commit Block),データブロックの内容(Data Block)および上記データコピー情報(Data Copy)が保存されている。
ジャーナル管理プログラム(プロセッサ32a)は、バックアップ元ストレージ20の一次保存領域21aにおけるジャーナルログおよび差分データを取得するため、ジャーナル受渡プログラムからデータ取得の通知を受けると(図5のステップS31)、以下の処理を行なう。つまり、ジャーナル管理プログラム(プロセッサ32a)は、バックアップ元ストレージ20のジャーナル受渡プログラム(転送部11b)にバックアップ先ストレージ30上へのデータの書込みを依頼する(図5のステップS32)。
そして、ジャーナル受渡プログラム(転送部11b)は、当該通知に対するプロセッサ32aからの応答に応じ、一時保存領域21aに保存されたジャーナルログと差分データとを、バックアップ元ストレージ20からバックアップ先ストレージ30へ受け渡すように制御する。これにより、一時保存領域21aに保存されたジャーナルログと差分データとが、バックアップ先ストレージ30のディスク31上へ書き込まれる(図5のステップS19)。転送部11bは、書込みを完了すると、バックアップ先ストレージ30のプロセッサ32aに対し完了通知を行なう。
ジャーナル管理プログラム(プロセッサ32a)は、バックアップ元ストレージ20から書込み完了通知を受信したか否かを判断し(ステップS33)、書込み完了通知を受信していない場合(ステップS33のNOルート)、ステップS32の処理に戻る。一方、ジャーナル管理プログラム(プロセッサ32a)は、書込み完了通知を受信すると(ステップS33のYESルート)、データコピー済みであることを示すためにトランザクションIDおよびデータコピー情報Data Copy=1を、ジャーナル受渡プログラム(プロセッサ11)に通知する(図5のステップS34)。通知を受けたジャーナル受渡プログラム(プロセッサ11)は、図9に示すように、一時保存領域21aのジャーナルログにおける、該当するトランザクションのデータコピー情報Data Copyの値を0から1に更新する(図5のステップS20)。
なお、バックアップ元ストレージ20における一時保存領域21aについては、ジャーナル受渡プログラム(プロセッサ11)が管理し、新たなジャーナルデータが追加される際に領域が足りない場合、新たなジャーナルデータは最も古いデータに上書きされる。上書きの際には、バックアップ先ストレージ30に最も古いデータのコピーが完了していること(Data Copy=1であること)を確認した上で、ジャーナルデータの上書きが行なわれる。
ジャーナル管理プログラム(プロセッサ32a)は、トランザクションIDおよびData Copy=1の通知を行なった後、以下の処理を行なう。つまり、ジャーナル管理プログラム(プロセッサ32a)は、前回までに取得したジャーナルログのトランザクションID(または最初に取得した全面バックアップデータのトランザクションID)と、今回取得したジャーナルログのトランザクションIDとを比較する(図5のステップS35)。そして、ジャーナル管理プログラム(プロセッサ32a)は、比較の結果に応じて、前回のトランザクションID以降のトランザクションIDについてのジャーナルログの情報を、前回までのジャーナル管理テーブル50に追加(マージ)する(図5のステップS36)。ジャーナル管理テーブル50に基づき、ジャーナルログと、当該ジャーナルログに対応するメタデータおよびデータブロックの管理が行なわれる。
なお、ジャーナル管理テーブル50は、バックアップ元ストレージ20からのジャーナルログに基づき作成されるもので、例えば図10に示すように作成される。図10に示すジャーナル管理テーブル50では、各エントリにおいて、トランザクションID,シーケンシャル番号,コマンド(Read/Write),オフセット,データ長,データの内容が保存されている。
次に、ジャーナル管理プログラム(リスト作成部32a1および復元部32a2)によって実行される復元処理、つまり、差分データを、最初に取得されている全面バックアップデータに反映する際の手順について、図6に示すフローチャート(ステップS41〜S43)に従って説明する。
ホスト装置2のGUI(Graphical User Interface)等の外部から、どの時点までのデータを反映させるかの範囲が、時刻またはトランザクションIDによって指定されると、ジャーナル管理プログラム(リスト作成部32a1および復元部32a2)は、以下の処理を行なう。
まず、ジャーナル管理プログラム(リスト作成部32a1)は、ジャーナル管理テーブル50において、指定範囲内におけるReadコマンドのトランザクションに係るエントリを削除する(ステップS41)。これにより、全面バックアップデータの内容を更新することになる、Writeコマンドのトランザクションに係るエントリのみが残される。このようにして得られた、指定範囲内におけるWriteコマンドのトランザクションに係るエントリの情報に基づき、ジャーナル管理プログラム(リスト作成部32a1)は、指定範囲内についての変更点リスト(データ更新リスト)60を、例えば図11に示すように作成する(ステップS42)。なお、図11に示す変更点リスト60では、コマンド(Writeのみ),オフセット,データ長,データ内容が保存されている。
この後、ジャーナル管理プログラム(復元部32a2)は、バックアップ先ストレージ30のディスク31に最初に作成しておいた全面バックアップデータ(全面コピー)に対し、上述のごとく作成された変更点リスト60のデータを反映する(ステップS43)。これにより、バックアップ元ストレージ20における、上記指定範囲に対応する所望時点のバックアップデータが、例えば図12に示すように復元される。
〔3〕本実施形態のストレージシステムの効果
このように、本実施形態のストレージシステム1によれば、ジャーナルファイルシステムの差分データをバックアップする際に、ジャーナルファイルシステム自体の整合性を保証するためのジャーナルログが活用され、当該ジャーナルログが差分データの変更箇所の情報(変更点リスト60に係る情報)として取得される。したがって、性能低下を招くことなくバックアップ対象データの変更箇所の情報を取得することができ、バックアップ時に業務アプリケーションの性能低下を最小限に抑えることができる。
このように、本実施形態のストレージシステム1によれば、ジャーナルファイルシステムの差分データをバックアップする際に、ジャーナルファイルシステム自体の整合性を保証するためのジャーナルログが活用され、当該ジャーナルログが差分データの変更箇所の情報(変更点リスト60に係る情報)として取得される。したがって、性能低下を招くことなくバックアップ対象データの変更箇所の情報を取得することができ、バックアップ時に業務アプリケーションの性能低下を最小限に抑えることができる。
このとき、ジャーナルログを用いて変更点リスト60を作成することで、メタデータの全領域をスキャンする必要がない。ジャーナルログ取得中、ジャーナル領域12a(ジャーナルバッファI)に対するアクセス(書込み処理および読出し処理)はロックされ、ジャーナルログに対するアクセスがあった場合、当該アクセスは、仮ジャーナル領域12b(ジャーナルバッファII)に保存されたジャーナルログに対して行なわれる。このため、システムを停止させることなく、ジャーナルログに対するアクセスを通常通り実行することができる。ジャーナルログを差分バックアップデータのための変更点検出に使用することで、メタデータの全面チェックが不要となり、バックアップ作成の効率化を実現することができる。
また、本実施形態では、ジャーナルログを全て保持し、ジャーナルログから変更点リスト60を作成することで、どの時点のバックアップデータも、容易に復元することが可能である。
さらに、本実施形態では、変更点リスト60を作成する際、指定範囲内におけるReadコマンドのトランザクションに係るエントリが削除される。これにより、全面バックアップデータの内容を更新することになる、Writeコマンドのトランザクションに係るエントリのみを用いて変更点リスト60が作成される。このため、Readコマンドのトランザクションを考慮する必要がなく、変更点リスト60が、短時間で効率的に作成される。
さらに、本実施形態では、変更点リスト60を作成する際、指定範囲内におけるReadコマンドのトランザクションに係るエントリが削除される。これにより、全面バックアップデータの内容を更新することになる、Writeコマンドのトランザクションに係るエントリのみを用いて変更点リスト60が作成される。このため、Readコマンドのトランザクションを考慮する必要がなく、変更点リスト60が、短時間で効率的に作成される。
〔4〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
上述した実施形態では、バックアップサーバ10におけるプロセッサ11がジャーナル受渡プログラムを実行することで取得部11aおよび転送部11bとして機能する場合について説明しているが、取得部11aおよび転送部11bとしての機能は、バックアップ元ストレージ20側に備えてもよい。例えば、バックアップ元ストレージ20の内部のコントローラ(制御装置)22が上述したジャーナル受渡プログラムを実行することで取得部11aおよび転送部11bとして機能するように構成してもよい。ここで、バックアップ元ストレージ20の内部のコントローラ22は、バックアップ元ストレージ20のデータをバックアップ先ストレージ30に転送してバックアップさせる制御を行なう制御装置として機能する。
また、上述した実施形態では、バックアップサーバ10におけるプロセッサ(制御装置)11がジャーナル受渡プログラムを実行することで取得部11aとして機能する場合について説明しているが、取得部11aとしての機能は、バックアップ先ストレージ30側に備えてもよい。例えば、バックアップ先ストレージ30の内部のコントローラ(制御装置)32が上述したジャーナル受渡プログラムを実行することで取得部11aとして機能するように構成してもよい。また、バックアップ先ストレージ30側において、バックアップ先ストレージ30を制御する外付けのバックアップ先サーバ(制御装置;図示略)が備えられている場合、当該バックアップ先サーバが上述したジャーナル受渡プログラムを実行することで取得部11aとして機能するように構成してもよい。この場合、当該バックアップ先サーバが上述したジャーナル管理プログラムを実行することでリスト作成部32a1および復元部32a2として機能するように構成してもよい。ここで、バックアップ先ストレージ30の内部のコントローラ32や、バックアップ先サーバは、バックアップ元ストレージ20のバックアップデータを記憶領域(ディスク31)に格納する制御を行なう制御装置として機能する。
なお、上述した取得部11a,転送部11b,リスト作成部32a1および復元部32a2としての機能の全部もしくは一部は、コンピュータ(プロセッサ,CPU,情報処理装置,各種端末を含む)が所定のアプリケーションプログラムを実行することによって実現される。上記アプリケーションプログラムは、少なくとも、上述したジャーナル受渡プログラムおよびジャーナル管理プログラムを含むバックアッププログラムである。
また、上記アプリケーションプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RWなど),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD−RW,DVD+R,DVD+RWなど),ブルーレイディスク等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。
ここで、コンピュータとは、ハードウエアとOS(Operating System)とを含む概念であり、OSの制御の下で動作するハードウエアを意味している。また、OSが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウエアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取る手段とをそなえている。上記アプリケーションプログラムは、上述のようなコンピュータに、取得部11a,転送部11b,リスト作成部32a1および復元部32a2としての機能を実現させるプログラムコードを含んでいる。また、その機能の一部は、アプリケーションプログラムではなくOSによって実現されてもよい。
〔5〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
バックアップ元ストレージのデータをバックアップ先ストレージにバックアップを行なうストレージシステムであって、
前記バックアップ元ストレージのデータに対する変更履歴に係る変更履歴情報を取得する取得部と、
前記取得部によって取得された変更履歴情報と当該変更履歴情報に対応する差分データとを、前記バックアップ先ストレージへ転送する転送部と、
前記バックアップ先ストレージにおいて、前記変更履歴情報に基づき、前記バックアップ元ストレージのデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部と、を備えた、ストレージシステム。
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
バックアップ元ストレージのデータをバックアップ先ストレージにバックアップを行なうストレージシステムであって、
前記バックアップ元ストレージのデータに対する変更履歴に係る変更履歴情報を取得する取得部と、
前記取得部によって取得された変更履歴情報と当該変更履歴情報に対応する差分データとを、前記バックアップ先ストレージへ転送する転送部と、
前記バックアップ先ストレージにおいて、前記変更履歴情報に基づき、前記バックアップ元ストレージのデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部と、を備えた、ストレージシステム。
(付記2)
前記取得部は、前記バックアップ元ストレージのデータに対する変更処理に応じて生成されるジャーナルを、前記変更履歴情報として取得する、付記1記載のストレージシステム。
前記取得部は、前記バックアップ元ストレージのデータに対する変更処理に応じて生成されるジャーナルを、前記変更履歴情報として取得する、付記1記載のストレージシステム。
(付記3)
前記ジャーナルを記録するジャーナル領域を含むメモリを備え、
前記取得部は、前記メモリ上の前記ジャーナル領域における前記ジャーナルと当該ジャーナルに対応する前記差分データとを取得して前記バックアップ元ストレージの一時保存領域に保存し、
前記転送部は、前記一時保存領域に保存した前記ジャーナルと前記差分データとを、前記バックアップ先ストレージへ転送する、付記2記載のストレージシステム。
前記ジャーナルを記録するジャーナル領域を含むメモリを備え、
前記取得部は、前記メモリ上の前記ジャーナル領域における前記ジャーナルと当該ジャーナルに対応する前記差分データとを取得して前記バックアップ元ストレージの一時保存領域に保存し、
前記転送部は、前記一時保存領域に保存した前記ジャーナルと前記差分データとを、前記バックアップ先ストレージへ転送する、付記2記載のストレージシステム。
(付記4)
前記取得部は、前記ジャーナルを取得している間、前記ジャーナル領域に対する書込み処理をロックするとともに、前記メモリ上に前記ジャーナル領域と同容量の仮ジャーナル領域を確保し、ロック中の前記ジャーナル領域に対する書込みを前記仮ジャーナル領域に対して行なう、付記3記載のストレージシステム。
前記取得部は、前記ジャーナルを取得している間、前記ジャーナル領域に対する書込み処理をロックするとともに、前記メモリ上に前記ジャーナル領域と同容量の仮ジャーナル領域を確保し、ロック中の前記ジャーナル領域に対する書込みを前記仮ジャーナル領域に対して行なう、付記3記載のストレージシステム。
(付記5)
前記取得部は、前記ジャーナルの取得完了後に、前記ジャーナル領域に対する書込み処理のロックを解除するとともに、前記仮ジャーナル領域に書き込まれたデータを前記ジャーナル領域に書き戻す、付記4記載のストレージシステム。
前記取得部は、前記ジャーナルの取得完了後に、前記ジャーナル領域に対する書込み処理のロックを解除するとともに、前記仮ジャーナル領域に書き込まれたデータを前記ジャーナル領域に書き戻す、付記4記載のストレージシステム。
(付記6)
前記リスト作成部は、外部から指示された範囲に対応する前記変更履歴情報に基づき、前記変更点リストを作成する、付記1〜付記5のいずれか一項に記載のストレージシステム。
前記リスト作成部は、外部から指示された範囲に対応する前記変更履歴情報に基づき、前記変更点リストを作成する、付記1〜付記5のいずれか一項に記載のストレージシステム。
(付記7)
前記リスト作成部は、前記変更履歴情報から読出しコマンドに係るエントリを削除して前記変更点リストを作成する、付記1〜付記6のいずれか一項に記載のストレージシステム。
前記リスト作成部は、前記変更履歴情報から読出しコマンドに係るエントリを削除して前記変更点リストを作成する、付記1〜付記6のいずれか一項に記載のストレージシステム。
(付記8)
前記リスト作成部によって作成された前記変更点リストと、前記バックアップ先ストレージにおける前記差分データとを用いて、前記バックアップ元ストレージにおけるデータを復元する復元部を備えた、付記1〜付記7のいずれか一項に記載のストレージシステム。
前記リスト作成部によって作成された前記変更点リストと、前記バックアップ先ストレージにおける前記差分データとを用いて、前記バックアップ元ストレージにおけるデータを復元する復元部を備えた、付記1〜付記7のいずれか一項に記載のストレージシステム。
(付記9)
バックアップ元ストレージのデータをバックアップ先ストレージに転送してバックアップさせる制御を行なう制御装置であって、
前記データに対する変更履歴に係る変更履歴情報を取得する取得部と、
前記取得部によって取得された変更履歴情報と当該変更履歴情報に対応する差分データとを、前記バックアップ先ストレージへ転送する転送部と、
を備えた、制御装置。
バックアップ元ストレージのデータをバックアップ先ストレージに転送してバックアップさせる制御を行なう制御装置であって、
前記データに対する変更履歴に係る変更履歴情報を取得する取得部と、
前記取得部によって取得された変更履歴情報と当該変更履歴情報に対応する差分データとを、前記バックアップ先ストレージへ転送する転送部と、
を備えた、制御装置。
(付記10)
前記取得部は、前記バックアップ元ストレージのデータに対する変更処理に応じて生成されるジャーナルを、前記変更履歴情報として取得する、付記9記載の制御装置。
前記取得部は、前記バックアップ元ストレージのデータに対する変更処理に応じて生成されるジャーナルを、前記変更履歴情報として取得する、付記9記載の制御装置。
(付記11)
前記取得部は、メモリ上のジャーナル領域に記録されたジャーナルと当該ジャーナルに対応する前記差分データとを取得して前記バックアップ元ストレージの一時保存領域に保存し、
前記転送部は、前記一時保存領域に保存した前記ジャーナルと前記差分データとを、前記バックアップ先ストレージへ転送する、付記10記載の制御装置。
前記取得部は、メモリ上のジャーナル領域に記録されたジャーナルと当該ジャーナルに対応する前記差分データとを取得して前記バックアップ元ストレージの一時保存領域に保存し、
前記転送部は、前記一時保存領域に保存した前記ジャーナルと前記差分データとを、前記バックアップ先ストレージへ転送する、付記10記載の制御装置。
(付記12)
前記取得部は、前記ジャーナルを取得している間、前記ジャーナル領域に対する書込み処理をロックするとともに、前記メモリ上に前記ジャーナル領域と同容量の仮ジャーナル領域を確保し、ロック中の前記ジャーナル領域に対する書込みを前記仮ジャーナル領域に対して行なう、付記11記載の制御装置。
前記取得部は、前記ジャーナルを取得している間、前記ジャーナル領域に対する書込み処理をロックするとともに、前記メモリ上に前記ジャーナル領域と同容量の仮ジャーナル領域を確保し、ロック中の前記ジャーナル領域に対する書込みを前記仮ジャーナル領域に対して行なう、付記11記載の制御装置。
(付記13)
前記取得部は、前記ジャーナルの取得完了後に、前記ジャーナル領域に対する書込み処理のロックを解除するとともに、前記仮ジャーナル領域に書き込まれたデータを前記ジャーナル領域に書き戻す、付記12記載の制御装置。
前記取得部は、前記ジャーナルの取得完了後に、前記ジャーナル領域に対する書込み処理のロックを解除するとともに、前記仮ジャーナル領域に書き込まれたデータを前記ジャーナル領域に書き戻す、付記12記載の制御装置。
(付記14)
バックアップ元ストレージのバックアップデータを記憶領域に格納する制御を行なう制御装置であって、
前記バックアップ元ストレージのデータに対する変更履歴に係る変更履歴情報と当該変更履歴情報に対応する差分データとを、取得する取得部と、
取得した前記変更履歴情報に基づき、前記バックアップ元ストレージのデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部と、
を備えた、制御装置。
バックアップ元ストレージのバックアップデータを記憶領域に格納する制御を行なう制御装置であって、
前記バックアップ元ストレージのデータに対する変更履歴に係る変更履歴情報と当該変更履歴情報に対応する差分データとを、取得する取得部と、
取得した前記変更履歴情報に基づき、前記バックアップ元ストレージのデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部と、
を備えた、制御装置。
(付記15)
前記取得部は、前記バックアップ元ストレージのデータに対する変更処理に応じて生成されるジャーナルを、前記変更履歴情報として取得する、付記14記載の制御装置。
前記取得部は、前記バックアップ元ストレージのデータに対する変更処理に応じて生成されるジャーナルを、前記変更履歴情報として取得する、付記14記載の制御装置。
(付記16)
前記リスト作成部は、外部から指示された範囲に対応する前記変更履歴情報に基づき、前記変更点リストを作成する、付記14または付記15に記載の制御装置。
前記リスト作成部は、外部から指示された範囲に対応する前記変更履歴情報に基づき、前記変更点リストを作成する、付記14または付記15に記載の制御装置。
(付記17)
前記リスト作成部は、前記変更履歴情報から読出しコマンドに係るエントリを削除して前記変更点リストを作成する、付記14〜付記16のいずれか一項に記載の制御装置。
前記リスト作成部は、前記変更履歴情報から読出しコマンドに係るエントリを削除して前記変更点リストを作成する、付記14〜付記16のいずれか一項に記載の制御装置。
(付記18)
前記リスト作成部によって作成された前記変更点リストと、前記バックアップ先ストレージにおける前記差分データとを用いて、前記バックアップ元ストレージにおけるデータを復元する復元部を備えた、付記14〜付記17のいずれか一項に記載の制御装置。
前記リスト作成部によって作成された前記変更点リストと、前記バックアップ先ストレージにおける前記差分データとを用いて、前記バックアップ元ストレージにおけるデータを復元する復元部を備えた、付記14〜付記17のいずれか一項に記載の制御装置。
1 ストレージシステム(ジャーナルファイルシステム)
2 ホスト装置
3 LAN(Local Area Network)
10 バックアップサーバ(制御装置)
11 プロセッサ(コンピュータ)
11a 取得部
11b 転送部
12 メモリ
12a ジャーナル領域(ジャーナルバッファI)
12b 仮ジャーナル領域(ジャーナルバッファII)
13 メモリコントローラ
14 ネットワークI/F(InterFace)
15 データI/F
16 タイマ(ジャーナルタイマ)
20 バックアップ元ストレージ
21 ディスク
21a 一時保存領域
22 コントローラ(制御装置)
23,24 データI/F
30 バックアップ先ストレージ
31 ディスク
32 コントローラ(制御装置)
32a プロセッサ(コンピュータ)
32a1 リスト作成部
32a2 復元部
32b メモリ
33 データI/F
34 ネットワークI/F
50 ジャーナル管理テーブル
60 変更点リスト(データ更新リスト)
2 ホスト装置
3 LAN(Local Area Network)
10 バックアップサーバ(制御装置)
11 プロセッサ(コンピュータ)
11a 取得部
11b 転送部
12 メモリ
12a ジャーナル領域(ジャーナルバッファI)
12b 仮ジャーナル領域(ジャーナルバッファII)
13 メモリコントローラ
14 ネットワークI/F(InterFace)
15 データI/F
16 タイマ(ジャーナルタイマ)
20 バックアップ元ストレージ
21 ディスク
21a 一時保存領域
22 コントローラ(制御装置)
23,24 データI/F
30 バックアップ先ストレージ
31 ディスク
32 コントローラ(制御装置)
32a プロセッサ(コンピュータ)
32a1 リスト作成部
32a2 復元部
32b メモリ
33 データI/F
34 ネットワークI/F
50 ジャーナル管理テーブル
60 変更点リスト(データ更新リスト)
Claims (10)
- バックアップ元ストレージのデータをバックアップ先ストレージにバックアップを行なうストレージシステムであって、
前記バックアップ元ストレージのデータに対する変更履歴に係る変更履歴情報を取得する取得部と、
前記取得部によって取得された変更履歴情報と当該変更履歴情報に対応する差分データとを、前記バックアップ先ストレージへ転送する転送部と、
前記バックアップ先ストレージにおいて、前記変更履歴情報に基づき、前記バックアップ元ストレージのデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部と、を備えた、ストレージシステム。 - 前記取得部は、前記バックアップ元ストレージのデータに対する変更処理に応じて生成されるジャーナルを、前記変更履歴情報として取得する、請求項1記載のストレージシステム。
- 前記ジャーナルを記録するジャーナル領域を含むメモリを備え、
前記取得部は、前記メモリ上の前記ジャーナル領域における前記ジャーナルと当該ジャーナルに対応する前記差分データとを取得して前記バックアップ元ストレージの一時保存領域に保存し、
前記転送部は、前記一時保存領域に保存した前記ジャーナルと前記差分データとを、前記バックアップ先ストレージへ転送する、請求項2記載のストレージシステム。 - 前記取得部は、前記ジャーナルを取得している間、前記ジャーナル領域に対する書込み処理をロックするとともに、前記メモリ上に前記ジャーナル領域と同容量の仮ジャーナル領域を確保し、ロック中の前記ジャーナル領域に対する書込みを前記仮ジャーナル領域に対して行なう、請求項3記載のストレージシステム。
- 前記取得部は、前記ジャーナルの取得完了後に、前記ジャーナル領域に対する書込み処理のロックを解除するとともに、前記仮ジャーナル領域に書き込まれたデータを前記ジャーナル領域に書き戻す、請求項4記載のストレージシステム。
- 前記リスト作成部は、外部から指示された範囲に対応する前記変更履歴情報に基づき、前記変更点リストを作成する、請求項1〜請求項5のいずれか一項に記載のストレージシステム。
- 前記リスト作成部は、前記変更履歴情報から読出しコマンドに係るエントリを削除して前記変更点リストを作成する、請求項1〜請求項6のいずれか一項に記載のストレージシステム。
- 前記リスト作成部によって作成された前記変更点リストと、前記バックアップ先ストレージにおける前記差分データとを用いて、前記バックアップ元ストレージにおけるデータを復元する復元部を備えた、請求項1〜請求項7のいずれか一項に記載のストレージシステム。
- バックアップ元ストレージのデータをバックアップ先ストレージに転送してバックアップさせる制御を行なう制御装置であって、
前記データに対する変更履歴に係る変更履歴情報を取得する取得部と、
前記取得部によって取得された変更履歴情報と当該変更履歴情報に対応する差分データとを、前記バックアップ先ストレージへ転送する転送部と、
を備えた、制御装置。 - バックアップ元ストレージのバックアップデータを記憶領域に格納する制御を行なう制御装置であって、
前記バックアップ元ストレージのデータに対する変更履歴に係る変更履歴情報と当該変更履歴情報に対応する差分データとを、取得する取得部と、
取得した前記変更履歴情報に基づき、前記バックアップ元ストレージのデータにおける変更箇所をリストアップした変更点リストを作成するリスト作成部と、
を備えた、制御装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013011694A JP2014142852A (ja) | 2013-01-25 | 2013-01-25 | ストレージシステムおよび制御装置 |
US14/144,761 US20140214766A1 (en) | 2013-01-25 | 2013-12-31 | Storage system and control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013011694A JP2014142852A (ja) | 2013-01-25 | 2013-01-25 | ストレージシステムおよび制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014142852A true JP2014142852A (ja) | 2014-08-07 |
Family
ID=51224100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013011694A Pending JP2014142852A (ja) | 2013-01-25 | 2013-01-25 | ストレージシステムおよび制御装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20140214766A1 (ja) |
JP (1) | JP2014142852A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018018429A (ja) * | 2016-07-29 | 2018-02-01 | ファナック株式会社 | 自動バックアップ装置、自動バックアップ方法及びプログラム |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10521309B1 (en) * | 2013-12-23 | 2019-12-31 | EMC IP Holding Company LLC | Optimized filesystem walk for backup operations |
US10346434B1 (en) * | 2015-08-21 | 2019-07-09 | Amazon Technologies, Inc. | Partitioned data materialization in journal-based storage systems |
US9967337B1 (en) * | 2015-12-29 | 2018-05-08 | EMC IP Holding Company LLC | Corruption-resistant backup policy |
US10956270B2 (en) * | 2016-03-30 | 2021-03-23 | Acronis International Gmbh | System and method for data protection during full data backup |
US11461579B2 (en) | 2018-02-08 | 2022-10-04 | Western Digital Technologies, Inc. | Configurable neural network engine for convolutional filter sizes |
US11551064B2 (en) | 2018-02-08 | 2023-01-10 | Western Digital Technologies, Inc. | Systolic neural network engine capable of forward propagation |
US11783176B2 (en) * | 2019-03-25 | 2023-10-10 | Western Digital Technologies, Inc. | Enhanced storage device memory architecture for machine learning |
US11983440B2 (en) * | 2020-12-30 | 2024-05-14 | Samsung Electronics Co., Ltd. | Storage device including memory controller implementing journaling and operating method of the memory controller |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7051173B2 (en) * | 2000-02-04 | 2006-05-23 | Fujitsu Limited | Backup system and method thereof in disk shared file system |
US7340646B2 (en) * | 2004-05-03 | 2008-03-04 | International Business Machines Corporation | Apparatus, system, and method for resource group backup |
US7873601B1 (en) * | 2006-06-29 | 2011-01-18 | Emc Corporation | Backup of incremental metadata in block based backup systems |
KR20090005921A (ko) * | 2007-07-10 | 2009-01-14 | 삼성전자주식회사 | 대칭적 다중 프로세서 시스템에서의 로드 밸런싱 방법 및장치 |
-
2013
- 2013-01-25 JP JP2013011694A patent/JP2014142852A/ja active Pending
- 2013-12-31 US US14/144,761 patent/US20140214766A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018018429A (ja) * | 2016-07-29 | 2018-02-01 | ファナック株式会社 | 自動バックアップ装置、自動バックアップ方法及びプログラム |
US10452483B2 (en) | 2016-07-29 | 2019-10-22 | Fanuc Corporation | Automatic backup device, automatic backup method, and recording medium |
Also Published As
Publication number | Publication date |
---|---|
US20140214766A1 (en) | 2014-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2014142852A (ja) | ストレージシステムおよび制御装置 | |
JP5705309B2 (ja) | バックアップ・プロセスを処理する方法、システム、及びコンピュータ・プログラム | |
US7979654B2 (en) | Method and system for restoring a volume in a continuous data protection system | |
US7325159B2 (en) | Method and system for data recovery in a continuous data protection system | |
US8285679B2 (en) | Creating a buffer point-in-time copy relationship for a point-in-time copy function executed to create a point-in-time copy relationship | |
US8627025B2 (en) | Protecting data during different connectivity states | |
US7720817B2 (en) | Method and system for browsing objects on a protected volume in a continuous data protection system | |
US7216210B2 (en) | Data I/O system using a plurality of mirror volumes | |
JP2008004090A (ja) | トランザクションモニタリング能力を有するストレージシステム | |
CN101243446A (zh) | 从数据库镜像进行在线页还原 | |
JP4726909B2 (ja) | ストレージ階層内のデータの冗長記憶を管理する方法、システムおよびコンピュータ・プログラム | |
US20150116857A1 (en) | Tape apparatus, storage control apparatus, and storage control method | |
US8938641B2 (en) | Method and apparatus for synchronizing storage volumes | |
US9430485B2 (en) | Information processor and backup method | |
US9229814B2 (en) | Data error recovery for a storage device | |
US20140089263A1 (en) | File recording apparatus, file system management method, and changer drive | |
US20080155319A1 (en) | Methods and systems for managing removable media | |
US8473478B2 (en) | Automatic real-time file management method and apparatus | |
US10671488B2 (en) | Database in-memory protection system | |
JP2007323377A (ja) | 記録装置、管理データの書き込み方法および管理データの修復方法 | |
JP7266067B2 (ja) | ストレージシステム | |
US20130290262A1 (en) | Information processing device, computer-readable recording medium storing program for generating snapshot, and method therefore | |
JP5290938B2 (ja) | コピー制御装置および方法 | |
Steigerwald | Imposing order | |
JP2010015253A (ja) | 記録再生装置および記録再生方法 |