JP5772443B2 - ストレージ装置及びプログラム - Google Patents
ストレージ装置及びプログラム Download PDFInfo
- Publication number
- JP5772443B2 JP5772443B2 JP2011207644A JP2011207644A JP5772443B2 JP 5772443 B2 JP5772443 B2 JP 5772443B2 JP 2011207644 A JP2011207644 A JP 2011207644A JP 2011207644 A JP2011207644 A JP 2011207644A JP 5772443 B2 JP5772443 B2 JP 5772443B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- data transfer
- storage
- storage unit
- copy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 operations
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 operations
- 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 OR CALCULATING; 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2056—Error 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/2071—Error 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/2074—Asynchronous techniques
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2056—Error 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/2071—Error 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/2076—Synchronous techniques
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
また、遠隔地に配置された複数のストレージシステム間において、一のストレージシステムのデータを他のストレージシステムに複写するリモートコピー機能も知られている。
1つの側面では、本件は、データ移行元のストレージ装置における複数の記憶部間のデータ転送状態を、データ移行先の他のストレージ装置においても再現できるようにすることを目的とする。
図1は実施形態の一例としてのストレージシステム1の構成を模式的に示す図、図2は各ストレージ装置10,20におけるボリューム構成を模式的に示す図である。
ストレージ装置10,20は、それぞれCM(Controller Module:情報処理装置)111,211をそなえる。
ホスト装置2,3は、接続されたストレージ装置10,20のボリュームにデータの書き込みや読み出しを行なう。例えば、ホスト装置2はストレージ装置10の業務ボリュームであるコピー元ボリューム#00に対してリードやライトのデータアクセス要求を行なう。ストレージ装置10は、このデータアクセス要求に応じてコピー元ボリューム#00に対するデータアクセスを行ない、ホスト装置2に対して応答を行なう。
また、ホスト装置2は、ストレージ装置10におけるコピーセッションについてのセッション情報の作成等を行なう。
本ストレージシステム1は、ストレージ装置10のボリューム(論理ボリューム)のデータを他のストレージ装置20にデータ転送することにより移行(コピー)するデータ移行機能をそなえる。
以下、ストレージ装置10を移行元装置#00といい、ストレージ装置20を移行先装置#10という場合がある。又、以下、データのコピーをデータ移行と表現する場合がある。更に、ストレージ装置10とストレージ装置20との間におけるリモート回線50を介したデータ転送をリモート転送という場合がある。
ストレージ装置10,20は、ホスト装置2,3に対して記憶領域を提供するものであり、例えば、RAID(Redundant Arrays of Inexpensive Disks)装置である。なお、図1中においては、便宜上、ストレージ装置10にホスト装置2が、又、ストレージ装置20にホスト装置3がそれぞれ接続された状態を示しているが、各ストレージ装置10,20に2以上のホスト装置が接続されてもよい。
図2に示すように、ストレージ装置10内においては、コピー元のボリューム#00(以下、コピー元ボリューム#00という)とコピー先ボリューム#01とが論理ボリュームとしてそなえられる。
コピー元ボリューム#10は、コピー元ボリューム#00の複写先としてのボリューム(第3の記憶部)であり、後述の如く、コピー元ボリューム#00のデータがコピーされる。
CM111,211は、図1に示すように、CA(Channel Adapter)124,224,RA(Remote Adapter)125,225,CPU110,210,ROM122,222及びRAM121,221をそなえる。なお、図1に示す例においては、各ストレージ装置10,20に1つのCM111,211がそなえられているが、これに限定されるものではなく、それぞれ2以上のCM111,211をそなえてもよい。
そして、例えばオペレータがホスト装置2から、ストレージ装置10からストレージ装置20へのデータ移行指示を入力すると、CA124がデータ移行指示を受信する受信部として機能する。
RAM121,221は、種々のデータやプログラムを一時的に格納するメモリ(記憶領域)である。RAM121,221における所定の領域には、例えば、他のストレージ装置20,10に対して送信するデータが一時的に格納され、これによりRAM121,221は、REC(Remote Equivalent Copy)バッファメモリ121a,221a(図12等参照)として機能する。
このように、RAM121,221は、後述するリモート転送時に、他のストレージ装置20,10に対して転送するデータを一時的に格納する転送データバッファとして機能する。
さらに、RAM121,221における他の所定の領域には、後述するCPU110,210がプログラムを実行する際に、データやプログラムが一時的に格納・展開される。又、RAM121における他の所定の領域には、後述するセッションマッピングテーブル201及びRECバッファ制御テーブル202が格納される。
ROM122,222は、CPU110,210が実行するプログラムや種々のデータを格納する記憶装置である。
そして、CPU110は、図1に示すように、データ転送制御部11,データ転送状態管理情報作成部12,データ移行制御部13,セッションマッピングテーブル作成部14及びRECバッファ制御テーブル作成部15として機能する。
なお、データ転送制御部11,データ転送状態管理情報作成部12,データ移行制御部13,セッションマッピングテーブル作成部14及びRECバッファ制御テーブル作成部15としての機能を実現するためのプログラムや、データ転送制御部21,セッションマッピングテーブル作成部22及びボリューム・セッション作成部23として機能するためのプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
SnapOPC+は、SnapOPCをベースとしてバックアップデータの世代管理を実現する。ここで、SnapOPCとは、データのバックアップを作成する際、コピー元ボリュームのデータのうち、更新された部分のみをバックアップする手法である。
SnapOPC+は、バックアップボリュームに業務ボリュームと同容量の割り当てを行なわずにコピーを実現する。SnapOPC+によれば、ボリューム全体を更新しないことが見込まれるユーザ環境において、ディスク容量の縮小化を行なうことができ、コピーにかかるコストの削減が可能である。
セッションマッピングテーブル作成部14は、セッションマッピングテーブル201を作成する。
図3は実施形態の一例としてのストレージシステム1におけるセッションマッピングテーブル201を例示する図である。
セッションマッピングテーブル201は、図3に示すように、移行元装置のコピーセッションの情報と移行先装置のコピーセッションの情報とを対応付けることにより構成される。移行元装置コピーセッションの情報としては、具体的には、装置ID,セッションID,コピー元のLUN及び開始LBA,コピー先のLUN及び開始LBA及びBCである。
そして、セッションID“00”のコピーセッションにおいては、LUN“00”のボリュームにおけるLBA“000”を先頭アドレスとする1000ブロックのデータが、LUN“10”のボリュームにおけるLBA“000”を先頭アドレスとする領域にコピーされることを示す。
そして、後述するデータ転送状態管理情報作成部12が、このセッションマッピングテーブル201を用いてリモート転送ビットマップ301を作成する。
図4は実施形態の一例としてのストレージシステム1におけるRECバッファ制御テーブル202を例示する図である。
このRECバッファ制御テーブル202は、移行元装置(ストレージ装置10)から移行先装置(ストレージ装置20)に対してデータ転送を行なう際の、データの書き込みを行なう位置を管理する。
RECバッファ制御テーブル作成部15は、例えば、セッションマッピングテーブル201から移行先装置についての情報を抽出することにより、このRECバッファ制御テーブル202を作成する。
データ転送状態管理情報作成部12は、本ストレージシステム1にそなえられたボリューム間でのデータ転送状態を管理するデータ転送状態管理情報を作成する。
コピービットマップ132は、コピー元ボリューム#00を所定サイズ(例えば8KB)単位の複数の単位領域に区分し、これらの単位領域毎に、当該単位領域に格納されているデータがコピー先ボリューム#01に転送されたか否かを表す情報を対応付けることにより作成される。すなわち、コピービットマップ132は、コピー元ボリューム#00のデータ転送の進捗状況を管理する。以下、コピービットマップ132をコピービットマップ#00という場合がある。
図5に示す例においては、コピー先ボリューム#01が4つの領域(部分)に分割されている。従って、コピービットマップ#00は、コピー先ボリューム#01を構成する4つの領域のそれぞれについて、データ転送が行なわれたか否かを表す“0”もしくは“1”のいずれかの値が関連付けられる。例えば、データが未転送状態である領域には“1”を、又、データが転送済みであり、コピーの実行が不要である領域には“0”が設定される。
ストレージ装置10において、複数のコピーセッションが存在する場合には、データ転送状態管理情報作成部12は、これらのセッション毎にコピービットマップ#00を作成する。
図6は実施形態の一例としてのストレージシステム1におけるリモート転送ビットマップ301を説明するための図である。
リモート転送ビットマップ301は、転送元のストレージ装置10とデータ移行先のストレージ装置20との間におけるリモートデータ転送に関して、データ転送対象についてのデータ転送状態を管理する情報である。
そこで、本実施形態においては、リモート転送ビットマップ301は、図6に示すように、3つのデータ転送対象に対応する、第1リモート転送ビットマップ301a,第2リモート転送ビットマップ301b及び第3リモート転送ビットマップ301cをそなえる。
第2リモート転送ビットマップ301bは、コピービットマップ#00のデータ転送状態を管理する情報である。この第2リモート転送ビットマップ301bは、コピービットマップ#00を所定サイズ(例えば8KB)単位の複数の単位領域に区分し、これらの単位領域毎に、当該単位領域に格納されているデータがストレージ装置20のコピービットマップ#10に転送されたか否かを表す情報を対応付けることにより作成される。
第3リモート転送ビットマップ(第3のデータ転送状態管理情報)301cは、コピー先ボリューム#01のデータ転送状態を管理する情報である。この第3リモート転送ビットマップ301cは、コピー先ボリューム#01を所定サイズ(例えば8KB)単位の複数の単位領域に区分し、これらの単位領域毎に、当該単位領域に格納されているデータがストレージ装置20のコピー先ボリューム#11に転送されたか否かを表す情報を対応付けることにより作成される。
なお、リモート転送ビットマップ301を構成するためのコピー元ボリューム#00,コピー先ボリューム#01及びコピービットマップ#00を区分する単位領域のサイズは、8KBに限定されるものではなく適宜変更して実施することができる。
このデータ移行制御部13は、ストレージ装置10に設定された論理ボリューム(ソースボリューム)のデータを、ストレージ装置20の論理ボリュームにコピーすべく、所定のデータサイズ(例えば、256KB)の複数のデータ転送によって転送する。これにより、ストレージ装置10のボリュームとストレージ装置20のボリュームとが等価状態に維持される。
このようなRECコンシステンシ・モード機能において、ソースボリュームからバックアップボリュームへのデータ転送は、ホスト装置2からコピー元ボリューム#00への書き込みとは非同期に行なうことにより、コピー元ボリューム#00へのライト性能に影響を与えることなくコピーを行なうことができる。
また、データ移行制御部13は、第3リモート転送ビットマップ301cにおいて“1”が設定されているコピー先ボリューム#01のデータを、ストレージ装置20のコピー先ボリューム#11に転送する。
また、データ移行制御部13は、コピー元ボリューム#00にデータ更新が行なわれた場合に、このコピー元ボリューム#00のデータをRECバッファ121aへ格納する処理や、このRECバッファ121aの世代切り替え制御も行なう。
ただし、ボリューム・セッション作成部23は、コピー元ボリューム#10及びコピー先ボリューム#11の領域確保を行なうにとどまる。ボリューム・セッション作成部23は、例えば、コピー元ボリューム#00やコピー先ボリューム#01のサイズ情報を参照し、ストレージ装置20の記憶領域における予め規定されたアドレスを開始LBAとして各ボリュームの領域確保を行なう。又、コピービットマップ#10については、コピービットマップ#00と同サイズの記憶領域を確保し、コピービットマップ#10の各単位領域に対応させて、初期値として、コピーの実行が不要である旨を表す“0”を格納する。
さらに、ボリューム・セッション作成部23は、作成したコピービットマップの更新も行なう。
上述の如く構成された実施形態の一例としてのストレージシステム1におけるリモートコピー手法を、図7〜図23を参照しながら説明する。
本ストレージシステム1における移行元装置#00(ストレージ装置10)及び移行先装置#10(ストレージ装置20)のリモートコピー開始前の状態を図7に示す。
移行元装置#00におけるコピー先ボリューム#01は仮想ボリューム(SDV)であり、又、コピー元ボリューム#00からコピー先ボリューム#01へのコピーセッション#00はSnapOPC+であるものとする。
初期状態においては、図7に示すように、移行元装置#00にコピー元ボリューム#00,コピー先ボリューム#01が設定されている。又、コピー元ボリューム#00をコピー先ボリューム#01へミラーリングするコピーセッション#00が設定されており、更に、そのデータ移行状態を示すコピービットマップ#00が作成されている。
本ストレージシステム1における移行先装置#10におけるボリューム・セッション作成処理時の状態を図8に示す。
(2−1)先ず、移行元装置#00から移行先装置#10へボリューム・セッションの作成依頼が行なわれる(符号A1参照)。この作成依頼に応じて、移行先装置#10において、ボリューム・セッション作成部23がボリューム及びコピーセッションの作成を開始する。
(2−3)また、ボリューム・セッション作成部23は、移行先装置#10においてコピー先ボリューム#11を作成する(符号A3参照)。
(2−4)ボリューム・セッション作成部23は、移行先装置#10においてコピービットマップ#10を作成する(符号A4参照)。
[3]リモート転送ビットマップ作成
本ストレージシステム1における移行元装置#00によるリモート転送ビットマップ301の生成処理時の状態を図9に示す。
(3−2)また、データ転送状態管理情報作成部12は、コピービットマップ#00に対応する第2リモート転送ビットマップ301bを作成する(符号A6参照)。データ転送制御部11は、コピービットマップ#00で“1”が設定されている部分のみをコピー先ボリューム#01へリモート転送を行なう。従って、リモート転送ビットマップ301において、第2リモート転送ビットマップ301bはコピービットマップ#00と等しくなる。
[4]初期コピー処理
本ストレージシステム1における移行元装置#00から移行先装置#10への初期コピー処理時の状態を図10に示す。
(4−1)移行元装置#00において、データ移行制御部13は、例えば、コピー元ボリューム#00のデータAを、移行先装置#10のコピー元ボリューム#10にコピーするべく転送する(符号A8参照)。
(4−3)以下、リモート転送ビットマップ301の全ての領域に“0(OFF)”が設定される、上記(4−1)及び(4−2)の処理を繰り返し実行する。これにより、初期コピー処理が完了する。
この図11に示す例においては、移行先装置#10のコピー元ボリューム#10,コピー先ボリューム#11及びコピービットマップ#10が、移行元装置#00のコピー元ボリューム#00,コピー先ボリューム#01及びコピービットマップ#00とそれぞれ同じ状態となっている。又、リモート転送ビットマップ301の全ての領域に“0”が設定されている。
本ストレージシステム1における移行元装置#00から移行先装置#10へのライト処理時の状態を図12及び図13に示す。
例えば、ホスト装置2からのライト要求により、移行元装置#00のコピー元ボリューム#00におけるデータcの領域に、データCのライト処理を行なう。
(5−1)先ず、データ転送制御部11が、コピー元ボリューム#00のデータcを、コピー先ボリューム#01にコピーする(符号A10参照)。
(5−3)コピー元ボリューム#00にデータCがライトされる(符号A12参照)。
(5−4)データ移行制御部13が、コピー元ボリューム#00のデータCを、アクティブ(Active)となっているRECバッファ121aの世代1に格納する(符号A13参照)。
図13に示す例においては、ホスト装置2からのライト要求により、移行元装置#00のコピー元ボリューム#00におけるデータdの領域に、データDのライト処理が行なわれる状態を示す。
(5ー6)これに伴い、データ転送状態管理情報作成部12が、コピービットマップ#00における、当該dの領域に相当する部分に“0”を設定する(符号A15参照)。
(5−7)コピー元ボリューム#00にデータDがライトされる(符号A16参照)。
[6]ライト処理(RECバッファ制御)
本ストレージシステム1における移行元装置#00でのRECバッファ121aの世代切り替え時の状態を図14に示す。
例えば、移行元装置#00のRECバッファ121aの世代1の領域のメモリサイズが枯渇した場合には、データ移行制御部13は、RECバッファ121aのアクティブな世代を、次世代である世代2に切り替える(符号A18参照)。
その後、更に、ホスト装置2からのライト要求により、例えば移行元装置#00のコピー元ボリューム#00におけるデータbの領域に、データBのライト処理を行なわれた場合について説明する。
図15に示す例においては、ホスト装置2からのライト要求により、移行元装置#00のコピー元ボリューム#00におけるデータbの領域に、データBのライト処理が行なわれる状態を示す。
(7−2)これに伴い、データ転送状態管理情報作成部12が、コピービットマップ#00における、当該bの領域に相当する部分に“0”を設定する(符号A20参照)。
(7−3)コピー元ボリューム#00にデータBがライトされる(符号A21参照)。
[8]ライト処理(RECバッファ制御)
データ移行制御部13は、世代切替えが行われたRECバッファ121aのデータを転送する。
データ移行制御部13は、移行元装置#00のRECバッファ121aの世代1のデータを移行先装置#10に転送し、この世代1のデータをRECバッファ221aの世代1に格納させる(符号A23参照)。
[9]ライト処理(移行先)
移行先装置#10においては、RECバッファ221aに受信したライトデータを展開する。
この図17においては、移行先装置#10において、RECバッファ221aからデータCが取り出され、移行先装置#10のコピー元ボリューム#10におけるデータcの領域にライトされる例を示す。
(9−1)移行先装置#10において、データ転送制御部21が、コピー元ボリューム#10のデータcを、コピー先ボリューム#11にコピーする(符号A24参照)。
(9−3)コピー元ボリューム#10に、RECバッファ221aから読み出されたデータCがライトされる(符号A26参照)。
図18においては、移行先装置#10において、RECバッファ221aからデータDが取り出され、移行先装置#10のコピー元ボリューム#10におけるデータdの領域に、データDのライトが行なわれる例を示す。
(9−5)これに伴い、ボリューム・セッション作成部23が、コピービットマップ#10における、当該dの領域に相当する部分に“0”を設定することにより更新する(符号A28参照)。
[10]ライト処理(RECバッファ制御)
本ストレージシステム1における、移行先装置#10においてRECバッファ221aの世代1のデータコピー元ボリューム#10への展開が完了した状態を図19に示す。
(10−1)移行先装置#10のRECバッファ221aの世代1が解放される(符号A30参照)。
(10−2)移行元装置#00のRECバッファ121aの 世代1が解放される(符号A31参照)。
移行元装置#00において、RECバッファ121aのいずれかの世代について、その使用開始から所定時間が経過した場合にも、データ移行制御部13は、RECバッファ121aのアクティブ(Active)な世代を、次世代に切り替える。
なお、この所定時間はユーザが任意に設定することができる。所定時間として、例えば、1秒〜数分の値が望ましい。
移行元装置#00において、RECバッファ121aの世代2の使用開始から所定時間が経過したことを検知すると、データ移行制御部13は、RECバッファ121aのアクティブな世代を、世代2から世代3に切り替える(符号A32参照)。
また、移行元装置#00においてRECバッファ121aの世代切替えが行なわれると、データ移行制御部13は、切り替えられたRECバッファ121aの世代のデータを移行先装置#10に転送し、RECバッファ221aの同世代に格納させる。
図21に示す例においては、本ストレージシステム1の移行元装置#00において、RECバッファ121aのアクティブな世代が世代2から世代3に切り替えられた状態を示す。
また、この際、データ移行制御部13は、このRECバッファ121aの世代2に対応するRECバッファ制御テーブル202も移行先装置#10に転送する。
移行先装置#10においては、RECバッファ221aの世代2に受信したライトデータを展開する。
本ストレージシステム1における移行先装置#10によるRECバッファ221aの世代2のデータの処理時の状態を図22に示す。
また、この移行先装置#10における、RECバッファ221aの世代2から取り出されたデータのコピー元ボリューム#10へのライト処理も、移行元装置#00におけるコピー元ボリューム#00へのデータのライト処理と同様に行なわれる。すなわち、
(13−1)移行先装置#10において、データ転送制御部21が、コピー元ボリューム#10のデータbを、コピー先ボリューム#11にコピーする(符号A34参照)。
(13−3)コピー元ボリューム#10に、RECバッファ221aの世代2から読み出されたデータBがライトされる(符号A36参照)。
本ストレージシステム1における、移行先装置#10においてRECバッファ221aの世代2のデータコピー元ボリューム#10への展開が完了した状態を図23に示す。
移行先装置#10において、RECバッファ221aの世代2のデータコピー元ボリューム#10への展開が完了すると、以下の処理が行なわれる。
(14−2)移行元装置#00のRECバッファ121aの 世代2が解放される(符
号A38参照)。
次に、実施形態の一例としてのストレージシステム1における処理を、図24〜図28に示すフローチャートに従って説明する。
先ず、移行元装置#00は、移行先装置#10とリモート回線50を介した筐体間通信を行ない、移行先装置#10において必要となるボリューム及びコピーセッションの作成を依頼する(図24のステップB10)。
また、移行先装置#10においては、セッションマッピングテーブル作成部22が、セッションマッピングテーブル201を作成する(図25のステップC20)。
このように、移行先装置#10と移行元装置#00とのそれぞれでセッションマッピングテーブル201,セッションマッピングテーブル201を作成することにより、これらの不一致の箇所の有無を判断し、システムにおける異常を検出することができる。すなわち、セッションマッピングテーブル201,201の信頼性を向上させることができる。
また、移行元装置#00において、データ転送状態管理情報作成部12が、セッションマッピングテーブル201に基づき、リモート転送ビットマップ301を作成する(図24のステップB30)。
図26は本ストレージシステム1の移行元装置#00における初期コピー処理を説明するフローチャート(ステップD10〜D50)である。
移行元装置#00においては、データ移行制御部13が、リモート転送ビットマップ301を、その先頭から参照して、ビット“1”が設定されている箇所を検索する(ステップD10)。
データが転送された移行先装置#10においては、受信したデータを、移行元装置#00のデータ移行制御部13から指定された領域に格納する。すなわち、ボリューム・セッション作成部23によって作成されたボリュームやコピービットマップ#10を、受信したデータにより更新する。
その後、移行元装置#00においては、データ移行制御部13が、再度、リモート転送ビットマップ301を、その先頭から参照して、ビット“1”が設定されている箇所を検索し(ステップD50)、ステップD20に戻る。
例えば、ホスト装置2から、移行元装置#00のコピー元ボリューム#00にデータのライト要求が行なわれる。
移行元装置#00において、データ転送状態管理情報作成部12が、リモート転送ビットマップ301を参照して(ステップE10)、当該ホスト装置2からのライト要求にかかるデータの書き込み先の領域のビットが“1”であるか否かを確認する(ステップE20)。すなわち、移行元装置#00において、ホスト装置2からライト要求が行なわれた領域のデータについて、初期コピーが完了しているか否かを確認する。
このように、本ストレージシステム1においては、ホスト装置2から移行元装置#00のコピー元ボリューム#00において初期コピーが完了していない領域に対してライト要求が行なわれた場合には、ステップE30,E40により、データのライト処理の前に初期コピーを完了させる。これにより、データの整合性を保つことができ、信頼性を向上させることができる。
さらに、移行元装置#00においては、データ移行制御部13が、このライトデータに対応するRECバッファ制御テーブル202を移行先装置#10に転送する(ステップE80)。そして、データ移行制御部13は、ライトデータを非同期で移行先装置#10に送信して(ステップE90)、処理を終了する。
移行先装置#10においては、移行元装置#00から非同期で、ライトデータ及び対応する制御データ(RECバッファ制御テーブル202)を取得する(ステップF10)。
また、移行先装置#10は、RECバッファ制御テーブル202から、書き込みを行なうボリュームやLBA,BC等の情報を取り出す(ステップF20)。
その後、移行元装置#00において、RECバッファ221aのデータをコピー元ボリューム#10にライトして(ステップF40)、処理を終了する。
これにより、移行元装置#00におけるコピー元ボリューム#00からコピー先ボリューム#01へのコピーの経過状態も、データ移行後の移行先装置#10において再現することができ、利便性が高い。
従って、従来手法によれば、例えば、SnapOPC+で複数世代のスナップショットが作成されていた場合に、多くのディスク容量が必要となり、世代数が多くなるほど、ディスク容量が増大する。
そして、開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
(付記1)
ネットワークを介して接続される他のストレージ装置に対するデータ転送を行なうストレージ装置において、
コピー元データを記憶する第1の記憶部と、
前記データに対応するバックアップデータが記憶される第2の記憶部と、
前記第1の記憶部と前記第2の記憶部との間のデータ転送状態を管理する第1のデータ転送状態管理情報を記憶する制御情報記憶部と、
前記第1の記憶部と前記第2の記憶部間のデータ転送を制御するデータ転送制御部と、
前記第1の記憶部と前記第2の記憶部とに記憶されたデータを前記他のストレージ装置に移行するデータ移行指示を受信する受信部と、
前記データ移行指示を受信すると、前記第1の記憶部と前記他のストレージ装置内に配置された第3の記憶部との間のデータ転送状態を管理する第2のデータ転送状態管理情報と、前記第1のデータ転送状態管理情報に基づいて前記第2の記憶部と前記他のストレージ装置内に配置された第4の記憶部との間のデータ転送状態を管理する第3のデータ転送状態管理情報とを作成するデータ転送状態管理情報作成部と、
前記第2のデータ転送状態管理情報に基づいて前記第1の記憶部と前記第3の記憶部間のデータ転送を行ない、前記第3のデータ転送状態管理情報に基づいて前記第2の記憶部と前記第4の記憶部間のデータ転送を行ない、前記第1のデータ転送状態管理情報の転送を行なうデータ移行制御部とを備えたことを特徴とする、ストレージ装置。
前記データ転送制御部が、前記第1の記憶部から第2の記憶部へのデータ転送をSnapOPC+を用いて行なうことを特徴とする、付記1記載のストレージ装置。
(付記3)
前記データ移行制御部が、前記第1の記憶部へのデータのライト処理とは非同期に、前記第1の記憶部と前記第3の記憶部間のデータ転送及び前記第2の記憶部と前記第4の記憶部間のデータ転送を行なうことを特徴とする、付記1又は2記載のストレージ装置。
コピー元データを記憶する第1の記憶部と、
前記データに対応するバックアップデータが記憶される第2の記憶部と、
前記第1の記憶部と前記第2の記憶部との間のデータ転送状態を管理する第1のデータ転送状態管理情報を記憶する制御情報記憶部と、
前記第1の記憶部と前記第2の記憶部とに記憶されたデータを前記他のストレージ装置に移行するデータ移行指示を受信する受信部とをそなえるストレージ装置において、ネットワークを介して接続される他のストレージ装置に対するデータ転送制御機能をコンピュータに実行させるためのプログラムであって、
前記第1の記憶部と前記第2の記憶部間のデータ転送を制御し、
前記データ移行指示を受信すると、前記第1の記憶部と前記他のストレージ装置内に配置された第3の記憶部との間のデータ転送状態を管理する第2のデータ転送状態管理情報と、前記第1のデータ転送状態管理情報に基づいて前記第2の記憶部と前記他のストレージ装置内に配置された第4の記憶部との間のデータ転送状態を管理する第3のデータ転送状態管理情報とを作成し、
前記第2のデータ転送状態管理情報に基づいて前記第1の記憶部と前記第3の記憶部間のデータ転送を行ない、前記第3のデータ転送状態管理情報に基づいて前記第2の記憶部と前記第4の記憶部間のデータ転送を行ない、前記第1のデータ転送状態管理情報の転送を行なうことを特徴とする、プログラム。
前記第1の記憶部から第2の記憶部へのデータ転送をSnapOPC+を用いて行なうことを特徴とする、付記4記載のプログラム。
(付記6)
前記第1の記憶部へのデータのライト処理とは非同期に、前記第1の記憶部と前記第3の記憶部間のデータ転送及び前記第2の記憶部と前記第4の記憶部間のデータ転送を行なうことを特徴とする、付記4又は5記載のプログラム。
2,3 ホスト装置
10,20 ストレージ装置
11,21 データ転送制御部
12 データ転送状態管理情報作成部
13 データ移行制御部
14,22 セッションマッピングテーブル作成部
15 RECバッファ制御テーブル作成部
23 ボリューム・セッション作成部
110,210 CPU
111,211 CM
121,221 RAM
121a,221a RECバッファ
122,222 ROM
124,224 CA
125,225 RA
126,226 DA
130,230 ディスクエンクロージャ
131,231 ディスク装置
132 コピービットマップ
201 セッションマッピングテーブル
202 RECバッファ制御テーブル
301 リモート転送ビットマップ
301a 第1リモート転送ビットマップ(第2のデータ転送状態管理情報)
301b 第2リモート転送ビットマップ
301c 第3リモート転送ビットマップ(第3のデータ転送状態管理情報)
Claims (4)
- ネットワークを介して接続される他のストレージ装置に対するデータ転送を行なうストレージ装置において、
コピー元データを記憶する第1の記憶部と、
前記データに対応するバックアップデータが記憶される第2の記憶部と、
前記第1の記憶部と前記第2の記憶部との間のデータ転送状態を管理する第1のデータ転送状態管理情報を記憶する制御情報記憶部と、
前記第1の記憶部と前記第2の記憶部間のデータ転送を制御するデータ転送制御部と、
前記第1の記憶部と前記第2の記憶部とに記憶されたデータを前記他のストレージ装置に移行するデータ移行指示を受信する受信部と、
前記データ移行指示を受信すると、前記第1の記憶部と前記他のストレージ装置内に配置された第3の記憶部との間のデータ転送状態を管理する第2のデータ転送状態管理情報と、前記第1のデータ転送状態管理情報に基づいて前記第2の記憶部と前記他のストレージ装置内に配置された第4の記憶部との間のデータ転送状態を管理する第3のデータ転送状態管理情報と、前記第1のデータ転送状態管理情報の前記他のストレージ装置への転送状態を管理する第4のデータ転送状態管理情報とを作成するデータ転送状態管理情報作成部と、
前記第2のデータ転送状態管理情報に基づいて前記第1の記憶部と前記第3の記憶部間のデータ転送を行ない、前記第3のデータ転送状態管理情報に基づいて前記第2の記憶部と前記第4の記憶部間のデータ転送を行ない、前記第4のデータ転送状態管理情報に基づいて前記第1のデータ転送状態管理情報の転送を行なうデータ移行制御部とを備えたことを特徴とする、ストレージ装置。 - 前記データ転送制御部が、前記第1の記憶部から第2の記憶部へのデータ転送をSnapOPC+を用いて行なうことを特徴とする、請求項1記載のストレージ装置。
- 前記データ移行制御部が、前記第1の記憶部へのデータのライト処理とは非同期に、前記第1の記憶部と前記第3の記憶部間のデータ転送及び前記第2の記憶部と前記第4の記憶部間のデータ転送を行なうことを特徴とする、請求項1又は2記載のストレージ装置。
- コピー元データを記憶する第1の記憶部と、
前記データに対応するバックアップデータが記憶される第2の記憶部と、
前記第1の記憶部と前記第2の記憶部との間のデータ転送状態を管理する第1のデータ転送状態管理情報を記憶する制御情報記憶部と、
前記第1の記憶部と前記第2の記憶部とに記憶されたデータを前記他のストレージ装置に移行するデータ移行指示を受信する受信部とをそなえるストレージ装置において、ネットワークを介して接続される他のストレージ装置に対するデータ転送制御機能をコンピュータに実行させるためのプログラムであって、
前記第1の記憶部と前記第2の記憶部間のデータ転送を制御し、
前記データ移行指示を受信すると、前記第1の記憶部と前記他のストレージ装置内に配置された第3の記憶部との間のデータ転送状態を管理する第2のデータ転送状態管理情報と、前記第1のデータ転送状態管理情報に基づいて前記第2の記憶部と前記他のストレージ装置内に配置された第4の記憶部との間のデータ転送状態を管理する第3のデータ転送状態管理情報と、前記第1のデータ転送状態管理情報の前記他のストレージ装置への転送状態を管理する第4のデータ転送状態管理情報とを作成し、
前記第2のデータ転送状態管理情報に基づいて前記第1の記憶部と前記第3の記憶部間のデータ転送を行ない、前記第3のデータ転送状態管理情報に基づいて前記第2の記憶部と前記第4の記憶部間のデータ転送を行ない、前記第4のデータ転送状態管理情報に基づいて前記第1のデータ転送状態管理情報の転送を行なう処理を前記コンピュータに実行させることを特徴とする、プログラム。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2011207644A JP5772443B2 (ja) | 2011-09-22 | 2011-09-22 | ストレージ装置及びプログラム |
| US13/589,204 US8930485B2 (en) | 2011-09-22 | 2012-08-20 | Information processing apparatus and non-transitory computer-readable recording medium having program stored thereon |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2011207644A JP5772443B2 (ja) | 2011-09-22 | 2011-09-22 | ストレージ装置及びプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2013069145A JP2013069145A (ja) | 2013-04-18 |
| JP5772443B2 true JP5772443B2 (ja) | 2015-09-02 |
Family
ID=47912471
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2011207644A Expired - Fee Related JP5772443B2 (ja) | 2011-09-22 | 2011-09-22 | ストレージ装置及びプログラム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US8930485B2 (ja) |
| JP (1) | JP5772443B2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11106381B2 (en) * | 2019-11-27 | 2021-08-31 | EMC IP Holding Company LLC | Automated seamless migration of logical storage devices |
| JP2022052484A (ja) * | 2020-09-23 | 2022-04-04 | 富士通株式会社 | ストレージ装置及びストレージ制御方法 |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7702670B1 (en) * | 2003-08-29 | 2010-04-20 | Emc Corporation | System and method for tracking changes associated with incremental copying |
| JP2005292865A (ja) * | 2004-03-31 | 2005-10-20 | Hitachi Ltd | ストレージシステム及びストレージシステムのバックアップ方法 |
| JP4718851B2 (ja) | 2004-05-10 | 2011-07-06 | 株式会社日立製作所 | ストレージシステムにおけるデータ移行 |
| JP4355674B2 (ja) | 2005-03-17 | 2009-11-04 | 富士通株式会社 | リモートコピー方法及びストレージシステム |
| JP4733431B2 (ja) * | 2005-06-01 | 2011-07-27 | 株式会社日立製作所 | リモートコピーの初期コピーシステムおよび初期コピー方法ならびに記憶装置 |
| JP4993913B2 (ja) * | 2006-01-13 | 2012-08-08 | 株式会社日立製作所 | 記憶制御装置及びそのデータ管理方法 |
| JP5034495B2 (ja) * | 2006-12-27 | 2012-09-26 | 日本電気株式会社 | ストレージシステムとプログラム並びに方法 |
| JP5124183B2 (ja) * | 2007-06-27 | 2013-01-23 | 株式会社日立製作所 | 非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム |
| JP2009181206A (ja) * | 2008-01-29 | 2009-08-13 | Hitachi Ltd | ストレージシステム及びスナップショット構成の移行方法 |
| JP4972047B2 (ja) * | 2008-07-15 | 2012-07-11 | 富士通株式会社 | ストレージシステム,ストレージシステムのコピー制御方法,及びストレージシステムのコピー制御部 |
| JP4833273B2 (ja) * | 2008-12-09 | 2011-12-07 | 富士通株式会社 | ストレージ装置、リストア方法およびリストアプログラム |
| JP5331555B2 (ja) | 2009-04-23 | 2013-10-30 | 株式会社日立製作所 | データ移行システムおよびデータ移行方法 |
-
2011
- 2011-09-22 JP JP2011207644A patent/JP5772443B2/ja not_active Expired - Fee Related
-
2012
- 2012-08-20 US US13/589,204 patent/US8930485B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| US20130080569A1 (en) | 2013-03-28 |
| US8930485B2 (en) | 2015-01-06 |
| JP2013069145A (ja) | 2013-04-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4175764B2 (ja) | 計算機システム | |
| US7415506B2 (en) | Storage virtualization and storage management to provide higher level storage services | |
| US8234467B2 (en) | Storage management device, storage system control device, storage medium storing storage management program, and storage system | |
| JP4990066B2 (ja) | 論理ボリュームのペアを利用したデータ保存の方式を変更する機能を備えたストレージシステム | |
| US8639976B2 (en) | Power failure management in components of storage area network | |
| US9483196B2 (en) | Systems and methods for virtualizing storage systems and managing data independently | |
| US8122212B2 (en) | Method and apparatus for logical volume management for virtual machine environment | |
| JP5853649B2 (ja) | ストレージ装置,制御装置及びプログラム | |
| JP5263902B2 (ja) | ストレージ・コントローラと複製エンジンとの間で書き込みを分割する方法、システムおよびコンピュータ・プログラム | |
| JP5352490B2 (ja) | サーバイメージ容量の最適化 | |
| JP2014137711A (ja) | ストレージ装置、バックアッププログラム、およびバックアップ方法 | |
| US10459813B2 (en) | System and device for synchronizing data in a plurality of devices | |
| US20130080725A1 (en) | Control apparatus, control method, and storage apparatus | |
| US9524251B2 (en) | Storage system, virtualization control apparatus, information processing apparatus, and method for controlling storage system | |
| US8972634B2 (en) | Storage system and data transfer method | |
| US9348513B2 (en) | SAS virtual tape drive | |
| JP5772443B2 (ja) | ストレージ装置及びプログラム | |
| US20160224273A1 (en) | Controller and storage system | |
| US20130031320A1 (en) | Control device, control method and storage apparatus | |
| JP6957845B2 (ja) | ストレージ制御装置及びストレージ装置 | |
| JP2010039547A (ja) | ディスクアレイ装置 | |
| JP5032620B2 (ja) | ディスクアレイ装置及び同ディスクアレイ装置に適用される論理ディスク再構成方法 | |
| JP2012194867A (ja) | ストレージ装置および制御装置 | |
| CN102081932A (zh) | 记录再现装置 | |
| JP2008305223A (ja) | リストア制御プログラム、リストア制御方法、リストア制御装置、およびリストア制御システム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140603 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150317 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150318 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150514 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150602 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150615 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5772443 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |