(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024129169
(43)【公開日】2024-09-27
(54)【発明の名称】ストレージシステム、ストレージ、ストレージシステムの制御方法およびプログラム
(51)【国際特許分類】
G06F 3/06 20060101AFI20240919BHJP
G06F 13/10 20060101ALI20240919BHJP
G06F 11/14 20060101ALI20240919BHJP
【FI】
G06F3/06 304F
G06F3/06 301X
G06F3/06 301Z
G06F13/10 340A
G06F3/06 304B
G06F11/14 648
【審査請求】有
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023034239
(22)【出願日】2023-03-07
(11)【特許番号】
(45)【特許公報発行日】2024-09-18
(71)【出願人】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100181135
【弁理士】
【氏名又は名称】橋本 隆史
(72)【発明者】
【氏名】野中 春輝
(57)【要約】
【課題】正ボリュームから副ボリュームへの順序性を保証したデータのコピー動作を、停止した後、再開する場合に、副ボリュームのデータを適切に退避させる。
【解決手段】ストレージシステムは、正ボリュームから副ボリュームへの順序性を保証したコピー動作が停止した場合、その停止期間中に正ボリュームと副ボリューム間で差分があるとされた各データを正ボリュームから副ボリュームへコピーする前に、正ボリュームから副ボリュームへの順序性を保証したコピー動作中に副ボリュームと退避ボリューム間で差分があるとされた各データを副ボリュームから退避ボリュームへコピーし、その後、第2記憶手段に記憶されている第1差分情報に基づいて差分があるとされた各データを正ボリュームから副ボリュームへコピーし、その後、コピー動作を再開する。
【選択図】
図26
【特許請求の範囲】
【請求項1】
正ボリュームを備える第1ストレージと、
前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージとを
を備え、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーし、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーし、
その後、前記コピー動作を再開する
ストレージシステム。
【請求項2】
前記第2差分情報に基づいて差分があるとされた各データの前記副ボリュームから前記退避ボリュームへのコピーと、
前記第1差分情報に基づいて差分があるとされた各データの前記正ボリュームから前記副ボリュームへのコピーとが、
第1記憶領域および第2記憶領域毎に並行して行われる
請求項1に記載のストレージシステム。
【請求項3】
前記第2差分情報に基づいて差分があるとされた各データの前記副ボリュームから前記退避ボリュームへのコピーが、前記コピー動作が停止した場合、停止後に行われる
請求項1に記載のストレージシステム。
【請求項4】
正ボリュームを備え、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージに通信回線を介して接続された第1ストレージであって、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、前記副ボリュームと、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされる前に、前記第2差分情報に基づいて差分があるとされた各データが前記副ボリュームから前記退避ボリュームへコピーされ、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされ、
その後、前記コピー動作が再開される
ストレージ。
【請求項5】
正ボリュームを備える第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージであって、
前記第1ストレージが、前記正ボリュームと、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされる前に、前記第2差分情報に基づいて差分があるとされた各データが前記副ボリュームから前記退避ボリュームへコピーされ、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされ、
その後、前記コピー動作が再開される
ストレージ。
【請求項6】
正ボリュームを備える第1ストレージと、
前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージとを
を制御する制御方法であって、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーするステップと、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーするステップと、
その後、前記コピー動作を再開するステップと
を含むストレージシステムの制御方法。
【請求項7】
正ボリュームを備える第1ストレージと、
前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージとを
を制御する際に、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーするステップと、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーするステップと、
その後、前記コピー動作を再開するステップと
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージシステム、ストレージ、ストレージシステムの制御方法およびプログラムに関する。
【背景技術】
【0002】
メインサイトのストレージのデータをリモートサイトのストレージにバックアップする方式には、メインサイトのデータ更新とリモートサイトのデータコピーとをデータの順序性を保持した上で非同期に実行する方式がある(例えば特許文献1)。この方式では、例えばコピーするデータを一時的に保持するバッファがあふれた場合、コピー動作を停止し、整合性がとれるまで差分コピーを実行した後、コピー動作が再開される。この差分コピーはデータの順序性を意識せず実行されるので、差分コピーを実行している状態でメインサイトに障害が発生するとリモートサイトのデータは無意味なデータとなってしまう(特許文献1の段落0007~0009)。この問題に対しては、リモートサイトに差分コピー実行前の状態を保持する退避領域を設けることで、少なくとも差分コピー前の整合性のあるデータを復旧することができる(特許文献1の段落0010~0011)。退避領域を設ける場合、差分データを上書きする前に上書きされるデータを退避するため、空きエリアの探索と、データの退避と、データが格納されていた位置と退避先などを表す情報の作成と記憶とを行う必要がある(特許文献1の先行特許文献(特開平11-15604号公報の段落0052))。また、退避領域を設ける場合、ボリューム容量として現状の2倍の容量を用意する必要がある(特許文献1の段落0014)
【0003】
また、上述したメインサイトとリモートサイト間の差分コピー時の問題は、例えばリモートサイトにあるコピー先の副ボリュームのレプリカを設けて、副ボリュームの全データをレプリカにバックアップしておくことで解決することができる(特許文献2)。この場合、障害発生時の退避ボリュームを用いたデータの復旧は、副ボリュームのデータをレプリカにバックアップした時点のデータに基づいて行われる。この特許文献2に記載されているリモートコピーシステムでは、予め設定した予約時刻で副ボリュームからレプリカへデータがバックアップされる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2015-52844号公報
【特許文献2】特開2008-181288号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載されているようにメインサイトからリモートサイトへ差分コピーが行われる際に上書きされるデータを退避領域に退避させる場合、差分コピーの内容に応じて退避領域の確保や退避したデータに関する情報の作成と記憶とを行わなければならない。このため、場合によっては退避に要する処理や記憶容量が問題となることがある。
【0006】
また、特許文献2に記載されているように予め設定した予約時刻にレプリカを作成する場合、障害発生時刻と予約時刻との間隔によっては、復旧できるデータ量が問題となることがある。
【0007】
本発明は、上述の課題を解決するストレージシステム、ストレージ、ストレージシステムの制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の一態様は、正ボリュームを備える第1ストレージと、前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージとを備え、前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーし、その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーし、その後、前記コピー動作を再開する、ストレージシステムである。
【0009】
本発明の一態様は、正ボリュームを備え、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージに通信回線を介して接続された第1ストレージであって、前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、前記第2ストレージが、前記副ボリュームと、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされる前に、前記第2差分情報に基づいて差分があるとされた各データが前記副ボリュームから前記退避ボリュームへコピーされ、その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされ、その後、前記コピー動作が再開される、ストレージである。
【0010】
本発明の一態様は、正ボリュームを備える第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージであって、前記第1ストレージが、前記正ボリュームと、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされる前に、前記第2差分情報に基づいて差分があるとされた各データが前記副ボリュームから前記退避ボリュームへコピーされ、その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされ、その後、前記コピー動作が再開される、ストレージである。
【0011】
本発明の一態様は、正ボリュームを備える第1ストレージと、前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージとを制御する制御方法であって、前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーするステップと、その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーするステップと、その後、前記コピー動作を再開するステップとを含むストレージシステムの制御方法である。
【0012】
本発明の一態様は、正ボリュームを備える第1ストレージと、前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージとを制御する際に、前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーするステップと、その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーするステップと、その後、前記コピー動作を再開するステップとをコンピュータに実行させるプログラムである。
【発明の効果】
【0013】
本発明のストレージシステム、ストレージ、ストレージシステムの制御方法およびプログラムによれば、正ボリュームから副ボリュームへの順序性を保証したデータのコピー動作を、停止した後、再開する場合に、副ボリュームのデータを適切に退避させることができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施形態に係るストレージシステムの構成例を説明するためのブロック図である。
【
図2】本発明の実施形態で順序保証コピーのグループを設定する際の処理の例を示すフローチャートである。
【
図3】本発明の実施形態における順序保証コピーのグループの設定例を示す模式図である。
【
図4】本発明の実施形態で順序保証コピーのボリュームを構築する際の動作例を示すフローチャートである。
【
図5】本発明の実施形態で順序保証コピーのボリュームを構築する際のデータの流れの例を説明するための模式図である。
【
図6】本発明の実施形態で順序保証コピーのボリュームを構築する際の差分情報バッファの内容の例を説明するための模式図である。
【
図7】本発明の実施形態で順序保証コピーの退避ボリュームを構築する際の動作例を示すフローチャートである。
【
図8】本発明の実施形態で順序保証コピーの退避ボリュームを構築する際のデータの流れの例を説明するための模式図である。
【
図9】本発明の実施形態で順序保証コピーの退避ボリュームを構築する際の差分情報バッファの内容の例を説明するための模式図である。
【
図10】本発明の実施形態における順序保証コピーの動作例を示すフローチャートである。
【
図11】本発明の実施形態に係る順序保証コピーの動作例におけるデータの流れの例を説明するための模式図である。
【
図12】本発明の実施形態における順序保証コピーを停止する際の動作例を示すフローチャートである。
【
図13】本発明の実施形態における順序保証コピーを停止した状態でのホストからの書き込みの際の動作例を示すフローチャートである。
【
図14】本発明の実施形態において順序保証コピーを停止した状態でのホストからの書き込みの際の動作例におけるデータの流れの例を説明するための模式図である。
【
図15】本発明の実施形態において順序保証コピーを停止した状態でのホストからの書き込みの際の動作例における差分情報バッファの内容の例を説明するための模式図である。
【
図16】本発明の第1実施形態において順序保証コピーを再開する際の動作例を示すフローチャートである。
【
図17】本発明の第1実施形態において順序保証コピーを再開する際の退避ボリュームへのコピー動作の例を示すフローチャートである。
【
図18】本発明の第1実施形態において順序保証コピーを再開する際の動作例におけるデータの流れの例を説明するための模式図である。
【
図19】本発明の第1実施形態において順序保証コピーを再開する際の差分情報バッファの内容の例を説明するための模式図である。
【
図20】本発明の第1実施形態において順序保証コピーを再開する際の正ボリュームから副ボリュームへの差分コピーの動作例を示すフローチャートである。
【
図21】本発明の第1実施形態において順序保証コピーを再開する際の動作例におけるデータの流れの例を説明するための模式図である。
【
図22】本発明の第1実施形態において順序保証コピーを再開する際の差分情報バッファの内容の例を説明するための模式図である。
【
図23】本発明の第2実施形態において順序保証コピーを再開する際の動作例を示すフローチャートである。
【
図24】本発明の第2実施形態において順序保証コピーを再開する際の正ボリュームから副ボリュームへの差分コピーの動作例を示すフローチャートである。
【
図25】本発明の第3実施形態における順序保証コピーを停止する際の動作例を示すフローチャートである。
【
図26】本発明の実施形態に係る構成の最小構成例を示すブロック図である。
【
図27】本発明の実施形態に係る動作の最小構成例を示すフローチャートである。
【
図28】少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施形態について説明する。なお、各図において同一または対応する構成には同一の符号を用いて説明を適宜省略する。
【0016】
[第1実施形態]
(ストレージシステムの構成)
図1は、本発明の実施形態(第1実施形態、第2実施形態および第3実施形態)に係るストレージシステムの構成例を説明するためのブロック図である。
図1に示すストレージシステム3は、メインサイト1に設置されたストレージ10とリモートサイト2に設置されたストレージ20とを備える。リモートサイト2は例えばディザスタリカバリを目的としてメインサイト1から離れた地域に配置されている。なお、以下では、「メインサイト1に設置されたストレージ10」を、単に「メインサイト1」ともいう。また、「リモートサイト2に設置されたストレージ20」を、単に「リモートサイト2」ともいう。メインサイト1とリモートサイト2は、LAN(Local Area Network)、WAN(Wide Area Network)等の遠隔回線(通信回線)50で接続されている。
【0017】
ストレージ10はSAN(Storage Area Network)等の通信回線51を介してホストコンピュータ(以下、単に「ホスト」という)100に接続されている。ホスト100は、ストレージ10に対してデータの書き込み、および、データの読み出しを行うとともに、ストレージシステム3の動作条件等の設定等を行う。また、ストレージ20は通信回線52を介してホスト200に接続されている。ホスト200は、ストレージ20に対してデータの書き込み、および、データの読み出しを行うとともに、ストレージシステム3の動作条件等の設定等を行う。なお、ホスト100とホスト200は、ストレージシステム3に含まれていてもよいし、含まれてなくてもよい。また、ホスト200は省略してもよい。また、ホスト100とホスト200はそれぞれ複数であってもよい。以下では、ホスト100からストレージ10へのデータの書き込み動作を「I/O」(入力または出力)または「ホストI/O」という。また、書き込まれたデータを「I/Oデータ」ともいう。なお、I/Oデータは、例えば、ホスト100上で稼働するOS(Operating System)によって管理される。I/Oデータは、例えば、書き込み先のボリュームとボリューム内の格納領域とを指定して所定のブロック単位でストレージ10への書き込みが要求されるという形態で発行される。
【0018】
ストレージ10は、ストレージコントローラ(ストレージプロセッサ、アレイコントローラ等とも呼ばれる)SC1と、ストレージアレイ30とを備える。ストレージ20は、ストレージコントローラSC2と、ストレージアレイ40とを備える。ストレージアレイ30および40は、例えば複数のディスクドライブとコントローラとを備える。ストレージアレイ30および40には複数のボリュームが設定される。ボリュームは、ストレージ(外部記憶装置)におけるデータの管理上の単位であり、論理ボリュームとも呼ばれる。複数のボリュームはグループ分けすることができる。各グループ(ボリュームグループともいう)は複数のボリュームを含むことができる。同一グループに属するボリュームは、同一のタイミングでデータの整合性が保たれる。
【0019】
本実施形態のストレージシステム3では、ホスト100が更新した正ボリュームのデータは、そのコピーが順序保証されてメインサイト1内のバッファ(メモリやディスク等の記憶領域)に格納される。また、メインサイト1内のバッファに格納されたデータは、別途ホストI/Oとは非同期にリモートサイト2のストレージ20へ転送される。そして、リモートサイト2のストレージ20上に更新順序が保証された副ボリュームが作成される。以下、正ボリュームで更新されたデータのコピーが、順序性を保証された状態で副ボリュームへ書き込まれる一連の動作を「順序保証コピー」あるいは「順序保証コピー動作」という。また、順序保証コピーによってコピーされるデータを順序保証データともいう。
【0020】
本実施形態では、一例として、ストレージアレイ30に正ボリューム18(以下、単に「ボリューム18」ともいう)が設定され、ストレージアレイ40に正ボリューム18のコピーペアとして副ボリューム28(以下、単に「ボリューム28」ともいう)が設定される。また、ストレージアレイ40には、副ボリューム28の全データをコピーして記憶する退避ボリューム29が設定される。また、「ボリューム18」と「ボリューム28」は「グループ3」に属すると設定される。以下、必要に応じて、正ボリューム18、副ボリューム28および退避ボリューム29を例示して構成および動作について説明する。
【0021】
なお、ボリューム18、28および退避ボリューム29は、互いに対応する領域A(RA)、領域B(RB)、領域C(RC)、領域D(RD)、および、領域E(RE)を含んでいる。例えば、順序保証コピーの実行時には、ボリューム18の領域Dとボリューム28の領域Dに同一のデータが保持され、また、ボリューム28の領域Dと退避ボリューム29の領域Dに同一のデータが保持される。
【0022】
(ストレージコントローラの構成)
ストレージコントローラSC1は、コンピュータと、そのコンピュータの周辺回路や周辺装置等のハードウェアと、そのコンピュータが実行するプログラム等のソフトウェアとの組み合わせ等から構成される機能的構成として次の各部を備える。すなわち、ストレージコントローラSC1は、I/O処理部11、キャッシュメモリ12、順序保証処理部13、順序保証バッファ14、リモート送信処理部15、差分管理処理部16、および、差分情報バッファ17を備える。
【0023】
まず、順序保証バッファ14と差分情報バッファ17について説明する。順序保証バッファ14は、順序保証コピーのデータを格納するメモリやディスク等の記憶領域である。順序保証バッファ14には、順序保証コピーの実行時にホスト100から正ボリューム18に対して発行されたI/Oデータが関係データとともに順序保証処理部13によって格納される。ここで、関係データとは、例えば、更新された正ボリューム18の位置、タイムスタンプ、シーケンス番号等を表すデータを含む。なお、以下では順序保証バッファ14が格納したデータを順序保証バッファデータともいう。
【0024】
差分情報バッファ17は差分情報を格納するメモリやディスク等の記憶領域である。差分情報バッファ17は、メインサイト1で、ボリューム18とリモートサイト2のボリューム28との差分管理用として用いられる。差分情報バッファ17は、例えば
図6に示すように、ボリューム18の各領域A(RA)、B(RB)、C(RC)、D(RD)、E(RE)、…について、ボリューム28の各領域A(RA)、B(RB)、C(RC)、D(RD)、E(RE)、…とデータが一致している場合には「差分なし」とのデータを保持し、一致していない場合には「差分あり」とのデータを保持する。なお、
図6は、本発明の実施形態で順序保証コピーのボリュームを構築する際の差分情報バッファ(差分情報バッファ17および27)の内容の例を説明するための模式図である。また、差分情報バッファ17の内容は差分管理処理部16によって更新される。また、差分情報バッファ17には有効または無効の設定があり、差分管理処理部16によって設定され、無効の場合には内容の更新は行われない。
【0025】
次に、I/O処理部11は、ホスト100からのI/Oデータを受信して処理する。I/O処理部11は、例えば、ホスト100から書き込まれたI/Oデータをキャッシュメモリ12に受信し、順序保証処理部13を呼ぶ。これに対し、順序保証処理部13は、後述するように順序保証バッファ14にデータをコピーし、I/O処理部11に終了を報告する。また、I/O処理部11は、順序保証処理部13から順序保証バッファ14へのデータのコピーの終了報告を受けた場合、差分管理処理部16を呼び、差分管理処理部16によって差分情報バッファ17に差分ありを設定する。また、I/O処理部11は、順序保証処理部13から順序保証バッファ14へのI/Oデータのコピーの終了報告を受けた場合、ホスト100に終了を報告する。また、I/O処理部11は、なお、キャッシュメモリ12に書き込まれたI/OデータをホストI/Oとは非同期にボリューム18に書き込む。
【0026】
キャッシュメモリ12は、メモリやディスク等の記憶領域である。
【0027】
順序保証処理部13は、I/Oの順序を処理する。順序保証処理部13は、例えばホスト100からの指示に基づき、順序保証コピーのグループを構築する。順序保証処理部13は、例えば、ボリューム18、28および退避ボリューム29の設定、順序保証バッファ14および24の設定、差分情報バッファ17および27の設定等を行う。また、順序保証処理部13は、順序保証コピーを再開した場合に、リモートサイト2の差分管理処理部26にボリューム28のデータの退避ボリューム29へのコピーを指示する。また、順序保証処理部13は、I/O処理部11からの呼び出しに応じて、キャッシュメモリ12に格納されているI/Oデータを順序保証バッファ14にコピーし、I/O処理部11に終了を報告する。また、順序保証コピーの実行時に、順序保証処理部13は、順序保証バッファ14のI/Oデータのリモートサイト2への転送をリモート送信処理部15に対して指示する。また、順序保証コピーを停止した場合、順序保証処理部13は順序保証バッファ14へのI/Oデータのコピーを停止する。
【0028】
リモート送信処理部15は、順序保証処理部13または差分管理処理部16からの指示に応じて、順序保証バッファ14のコピーおよび差分コピーをリモートサイト2に送信する処理を行う。ここで、順序保証バッファ14のコピーは、順序保証バッファ14に格納されている順序保証バッファデータを複製したデータである。また、差分コピーは、順序保証コピー再開時に差分情報バッファ17の内容に基づいて(「差分あり」の場合に)正ボリューム18のデータを複製したデータである。
【0029】
差分管理処理部16は、差分コピーを実施する。差分管理処理部16は、差分情報バッファ17の有効または無効の設定と、差分情報バッファ17の内容(「差分あり」または「差分なし」)の設定とを管理する。正ボリューム18のコピーペアである副ボリューム28の構築時に、差分管理処理部16は、ボリューム18の全データをボリューム28へコピーするため、ボリューム18の全データをリモート送信処理部15からリモートサイト2に転送する。また、順序保証コピーの再開時には、差分管理処理部16は、差分情報バッファ17の内容に基づき、ボリューム18のデータの差分コピーをリモート送信処理部15からリモートサイト2に転送する。
【0030】
ストレージコントローラSC2は、コンピュータと、そのコンピュータの周辺回路や周辺装置等のハードウェアと、そのコンピュータが実行するプログラム等のソフトウェアとの組み合わせ等から構成される機能的構成として次の各部を備える。すなわち、ストレージコントローラSC2は、I/O処理部21、キャッシュメモリ22、順序保証処理部23、順序保証バッファ24、リモート受信処理部25、差分管理処理部26、および、差分情報バッファ27を備える。
【0031】
まず、順序保証バッファ24と差分情報バッファ27について説明する。順序保証バッファ24は、順序保証データを格納するメモリやディスク等の記憶領域である。順序保証バッファ24には、順序保証コピーの実行時にメインサイト1から受信した順序保証バッファデータが関係データとともに順序保証処理部23によって格納される。
【0032】
差分情報バッファ27は、差分情報を格納するメモリやディスク等の記憶領域である。差分情報バッファ27は、リモートサイト2で、ボリューム28と退避ボリューム29との差分管理用として用いられる。差分情報バッファ27は、例えば
図6に示すように、ボリューム28の各領域A(RA)、B(RB)、C(RC)、D(RD)、E(RE)、…について、ボリューム29の各領域A(RA)、B(RB)、C(RC)、D(RD)、E(RE)、…とデータが一致している場合には「差分なし」とのデータを保持し、一致していない場合には「差分あり」とのデータを保持する。また、差分情報バッファ27の内容は差分管理処理部26によって更新される。なお、この例では、差分情報バッファ27と差分情報バッファ17で差分のありなしを管理する領域の大きさを同一としているが、領域の大きさは異なっていてもよい。例えば、差分情報バッファ27では、差分情報バッファ17が管理する領域A(RA)とB(RB)の2つの領域をまとめて1つの領域として差分のありなしを管理してもよい。
【0033】
I/O処理部21は受信したI/Oを処理する。リモート受信処理部25がデータを受信した場合、I/O処理部21は、リモート受信処理部25に呼び出され、順序保証処理部23を呼んで順序保証バッファ24にデータを受信させる。また、リモート受信処理部25がデータを受信した場合、I/O処理部21は、リモート受信処理部25に呼び出され、差分管理処理部26を呼んで差分情報バッファ27に差分ありを設定することを指示する。また、I/O処理部21は、順序保証処理部23から順序保証バッファ24へのデータの受信が終了したという報告を受けた場合リモート受信処理部25に終了を報告する。
【0034】
キャッシュメモリ22はデータを保存するメモリやディスク等の記憶領域である。キャッシュメモリ22は例えばホスト200が送信したI/Oデータを一時的に保持する。
【0035】
順序保証処理部23はメインサイト1から受信した順序保証バッファデータを処理する。リモート受信処理部25がデータを受信した場合、順序保証処理部23は、I/O処理部21に呼び出され、順序保証バッファ24にデータを受信し、I/O処理部21に終了を報告する。また、リモート受信処理部25がデータを受信した場合、順序保証処理部23は、I/O処理部21に呼び出され、差分管理処理部26呼び、差分情報バッファ27に差分ありを設定させる。また、順序保証処理部23はボリューム28に順序保証バッファ24のデータをコピーする。
【0036】
順序保証バッファ24は受信した順序保証データを格納するメモリやディスク等の記憶領域である。
【0037】
リモート受信処理部25はメインサイト1からの順序保証バッファ14のコピーおよびボリューム18からの差分コピーを受信する。リモート受信処理部25はデータを受信するとI/O処理部21を呼ぶ。また、リモート受信処理部25は、I/O処理部21から終了を報告されると、リモート受信処理部25はメインサイト1のリモート送信処理部15に終了を報告する。
【0038】
差分管理処理部26は差分コピーを実施する。また、差分管理処理部26は差分情報バッファ27の内容を更新する。また、差分管理処理部26は、ボリューム構築時に、順序保証処理部13からの指示に応じて、ボリューム28のデータを退避ボリューム29へコピーする。また、差分管理処理部26は、順序保証コピー動作時に設定された差分情報バッファ27の差分ありの領域に対して、ボリューム28から退避ボリューム29へデータのコピーを実施する。
【0039】
(ストレージシステムの動作例)
次に
図1に示すストレージシステム3の動作例について説明する。なお、この動作例の説明では、動作およびデータの流れとして次の例を用いる。すなわち、ボリューム18の領域D(RD)にデータD0が記憶されている状態を初期状態とする。次に、順序保証コピーのコピーペアを構築する。次に、順序保証コピーを実行中にホスト100からボリューム18の領域D(RD)にデータD1が書き込まれる。次に順序保証コピーの動作を停止する。次に、順序保証コピーの停止中にホスト100からボリューム18の領域D(RD)にデータD2が書き込まれる。その後、順序保証コピーを再開する処理を行う。
【0040】
(順序保証コピーのグループの構築)
まず、
図2を参照して、順序保証処理部13が、順序保証コピーのグループを構築する手順について説明する。なお、本実施形態では、1つのグループにペアを1つ設定しているが、2つ以上あってもよい。
図2は、本発明の実施形態で順序保証コピーのグループを設定する際の処理の例を示すフローチャートである。
図2に示す処理は、例えばホスト100とメインサイト1間で所定のユーザインタフェースを用いたやりとりに応じて実行される。
【0041】
図2に示す処理では、まず、メインサイト1で順序保証バッファ14を「グループ3」に設定する(ステップS101)。次にリモートサイト2で順序保証バッファ24を「グループ3」に設定する(ステップS102)。次にメインサイト1のボリューム18とリモートサイト2のボリューム28をペア(コピーペア)として設定する(ステップS103)。次にメインサイト1でボリューム18とリモートサイト2のボリューム28の差分管理用として、差分情報バッファ17を設定する(ステップS104)。次にボリューム18とボリューム28を「グループ3」として設定する(ステップS105)。次にボリューム28に退避ボリューム29を設定する(ステップS106)。次にリモートサイト2でボリューム28と退避ボリューム29の差分管理用として、差分情報バッファ27を設定する(ステップS107)。次にメインサイト1の差分管理処理部16に構築時のボリューム18のデータコピーを指示する(ステップS108)。次にリモートサイト2の差分管理処理部26に構築時のボリューム28のデータコピーを指示する(ステップS109)。
【0042】
ステップS101からステップS109までの処理が実施されると、「グループ3」の設定状況は
図3に示すようになる。
図3は本発明の実施形態における順序保証コピーのグループの設定例を示す模式図である。メインサイト1ではボリューム18と順序保証バッファ14と差分情報バッファ17が「グループ3」に設定される。リモートサイト2ではボリューム28と退避ボリューム29と順序保証バッファ24と差分情報バッファ27が「グループ3」に設定される。
【0043】
(順序保証コピーのグループ構築時のボリュームのデータのコピー)
次に
図4を参照してメインサイト1のグループ構築時に
図2のステップS108でボリュームのデータコピー指示を受けた差分管理処理部16の動作とリモートサイト2の受信動作について説明する。
図4は本発明の実施形態で順序保証コピーのボリュームを構築する際の動作例を示すフローチャートである。グループ構築時のボリュームのデータコピー指示は例えばホスト100の操作に基づいて発せられる。なお、データをコピーする前は、差分情報バッファ17の各領域の内容は差分ありに設定されていて、差分情報バッファ27の各領域の内容は差分なしに設定されている。
【0044】
図4に示す処理では、まず、メインサイト1の差分管理処理部16が、ボリューム18の領域DのデータD0をリモート送信処理部15からリモートサイト2に転送する(ステップS201)。リモートサイト2のリモート受信処理部25はデータD0を受信し、I/O処理部21を呼ぶ(ステップS202)。次にリモートサイト2のI/O処理部21は差分管理処理部26に指示し、差分管理処理部26は差分情報バッファ27のボリューム28の領域Dに差分ありを設定する(ステップS203)。次にリモートサイト2のI/O処理部21は、メインサイト1から受信したデータD0をボリューム28にコピーし、メインサイト1に終了を報告する(ステップS204)。メインサイト1の差分管理処理部16は、差分情報バッファ17のボリューム18の領域Dに差分なしを設定する(ステップS205)。
【0045】
メインサイト1のボリューム18の全体のコピーが完了するまでステップS201からステップ205までの処理が繰り返し実行される(ステップS201~S205とステップS206でいいえの繰り返し)。全体のコピーが完了すると差分管理処理部16は呼び元の順序保証処理部13に終了を報告する。
【0046】
なお、「グループ3」に2つ以上のペアが設定されている場合は、ステップS201~S206を繰り返して、「グループ3」のすべてのペアに対してコピーを実施する。構築時のコピーが終了すると、ボリューム18とボリューム28のデータは一致した状態となる。領域D(RD)でみるとボリューム18とボリューム28はデータD0となる(
図5)。また、差分情報バッファ17は差分なしとなり、差分情報バッファ27は差分ありとなる(
図6)。なお、
図5は、本発明の実施形態で順序保証コピーのボリュームを構築する際のデータの流れの例を説明するための模式図である。
【0047】
(グループ構築時のボリューム28のデータコピー指示を受けた差分管理処理部26の動作)
次に
図7を参照して、リモートサイト2のグループ構築時に
図2のステップS109でボリューム28のデータコピー指示を受けた差分管理処理部26の動作について説明する。
図7は本発明の実施形態で順序保証コピーの退避ボリュームを構築する際の動作例を示すフローチャートである。
【0048】
図7に示す処理では、まず、差分管理処理部26が、ボリューム28の領域D(RD)のデータD0を退避ボリューム29の領域D(RD)へコピーする(ステップS301)。次に差分管理処理部26は、差分バッファ27の領域D(RD)に差分なしを設定する(ステップS302)。差分管理処理部26は、ボリューム全体のコピーが完了するまでステップS301~S303を繰り返す(ステップS301~S302とステップS303でいいえの繰り返し)。全体のコピーが完了すると差分管理処理部26は、呼び元の順序保証処理部13に終了を報告する。
【0049】
なお、「グループ3」に2つ以上のペアが設定されている場合は、ステップS301~S303を繰り返して、「グループ3」のすべてのペアに対してコピーを実施する。
【0050】
リモートサイト2のボリューム28から退避ボリューム29へのコピーが終了すると、ボリューム28と退避ボリュームのデータは一致した状態となる。領域D(RD)でみるとボリューム28と退避ボリューム29はデータD0となる(
図8)。また、差分情報バッファ28は差分なしとなる(
図9)。なお、
図8は本発明の実施形態で順序保証コピーの退避ボリューム29を構築する際のデータの流れの例を説明するための模式図である。
図9は本発明の実施形態で順序保証コピーの退避ボリューム29を構築する際の差分情報バッファ27の内容の例を説明するための模式図である。
【0051】
(順序保証コピー動作)
次に、
図10を参照して、ホスト100からボリューム18への書き込みが実施された場合の順序保証コピー動作を説明する。
図10は本発明の実施形態における順序保証コピーの動作例を示すフローチャートである。
【0052】
図10に示す処理では、I/O処理部11はホスト100から書き込まれたデータD1をキャッシュメモリ12に受信し、順序保証処理部13を呼ぶ(ステップS401)。次に順序保証処理部13は、順序保証バッファ14にデータD1をコピーし、I/O処理部11に終了を報告する(ステップS402)。次にI/O処理部11はホスト100に終了を報告する(ステップS403)。なお、キャッシュメモリ12に書き込まれたデータD1は非同期にボリューム18に書き込まれる。
【0053】
次に順序保証処理部13はリモート送信処理部15に順序保証バッファ14のデータD1のリモートサイト2への転送を指示する。また、リモート送信処理部15はリモートサイト2にデータを転送する(ステップS404)。
【0054】
一方、リモートサイト2のリモート受信処理部25はI/O処理部21を呼び、I/O処理部21は順序保証処理部23を呼ぶ(ステップS405)。次に順序保証処理部23は順序保証バッファ24にデータD1を受信し、I/O処理部21に終了を報告する(ステップS406)。次にI/O処理部21はリモート受信処理部25に終了を報告し、リモート受信処理部25はメインサイト1のリモート送信処理部15に終了を報告する(ステップS407)。
【0055】
次に順序保証処理部23は差分管理処理部26呼び、差分管理処理部26は差分情報バッファ27(この例では差分情報バッファ27のボリューム28の領域D(RD)に対応する格納領域)に差分ありを設定する(ステップS408)。
【0056】
その後、順序保証処理部23はボリューム28の領域D(RD)にデータD1をコピーする(ステップS409)。
【0057】
順序保証コピーが実施されると、ボリューム18とボリューム28の領域D(RD)はデータD1と同じ状態となり、退避ボリューム29の領域D(RD)へはコピーされていないのでデータD0のままとなる(
図11)。
図11は、本発明の実施形態に係る順序保証コピーの動作例におけるデータの流れの例を説明するための模式図である。
【0058】
(順序保証コピーの停止)
次に、
図12を参照して順序保証コピーを停止する場合について説明する。順序保証コピー動作は、例えば、順序保証バッファ14があふれそうになった場合に停止される。
図12は本発明の実施形態における順序保証コピーを停止する際の動作例を示すフローチャートである。
図12に示す処理では、まず、メインサイト1の順序保証処理部13が順序保証バッファ14へのコピーを停止する(ステップS501)。次に差分管理処理部16は差分情報バッファ17を有効にする(ステップS502)。
【0059】
(順序保証コピーを停止状態でのホスト100からボリューム18への書き込み)
次に、
図13を参照して、順序保証コピーの停止状態でホスト100からボリューム18への書き込みが実施された場合について説明する。
図13は本発明の実施形態における順序保証コピーを停止した状態でのホスト100からの書き込みの際の動作例を示すフローチャートである。
【0060】
図13に示す処理では、まず、I/O処理部11が、ホスト100から書き込まれたデータD2をキャッシュメモリ12に受信する(ステップS601)。次にI/O処理部11は差分管理処理部16を呼び(ステップS602)、差分管理処理部16は差分情報バッファ17のボリューム18の領域D(RD)に差分ありを設定し、I/O処理部11に終了を報告する(ステップS603)。
【0061】
次にI/O処理部11は、ホスト100に終了を報告する(ステップS604)。なお、キャッシュメモリ12に書き込まれたデータD2は非同期にボリューム18に書き込まれる。この場合、データD2は、ボリューム18には書き込まれるが、順序保証バッファ14には格納されず、差分情報バッファ17のボリューム18の領域Dに対応する格納領域に差分ありが記録される。
【0062】
ボリューム18は、ホスト100からボリューム18への書き込みが行われた領域D(RD)がデータD2となる(
図14)。また、差分バッファ17は、ホスト100からボリューム18への書き込みが行われた領域Dが差分ありとなる(
図15)。
図14は本発明の実施形態において順序保証コピーを停止した状態でのホスト100からの書き込みの際の動作例におけるデータの流れの例を説明するための模式図である。
図15は本発明の実施形態において順序保証コピーを停止した状態でのホスト100からの書き込みの際の動作例における差分情報バッファ17の内容の例を説明するための模式図である。
【0063】
図14は、順序保証コピーの実行時にホスト100がデータD1をボリューム18の領域Dに書き込み、その後、順序保証コピーの停止時にホスト100がデータD2をボリューム18の領域Dに書き込んだ状態を示す。この場合、メインサイト1では、キャッシュメモリ12にはデータD2が格納されていて、ボリューム18の領域D(RD)にはデータD2が格納されている。また、順序保証バッファ14には、データD1が格納されている。一方、リモートサイト2では、順序保証バッファ24にデータD1が格納されていて、ボリューム28の領域D(RD)にはデータD1が格納されている。また、退避ボリューム29の領域D(RD)にはデータD0が格納されている。
【0064】
(順序保証コピーの再開)
次に、
図16を参照して順序保証コピーを再開する場合について説明する。
図16は本発明の第1実施形態において順序保証コピーを再開する際の動作例を示すフローチャートである。順序保証コピーの再開は、例えば、ホスト100からの指示に応じて、あるいは、停止の際の原因が解消した場合に、再開される。
【0065】
図16に示す処理において、まず、順序保証処理部13は、リモートサイト2の差分管理処理部26にボリューム28のデータの退避ボリューム29へのコピーを指示する(ステップS701)。
【0066】
次に順序保証処理部13は、メインサイト1の差分管理処理部16にボリューム18からボリューム28へのコピーを指示する(ステップS702)。
【0067】
次に差分管理処理部13は順序保証バッファ14を有効にする(ステップS703)。以降、ホスト100からの書き込みは順序保証バッファ14を利用した順序保証コピーとなる。
【0068】
(順序保証コピーの再開の際のボリューム28のデータの退避ボリューム29へコピー)
次に、
図17を参照して、
図16のステップS701におけるボリューム28のデータの退避ボリューム29へのコピーについて説明する。
図17は本発明の第1実施形態において順序保証コピーを再開する際の退避ボリューム29へのコピー動作の例を示すフローチャートである。
【0069】
図17に示す処理では、差分管理処理部26が、まず、順序保証コピー動作時に
図10のステップS408で設定された差分情報バッファ27の差分ありの領域Dに対して、ボリューム28から退避ボリューム29へデータD1のコピーを実施する(ステップS801→ステップS802:はい→ステップS803)。なお、ステップS801では、差分管理処理部26が差分情報バッファ27から差分あり領域を算出する。また、ステップS802では、差分管理処理部26が差分あり領域があるか否かを判定する。また、ステップS802では、差分管理処理部26がボリューム28から差分あり領域のデータを読み出して退避ボリューム29へコピーする。
【0070】
次に差分管理処理部26は、差分情報バッファ27のコピーした領域Dを差分なしに設定する(ステップS804)。
【0071】
差分管理処理部26は、差分ありの領域がすべてなくなるまで、ステップS801~804を繰り返す。
【0072】
なお、グループに2つ以上のペアがある場合は、ステップS801~804を繰り返す。
【0073】
コピーが終了すると退避ボリューム29の領域DはデータD1となる(
図18)。また、差分バッファ27のボリューム28の領域Dは差分なしの状態となる(
図19)。
図18は本発明の第1実施形態において順序保証コピーを再開する際の動作例におけるデータの流れの例を説明するための模式図である。
図19は本発明の第1実施形態において順序保証コピーを再開する際の差分情報バッファ27の内容の例を説明するための模式図である。
【0074】
図18は、順序保証コピーの停止状態から順序保証コピーを再開する前に、ボリューム28のデータを退避ボリューム29へコピー(退避)した段階の状態を示す。この場合、メインサイト1では、キャッシュメモリ12にはデータD2が格納されていて、ボリューム18の領域D(RD)にはデータD2が格納されている。また、順序保証バッファ14には、データD1が格納されている。一方、リモートサイト2では、順序保証バッファ24にデータD1が格納されていて、ボリューム28の領域D(RD)にはデータD1が格納されている。また、退避ボリューム29の領域D(RD)にはデータD1が格納されている。
【0075】
(順序保証コピーの再開の際のメインサイト1のボリューム18からリモートサイト2のボリューム28への差分コピー)。
次に、
図20を参照して、
図16のステップS702におけるメインサイト1のボリューム18からリモートサイト2のボリューム28への差分コピーについて説明する。
図20は、本発明の第1実施形態において順序保証コピーを再開する際の正ボリューム18から副ボリューム28への差分コピーの動作例を示すフローチャートである。
【0076】
図20に示す処理では、まず、差分管理処理部16が、順序保証コピー停止時に差分情報バッファ17に設定された差分ありの領域(この例では領域D(RD))に対して、ボリューム18からボリューム28へデータD2のコピーを実施する(ステップS901→ステップS902:はい→ステップS903)。なお、ステップS901では差分管理処理部16が差分情報バッファ17に差分あり領域を算出する。ステップS902では差分管理処理部16が差分あり領域があるか否かを判定する。ステップS903ではボリューム18の差分ありのデータをリモート送信処理部15からリモートサイト2に転送する。
【0077】
リモートサイト2の差分管理処理部26は構築時のコピーと同様に差分情報バッファ27に差分ありを設定して、ボリューム28へデータをコピーして、終了を報告する(ステップS904~S906)。なお、ステップS904ではリモート受信処理部25がデータを受信してI/O処理部21を呼ぶ。ステップS905ではI/O処理部21が差分管理処理部26に指示し、差分情報バッファ27に差分ありを設定する。ステップS906ではI/O処理部21が、メインサイト1から受信したデータD2をボリューム28にコピーし、メインサイト1に終了を報告する。
【0078】
メインサイト1では、終了の報告を受けた後、差分管理処理部16が、差分情報バッファ17にコピーした領域を差分なしに設定する(ステップS907)。差分情報バッファ17の差分ありの領域をすべてコピーするまでステップS901からステップS907が繰り返される(ステップS901→ステップS902:はい→ステップS903~ステップS907の繰り返し)。
【0079】
なお、「グループ3」に2つ以上のペアがある場合は、ステップS901~S907をペア毎に繰り返し実行する。
【0080】
コピーが終了するとボリューム28の領域DはデータD2となる(
図21)。差分バッファ17は差分なしとなり、差分バッファ28はコピーされた領域が差分ありとなる(
図22)。
図21は本発明の第1実施形態において順序保証コピーを再開する際の動作例におけるデータの流れの例を説明するための模式図である。
図22は本発明の第1実施形態において順序保証コピーを再開する際の差分情報バッファの内容の例を説明するための模式図である。
【0081】
図21は、順序保証コピーの停止状態から順序保証コピーを再開する前に、ボリューム28のデータを退避ボリューム29へコピーが完了した後、ボリューム18からボリューム28へ差分ありのデータをコピーした段階の状態を示す。この場合、メインサイト1では、キャッシュメモリ12にはデータD2が格納されていて、ボリューム18の領域D(RD)にはデータD2が格納されている。また、順序保証バッファ14には、データD1が格納されている。一方、リモートサイト2では、順序保証バッファ24にデータD1が格納されていて、ボリューム28の領域D(RD)にはデータD2が格納されている。また、退避ボリューム29の領域D(RD)にはメインサイト1からリモートサイト2へ順序保証コピー動作において転送されたデータD1が格納されている。
【0082】
(作用・効果)
本実施形態によれば、順序保証コピーの再開時にメインサイト1の差分情報バッファ17を使った差分コピーを実施する前に、順序保証コピーを停止した時点のボリューム28のデータD1を退避ボリューム29に自動的にコピーすることで、順序保証コピーの停止前のデータD1を順序性を保持して確保することができる。すなわち、第1実施形態によれば、正ボリュームから副ボリュームへの順序性を保証したデータのコピー動作を、停止した後、再開する場合に、副ボリュームのデータを適切に退避させることができる。
【0083】
[第2実施形態]
本発明に係るストレージシステムの第2実施形態について
図23および
図24を参照して説明する。
図23は本発明の第2実施形態において順序保証コピーを再開する際の動作例を示すフローチャートである。
図23に示す処理は、第1実施形態における
図16に示す処理に対応する。
図24は本発明の第2実施形態において順序保証コピーを再開する際の正ボリュームから副ボリュームへの差分コピーの動作例を示すフローチャートである。
図24に示す処理は、第1実施形態における
図17に示す処理と
図20に示す処理との組み合わせに対応する。
【0084】
第1実施形態では、
図16、
図17および
図20を参照して説明したように、まず、順序保証コピーの再開の際、再開前に、ボリューム28で差分ありのデータを退避ボリューム29へコピーし(
図16のステップS701、
図17)、終了後にボリューム18で差分ありのデータをボリューム28へ差分コピーする(
図16のステップS702、
図20)。一方、第2実施形態では、順序保証コピーの再開の際、再開前に、ボリューム28から退避ボリューム29へのコピーとボリューム18で差分ありのデータのボリューム28への差分コピーを領域毎に並列して実行する。他の構成および動作については、第1実施形態と第2実施形態とで基本的に同一である。以下、第1実施形態と異なる部分について説明する。
【0085】
第2実施形態において、
図23に示す再開の処理では、まず、順序保証処理部13が、リモートサイト2の差分管理処理部26にボリューム28から退避ボリューム29へのデータのコピーを指示する(ステップS1001)。次にリモートサイト2の差分管理処理部26はコピーが完了するのを待たずに、メインサイト1の順序保証処理部13に終了を報告する(ステップS1002)。次に順序保証処理部13は、差分管理処理部16に順序保証コピー停止中にボリューム18へ書き込まれたデータのコピーを指示する(ステップS1003)。次に差分管理処理部16は順序保証バッファ14を有効にする(ステップS1004)。以降、ホスト100からの書き込みは順序保証バッファ14を利用した順序保証コピーとなる。
【0086】
次に、
図24を参照して、
図23のステップS1003における差分管理処理部16のボリューム18からボリューム28へのコピー動作について説明する。
図24に示す処理では、まず、差分管理処理部16が、順序保証コピー停止時に差分情報バッファ17に設定された差分ありの領域に対して、ボリューム18の領域D(RD)のデータD2をリモート送信処理部15にリモート転送を指示し、リモートサイト2にデータを送信する(ステップS1101→ステップS1102:はい→ステップS1103)。なお、ステップS1101では差分管理処理部16が差分情報バッファ17に差分あり領域を算出する。ステップS1102では差分管理処理部16が差分あり領域があるか否かを判定する。ステップS1103ではボリューム18の差分ありのデータをリモート送信処理部15からリモートサイト2に転送する。
【0087】
次にリモートサイト2のリモート受信処理部25はデータ受信する(ステップS1104)。次にリモートサイト2の差分管理処理部26は、順序保証コピー動作時に設定された差分情報バッファ27の差分ありの領域の場合(ステップS1105→ステップS1106:はいの場合)は、ボリューム28から退避ボリューム29への領域D(RD)のデータD1のコピーを実施してから(ステップS1107~S1108)、ボリューム18の領域D(RD)のデータD2をボリューム28へコピーする(ステップS1109~S1110)。一方、差分なしの領域の場合は(ステップS1105→ステップS1106:いいえの場合)、そのままボリューム18の領域D(RD)のデータD2をボリューム28へコピーする(ステップS1109~S1110)。
【0088】
なお、ステップS1104ではリモート受信処理部25がデータを受信する。ステップS1105では差分管理処理部26が差分情報バッファ27を確認する。ステップS1106では差分管理処理部26が差分ありの領域か否かを判定する。ステップS1107では差分管理処理部26がボリューム28から退避ボリューム29へデータをコピーする。ステップS1108では差分管理処理部26が差分情報バッファ27に差分なしを設定する。ステップS1109では差分管理処理部26が差分情報バッファ27に差分ありを設定する。ステップS1110では差分管理処理部26がボリューム18領域D(RD)ののデータD2をボリューム28へコピーし、リモートサイト2はメインサイト1に終了を報告する。
【0089】
メインサイト1では差分管理処理部16が差分情報バッファ17にコピーした領域を差分なしに設定する(ステップS1111)。
【0090】
差分情報バッファ17の差分ありの領域すべてのコピーが終わるまでステップS1101~S1111の処理が繰り返し実行される(ステップS1111→ステップS1102:はい→S1103~S1111の繰り返し)。
【0091】
なお、グループに2つ以上のペアがある場合は、ステップS1101~S1111が繰り返し実行される。
【0092】
以上のように、第2実施形態では、差分あり領域の事前コピー処理(ステップS1106:はい→ステップS1107およびS1108)を追加することで順序保証コピー停止前の順序保証データD1が退避ボリューム29に確保できる。また、ボリューム28から退避ボリューム29へのコピー完了を待たずにボリューム18からボリューム28への差分コピーを領域毎に並行して行うことで、順序保証コピー再開までの時間を短縮することができる。なお、上述したように、差分情報バッファ17の各領域の大きさと差分情報バッファ27の各領域の大きさを異ならせる場合には、
図25に示す判定処理を大きさの違いを考慮した判定処理にする。
【0093】
[第3実施形態]
本発明に係るストレージシステムの第3実施形態について
図25を参照して説明する。
図25は本発明の第3実施形態における順序保証コピーを停止する際の動作例を示すフローチャートである。
図25に示す処理は、第1実施形態における
図12に示す処理と
図17に示す処理との組み合わせに対応する。
【0094】
第1実施形態では、順序保証コピーの再開の際、再開前に、ボリューム28で差分ありのデータを退避ボリューム29へコピーした(
図16のステップS701、
図17)。一方、第3実施形態では、順序保証コピーの停止の際、停止後に、例えば再開の条件が整う前に、ボリューム28の退避ボリューム29へのコピーが実行される。他の構成および動作については、第1実施形態と第3実施形態とで基本的に同一である。以下、第1実施形態と異なる部分について説明する。
【0095】
図25に示す処理では、順序保証処理部13は、順序保証コピーを停止したあとで、リモートサイト2の差分管理処理部26にボリューム28から退避ボリューム29へのデータのコピーを指示する(ステップS1201~S1203)。なお、ステップS1201では順序保証処理部13が順序保証バッファ14へのコピーを停止する。ステップS1202では順序保証処理部13がリモートサイト2の差分情報バッファ27を有効にする。ステップS1203では順序保証処理部13がリモートサイト2のボリューム28から退避ボリューム29へのコピー開始を指示する。
【0096】
差分管理処理部26は、差分情報バッファ27の差分ありの領域に対して、ボリューム28から退避ボリューム29へデータD1をコピーする(ステップS1204~S1207)。その際、コピーが完了した領域は差分情報バッファ27に差分なしを設定する(ステップS1207)。差分情報バッファ27のすべての差分ありの領域のコピーが終わるまで(ステップS1205:いいえ、まで)、ステップS1204~S1207の処理が繰り返し実行される。なお、ステップS1204では差分管理処理部26が、差分情報バッファ27から差分あり領域を算出する。ステップS1205では差分管理処理部26が、差分情報バッファ27に差分あり領域があるか否かを判定する。ステップS1206では差分管理処理部26が、ボリューム28から差分あり領域のデータを読み出して、退避ボリューム29へコピーする。ステップS1207では差分管理処理部26は、差分情報バッファ27に差分なしを設定する。
【0097】
なお、「グループ3」に2つ以上のペアがある場合は、すべてのペアに対してステップS1204~S1207の処理を繰り返し実行する。
【0098】
第3実施形態では、以上の処理を順序保証コピーの停止時から実施することで、順序保証コピー再開時には退避ボリューム29へのデータをコピーする時間を短縮することができる。
【0099】
[各実施形態の作用・効果]
順序保証コピー動作では、停止した動作を再開した場合に、リモートサイトの副ボリュームが一時的に順序保証されていない状態となる場合がある。この順序保証されていない期間に例えばメインサイトが利用不可となると、リモートサイトのストレージのボリュームを使った業務再開が困難となることがある。このため、順序保証されたデータを維持し、かつ、データを維持するのに要する時間を短縮が課題となることがあった。これに対し、本発明に係る各実施形態では、正ボリューム18のデータをリモートサイト2の副ボリューム28へコピーする前に、リモートサイト2の差分情報バッファ27を用いてボリューム28のデータを退避ボリューム29へコピーして退避する。これにより、退避ボリューム29に順序保証された状態のボリューム28のデータが維持される。すなわち、本実施形態のストレージシステムは、正ボリュームから副ボリュームへの順序性を保証したコピー動作が停止した場合、その停止期間中に正ボリュームと副ボリューム間で差分があるとされた各データを正ボリュームから副ボリュームへコピーする前に、停止前の正ボリュームから副ボリュームへの順序性を保証したコピー動作中に副ボリュームと退避ボリューム間で差分があるとされた各データを副ボリュームから退避ボリュームへコピーし、その後、差分があるとされた各データを正ボリュームから副ボリュームへコピーし、その後、コピー動作を再開する。したがって、本実施形態によれば、正ボリュームから副ボリュームへの順序性を保証したデータのコピー動作を、停止した後、再開する場合に、副ボリュームのデータを適切に退避させることができる。また、第2実施形態では、ボリューム28から退避ボリューム29へのコピーとボリューム18からボリューム28へのコピーを同時にすることで、順序保証再開までの時間を短縮することができる。
【0100】
[コンピュータの構成]
図28は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ700は、CPU(Central Processing Unit)710、主記憶装置720、補助記憶装置730、およびインタフェース740を備える。インタフェース740には例えば不揮発性記憶媒体750が接続される。上述のホストコンピュータ100、ホストコンピュータ200、ストレージ10、ストレージ20、ストレージコントローラSC1、ストレージコントローラSC2、ストレージアレイ30、および、ストレージアレイ40は、コンピュータ700と同様の構成を備えてよい。そして、上述した各処理部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。また、CPU710は、プログラムに従って、上述した各記憶部に対応する記憶領域を主記憶装置720に確保する。
【0101】
プログラムは、コンピュータ700に発揮させる機能の一部を実現するためのものであってもよい。例えば、プログラムは、補助記憶装置730に既に記憶されている他のプログラムとの組み合わせ、または他の装置に実装された他のプログラムとの組み合わせによって機能を発揮させるものであってもよい。なお、他の実施形態においては、コンピュータは、上記構成に加えて、または上記構成に代えてPLD(Programmable Logic Device)などのカスタムLSI(Large Scale Integrated Circuit)を備えてもよい。PLDの例としては、PAL(Programmable Array Logic)、GAL(Generic Array Logic)、CPLD(Complex Programmable Logic Device)、FPGA(Field Programmable Gate Array)等が挙げられる。この場合、CPU710によって実現される機能の一部または全部が当該集積回路によって実現されてよい。
【0102】
補助記憶装置730の例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、磁気ディスク、光磁気ディスク、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、半導体メモリ等が挙げられる。補助記憶装置730は、コンピュータ700のバスに直接接続された内部メディアであってもよいし、インタフェース740または通信回線を介してコンピュータ700に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ700に配信される場合、配信を受けたコンピュータ700が当該プログラムを主記憶装置720に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、補助記憶装置730は、一時的でない有形の記憶媒体である。
【0103】
[変形例等]
以上、この発明の実施形態について図面を参照して説明してきたが、具体的な構成は上記実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。また、上記実施形態でコンピュータが実行するプログラムの一部または全部は、コンピュータ読取可能な記録媒体や通信回線を介して頒布することができる。
【0104】
[実施形態の最小構成]
図26は、本発明の実施形態に係る構成の最小構成例を示すブロック図である。
図27は、本発明の実施形態に係る動作の最小構成例を示すフローチャートである。
【0105】
図26に示すように、本発明の実施形態に係るストレージシステム60は、少なくとも、第1ストレージ61と、第2ストレージ62とを備えればよい。第1ストレージ61は、正ボリューム611を備える。第2ストレージ62は、第1ストレージ61に通信回線71を介して接続され、正ボリューム611とコピーペアに設定された副ボリューム621を備える。また、第1ストレージ61は、さらに、第1記憶手段612と、第2記憶手段613とを備える。第1記憶手段612は、正ボリューム611から副ボリューム621へ順序性を保証してコピーされるデータを一時的に保持する。第2記憶手段613は、正ボリューム611と副ボリューム621について所定の第1記憶領域A、B、C、…毎にデータに差分があるか否かを表す第1差分情報を記憶する。第2ストレージ62は、さらに、退避ボリューム622と、第3記憶手段623とを備える。退避ボリューム622は、ボリューム621の全データをコピーして記憶する。第3記憶手段623は、副ボリューム621と退避ボリューム622について、所定の第2記憶領域a、b、c、…毎に、第1記憶手段612を介した正ボリューム611から副ボリューム621へのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する。
【0106】
ストレージシステム60は、第1記憶手段612を介した正ボリューム611から副ボリューム621へのデータの順序性を保証したコピー動作が停止した場合、その停止期間中に第2記憶手段613に記憶された第1差分情報に基づいて差分があるとされた各データを正ボリューム611から副ボリューム621へコピーする前に、第2差分情報に基づいて差分があるとされた各データを副ボリューム621から退避ボリューム622へコピーする(ステップS1)。
【0107】
ストレージシステム60は、その後、停止期間中に第2記憶手段613に記憶された第1差分情報に基づいて差分があるとされた各データを正ボリューム611から副ボリューム621へコピーする(ステップS2)。
【0108】
ストレージシステム60は、その後、第1記憶手段612を介した正ボリューム611から副ボリューム621へのデータの順序性を保証したコピー動作を再開する(ステップS3)。
【0109】
図27に示すように、本発明の実施形態に係るストレージシステム60の制御方法は、少なくとも、上記ステップS1と、ステップS2と、ステップS3とを含めばよい。
【0110】
なお、本発明の構成要素と実施形態の構成要素の対応関係は以下の通りである。「ストレージシステム」は、ストレージシステム3に対応する。「第1ストレージ」は、ストレージ10に対応する。「第2ストレージ」は、ストレージ20に対応する。「正ボリューム」は、正ボリューム18に対応する。「通信回線」は、遠隔回線50に対応する。「副ボリューム」は、副ボリューム28に対応する。「退避ボリューム」は、退避ボリューム29に対応する。「第1記憶手段」は、順序保証バッファ14に対応する。「第1記憶領域」は、領域A(RA)、B(RB)、C(RC)、D(RD)に対応する。「第2記憶手段」は、差分情報バッファ17に対応する。「第1差分情報」は、領域A(RA)、B(RB)、C(RC)、D(RD)の差分あり/差分なしを表す情報に対応する。「第2記憶領域」は、領域A(RA)、B(RB)、C(RC)、D(RD)に対応する。「第2差分情報」は、領域A(RA)、B(RB)、C(RC)、D(RD)の差分あり/差分なしを表す情報に対応する。「第3記憶手段」は、差分情報バッファ27に対応する。なお、以上の対応関係は、本発明の構成要素の一構成例との対応関係であって、本発明の構成要素を限定するものではない。
【0111】
[付記]
上記実施形態の一部または全部は、以下の付記のように記載されうるが、以下には限られない。
【0112】
(付記1)
正ボリュームを備える第1ストレージと、
前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージとを
を備え、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーし、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーし、
その後、前記コピー動作を再開する
ストレージシステム。
【0113】
(付記2)
前記第2差分情報に基づいて差分があるとされた各データの前記副ボリュームから前記退避ボリュームへのコピーと、
前記第1差分情報に基づいて差分があるとされた各データの前記正ボリュームから前記副ボリュームへのコピーとが、
第1記憶領域および第2記憶領域毎に並行して行われる
付記1に記載のストレージシステム。
【0114】
(付記3)
前記第2差分情報に基づいて差分があるとされた各データの前記副ボリュームから前記退避ボリュームへのコピーが、前記コピー動作が停止した場合、停止後に行われる
付記1または付記2に記載のストレージシステム。
【符号の説明】
【0115】
3、60…ストレージシステム、10、20…ストレージ、100、200…ホストコンピュータ、SC1、SC2…ストレージコントローラ、30、40…ストレージアレイ、11、21…I/O処理部、12、22…キャッシュメモリ、13、23…順序保証処理部、14、24…順序保証バッファ、15…リモート送信処理部、16、26…差分管理処理部、17、27…差分情報バッファ、18、611…正ボリューム、25…リモート受信処理部、28、621…副ボリューム、29、622…退避ボリューム、50…遠隔回線、61…第1ストレージ、62…第2ストレージ、612…第1記憶手段、613…第2記憶手段、623…第3記憶手段、71…通信回線
【手続補正書】
【提出日】2024-07-18
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
正ボリュームを備える第1ストレージと、
前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージと、
を備え、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーし、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーし、
その後、前記コピー動作を再開する
ストレージシステム。
【請求項2】
前記第2差分情報に基づいて差分があるとされた各データの前記副ボリュームから前記退避ボリュームへのコピーと、
前記第1差分情報に基づいて差分があるとされた各データの前記正ボリュームから前記副ボリュームへのコピーとが、
第1記憶領域および第2記憶領域毎に並行して行われる
請求項1に記載のストレージシステム。
【請求項3】
前記第2差分情報に基づいて差分があるとされた各データの前記副ボリュームから前記退避ボリュームへのコピーが、前記コピー動作が停止した場合、停止後に行われる
請求項1に記載のストレージシステム。
【請求項4】
正ボリュームを備え、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージに通信回線を介して接続された第1ストレージであって、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、前記副ボリュームと、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、前記第2ストレージにおいて前記第2差分情報に基づいて差分があるとされた各データが前記副ボリュームから前記退避ボリュームへコピーされた後に、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーし、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーし、
その後、前記コピー動作を再開する
ストレージ。
【請求項5】
正ボリュームを備える第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージであって、
前記第1ストレージが、前記正ボリュームと、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされる前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーし、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーし、
その後、前記コピー動作を再開する
ストレージ。
【請求項6】
正ボリュームを備える第1ストレージと、
前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージと、
を制御する制御方法であって、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、さらに、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備え、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーするステップと、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーするステップと、
その後、前記コピー動作を再開するステップと
を含むストレージシステムの制御方法。
【請求項7】
正ボリュームを備える第1ストレージと、
前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージと、
を備え、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、前記副ボリュームと、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備えるストレージシステムにおける、前記第1ストレージのコンピュータを、
前記コピー動作が停止した場合、前記第2ストレージにおいて前記第2差分情報に基づいて差分があるとされた各データが前記副ボリュームから前記退避ボリュームへコピーされた後に、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする手段、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする手段、
その後、前記コピー動作を再開する手段、
として機能させるプログラム。
【請求項8】
正ボリュームを備える第1ストレージと、前記第1ストレージに通信回線を介して接続され、前記正ボリュームとコピーペアに設定された副ボリュームを備える第2ストレージとを備え、
前記第1ストレージが、さらに、前記正ボリュームから前記副ボリュームへ順序性を保証してコピーされるデータを一時的に保持する第1記憶手段と、前記正ボリュームと前記副ボリュームについて所定の第1記憶領域毎にデータに差分があるか否かを表す第1差分情報を記憶する第2記憶手段とを備え、
前記第2ストレージが、前記副ボリュームと、前記副ボリュームの全データをコピーして記憶する退避ボリュームと、前記副ボリュームと前記退避ボリュームについて、所定の第2記憶領域毎に、前記第1記憶手段を介した前記正ボリュームから前記副ボリュームへのデータの順序性を保証したコピー動作中に発生した差分があるか否かを表す第2差分情報を記憶する第3記憶手段とを備えるストレージシステムにおける、前記第2ストレージのコンピュータを、
前記コピー動作が停止した場合、その停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データが前記正ボリュームから前記副ボリュームへコピーされる前に、前記第2差分情報に基づいて差分があるとされた各データを前記副ボリュームから前記退避ボリュームへコピーする手段、
その後、前記停止期間中に前記第2記憶手段に記憶された前記第1差分情報に基づいて差分があるとされた各データを前記正ボリュームから前記副ボリュームへコピーする手段、
その後、前記コピー動作を再開する手段
として機能させるプログラム。