JP2007280323A - 記憶システム及びデータ管理方法 - Google Patents

記憶システム及びデータ管理方法 Download PDF

Info

Publication number
JP2007280323A
JP2007280323A JP2006109366A JP2006109366A JP2007280323A JP 2007280323 A JP2007280323 A JP 2007280323A JP 2006109366 A JP2006109366 A JP 2006109366A JP 2006109366 A JP2006109366 A JP 2006109366A JP 2007280323 A JP2007280323 A JP 2007280323A
Authority
JP
Japan
Prior art keywords
snapshot
volume
journal
storage device
time
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.)
Withdrawn
Application number
JP2006109366A
Other languages
English (en)
Inventor
Toru Suzuki
亨 鈴木
Katsuhiro Okumoto
勝博 奥元
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 JP2006109366A priority Critical patent/JP2007280323A/ja
Priority to US11/450,259 priority patent/US20070245105A1/en
Priority to EP06255781A priority patent/EP1845448A2/en
Priority to CNB2006101687045A priority patent/CN100476747C/zh
Publication of JP2007280323A publication Critical patent/JP2007280323A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

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

【課題】より短い時間単位での復元時刻の指定を可能とすると共に、より短時間でのデータ復元処理を行い得る記憶システム及びデータ管理方法を実現できる。
【解決手段】第1のストレージ装置において、第1のボリュームの更新履歴情報であるジャーナルを作成すると共に、作成したジャーナルを第2のストレージ装置に送信し、第2のストレージ装置において、受信したジャーナルに含まれる第1のボリュームに書き込まれたデータを第2のボリュームにコピーすると共に、各ジャーナルを保持する一方、定期的又は不定期に第2のボリュームのスナップショットを作成すると共に、作成した各スナップショットを保持し、その後、外部からの要求に応じて、保持したジャーナル及びスナップショットを利用して、指定された時刻の第1のボリュームを復元するようにした。
【選択図】図5

Description

本発明は、記憶システム及びデータ管理方法に関し、例えばジャーナルを利用したデータバックアップを行い得るようになされた記憶システムに適用して好適なものである。
従来、記憶システムにおいては、ユーザがデータを読み書きするボリュームのフルバックアップを1日から1週間程度の周期で定期的に実行し、又はボリュームのある時点のデータイメージでなるスナップショットを12時間から1日程度の周期で定期的に作成し、かかるフルバックアップやスナップショットの作成により得られたバックアップデータやスナップショットの差分データを用いてボリュームや当該ボリュームに格納されたデータを復元することが行われている。
また、下記特許文献1には、かかるユーザがデータを読み書きするボリュームの更新履歴情報でなるジャーナルを利用したデータのバックアップに関する技術が開示され、下記特許文献2には、リモートコピーを利用したデータのバックアップに関する技術が開示されている。
特開2005−115898号公報 特開2003−122509号公報
ところが、上述のように1日から1週間程度の周期で定期的にボリュームに格納されたデータのフルバックアップを実行し、又は12時間から1日程度の周期で定期的にボリュームのある時点のデータイメージでなるスナップショットを作成するデータ管理方法によると、当該ボリュームを復元可能な時間単位が12時間から1週間ごととなり、またボリュームを復元するために1〜3時間程度の時間を要していた。
また従来の記憶システムでは、かかるボリュームの復元処理を、ユーザがデータを読み書きするためのボリュームが設けられたストレージ装置側において行っていた。ところが、このようなボリュームの復元処理は負荷が大きく、かかるボリュームの復元処理がホスト装置からのデータ入出力要求に応じたデータの入出力処理に悪影響を及ぼす問題があった。
本発明は以上の点を考慮してなされたもので、より短い時間単位での復元時刻の指定を可能とすると共に、より短時間でのデータ復元処理を行い得る記憶システム及びデータ管理方法を提案しようとするものである。
かかる課題を解決するため本発明においては、上位装置としてのホスト装置と、前記ホスト装置に対してデータを読み書きするための第1のボリュームを提供する第1のストレージ装置と、前記第1のボリュームに書き込まれた前記データをコピーするための第2のボリュームを提供する第2のストレージ装置とを有する記憶システムにおいて、前記第1のストレージ装置は、前記第1のボリュームの更新履歴情報であるジャーナルを作成し、作成した前記ジャーナルを前記第2のストレージ装置に送信するジャーナル作成送信部を備え、前記第2のストレージ装置は、前記第1のストレージ装置から送信される前記ジャーナルに含まれる前記第1のボリュームに書き込まれた前記データを前記第2のボリュームにコピーするデータコピー部と、前記第1のストレージ装置から送信される各前記ジャーナルを保持するジャーナル保持部と、定期的又は不定期に前記第2のボリュームのスナップショットを作成するスナップショット作成部と、前記スナップショット作成部により作成された各前記スナップショットを保持するスナップショット保持部と、外部からの要求に応じて、前記ジャーナル保持部に保持された前記ジャーナル及び前記スナップショット保持部に保持された前記スナップショットを利用して、指定された時刻の前記第1のボリュームを復元するデータ復元部とを備えることを特徴とする。
この結果、この記憶システムでは、第2のストレージ装置においてスナップショットを作成する時間的な間隔を調整することによって、第1のボリュームの復元可能な時間単位を短くすることができ、この結果として第1のボリュームの復元処理に要する時間を短縮することができる。またこの記憶システムでは、第1のボリュームの復元処理を第2のストレージ装置において行うため、当該復元処理が第1のストレージ装置におけるデータ入出力処理に悪影響を及ぼすのを有効に防止することができる。
また本発明においては、上位装置としてのホスト装置と、前記ホスト装置に対してデータを読み書きするための第1のボリュームを提供する第1のストレージ装置と、前記第1のボリュームに書き込まれた前記データをコピーするための第2のボリュームを提供する第2のストレージ装置とを有する記憶システムにおけるデータ管理方法において、前記第1のストレージ装置が、前記第1のボリュームの更新履歴情報であるジャーナルを作成し、作成した前記ジャーナルを前記第2のストレージ装置に送信する第1のステップと、前記第2のストレージ装置が、前記第1のストレージ装置から送信される前記ジャーナルに含まれる前記第1のボリュームに書き込まれた前記データを前記第2のボリュームにコピーすると共に、各前記ジャーナルを保持する一方、定期的又は不定期に前記第2のボリュームのスナップショットを作成すると共に、作成した各前記スナップショットを保持する第2のステップと、前記第2のストレージ装置が、外部からの要求に応じて、保持した前記ジャーナル及び前記スナップショットを利用して、指定された時刻の前記第1のボリュームを復元する第3のステップとを備えることを特徴とする。
この結果、このデータ管理方法によれば、第2のストレージ装置においてスナップショットを作成する時間的な間隔を調整することによって、第1のボリュームの復元可能な時間単位を短くすることができ、この結果として第1のボリュームの復元処理に要する時間を短縮することができる。またこのデータ管理方法によれば、第1のボリュームの復元処理を第2のストレージ装置において行うため、当該復元処理が第1のストレージ装置におけるデータ入出力処理に悪影響を及ぼすのを有効に防止することができる。
本発明によれば、より短い時間単位での復元時刻の指定を可能とすると共に、より短時間でのデータ復元処理を行い得る記憶システム及びデータ管理方法を実現できる。
以下図面について、本発明の一実施の形態を詳述する。
(1)本実施の形態による記憶システムの構成
図1において、1は全体として本実施の形態による記憶システムを示す。この記憶システム1は、上位装置としてのホスト装置2がネットワーク3を介して正側ストレージ装置4及び副側ストレージ装置5と接続されることにより構成されている。
ホスト装置2は、CPU(Central Processing Unit)10やローカルメモリ11等の情報処理資源を備えたコンピュータ装置であり、例えばパーソナルコンピュータや、ワークステーション、メインフレームなどから構成される。またホスト装置2は、キーボード、スイッチやポインティングデバイス、マイクロフォン等の情報入力装置(図示せず)と、モニタディスプレイやスピーカ等の情報出力装置(図示せず)とを備える。
ネットワーク3は、例えばSAN(Storage Area Network)、LAN(Local Area Network)、インターネット、公衆回線又は専用回線などから構成される。このネットワーク3を介したホスト装置2、正側ストレージ装置4及び副側ストレージ装置5間の通信は、例えばネットワーク3がSANである場合にはファイバーチャネルプロトコルに従って行われ、ネットワーク3がLANである場合にはTCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って行われる。
正側ストレージ装置4は、複数のディスクデバイス20からなるディスクデバイス部21と、各ディスクデバイス20を制御するコントローラ22とを備えて構成される。
ディスクデバイス20は、例えばFC(Fibre Channel)ディスク等の高価なディスクドライブ、又はFATA(Fibre Attached Technology Adapted)や、SATA(Serial AT Attachment)ディスク又は光ディスクドライブ等の安価なディスクドライブから構成される。1又は複数のディスクデバイス20が提供する記憶領域上に1又は複数の論理的なボリューム(以下、これを論理ボリュームと呼ぶ)VOLが定義される。そして、この論理ボリュームVOLにホスト装置2からのデータが所定大きさのブロックを単位として読み書きされる。
各論理ボリュームVOLには、それぞれ固有の識別子(LUN:Logical Unit Number)が割り当てられる。本実施の形態の場合、データの入出力は、この識別子と、各ブロックにそれぞれ割り当てられるそのブロックに固有の番号(LBA:Logical Block Address)との組み合わせたものをアドレスとして、当該アドレスを指定して行われる。
正側ストレージ装置4内に作成される論理ボリュームVOLの属性としては、正側ボリューム及びジャーナルボリュームなどがある。このうち正側ボリュームは、ユーザがデータを読み書きするボリュームである。またジャーナルボリュームは、正側ボリュームに書き込まれたデータと、当該データが書き込まれた正側ボリューム上のアドレス及び当該データが書き込まれた時刻等の管理情報とから構成される、正側ボリュームの更新履歴情報であるジャーナルを格納するためのボリュームである。
コントローラ22は、複数のチャネルアダプタ23、接続部24、共有メモリ25、キャッシュメモリ26、複数のディスクアダプタ27及び管理端末28を備えて構成される。
各チャネルアダプタ23は、図2に示すように、それぞれCPU30及びローカルメモリ31等を備えたマイクロコンピュータシステムとして構成されており、それぞれネットワーク3に接続するためのポート(図示せず)を備える。チャネルアダプタ23は、ホスト装置2から送信される各種コマンドを解釈して、必要な処理を実行する。各チャネルアダプタ23のポートには、それぞれを識別するためのネットワークアドレス(例えば、IPアドレスやWWN)が割り当てられており、これにより各チャネルアダプタ13がそれぞれ個別にNAS(Network Attached Storage)として振る舞うことができるようになされている。
接続部24は、チャネルアダプタ23、共有メモリ25、キャッシュメモリ26及びディスクアダプタ27と接続されている。チャネルアダプタ23、共有メモリ25、キャッシュメモリ26及びディスクアダプタ27間のデータやコマンドの授受は、この接続部24を介して行われる。接続部24は、例えば高速スイッチングによりデータ伝送を行う超高速クロスバススイッチなどのスイッチ又はバス等で構成される。
共有メモリ25は、チャネルアダプタ23及びディスクアダプタ27により共有される記憶メモリである。共有メモリ25は、主に正側ストレージ装置4の電源投入時に所定のディスクデバイス20から読み出されたマイクロプログラム及びシステム構成情報や、ホスト装置2からのコマンドなどを記憶するために利用される。図3に示すように、後述のリモートコピー処理を実行するためのリモートコピー管理プログラム32もこの共有メモリ25に格納されている。
キャッシュメモリ26も、チャネルアダプタ23及びディスクアダプタ27により共有される記憶メモリである。このキャッシュメモリ26は、主に正側ストレージ装置4に入出力するデータを一時的に記憶するために利用される。
各ディスクアダプタ27は、CPUやメモリ等を備えたマイクロコンピュータシステムとして構成され、各ディスクデバイス20との通信時におけるプロトコル制御を行うインタフェースとして機能する。これらディスクアダプタ27は、例えばファイバーチャネルケーブルを介して対応するディスクデバイス20と接続されており、ファイバーチャネルプロトコルに従ってこれらディスクデバイス20との間のデータの授受を行う。
管理端末28は、正側ストレージ装置4全体の作動を制御するコンピュータ装置であり、例えばノート型のパーソナルコンピュータから構成される。この管理端末28は、LAN29を介して各チャネルアダプタ23及び各ディスクアダプタ27とそれぞれ接続されている。管理端末28は、正側ストレージ装置4内の障害の有無を監視し、障害が発生したときにこれをシステム管理者に通知するなどの処理を行う。
副側ストレージ装置5は、正側ストレージ装置4と同様に、複数のディスクデバイス40からなるディスクデバイス部41と、各ディスクデバイス40を制御するコントローラ42とを備えて構成される。
ディスクデバイス40は、正側ストレージ装置4のディスクデバイス20と同様の構成を有するものであるため、説明を省略する。このディスクデバイス40が提供する記憶領域上には、正側ストレージ装置4と同様に、1又は複数の論理ボリュームVOLが定義される。これら論理ボリュームVOLの属性としては、ジャーナルボリューム、副側ボリューム及び差分ボリュームなどがある。
このうちジャーナルボリュームは、後述のように正側ストレージ装置4から送信されてくるジャーナルを保持するボリュームである。また副側ボリュームは、正側ボリュームに書き込まれたデータをバックアップするためのボリュームであり、正側ストレージ装置4から送信されてきたジャーナルに含まれる正側ボリュームに書き込まれたデータがコピーされる。差分ボリュームは、後述のように所定のタイミングで取得された副側ボリュームのスナップショットの差分データを保持するためのボリュームである。
一方、コントローラ42は、複数のチャネルアダプタ43、接続部44、共有メモリ45、キャッシュメモリ46、複数のディスクアダプタ47及び管理端末48を備えて構成される。これらチャネルアダプタ43、接続部44、共有メモリ45、キャッシュメモリ46、ディスクアダプタ及び管理端末48は、正側ストレージ装置4における対応部位と同様の機能を有するものであるため、説明は省略する。
なお、副側ストレージ装置5の場合、共有メモリ45には、図4に示すように、後述のリモートコピー管理プログラム33、スナップショット管理プログラム34及びボリューム復元プログラム35や、後述のジャーナル管理テーブル36、第1のスナップショット管理テーブル37及び第2のスナップショット管理テーブル38が格納される。
(2)記憶システムにおけるデータ管理方法
(2−1)記憶システムにおけるデータ管理方法の概要
次に、この記憶システム1におけるデータ管理方法について説明する。
本実施の形態による記憶システム1では、正側ボリュームに書き込まれたデータを、正側ストレージ装置4及び副側ストレージ装置5のリモートコピー機能により副側ストレージ装置5に順次転送して副側ボリュームにコピーする一方、副側ストレージ装置5において、副側ボリュームのスナップショットを例えば秒又は分単位で定期的又は不定期に作成する。
また副側ストレージ装置5は、ホスト装置2から復元すべき時刻(以下、これを復元要求時刻と呼ぶ)を指定した正側ボリュームの復元要求が正側ストレージ装置4を介して与えられると、それまでに作成した副側ボリュームのスナップショットを利用して、ホスト装置2により指定された復元要求時刻の正側ボリュームを復元する。
実際上、この記憶システム1の場合、正側ストレージ装置4のチャネルアダプタ(以下、これを正側チャネルアダプタと呼ぶ)23(図1)は、図5に示すように、ホスト装置2からのデータ書込み要求及び書込み対象のデータが与えられると、当該データを正側ボリューム(「PVOL」)内の指定されたアドレスに書き込む一方、このデータのジャーナルを作成し、作成したジャーナルを正側ストレージ装置4内のジャーナルボリューム(「JNLVOL(P)」。以下、これを正側ジャーナルボリュームと呼ぶ)に格納する。
一方、副側ストレージ装置5のチャネルアダプタ(以下、これを副側チャネルアダプタと呼ぶ)43は、正側ジャーナルボリュームに格納されたジャーナルをホスト装置2による正側ボリュームへのデータの書き込みとは非同期に読み出し、これを当該副側ストレージ装置5内に設けられたジャーナルボリューム(「JNLVOL(S)」。以下、これを副側ジャーナルボリュームと呼ぶ)において保持する。
また、かかる副側チャネルアダプタ43は、この副側ジャーナルボリュームにおいて保持した各ジャーナルに含まれるデータを副側ボリューム(「SVOL」)内の対応するアドレスコピーする。これにより副側ボリュームを用いて正側ボリュームの複製が作成されることとなる。
一方、副側チャネルアダプタ43は、副側ジャーナルボリュームに対するジャーナルの書込み量を監視しており、当該書込み量が既定の閾値を超えるごとに副側ボリュームのスナップショットを作成する。また副側チャネルアダプタ43は、作成した各スナップショットの作成時刻を管理する。そして副側チャネルアダプタ43は、スナップショットの作成後に副側ボリュームにデータが書き込まれたときには、当該データが書き込まれる前に副側ボリュームに書き込まれていたデータ(スナップショットを作成した時点のデータ)を差分データとして差分ボリューム(「DVOL」)に順次格納する。これにより副側チャネルアダプタにより作成されたスナップショットが副側ボリューム及び差分ボリュームにおいて保持されることとなる。
さらに、副側チャネルアダプタ43は、この後、ホスト装置2から正側ストレージ装置4を介してデータの復元要求が与えられたときには、各スナップショットの作成時刻に基づいて、指定された指定復元時刻に最も近く、かつ指定復元時刻よりも前に作成したスナップショット(以下、これを直近スナップショットと呼ぶ)を検索する。そして副側チャネルアダプタ43は、この直近スナップショットと、当該直近スナップショットを作成してから指定復元時刻までの間に正側ストレージ装置4から送信されてきたジャーナルとを利用して、指定復元時刻の正側ボリューム(「PVOL′」)を復元する。
なお、リモートコピーには、同期型と非同期側とがある。このうち同期型のリモートコピーでは、ホスト装置2により正側ボリュームにデータが書き込まれると、このデータを直ちに副側ストレージ装置5に転送して副側ボリュームにコピーし、このコピー処理が完了した段階で正側ストレージ装置5からホスト装置2に当該データの書込み完了を報告する。また非同期型のリモートコピーでは、ホスト装置2により正側ボリュームにデータ書き込まれた段階で正側ストレージ装置4が当該データの書込み完了をホスト装置に報告し、その後適当な時期にこのデータが副側ストレージ装置5により正側ボリュームから読み出されて副側ボリュームに書き込まれる。本実施の形態による記憶システム1では、正側ストレージ装置4及び副側ストレージ装置5間において非同期型のリモートコピーが行われるものとする。
(2−2)各種管理テーブルの構成
図6は、副側ストレージ装置5の共有メモリ45(図1)に保持される上述のジャーナル管理テーブル36を示す。このジャーナル36管理テーブルは、副側ストレージ装置5に転送されてきた各ジャーナルの作成時刻を管理するためのテーブルであり、シーケンス番号フィールド36A及びタイムスタンプフィールド36Bから構成される。
シーケンス番号フィールド36Aには、副側ストレージ装置5が受信した各ジャーナルのシーケンス番号が順次格納される。このシーケンス番号は、正側ストレージ装置4の正側チャネルアダプタ23がジャーナルを作成するごとに当該ジャーナルに順次付与する通し番号である。副側ストレージ装置5のチャネルアダプタ23は、正側ストレージ装置4から送信されるジャーナルを受信するごとに、そのジャーナルに格納されている当該ジャーナルのシーケンス番号を読み出し、これをこのシーケンス番号フィールド36Aに格納する。
またタイムスタンプフィールド36Bには、ジャーナルにタイムスタンプとして格納されている当該ジャーナルの作成時刻が読み出されて格納される。従って、例えば図6の例では、副側ストレージ装置が受信した「SEQ♯A1」というシーケンス番号が付与されたジャーナルデータは「TAx」という時刻に作成されたことが分かる。
一方、図7は、副側ストレージ装置5の共有メモリ25に保持される第1のスナップショット管理テーブル37を示す。この第1のスナップショット管理テーブル37は、各スナップショットの作成時刻等を管理するためのテーブルであり、ボリューム番号フィールド37A、スナップショット番号フィールド37B、スナップショット作成時刻フィールド37C及びジャーナルシーケンス番号フィールド37Dから構成される。
このうちボリューム番号フィールド37Aには、この第1のスナップショット管理テーブル37に登録された副側ストレージ装置5内に存在する各副側ボリュームの識別番号(例えばLUN)が格納される。またスナップショット番号フィールド37Bには、その副側ボリュームについて作成された各スナップショットの識別番号(以下、これをスナップショット番号と呼ぶ)が格納され、スナップショット作成時刻フィールド37Cには、対応するスナップショットの作成時刻が格納される。さらにジャーナルシーケンス番号フィールド37Dには、対応するスナップショットを作成した時点におけるジャーナルの最新のシーケンス番号が格納される。
従って、例えば図7の例では、「A」という識別番号の副側ボリュームについては、それぞれ「A1」,「A2」,……,「AN」という識別番号が付与されたN個のスナップショットが作成されており、これらのスナップショットの作成時刻はそれぞれ「TA1」,「TA2」,……,「TAN」であって、そのスナップショットを作成したときのジャーナルの最新のシーケンス番号がそれぞれ「SEQ♯A1」,「SEQ♯A2」,……,「SEQ♯AN」であったことが示されている。
他方、図8は、副側ストレージ装置5の共有メモリ45に保持される第2のスナップショット管理テーブル38を示す。この第2のスナップショット管理テーブル38は、副側ストレージ装置5において順次作成される複数のスナップショットを一括管理するためのテーブルであり、副側ボリューム内の各ブロックにそれぞれ対応させてブロックアドレスフィールド38A及び複数のスナップショット管理フィールド38Bが設けられている。
このうちブロックアドレスフィールド38Aには、それぞれ副側ボリューム内の対応するブロックアドレスが格納される。この場合のブロックアドレスとしては、例えばLBAを用いることができる。
またスナップショット管理フィールド38Bは、後述のように副側ストレージ装置5において保持可能なスナップショット数分だけ設けられており、ボリュームフィールド38C及びブロックフィールド38Dから構成されている。
そしてボリュームフィールド38Cには、対応するスナップショットが作成された段階で「0」が格納され、その後正側ボリューム内の対応するブロックのデータが更新されて、更新前のデータが差分格納ボリュームに退避されると「1」が格納(「0」から「1」に更新)される。
またブロックフィールド38Dには、対応するスナップショットが作成された段階で「0」が格納され、その後正側ボリューム内の対応するブロックのデータが更新されて、更新前のデータが差分ボリュームに退避されたときに、当該差分ボリュームにおける退避先のブロックのアドレスが格納される。
例えば図8の例では、スナップショット番号が「A1」のスナップショットにおいて、副側ボリューム内のブロックアドレスが「t」のブロックのデータは、当該スナップショットの作成後に更新され(「ボリューム」フィールド38Cの値が「1」)、更新前のデータが差分ボリュームのブロックアドレスが「1051」のブロックに退避(「ブロック」フィールド38Dの値が「1051」)されていることが示されている。
また、スナップショット番号が「A1」のスナップショットにおいて、副側ボリューム内のブロックアドレスが「m‐1」のブロックのデータは、当該スナップショットの作成後に更新されておらず(「ボリューム」フィールドの値が「0」)、当該スナップショットの作成時のデータが副側ボリュームのブロックアドレスが「m‐1」であるブロックにそのまま残されていることが示されている。
従って、この図8の例では、第1のスナップショット管理テーブル38のボリュームフィールド38Cの値が「1」となっているブロック(ブロックアドレスが「t」のブロックを含む)については、差分ボリューム上の対応するブロックアドレスのブロックからデータを参照し、当該スナップショット管理テーブル38のボリュームフィールド38Cの値が「0」となっているブロック(ブロックアドレスが「0」及び「m‐1」のブロックを含む)については、副側ボリューム内の対応するブロックアドレスのブロックからデータを参照することで、スナップショット番号が「A1」であるスナップショットを得ることができることが分かる。
(2−3)副側チャネルアダプタのCPUの具体的な処理内容
(2−3−1)スナップショット作成処理
図9は、スナップショットの作成処理に関する副側チャネルアダプタ43内のCPU(以下、これを副側チャネルアダプタCPUと呼ぶ)30(図2)の具体的な処理内容を示すフローチャートである。かかる副側チャネルアダプタCPU30は、共有メモリ45(図1)に格納されたスナップショット管理プログラム34に基づき、この図9に示す処理手順に従って、ジャーナルボリュームへのジャーナルの書込み量に応じてスナップショットを作成する。
すなわち副側チャネルアダプタCPU30は、正側ストレージ装置4の正側ボリュームからジャーナルを読み出すと、このスナップショット作成処理を開始し、まず、かかるジャーナルをジャーナルボリュームに格納する(SP1)。
続いて副側チャネルアダプタCPU30は、ジャーナルボリュームにジャーナルが蓄積されていない初期状態から又は最後にスナップショットを作成してから、ジャーナルボリュームに書き込んだジャーナルのデータ量が基準値(例えばジャーナルボリュームの容量の10〔%〕)内であるか否かを判断する(SP2)。
そして副側チャネルアダプタCPU30は、この判断において否定結果を得ると、このスナップショット作成処理を終了する。これに対して副側チャネルアダプタCPU30は、かかる判断において肯定結果を得ると、スナップショットを作成すると共に、このスナップショットの作成時刻及び現時点におけるジャーナルの最新のシーケンス番号をそれぞれスナップショット管理テーブル36に登録し(SP3)、この後このスナップショット作成処理を終了する。
(2−3−2)スナップショット作成及び廃棄処理
ところで上述のようにジャーナルボリュームに対するジャーナルの書込み量に応じてスナップショットを順次作成する場合、差分ボリュームの容量が有限であるため、作成した各スナップショットをいつまでも維持することはできない。
そこで、本実施の形態による記憶システム1の場合、副側ストレージ装置5内に作成可能なスナップショット数(以下、これを最大スナップショット数と呼ぶ)を最大カウント値とするスナップショット作成位置カウンタ39(図4)を当該副側ストレージ装置5の共有メモリ45上に設けると共に、図10に示すように、差分ボリュームをカウンタ39の各カウント値とそれぞれ対応付けた複数の領域(図10では3つの領域)AR0〜AR2に区分している。
そして記憶システム1では、副側ストレージ装置5において最新のスナップショットを作成するごとに、そのスナップショットに対してそのときのスナップショット作成位置カウンタ39のカウント値に対応する領域AR0〜AR2を割り当てると共に、この後そのスナップショットについての差分データを、差分ボリュームにおける当該スナップショットに割り当てられた領域AR0〜AR2内に格納する。
また記憶システム1においては、スナップショット作成位置カウンタ39のカウント値が最大スナップショット数に達したときには当該カウント値を「0」に戻し、この後、スナップショットに差分ボリューム内の領域AR0〜AR2を割り当てるごとにカウンタをカウントアップさせる。
このようにしてこの記憶システム1では、スナップショット数が最大スナップショット数に達した後には、新たなスナップショットを作成するごとに最古のスナップショットを廃棄するようになされ、これにより差分ボリューム内の各領域AR0〜AR2を循環的に使用することで、スナップショットの作成を継続し得るようになされている。
なお、スナップショットの場合と同様に、ジャーナルボリュームの容量も有限であるため、取得したジャーナルをいつまでも蓄積しておくことはできない。
そこでこの記憶システム1の場合、上述のようにして最古のスナップショットを破棄したときには、そのスナップショットから次のスナップショットの間に取得したジャーナルについては、当該ジャーナル上に新たなジャーナルを上書きするようにして廃棄する。この場合において、かかる最古のスナップショットを廃棄した時点で当該スナップショットを基点としてボリュームの復元が不可能となるので、かかる最古のスナップショットから次のスナップショットまでのジャーナルを破棄しても問題はない。
このようにしてこの記憶システム1では、スナップショットを廃棄したときには、これに伴って不要なジャーナルも廃棄することで、ジャーナルボリュームを有効利用し得るようになされている。
図11は、このようなスナップショット廃棄処理に関する副側チャネルアダプタCPU30の処理内容を示すフローチャートである。副側チャネルアダプタCPU30は、図9について上述したスナップショット作成処理のステップSP3に進むと、スナップショット管理プログラム34(図4)に基づき、この図11に示す処理手順に従って、必要に応じて過去に取得したスナップショットを廃棄する。
すなわち副側チャネルアダプタCPU30は、かかるスナップショット作成処理のステップSP3に進むと、このスナップショット廃棄処理を開始し、まず、現時点のプライマリボリュームPVOLのスナップショットを作成する(SP10)。
続いて副側チャネルアダプタCPU30は、カウンタ39のカウント値を1つカウントアップさせ(SP11)、その後スナップショット作成位置カウンタ39のカウント値が最大スナップショット数に達したか否かを判断する(SP12)。
副側チャネルアダプタCPU30は、この判断において否定結果を得ると、このスナップショット廃棄及び作成処理を終了する一方、肯定結果を得ると、スナップショット作成位置カウンタ39のカウント値を「0」に戻し(SP13)、この後このスナップショット作成及び廃棄処理を終了する。
このようなスナップショット作成及び廃棄処理の結果、例えば最大スナップショット数が「3」であるものとして、1つ目のスナップショットが作成された初期時には、カウンタのカウント値が「0」であるため、図12(A)に示すように、スナップショット作成位置カウンタ39のカウント値が「0」と対応付けられた差分ボリューム内の領域AR0が当該スナップショットに割り当てられると共に、スナップショット作成位置カウンタ39のカウント値が「1」にカウントアップされる。
また、この後、スナップショット作成位置カウンタ39のカウント値が「2」である状態で新たなスナップショットが作成されたときには、図12(B)に示すように、スナップショット作成位置カウンタ39のカウント値が最大スナップショット数である「3」と対応付けられた差分ボリューム内の領域AR2が当該新たなスナップショットに割り当てられると共に、スナップショット作成位置カウンタ39のカウント値が「3」にカウントアップされ、この後カウンタのカウント値が「0」に戻される。
そして、この後、さらに新たなスナップショットが作成されたときには、図12(C)に示すように、スナップショット作成位置カウンタ39のカウント値が「0」と対応付けられた差分ボリューム内の領域AR0が当該新たなスナップショットに割り当てられると共に、スナップショット作成位置カウンタ39のカウント値が「1」にカウントアップされる。そして、この後、同様の処理(図12(A)〜図12(C))が繰り返されることとなる。
(2−3−3)ボリューム復元処理
他方、図13は、図5について上述した本実施の形態によるデータ管理方法のうちのボリューム復元処理に関する副側チャネルアダプタCPU30の処理内容を示すフローチャートである。副側チャネルアダプタCPU30は、この図13に示す処理手順に従ってホスト装置2により指定された時刻(以下、これを復元要求時刻と呼ぶ)における正側ボリュームを復元する。
すなわち副側チャネルアダプタCPU30は、ホスト装置2から復元要求時刻を指定した正側ボリュームの復元要求が与えられると、この図13に示す第1のボリューム復元処理を開始し、まず、第1のスナップショット管理テーブル37上のそのとき対象としている正側ボリュームに関する情報が登録された情報域をデータの読出し対象の情報域に設定する(SP20)。具体的には、例えば図7のように正側ボリュームとしてそれぞれボリューム番号が「A」,「B」,……である複数の正側ボリュームが第1のスナップショット管理テーブル37に登録されている状態において、ボリューム番号が「A」の正側ボリュームのデータを復元する場合には、第1のスナップショット管理テーブル37におけるボリューム番号が「A」の正側ボリュームのスナップショット(スナップショット番号が「A1」〜「An」のスナップショット)に関連するフィールドをデータの読出し対象の情報域として設定することとなる。
続いて副側チャネルアダプタCPU30は、第1のスナップショット管理テーブル37上のデータの読出し対象に設定された情報域に含まれるスナップショットのうち、未だその作成時刻を第1のスナップショット管理テーブル37から読み出していないスナップショットがあるか否かを判断する(SP21)。
そして副側チャネルアダプタCPU30は、この判断において肯定結果を得ると、第1のスナップショット管理テーブル37上のデータの読出し対象に設定された情報域に含まれるスナップショットのうち、未だその作成時刻を読み出していないスナップショットを1つ選択し、その作成時刻を第1のスナップショット管理テーブル37から読み出す(SP22)。
この後、副側チャネルアダプタCPU30は、そのとき読み出した作成時刻がホスト装置2により指定された復元要求時刻よりも過去であるか否かを判断する(SP23)。そして副側チャネルアダプタCPU30は、この判断において否定結果を得るとステップSP21に戻る。
これに対して副側チャネルアダプタCPU30は、かかる判断において肯定結果を得ると、復元要求時刻に最も近く、かつ復元要求時刻よりも過去に作成されたと判断できるスナップショット(以下、これを直近スナップショットと呼ぶ)のスナップショット番号をローカルメモリ31(図2)に記憶しているか否かを判断する(SP24)。
副側チャネルアダプタCPU10は、この判断において否定結果を得ると、このとき対象としているスナップショットのスナップショット番号を、直近スナップショットのスナップショット番号(Ax)としてローカルメモリ31上に設定する(SP25)。
また副側チャネルアダプタCPU10は、この後このスナップショットの作成時刻を第1のスナップショット管理テーブル37から読み出し、これを直近スナップショットの作成時刻(以下、これを直近スナップショット作成時刻(TAx)と呼ぶ)としてローカルメモリ31上に設定する(SP26)。そして、副側チャネルアダプタ43は、この後ステップSP21に戻る。
これに対して副側チャネルアダプタCPU10は、ステップSP24の判断において肯定結果を得ると、ステップSP22において第1のスナップショット管理テーブル37から読み出したスナップショット作成時刻がそのときローカルメモリ31に保持されている直近スナップショット作成時刻よりも後の時刻であるか否かを判断する(SP27)。
副側チャネルアダプタCPU10は、この判断において否定結果を得るとステップSP21に戻り、これに対して肯定結果を得ると、ローカルメモリ31に保持されている直近スナップショット作成時刻(TAx)をステップSP22において第1のスナップショット管理テーブル37から読み出したスナップショット作成時刻に更新する(SP28)。
また副側チャネルアダプタCPU10は、この後ステップSP21に戻り、この後対象とするスナップショットを順次代えながら、同様の処理を繰り返す(SP21〜SP28)。そして、このように同様の処理を繰り返すことにより、第1のスナップショット管理テーブル37に登録されたスナップショットの中から復元要求時刻に最も近く、かつ復元要求時刻よりも過去に作成された真の直近スナップショットのスナップショット番号及び当該スナップショットの作成時刻(直近スナップショット作成時刻)をそれぞれローカルメモリ31に保持することが可能となる。
一方、副側チャネルアダプタCPU10は、やがて第1のスナップショット管理テーブル37に登録されたすべてのスナップショットについて同様の処理(SP21〜SP28)を実行し終えることによりステップSP21の判断において否定結果を得ると、直近スナップショットのスナップショット番号が既にローカルメモリ31に格納されているか否かを判断する(SP29)。
この判断において否定結果を得ることは、例えば未だスナップショットが作成されていない段階でホスト装置2からボリューム復元要求が与えられたなど、直近スナップショットを検出できなかったことを意味する。かくして、このとき副側チャネルアダプタCPU10は、これに応じたコマンドをホスト装置2に送信することにより、復元要求時刻の復元は不可能である旨のエラーメッセージを当該ホスト装置2のディスプレイに表示等させ(SP30)、この後この第1のボリューム復元処理を終了する。
これに対して、かかるステップSP29の判断において肯定結果を得ることは、直近スナップショットを検出できたことを意味する。かくして、このとき副側チャネルアダプタCPU10は、この直近スナップショットを利用して復元要求時刻の正側ボリュームを復元し(SP31)この後この第1のボリューム復元処理を終了する。なお、この復元した復元要求時刻の正側ボリュームのデータは、この後正側ストレージ装置4を介してホスト装置2に提示等されることとなる。
一方、図14は、かかる第1のボリューム復元処理(図13)のステップSP31における具体的なボリューム復元処理の処理内容を示すフローチャートである。副側チャネルアダプタCPU10は、かかるボリューム復元処理によりホスト装置2により指定された復元要求時刻に最も近く、かつ復元要求時刻よりも過去に作成された直近スナップショットのスナップショット番号を検出すると、ボリューム復元プログラム35に基づき、この直近スナップショットを利用して、指定要求時刻の正側ボリュームを復元する。
すなわち副側チャネルアダプタCPU10は、かかる第1のボリューム復元処理(図13)のステップSP31に進むと、この図14に示す第2のボリューム復元処理を開始し、まず、第1のスナップショット管理テーブル37上において、かかるスナップショット番号と対応付けられたジャーナルーケンス番号を検出する(SP40)。
続いて副側チャネルアダプタCPU10は、図15に示すように、そのとき復元対象としている正側ボリュームのボリューム番号と、第1のボリューム復元処理(図13)のステップSP20〜ステップSP29において検出した真の直近スナップショットのスナップショット番号と、ステップSP40において検出したジャーナルシーケンス番号と、ホスト装置2により指定された復元要求時刻とを、予めローカルメモリ31上に設けられた復元ボリューム管理テーブル31Aに格納する(SP41)。
次いで副側チャネルアダプタCPU10は、ジャーナル管理テーブル36(図6)上のステップSP41において復元ボリューム管理テーブル31Aに登録したジャーナルシーケンス番号の位置にアクセスし(SP42)、この後ジャーナル管理テーブル36から当該ジャーナルシーケンス番号が付与されたジャーナルのタイムスタンプを読み出す(SP43)。
続いて副側チャネルアダプタCPU10は、このとき取得したタイムスタンプが表す、そのとき対象としているジャーナル(以下、これを対象ジャーナルと呼ぶ)の作成時刻が、ホスト装置2により指定された復元要求時刻よりも過去であるか否かを判断する(SP44)。
副側チャネルアダプタCPU10は、この判断において肯定結果を得ると、対象ジャーナルに含まれる、ホスト装置2により正側ボリュームに書き込まれたデータを直近スナップショットに上書きし(SP45)、さらに対象ジャーナルを次のジャーナルシーケンス番号のジャーナルに切り替えた後に(SP46)、ステップSP43に戻る。
副側チャネルアダプタCPU10は、この後、対象ジャーナを次のジャーナルシーケンス番号のジャーナルに順次代えながら同様の処理を繰り返す(SP43〜SP46)。これによりホスト装置2により指定された復元要求時刻よりも前に作成されたジャーナルに含まれるホスト装置2により正側ボリュームに書き込まれたデータが順次直近スナップショットに上書きされることとなる。
そして副側チャネルアダプタCPU10は、やがてホスト装置2により指定された復元要求時刻よりも前に作成されたジャーナルに含まれるかかるデータをすべて直近スナップショットに上書きし終えることにより、ステップSP44の判断において否定結果を得ると、この第2のボリューム復元処理を終了して第1のボリューム復元処理に戻る。
(2−4)記憶システムにおける復元可能時間提示機能
一方、図11について上述したように、副側ストレージ装置5において、新たなスナップショットを作成するごとに最古のスナップショットを順次廃棄する場合、ユーザが正側ボリュームごとの復元可能な時間的範囲を認識することが困難になる。
そこで本実施の形態による記憶システム1では、ユーザから要求に応じて、その時点において復元可能な正側ボリュームごとの時間的範囲を当該ユーザに提示する復元可能時間提示機能が搭載されている。
具体的に、この記憶システム1の場合、ホスト装置2のCPU10(図1)は、図16に示すように、ユーザによりボリュームごとの復元可能時間の表示指令が入力されると、ローカルメモリ11(図1)に格納されたアプリケーションソフトウェアに基づいて、正側ストレージ装置4を介して副側ストレージ装置に復元可能時間提示要求を送信する(SP50)。
この復元可能時間提示要求を受信した副側ストレージ装置5内の副側チャネルアダプタ43の副側チャネルアダプタCPU30は、第1のスナップショット管理テーブル37から正側ボリュームごとのすべてのスナップショットの作成時刻を読み出し(SP51)、これらを全スナップショット作成時刻情報として正側ストレージ装置4を介してホスト装置2に通知する(SP52)。
そして、この全スナップショット作成時刻情報を受信したホスト装置2のCPU10は、この全スナップショット作成時刻情報に基づき得られた正側ボリュームごとのすべてのスナップショットの作成時刻を、例えば図17に示すようなフォーマットのリスト(以下、これをスナップショット作成時刻リストと呼ぶ)50として図示しないモニタディスプレイ等の情報出力装置に表示する(SP53)。
この場合において、例えば図17の例では、ボリューム番号が「A」の正側ボリュームに関しては、現在残存する最古のスナップショットの作成時刻が「10:00:00」であるため、「10:00:00」から現時点(又は少なくとも最新のスナップショットの作成時刻である「23:50:42」)までのジャーナルが副側ストレージ装置5のジャーナルボリュームに残されており、従って、「10:00:00」から現時点(又は「23:50:42」)までの時間的範囲内において、当該正側ボリュームを復元可能であることが分かる。
そしてユーザは、ホスト装置2を操作することにより、かかるスナップショット作成時刻リスト50に掲載された所望する正側ボリュームの各スナップショットの作成時刻の中から所望のスナップショットの作成時刻を上述の復元要求時刻として選択し、又は正側ボリュームごとに、スナップショット作成時刻に搭載されたスナップショット作成時刻のうちの最古のスナップショット作成時刻から現在時刻(又は最新のスナップショットの作成時刻)までの間の範囲内において所望の時刻を復元要求時刻として指定することができる。このときホスト装置2は、選択又は指定された時刻を復元要求時刻としてボリューム復元要求を生成し、このボリューム復元要求を復元正側ストレージ装置4を介して副側ストレージ装置5に通知する(SP54)。
かくして副側ストレージ装置5は、このボリューム復元要求を受信すると、図13及び図14について上述した第1及び第2のボリューム復元処理を実行する(SP55)。
このようにしてこの記憶システム1においては、このホスト装置2の情報出力装置に表示された全スナップショット作成時刻情報に基づいて、正側ボリュームごとの復元可能な時間的範囲をユーザが認識し、認識した時間的範囲内において時刻を指定して正側ボリュームの復元を指示することができるようになされている。
(3)本実施の形態の効果
以上のように本実施の形態の記憶システム1では、正側ストレージ装置4において、正側ボリュームの更新履歴情報であるジャーナルを作成し、作成したジャーナルを副側ストレージ装置5に送信する。また記憶システム1では、副側ストレージ装置5において、正側ストレージ装置4から送信されるジャーナルに含まれる正側ボリュームに書き込まれたデータを副側ボリュームにコピーすると共に、副側ジャーナルボリュームへのジャーナルの書込み量に応じて副側ボリュームのスナップショットを作成し、この後ホスト装置2からの要求に応じて、保持したジャーナル及びスナップショットを利用して、指定された時刻の正側ボリュームを復元する。
従って、この記憶システム1では、副側ストレージ装置5においてスナップショットを作成する時間的な間隔が秒又は分単位となるように、副側ジャーナルボリュームに対するジャーナルの書込み量の基準値を設定することによって、正側ボリュームの復元可能な時間単位を短くすることができ、この結果として正側ボリュームの復元処理に要する時間を短縮することができる。またこの記憶システム1では、正側ボリュームのボリューム復元処理を副側ストレージ装置5において行うため、当該ボリューム復元処理が正側ストレージ装置4におけるデータ入出力処理に悪影響を及ぼすのを有効に防止することができる。かくするにつき、この記憶システム1によれば、より短い時間単位での復元時刻の指定を可能とすると共に、より短時間でのデータ復元処理を行い得るデータ管理を実現できる。
(4)他の実施の形態
なお上述の実施の形態においては、本発明を図1のように構成された記憶システムに適用する場合について述べたが、本発明はこれに限らず、この他種々の構成の記憶システムに広く適用することができる。
また上述の実施の形態においては、副側ストレージ装置5において、副側ジャーナルボリュームに対するジャーナルの書込み量に応じて不定期に副側ボリュームのスナップショットを作成するようにした場合について述べたが、本発明はこれに限らず、例えば一定時間間隔で定期的に副側ボリュームのスナップショットを作成するようにしても良い。
さらに上述の実施の形態においては、副側ストレージ装置5から正側ストレージ装置4を介してホスト装置2に与えられる全スナップショット作成時刻情報に基づいて図17に示すようなフォーマットのスナップショット作成時刻リスト50を表示するようにした場合について述べたが、本発明はこれに限らず、各スナップショットの作成時刻の表示形態としては、この他種々の表示形態を広く適用することができる。
さらに上述の実施の形態においては、正側ボリュームの更新履歴情報であるジャーナルを作成し、作成したジャーナルを副側ストレージ装置に送信するジャーナル作成送信部としての機能を正側チャネルアダプタ23に搭載するようにした場合について述べたが、本発明はこれに限らず、かかる処理を行う処理部を正側チャネルアダプタ23と別に設けるようにしても良い。
同様に、上述の実施の形態においては、副側ストレージ装置5において、正側ストレージ装置4から送信されるジャーナルに含まれる正側ボリュームに書き込まれたデータを副側ボリュームにコピーするデータコピー部と、不定期に副側ボリュームのスナップショットを作成するスナップショット作成部と、ホスト装置2からの要求に応じて、副側ジャーナルボリュームに保持しているジャーナルと、差分ボリューム及び副側ボリューム等に保持しているスナップショットを利用して、指定された時刻の正側ボリュームを復元するボリューム復元部と、現在保持しているスナップショットの作成時刻を管理するスナップショット管理部と、各スナップショットの作成時刻をホスト装置2に通知するスナップショット作成時刻通知部との機能をすべて副側チャネルアダプタ43に搭載するようにした場合について述べたが、本発明はこれに限らず、かかる処理を行う処理部を副側チャネルアダプタ43と別に設けるようにしても良い。
さらに上述の実施の形態においては、副側チャネルアダプタ43が作成した各スナップショットを保持するスナップショット保持部としての副側ボリューム、差分ボリューム及び共有メモリ45(第2のスナップショット管理テーブル38)と、正側ストレージ装置4から送信される各ジャーナルを保持するジャーナル保持部としての副側ジャーナルボリュームとを同じ1つの副側ストレージ装置5内に設けるようにした場合について述べたが、本発明はこれに限らず、副側ジャーナルボリュームを副側ストレージ装置5とは別に設置された外部ストレージ装置内に設け、ボリューム復元処理時に副側ストレージ装置5が必要なジャーナルを当該外部ストレージ装置から読み出すようにしても良い。
さらに上述の実施の形態においては、ホスト装置2からのボリューム復元要求に応じて副側ストレージ装置5が指定された時刻の正側ボリュームを復元するようにした場合について述べたが、本発明はこれに限らず、ホスト装置2以外の外部機器(例えばネットワーク3に接続されたシステム管理者側の管理装置など)からのボリューム復元要求に応じて副側ストレージ装置5が指定された時刻の正側ボリュームを復元するように記憶システム1を構築するようにしても良い。
本実施の形態による記憶システムの全体構成を示すブロック図である。 チャネルアダプタの簡略構成を示すブロック図である。 正側ストレージ装置の共有メモリの説明に供するブロック図である。 副側ストレージ装置の共有メモリの説明に供するブロック図である。 本実施の形態の記憶システムにおけるデータ管理方法の説明に供する概念図である。 ジャーナル管理テーブルを示す図表である。 第1のスナップショット管理テーブルを示す図表である。 第2のスナップショット管理テーブルを示す図表である。 第1のスナップショット作成処理の説明に供するフローチャートである。 第1のスナップショット作成処理の説明に供する概念図である。 第2のスナップショット作成処理の説明に供するフローチャートである。 第2のスナップショット作成処理の説明に供する概念図である。 第1のボリューム復元処理の説明に供するフローチャートである。 第2のボリューム復元処理の説明に供するフローチャートである。 復元ボリューム管理テーブルの説明に供する概念図である。 復元可能時間提示機能の説明に供するタイムチャートである。 ホスト装置による復元可能時間の表示例を示す略線図である。
符号の説明
1……記憶システム、2……ホスト装置、4……正側ストレージ装置、5……副側ストレージ装置、10,30……CPU、11,31……ローカルメモリ、20……ディスクデバイス、22……コントローラ、23,43……チャネルアダプタ、25,45……共有メモリ、31A……復元ボリューム管理プログラム、32,33……リモートコピー管理プログラム、34……スナップショット管理プログラム、35……ボリューム復元プログラム、36……ジャーナル管理プログラム、37……第1のスナップショット管理プログラム、38……第2のスナップショット管理プログラム、39……スナップショット作成位置カウンタ、PVOL……正側ボリューム、SVOL……副側ボリューム、JNLVOL(P),JNLVOL(S)……ジャーナルボリューム、DVOL……差分ボリューム。

Claims (10)

  1. 上位装置としてのホスト装置と、前記ホスト装置に対してデータを読み書きするための第1のボリュームを提供する第1のストレージ装置と、前記第1のボリュームに書き込まれた前記データをコピーするための第2のボリュームを提供する第2のストレージ装置とを有する記憶システムにおいて、
    前記第1のストレージ装置は、
    前記第1のボリュームの更新履歴情報であるジャーナルを作成し、作成した前記ジャーナルを前記第2のストレージ装置に送信するジャーナル作成送信部
    を備え、
    前記第2のストレージ装置は、
    前記第1のストレージ装置から送信される前記ジャーナルに含まれる前記第1のボリュームに書き込まれた前記データを前記第2のボリュームにコピーするデータコピー部と、
    前記第1のストレージ装置から送信される各前記ジャーナルを保持するジャーナル保持部と、
    定期的又は不定期に前記第2のボリュームのスナップショットを作成するスナップショット作成部と、
    前記スナップショット作成部により作成された各前記スナップショットを保持するスナップショット保持部と、
    外部からの要求に応じて、前記ジャーナル保持部に保持された前記ジャーナル及び前記スナップショット保持部に保持された前記スナップショットを利用して、指定された時刻の前記第1のボリュームを復元するボリューム復元部と
    を備える
    ことを特徴とする記憶システム。
  2. 前記スナップショット保持部は、
    各前記ジャーナルを第3のボリュームに格納して保持し、
    前記スナップショット作成部は、
    前記第3のボリュームに対する前記ジャーナルの書込み量に応じて前記スナップショットを作成する
    ことを特徴とする請求項1に記載の記憶システム。
  3. 前記第1のストレージ装置は、
    前記スナップショット保持部に保持された各前記スナップショットの作成時刻を管理するスナップショット管理部を備え、
    前記ボリューム復元部は、
    前記スナップショット管理部が管理する各前記スナップショットの作成時刻に基づいて、前記指定された時刻に最も近く、かつ当該指定された時刻よりも前に作成された前記スナップショットを利用して、前記指定された時刻の前記第1のボリュームを復元する
    ことを特徴とする請求項1に記載の記憶システム。
  4. 前記第2のストレージ装置は、
    前記スナップショット保持部により保持された各前記スナップショットの作成時刻を管理するスナップショット管理部と、
    前記ホスト装置からの要求に応じて、前記スナップショット管理部が管理する各前記スナップショットの作成時刻を当該ホスト装置に通知するスナップショット作成時刻通知部と
    を備え、
    前記ホスト装置は、
    前記第2のストレージ装置から通知される前記スナップショット保持部に保持された各前記スナップショットの作成時刻を表示する
    ことを特徴とする請求項1に記載の記憶システム。
  5. 前記スナップショット保持部は、
    必要に応じて最古の前記スナップショットを廃棄しながら、既定数の前記スナップショットを保持する
    ことを特徴とする請求項1に記載の記憶システム。
  6. 上位装置としてのホスト装置と、前記ホスト装置に対してデータを読み書きするための第1のボリュームを提供する第1のストレージ装置と、前記第1のボリュームに書き込まれた前記データをコピーするための第2のボリュームを提供する第2のストレージ装置とを有する記憶システムにおけるデータ管理方法において、
    前記第1のストレージ装置が、前記第1のボリュームの更新履歴情報であるジャーナルを作成し、作成した前記ジャーナルを前記第2のストレージ装置に送信する第1のステップと、
    前記第2のストレージ装置が、前記第1のストレージ装置から送信される前記ジャーナルに含まれる前記第1のボリュームに書き込まれた前記データを前記第2のボリュームにコピーすると共に、各前記ジャーナルを保持する一方、定期的又は不定期に前記第2のボリュームのスナップショットを作成すると共に、作成した各前記スナップショットを保持する第2のステップと、
    前記第2のストレージ装置が、外部からの要求に応じて、保持した前記ジャーナル及び前記スナップショットを利用して、指定された時刻の前記第1のボリュームを復元する第3のステップと
    を備えることを特徴とするデータ管理方法。
  7. 前記第2のステップでは、
    各前記ジャーナルを第3のボリュームに格納して保持すると共に、前記第3のボリュームに対する前記ジャーナルの書込み量に応じて前記スナップショットを作成する
    ことを特徴とする請求項6に記載のデータ管理方法。
  8. 前記第2のステップでは、
    前記第2のストレージ装置が、保持した各前記スナップショットの作成時刻を管理し、
    前記第3のステップでは、
    前記第2のストレージ装置が、各前記スナップショットの作成時間に基づいて、前記指定された時刻に最も近く、かつ当該指定された時刻よりも前に作成されたスナップショットを利用して、前記指定された時刻の前記第1のボリュームを復元する
    ことを特徴とする請求項6に記載のデータ管理方法。
  9. 前記第2のステップでは、
    前記第2のストレージ装置が、保持した各前記スナップショットの作成時刻を管理し、前記ホスト装置からの要求に応じて、各前記スナップショットの作成時刻を当該ホスト装置に通知し、
    前記ホスト装置が、前記第2のストレージ装置から通知される各前記スナップショットの作成時刻を表示する
    ことを特徴とする請求項6に記載のデータ管理方法。
  10. 前記第2のステップでは、
    必要に応じて最古の前記スナップショットを廃棄しながら、既定数の前記スナップショットを保持する
    ことを特徴とする請求項6に記載のデータ管理方法。
JP2006109366A 2006-04-12 2006-04-12 記憶システム及びデータ管理方法 Withdrawn JP2007280323A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006109366A JP2007280323A (ja) 2006-04-12 2006-04-12 記憶システム及びデータ管理方法
US11/450,259 US20070245105A1 (en) 2006-04-12 2006-06-12 Storage system and data management method
EP06255781A EP1845448A2 (en) 2006-04-12 2006-11-10 Storage system and data management method
CNB2006101687045A CN100476747C (zh) 2006-04-12 2006-12-19 存储系统以及数据管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006109366A JP2007280323A (ja) 2006-04-12 2006-04-12 記憶システム及びデータ管理方法

Publications (1)

Publication Number Publication Date
JP2007280323A true JP2007280323A (ja) 2007-10-25

Family

ID=38255427

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006109366A Withdrawn JP2007280323A (ja) 2006-04-12 2006-04-12 記憶システム及びデータ管理方法

Country Status (4)

Country Link
US (1) US20070245105A1 (ja)
EP (1) EP1845448A2 (ja)
JP (1) JP2007280323A (ja)
CN (1) CN100476747C (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009151636A (ja) * 2007-12-21 2009-07-09 Nomura Research Institute Ltd 業務継続システム
JP2009266210A (ja) * 2008-02-28 2009-11-12 Huawei Technologies Co Ltd データ保護のための方法、装置および記憶デバイス
JP2010049689A (ja) * 2008-08-19 2010-03-04 Chengdu Huawei Symantec Technologies Co Ltd 自動スナップショット方法および装置
WO2011033692A1 (ja) * 2009-09-17 2011-03-24 株式会社日立製作所 ストレージ装置及びそのスナップショット制御方法
JP2012058863A (ja) * 2010-09-07 2012-03-22 Nec Corp ディスク装置、および、ディスク装置へのデータ複製方法、プログラム
JP2017156829A (ja) * 2016-02-29 2017-09-07 富士通株式会社 制御装置、情報復元方法および情報復元プログラム
JP2021124889A (ja) * 2020-02-04 2021-08-30 株式会社日立製作所 リモートコピーシステム及びリモートコピー管理方法

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007334709A (ja) * 2006-06-16 2007-12-27 Fujitsu Ltd ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法
JP4859605B2 (ja) * 2006-09-20 2012-01-25 株式会社日立製作所 情報処理システム
US8935206B2 (en) * 2007-01-31 2015-01-13 Hewlett-Packard Development Company, L.P. Snapshots in distributed storage systems
JP5012628B2 (ja) * 2008-04-04 2012-08-29 日本電気株式会社 メモリデータベース、メモリデータベースシステム及びメモリデータベース更新方法
US8250031B2 (en) * 2008-08-26 2012-08-21 Hitachi, Ltd. Low traffic failback remote copy
JP4907630B2 (ja) * 2008-10-23 2012-04-04 株式会社日立製作所 ジャーナルを利用したリモートコピーを行う計算機システム
US8473697B1 (en) 2008-10-29 2013-06-25 Netapp, Inc. Method and system for volume based snapshot restore
TWI414992B (zh) * 2009-01-23 2013-11-11 Infortrend Technology Inc 遠端非同步資料卷複製的方法及其裝置
US8335771B1 (en) * 2010-09-29 2012-12-18 Emc Corporation Storage array snapshots for logged access replication in a continuous data protection system
US9465696B2 (en) * 2011-06-03 2016-10-11 Apple Inc. Methods and apparatus for multi-phase multi-source backup
US8868859B2 (en) 2011-06-03 2014-10-21 Apple Inc. Methods and apparatus for multi-source restore
US9411687B2 (en) 2011-06-03 2016-08-09 Apple Inc. Methods and apparatus for interface in multi-phase restore
US8819471B2 (en) 2011-06-03 2014-08-26 Apple Inc. Methods and apparatus for power state based backup
US9542423B2 (en) 2012-12-31 2017-01-10 Apple Inc. Backup user interface
US9069709B1 (en) * 2013-06-24 2015-06-30 Emc International Company Dynamic granularity in data replication
JP5971420B2 (ja) * 2013-07-19 2016-08-17 富士通株式会社 状態復元プログラム、装置、及び支援方法
US20160019117A1 (en) * 2014-07-16 2016-01-21 Commvault Systems, Inc. Creating customized bootable image for client computing device from backup copy
US10496487B1 (en) * 2014-12-03 2019-12-03 EMC IP Holding Company LLC Storing snapshot changes with snapshots
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
CN106648959B (zh) * 2016-09-07 2020-03-10 华为技术有限公司 数据存储的方法和存储系统
US10241698B2 (en) * 2017-03-24 2019-03-26 International Business Machines Corporation Preservation of a golden copy that stores consistent data during a recovery process in an asynchronous copy environment
CN109032507B (zh) * 2018-06-28 2021-11-19 郑州云海信息技术有限公司 一种生成源卷存储快照的方法、系统及相关组件
US11392541B2 (en) * 2019-03-22 2022-07-19 Hewlett Packard Enterprise Development Lp Data transfer using snapshot differencing from edge system to core system
US11194666B2 (en) * 2019-04-26 2021-12-07 EMC IP Holding Company LLC Time addressable storage in a content addressable storage system
US11537725B2 (en) * 2019-09-23 2022-12-27 Amazon Technologies, Inc. Encrypted cross-zone replication for cross-zone replicated block storage devices
US11237924B2 (en) 2019-12-11 2022-02-01 Commvault Systems, Inc. Dynamic resizing and re-distribution of destination data storage resources for bare metal restore operations in a data storage management system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6131148A (en) * 1998-01-26 2000-10-10 International Business Machines Corporation Snapshot copy of a secondary volume of a PPRC pair
JP4689137B2 (ja) * 2001-08-08 2011-05-25 株式会社日立製作所 リモートコピー制御方法、及びストレージシステム
US6898688B2 (en) * 2001-12-28 2005-05-24 Storage Technology Corporation Data management appliance
US7111136B2 (en) * 2003-06-26 2006-09-19 Hitachi, Ltd. Method and apparatus for backup and recovery system using storage based journaling
JP4124348B2 (ja) * 2003-06-27 2008-07-23 株式会社日立製作所 記憶システム
JP4598387B2 (ja) * 2003-09-17 2010-12-15 株式会社日立製作所 記憶システム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009151636A (ja) * 2007-12-21 2009-07-09 Nomura Research Institute Ltd 業務継続システム
JP2009266210A (ja) * 2008-02-28 2009-11-12 Huawei Technologies Co Ltd データ保護のための方法、装置および記憶デバイス
JP2010049689A (ja) * 2008-08-19 2010-03-04 Chengdu Huawei Symantec Technologies Co Ltd 自動スナップショット方法および装置
US8370591B2 (en) 2008-08-19 2013-02-05 Chengdu Huawei Symantec Technologies Co., Ltd. Method and apparatus for automatic snapshot
WO2011033692A1 (ja) * 2009-09-17 2011-03-24 株式会社日立製作所 ストレージ装置及びそのスナップショット制御方法
US8510526B2 (en) 2009-09-17 2013-08-13 Hitachi, Ltd. Storage apparatus and snapshot control method of the same
JP2012058863A (ja) * 2010-09-07 2012-03-22 Nec Corp ディスク装置、および、ディスク装置へのデータ複製方法、プログラム
JP2017156829A (ja) * 2016-02-29 2017-09-07 富士通株式会社 制御装置、情報復元方法および情報復元プログラム
JP2021124889A (ja) * 2020-02-04 2021-08-30 株式会社日立製作所 リモートコピーシステム及びリモートコピー管理方法
JP7117338B2 (ja) 2020-02-04 2022-08-12 株式会社日立製作所 リモートコピーシステム及びリモートコピー管理方法

Also Published As

Publication number Publication date
CN101055537A (zh) 2007-10-17
CN100476747C (zh) 2009-04-08
US20070245105A1 (en) 2007-10-18
EP1845448A2 (en) 2007-10-17

Similar Documents

Publication Publication Date Title
JP2007280323A (ja) 記憶システム及びデータ管理方法
US8521694B1 (en) Leveraging array snapshots for immediate continuous data protection
DK3179359T3 (en) PROCEDURE FOR SENDING DATA, PROCEDURE FOR RECEIVING DATA AND STORAGE UNIT
JP4842703B2 (ja) ストレージシステム及びそのリカバリボリューム作成方法
US8600945B1 (en) Continuous data replication
US9740572B1 (en) Replication of xcopy command
EP1959346B1 (en) Methods and apparatus for adjusting a journal area for continuous data protection
US8060714B1 (en) Initializing volumes in a replication system
US9256605B1 (en) Reading and writing to an unexposed device
US9501231B2 (en) Storage system and storage control method
JP4800031B2 (ja) ストレージシステム及びスナップショット管理方法
US9031913B1 (en) File replication
US8001344B2 (en) Storage control apparatus, storage control program, and storage control method
US8103840B2 (en) Snapshot mechanism and method thereof
JP2007141043A (ja) ストレージシステムにおける障害管理方法
JP5021929B2 (ja) 計算機システム及びストレージシステムと管理計算機並びにバックアップ管理方法
JP5366480B2 (ja) 計算機システム及びそのバックアップ方法
US8078581B2 (en) Storage system and remote copy control method
JP2007219609A (ja) スナップショット管理装置及び方法
EP1111509A2 (en) Apparatus for enabling independent access to replicated data
US20080183973A1 (en) Snapshots in distributed storage systems
KR20150081810A (ko) 데이터 저장장치에 대한 다중 스냅샷 관리 방법 및 장치
JP2007206931A (ja) 記憶システム、データ処理方法並びにストレージ装置
JP2009230628A (ja) 計算機システム及び管理計算機
US11403188B2 (en) Operation-level consistency points and rollback

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20081218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090203

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090803