(57)【要約】【課題】リモートコピーを行うか否かをデータ毎に選択可能にする。【解決手段】ホスト１０６から送られる第1ストレージ装置１００に格納されるべき各データ１１２には、リモートコピーに関するポリシーを定義したコピーポリシータグが含まれる。再構築コントローラ１１０が、各データ１１２のコピーポリシータグに基づいて、各データ１１２のリモートコピーの要否を判別し、リモートコピーが必要なデータ１１６を選択的に第２ストレージ装置へ転送する。【選択図】図１
2008117342.tif 000002
【特許請求の範囲】
【請求項１】
ホストから１以上のデータを受けて格納する第1ストレージ装置と、前記第1ストレージ装置から転送された1以上のデータを受けて格納する第２ストレージ装置とを備え、前記第1ストレージ装置に格納される各データの前記第２ストレージ装置へのリモートコピーを行うことができるストレージシステムにおいて、
前記第１ストレージ装置に格納される各データは、前記データのリモートコピーに関するポリシーを定義したコピーポリシータグを有し、
前記第１ストレージ装置に格納される各データの前記コピーポリシータグに基づいて、前記第１ストレージ装置に格納される各データを前記第２ストレージ装置へ転送するか否かを選択する再構築コントローラをさらに備えたストレージシステム。
【請求項２】
請求項１記載のストレージシステムにおいて、
前記再構築コントローラが、前記第1ストレージ装置に内蔵されているストレージシステム。
【請求項３】
請求項１記載のストレージシステムにおいて、
前記再構築コントローラが、前記第1ストレージ装置と前記第２ストレージ装置の外に存在し、前記第1ストレージ装置に格納された各データを前記第1ストレージ装置から受け、前記第1ストレージ装置から受けた各データの前記コピーポリシータグに基づいて、前記第1ストレージ装置から受けた各データを前記第２ストレージ装置へ転送するか否かを選択するストレージシステム。
【請求項４】
請求項１記載のストレージシステムにおいて、
前記各データの前記コピーポリシータグは前記各データのリモートコピーが可能か否かを指示する要素を含み、
前記再構築コントローラは、リモートコピー可能を指示する前記コピーポリシータグを有するデータを選択的に前記第２ストレージ装置へ転送するようになっているストレージシステム。
【請求項５】
請求項１記載のストレージシステムにおいて、
前記各データの前記コピーポリシータグは前記各データのリモートコピーが必要となるための条件を指示する要素を含み、
前記再構築コントローラは、前記各データが前記コピーポリシータグにより指示された条件を満たすか否かを判断し、前記条件が満たされたデータを選択的に前記第２ストレージ装置へ転送するようになっているストレージシステム。
【請求項６】
請求項５記載のストレージシステムにおいて、
前記条件は、アクセス頻度の設定値を含み、
前記再構築コントローラは、前記各データのアクセス頻度を検出し、前記検出されたアクセス頻度と前記各データの前記コピーポリシータグにより指示された前記設定値と比較して、前記条件が満たされたか否かを判断するようになっているストレージシステム。
【請求項７】
請求項１記載のストレージシステムにおいて、
前記各データの前記コピーポリシータグは前記各データの上書きが可能か否かを指示する要素を含み、
前記再構築コントローラは、
（A）  上書き可能を指示する前記コピーポリシータグを有する現在のデータを前記第２ストレージ装置へ転送しようとする場合、
前記現在のデータを前記第２ストレージ装置へ転送する前に、前記現在のデータに対する更新データを受けたならば、前記現在のデータを前記第２ストレージ装置へ転送せずに、前記更新データを前記第２ストレージ装置へ転送し、
（B）  上書き不可を指示する前記コピーポリシータグを有する現在のデータを前記第２ストレージ装置へ転送しようとする場合、
前記現在のデータを前記第２ストレージ装置へ転送する前に、前記現在のデータに対する更新データを受けたならば、前記現在のデータを前記第２ストレージ装置へ転送した後に、前記更新データを前記第２ストレージ装置へ転送する、
ようになっているストレージシステム。
【請求項８】
請求項１記載のストレージシステムにおいて、
前記各データの前記コピーポリシータグは、使用者から入力される転送指示コマンドが有効か否かを指示する要素を含み、
前記再構築コントローラが、前記使用者から前記転送指示コマンドが入力された場合、前記転送指示コマンドが有効であることを指示する前記コピーポリシータグを有するデータを選択的に前記第２ストレージ装置へ転送するようになっている、
ストレージシステム。
【請求項９】
請求項１記載のストレージシステムにおいて、
前記第１ストレージシステムは、前記再構築コントローラがビジー状態であるか否かをチェックし、前記再構築コントローラがビジー状態であるときには、前記第１ストレージシステムに格納されるデータ中、前記再構築コントローラが未だ扱っていないデータを、前記再構築コントローラを通さすに直接的に前記第２ストレージ装置へ転送するようになっている、
ストレージシステム。
【請求項１０】
請求項１記載のストレージシステムにおいて、
前記再構築コントローラが、前記第１ストレージシステムに格納されるデータ中の同一データグループの属する複数のデータ間で、前記コピーポリシータグの不一致があるか否かをチェックし、前記コピーポリシータグの不一致が検出されたならば、前記同一データグループの属する複数のデータのすべてに、前記第２ストレージ装置へ転送するか否かに関して同一の処理を適用するようになっている、
ストレージシステム。
【請求項１１】
請求項１記載のストレージシステムにおいて、
前記第１ストレージ装置に格納される各データに前記コピーポリシータグを付加するポリシータガーを更に備えたストレージシステム。
【請求項１２】
請求項１１記載のストレージシステムにおいて、
前記ポリシータガーが前記ホスト内に設けられているストレージシステム。
【請求項１３】
請求項１１記載のストレージシステムにおいて、
前記ポリシータガーが前記第１ストレージ装置内に設けられているストレージシステム。
【請求項１４】
請求項１１記載のストレージシステムにおいて、
前記ポリシータガーが、同一のデータグループに属する複数のデータのすべてに、同一内容の前記コピーポリシータグを付加するようになっている、
ストレージシステム。
【請求項１５】
第1と第２のストレージ装置を備えたストレージシステム内で、前記第1ストレージ装置に格納されるデータの前記第２ストレージ装置へのリモートコピーを制御するためのコントローラにおいて、
前記第１ストレージ装置に格納される各データは、前記データのリモートコピーに関するポリシーを定義したコピーポリシータグを有し、
前記コントローラは、前記第１ストレージ装置に格納される各データの前記コピーポリシータグに基づいて、前記第１ストレージ装置に格納される各データを前記第２ストレージ装置へ転送するか否かを選択するようになっている、
コントローラ。
【請求項１６】
第1と第２のストレージ装置を備えたストレージシステム内で、前記第1ストレージ装置に格納されるデータの前記第２ストレージ装置へのリモートコピーを制御するための方法において、
前記第１ストレージ装置に格納される各データに、前記データのリモートコピーに関するポリシーを定義したコピーポリシータグを付加するステップと、
前記コントローラは、前記第１ストレージ装置に格納される各データの前記コピーポリシータグに基づいて、前記第１ストレージ装置に格納される各データを前記第２ストレージ装置へ転送するか否かを選択するステップと
を有する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のストレージ装置間でデータのリモートコピーが行うことができるストレージシステム、およびリモートコピーを制御するためのコントローラに関する。
【背景技術】
【０００２】
異なるサイトにある複数のストレージ装置間でデータをコピーすることを、この明細書ではデータの「リモートコピー」という。リモートコピーのための技術が、特許文献１、２および３に開示されている。このような従来技術によれば、第1ストレージ装置内の或るボリュームがリモートコピーの対象として選択された場合、その選択ボリューム内のあらゆるデータが、第1ストレージ装置から第２ストレージ装置へとコピーされる。
【０００３】
特許文献４には、リモートコピーの対象となるデータの量を減らすために、ホストからデータを受けるストレージ装置が、リモートコピーの対象として指定されたファイル又はディレクトリを定義したテーブルを有し、そのテーブルを参照して、ファイル毎にまたはディレクトリ毎に、ホストから受けたデータについてリモートコピーを行うか否かを選択することが開示されている。
【特許文献１】特開２００５−２７５５３７号公報
【特許文献２】特開２００６−３９９７６号公報
【特許文献３】特開２００３−３４５５２３号公報
【特許文献４】特開２００３−１５９３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
コピー対象として選択されたボリューム内のあらゆるデータを第1ストレージ装置から第２ストレージ装置へコピーするという、特許文献１〜３に開示された従来技術は、両ストレージ装置間のデータ一致性、またはデータの保障を重視する立場に立つ。しかし、両ストレージ装置間のデータ一致性、またはデータの保障は、実用上の見地からは、必ずしも重要ではない。実際、すべてのデータの保障は必要ではなく、特定のデータだけ選択的にリモートコピーが行われれば満足であるという、ユーザが存在する。
【０００５】
これに対し、コピー対象として選択されたボリュームに関し、コピーの必要がないデータが更新されたときにも、その更新データのコピーが実行されるならば、両ストレージ装置のリソースや処理時間が無駄に消費される。また、第２ストレージ装置に多数のコピーデータ転送処理が集中し、第１ストレージ装置からのコピーデータの転送処理を抑制しなければならないという事態が発生し、それにより、全体システムの処理性能が低下することがある。
【０００６】
本発明の目的は、リモートコピーを行うか否かを、データ毎に選択できるようにすることにある。
【０００７】
別の目的は、複数のストレージ装置におけるリモートコピーを行うためのリソースまたは処理負担を減らすことにある。
【課題を解決するための手段】
【０００８】
本発明の原理は、各データに、リモートコピーに関するポリシーを定義したタグを付し、そのタグに基づいて、リモートコピーの対象となるデータを選択することにある。
【０００９】
本発明の一つの側面に従うストレージシステムは、ホストから１以上のデータを受けて格納する第1ストレージ装置と、前記第1ストレージ装置から転送された1以上のデータを受けて格納する第２ストレージ装置とを備え、前記第1ストレージ装置に格納される各データの前記第２ストレージ装置へのリモートコピーを行うことができるようになっている。前記第１ストレージ装置に格納される各データは、前記データのリモートコピーに関するポリシーを定義したコピーポリシータグを有する。さらに、このストレージシステムは、前記第１ストレージ装置に格納される各データの前記コピーポリシータグに基づいて、前記第１ストレージ装置に格納される各データを前記第２ストレージ装置へ転送するか否かを選択する再構築コントローラをさらに備える。
【００１０】
前記再構築コントローラは、前記第1ストレージ装置に内蔵されることができる。或いは、前記再構築コントローラは、前記第1ストレージ装置と前記第２ストレージ装置の外に存在してもよい。後者の場合、前記再構築コントローラは、前記第1ストレージ装置に格納された各データを前記第1ストレージ装置から受け、前記第1ストレージ装置から受けた各データの前記コピーポリシータグに基づいて、前記第1ストレージ装置から受けた各データを前記第２ストレージ装置へ転送するか否かを選択するようになっていてよい。
【００１１】
前記各データの前記コピーポリシータグは、前記各データのリモートコピーが可能か否かを指示する要素を含むことができる。そして、前記再構築コントローラは、リモートコピー可能を指示する前記コピーポリシータグを有するデータを選択的に前記第２ストレージ装置へ転送するようになっていてよい。
【００１２】
前記各データの前記コピーポリシータグは、前記各データのリモートコピーが必要となるための条件を指示する要素を含むことができる。そして、前記再構築コントローラは、前記各データが前記コピーポリシータグにより指示された条件を満たすか否かを判断し、前記条件が満たされたデータを選択的に前記第２ストレージ装置へ転送するようになっていてよい。
【００１３】
前記条件は、アクセス頻度の設定値を含むことができる。その場合、前記再構築コントローラは、前記各データのアクセス頻度を検出し、前記検出されたアクセス頻度と前記各データの前記コピーポリシータグにより指示された前記設定値と比較して、前記条件が満たされたか否かを判断するようになっていてよい。
【００１４】
前記各データの前記コピーポリシータグは、前記各データの上書きが可能か否かを指示する要素を含むことができる。そして、前記再構築コントローラは、
【００１５】
（A）  上書き可能を指示する前記コピーポリシータグを有する現在のデータを前記第２ストレージ装置へ転送しようとする場合、
【００１６】
前記現在のデータを前記第２ストレージ装置へ転送する前に、前記現在のデータに対する更新データを受けたならば、前記現在のデータを前記第２ストレージ装置へ転送せずに、前記更新データを前記第２ストレージ装置へ転送し、
【００１７】
（B）  上書き不可を指示する前記コピーポリシータグを有する現在のデータを前記第２ストレージ装置へ転送しようとする場合、
【００１８】
前記現在のデータを前記第２ストレージ装置へ転送する前に、前記現在のデータに対する更新データを受けたならば、前記現在のデータを前記第２ストレージ装置へ転送した後に、前記更新データを前記第２ストレージ装置へ転送するようになってよい。
【００１９】
前記各データの前記コピーポリシータグは、使用者から入力される転送指示コマンドが有効か否かを指示する要素を含むことができる。そして、前記再構築コントローラが、前記使用者から前記転送指示コマンドが入力された場合、前記転送指示コマンドが有効であることを指示する前記コピーポリシータグを有するデータを選択的に前記第２ストレージ装置へ転送するようになっていてよい。
【００２０】
前記第１ストレージシステムは、前記再構築コントローラがビジー状態であるか否かをチェックし、前記再構築コントローラがビジー状態であるときには、前記第１ストレージシステムに格納されるデータ中、前記再構築コントローラが未だ扱っていないデータを、前記再構築コントローラを通さすに直接的に前記第２ストレージ装置へ転送するようになっていることができる。
【００２１】
前記再構築コントローラは、前記第１ストレージシステムに格納されるデータ中の同一データグループの属する複数のデータ間で、前記コピーポリシータグの不一致があるか否かをチェックし、前記コピーポリシータグの不一致が検出されたならば、前記同一データグループの属する複数のデータのすべてに、前記第２ストレージ装置へ転送するか否かに関して同一の処理を適用するようになっていることができる。
【００２２】
本発明のスとエージシステムは、上述した構成に加えて、前記第１ストレージ装置に格納される各データに前記コピーポリシータグを付加するポリシータガーを更に備えてもよい。前記ポリシータガーは、前記ホスト内に設けられることができる。或いは、前記ポリシータガーは、前記第１ストレージ装置内に設けられることもできる。
【００２３】
前記ポリシータガーは、同一のデータグループに属する複数のデータのすべてに、同一内容の前記コピーポリシータグを付加するようになっていることができる。
【００２４】
本発明の別の側面に従えば、第1と第２のストレージ装置を備えたストレージシステム内で、前記第1ストレージ装置に格納されるデータの前記第２ストレージ装置へのリモートコピーを制御するためのコントローラが提供される。前記第１ストレージ装置に格納される各データは、前記データのリモートコピーに関するポリシーを定義したコピーポリシータグを有する。そして、前記コントローラは、前記第１ストレージ装置に格納される各データの前記コピーポリシータグに基づいて、前記第１ストレージ装置に格納される各データを前記第２ストレージ装置へ転送するか否かを選択するようになっている。
本発明のまた別の側面に従えば、第1と第２のストレージ装置を備えたストレージシステム内で、前記第1ストレージ装置に格納されるデータの前記第２ストレージ装置へのリモートコピーを制御するための方法において、前記第１ストレージ装置に格納される各データに、前記データのリモートコピーに関するポリシーを定義したコピーポリシータグを付加するステップと、前記コントローラは、前記第１ストレージ装置に格納される各データの前記コピーポリシータグに基づいて、前記第１ストレージ装置に格納される各データを前記第２ストレージ装置へ転送するか否かを選択するステップとを有する方法が提供される。
【発明の効果】
【００２５】
本発明によれば、リモートコピーを行うか否かをデータ毎に選択できる。本発明によれば、第1と第２のストレージ装置におけるリモートコピーを行うためのリソースまたは処理負担を減らすことができる。本発明によれば、第２ストレージ装置の処理能力が第１ストレージ装置に影響を与える度合いが減る。
【発明を実施するための最良の形態】
【００２６】
以下、図面を参照して、本発明の実施形態について説明する。
【００２７】
図１は、本発明の一実施形態にかかるストレージシステムの構成を示す。
【００２８】
図１に示すように、第1ストレージ装置１００と第２ストレージ装置１０２が異なる場所に設置され、両者は通信回線または通信ネットワーク１０４を通じて相互通信である。第1ストレージ装置１００にはホスト１０６が接続される。第２ストレージ装置１０２にも、別のホスト１０８が接続されてよい。以下では、第1ストレージ装置１００がホスト１０６から書き込み要求と書き込まれるべきデータとを受信してそのデータを第1ストレージ装置１０２に格納するときに、そのデータのバックアップまたはミラーを第２のストレージ装置１０２内に格納するためのリモートコピーの制御に焦点をあてて説明する。ホスト１０６が第1ストレージ装置１０２からデータを読み出すときの制御については、説明を省略する。
【００２９】
ホスト１０６から第1ストレージ装置１００に書き込みを要求されたデータの全てが第２ストレージ装置１０２へ転送される場合、すべてのデータを保障できる反面、特に第２ストレージ装置１０２の処理能力が低いときには、第1ストレージ装置１００が待たされるというように、影響が第1ストレージ装置１００の処理に及ぶことがある。実用上、使用者はすべてのデータの保障を必ずしも要求しないことがある。この実施形態にかかるストレージシステムでは、各データに、リモートコピーに関するポリシーを定義したタグが付され、そのタグに基づいて、リモートコピーの対象となるデータが選択されるようになっている。
【００３０】
ホスト１０６は、ポリシータガー１０７を有し、ポリシータガー１０７は、コンピュータプログラム、配線論理回路またはそれらの組み合わせにより実装され得る。ポリシータガー１０７は、ホスト１０６内で第１ストレージ装置１００に書き込まれるべきデータが生成されたときに、そのデータのリモートコピーを行うか否かについて詳細条件またはポリシーを定義したコピーポリシータグをそのデータに付与する。従って、ホスト１０６から第1ストレージ装置へ書き込み要求に伴って送信される各データは、タグ付データ１１２である。ポリシータガー１０７により各データ１１２に付されるコピーポリシータグの内容は、このシステムの使用者によって設定され得る。コピーポリシータグの内容の具体例は、後に説明する。
【００３１】
第１ストレージ装置１００は、ホスト１０６から書き込み要求と書き込まれるべきデータ１１２を受信すると、そのデータ１１２を、第１ストレージ装置１００内のストレージ領域内の書き込み要求により指定されたアドレスに格納する。第1ストレージ装置１００は、再構築コントローラ１１０を有し、再構築コントローラ１１０はコンピュータプログラム、配線論理回路またはそれらの組み合わせにより実装され得る。再構築コントローラ１１０は、ホスト１０６から第１ストレージ装置１００に書き込みを要求されたデータ１１２について、第１ストレージ装置１００から第２ストレージ装置１０２へのリモートコピーを行うか否かを、そのデータ１１２に付されたコピーポリシータグに従って制御する。再構築コントローラ１１０が行うリモートコピー制御により、第２ストレージ装置１０２内には、第１ストレージ装置１００内に構築されるデータベースとは別の形のデータベースが再構築されることになる。より具体的に述べると、再構築コントローラ１１０は、ホスト１０６から書き込みを要求された各データ１１２に付されたコピーポリシータグに基づいて、各データ１１２のリモートコピーを行う必要があるか否かを判別する。再構築コントローラ１１０は、或るデータ１１２についてリモートコピーの必要ありと判断したならば、そのデータ１１２の複製データ１１６を生成し、書き込み要求とともにその複製データ第２ストレージ装置１０２に転送する（つまり、リモートコピーが行われる）。他方、再構築コントローラ１１０は、或るデータ１１２についてリモートコピーが不要である判断したならば、そのデータ１１２を第２ストレージ装置１０２へ転送しないつまり、リモートコピーが行われない）。従って、第1ストレージ装置１００に書き込まれたデータのすべてではなく、再構築コントローラ１１０により選択された一部のデータだけが、第２ストレージ装置１０２へリモートコピーされることになる。ここで、再構築コントローラ１１０がホスト１０６から受信された多数のデータ１１２を処理する順序を制御する方法としては、例えばラップアラウンド方式のように、それぞれのデータのタイムスタンプの昇順に従ってタイムスタンプのより古いデータから先に処理する方法が採用できる。第１ストレージ装置１００から第２ストレージ装置１０２へデータ１１２がリモートコピーされる動作と、第1ストレージ装置１００のストレージ領域にそのデータ１１２が格納される動作とは、非同期で実行されてよく、例えば前者の動作は後者の動作より後に行われる。再構築コントローラ１１０により取捨選択されたデータだけがリモートコピーされることにより、第２ストレージ装置１０２のリソースが節約され、処理負担が減る。データのバックアップまたはミラーリングを行うときに、２ストレージ装置１０２の処理能力が第１ストレージ装置１００に影響を与える可能性が低くなる。
【００３２】
図１に点線で示すように、ポリシータガー１０９が第1ストレージ装置１００に設けられてもよい。第1ストレージ装置１００内のポリシータガー１０９は、ホスト１０６から受信されたデータにコピーポリシータグを付与することができる。例えば、ホスト１０６から受信されたデータにコピーポリシータグが付いていなかった場合、ポリシータガー１０９がそのデータにコピーポリシータグを付与する。或いは、ホスト１０６から受信されたデータ１１２に付けられたコピーポリシータグが不適正である場合、ポリシータガー１０９がそのデータ１１２の不適正なコピーポリシータグを、適正なものに修正することができる。
【００３３】
図２は、図１に示したストレージシステムの変形例を示す。
【００３４】
図２に示すように、再構築コントローラ１１０が、独立した装置として、第１および第２ストレージ装置１００と１０２の外に設けられる。この独立した再構築コントローラ１１０は、第１ストレージ装置１００および第２ストレージ装置１０２と、通信回線又は通信ネットワーク１０４を通じて通信可能である。第１ストレージ装置１００は、ホスト１０６から書き込み要求とともに書き込まれるべきデータ１１２を受信すると、そのデータ１１２を第１ストレージ装置１００内のストレージ領域に格納すると共に、そのデータ１１２の複製データ１１６を生成して、そのデータ１１６を再構築コントローラ１１０へ転送する。再構築コントローラ１１０は、第１ストレージ装置１００からのデータ１１６に関して、図１に示された再構築コントローラ１１０と同様に、第２ストレージ装置１０２へのリモートコピーを行うか否かの制御を行なう。
【００３５】
図１に示されるように再構築コントローラ１１０が第1ストレージ装置１００に内蔵されている場合、再構築コントローラ１１０が第1ストレージ装置１００のリソースを利用できるという利点がある。他方、図２に示されるように再構築コントローラ１１０が第1および第２ストレージ装置１００と１０２の外に配置された独立した装置である場合には、第1および第２ストレージ装置１００と１０２の処理能力に影響されずに再構築コントローラ１１０の処理能力を高めることが容易であり、また、複数のストレージ装置が１つの再構築コントローラ１１０を共用することができるという利点がある。
【００３６】
別の変形例として、図示してないが、再構築コントローラ１１０が第２ストレージ装置１０２内に設けられていてもよい。
【００３７】
図３は、タグ付データの構造例を示す。
【００３８】
図３に示すように、タグ付データ１１２には、このデータの実質内容を表す実データ１５０と、この実データ１５０に付加された付加情報とを含み、その付加情報には、タイムスタンプ１３２、データ長１３４、グループ属性１３６およびコピーポリシータグ１３８が含まれる。タイムスタンプ１３２は実データ１５０が生成された日時を示す。データ長１３４は、実データ１５０のデータ長またはデータ量を示す。グループ属性１３６は、実データ１５０が属するデータグループの識別と、そのデータグループ内における実データ１５０の識別を示す。コピーポリシータグ１３８は、優先度の異なる複数、例えば５つ、の項目（以下、キーという）１４０〜１４８を有する。
【００３９】
上述のデータグループとは、データ利用目的の視点からみて、それ全体で意味をもつような複数の実データ１５０の集合体である。データグループの一典型例はファイルである。同一のデータグループに属するすべてのデータには、同一のコピーポリシータグが付加されることが望ましい。そのために、図１または図２に示されたポリシータガー１０７または１０９は、データグループ毎に（例えばファイル毎に）、使用者から、コピーポリシーの設定を受け、そして、同一のデータグループ（例えば同一のファイル）に属するすべてのデータ１５０に対して、そのデータグループに対して使用者により設定されたコピーポリシーに則った同一のコピーポリシータグ１３８を自動的に付与することができるようになっている。
【００４０】
図４は、タグ付データのリモートコピーの制御の概略の流れを示す。
【００４１】
図４において、ステップS1〜Sは、ホスト１０６にて行われる。ただし、コピーポリシータグを付与するためのステップS3〜S7は、第１ストレージ装置１００で行われてもよい。ステップS10〜S13は再構築コントローラ１１０で行われる。
【００４２】
ステップS1で、ホスト１０６により、第１ストレージ装置１００に書き込まれるべきデータが生成される。ステップS2で、そのデータにタイムスタンプが付加される。ステップS3〜S6で、そのデータに、コピーポリシータグすなわち第1〜第５キーが付加される。第1〜第５キーの役割は次の通りである。
【００４３】
第1キーは、そのデータのリモートコピーの可否を指定する。あるデータに付加された第１キーがリモートコピー不可と指示する場合、再構築コントローラ１１０は、原則として、そのデータのリモートコピーを実行しない。
【００４４】
第２キーは、上書き可否を指示する。あるデータに付加された第２キーが、上書き可能と指示する場合、再構築コントローラ１１０は、そのデータのリモートコピーを実行しようとしている場合に、そのデータを第２ストレージ装置１０２へ転送するより前に、そのデータに対する更新データを受信すると、その更新データを現在のデータに上書きしてた後にその更新データを第２ストレージ装置１０２へ転送する（すなわち、現在のデータではなく更新データのみを第２ストレージ装置１０２へ転送する）。他方、第２キーが上書き不可と指示する場合、再構築コントローラ１１０は、現在のデータを第２ストレージ装置１０２へ転送した後でないと、更新データを第２ストレージ装置１０２へ転送しない。
【００４５】
第３キーと第４キーは、リモートコピーが必要と判断するための条件を指示する。この実施例では、その条件としてアクセス頻度を採用しており、第３キーと第４キーは、アクセス頻度の要素である観察期間とアクセス回数設定値とを指示する。あるデータに付加された第1キーがリモートコピー可を指示しており、かつ第３と第４キーがある観察期間とあるアクセス回数設定値を指示する場合、再構築コントローラ１１０は、最近過去（または最近将来）のその観察期間の間に実行されたそのデータのアクセスの回数を、第1ストレージ装置１００内のアクセスログまたはそれに類する情報に基づいて把握し、把握されたアクセス回数が、指示されたアクセス回数設定値以上であれば、そのデータは重要なデータであると考えられるので、そのデータのリモートコピーが必要であると判定する。他方、把握されたアクセス回数が、指示されたアクセス回数設定値より少なければ、そのデータは重要なデータであるとは考えられないので、そのデータのリモートコピーは不要であると判定される。あるデータに付加された第1キーがリモートコピー可を指示しており、かつ第３と第４キーが有意な観察期間または有意なアクセス回数設定値を指示してない場合には、再構築コントローラ１１０は、第３と第４キーに有意な内容が設定されてなければ、そのデータのリモートコピーが必要であると判定する。
【００４６】
第５キーは、使用者がマニュアル操作で入力する転送指示コマンドを有効とするか否かを指示する。あるデータに付加された第５キーが転送指示コマンドの有効を指示しており、かつ、使用者から転送指示コマンドが発行されている場合には、再構築コントローラ１１０は、第１〜第４キーの設定に基づくモートコピーの要否判別結果が如何なるものであっても、そのデータのリモートコピーが必要であると判別する。それ以外の場合には、再構築コントローラ１１０は、第１〜第４キーの設定に基づいたリモートコピーの要否判別の結果に従って動作する。
【００４７】
図４において、ステップS8で、タイムススタンプや第１〜第５キーの付加されたデータが、ホスト１０６から送信され、ステップS9で、そのデータが第1ストレージ装置１００に受信される。
【００４８】
ステップS10で、再構築コントローラ１１０にて、リモートコピーの要否判別を行うための所定の判別論理が設定され、ステップS11で、受信されたデータに付加された第１〜第５キーがその判別論理に適用されることにより、そのデータのリモートコピーの要否が判別される。そのデータのリモートコピーが必要と判別されると、ステップS12で、再構築コントローラ１１０が、そのデータ（その複製データ）を第２ストレージ装置１０２へ転送して、第２ストレージ装置１０２内のストレージ領域に格納させる。他方、リモートコピー要と判別されると、再構築コントローラ１１０は書き込み要求とそのデータの複製データとを第２ストレージ装置１０２へ転送し、そして、第２ストレージ装置１０２はその転送されたデータを第２ストレージ装置１０２内のストレージ領域内の書き込み要求により指示されたアドレスに格納する。そのデータのリモートコピーが不要と判別されると、ステップS13で、再構築コントローラ１１０は、そのデータの第２ストレージ装置１０２への転送を行わない。
【００４９】
図５は、再構築コントローラ１１０により行われるデータ毎のリモートコピー要否の判別の流れを示す。
【００５０】
図５に示される判別処理は、第１ストレージ装置１００と第２ストレージ装置１０２との間でリモートコピーのために転送されるデータの最小単位（以下、レコード）毎に行われる。このレコードの具体的なサイズは、ストレージ装置１００と１０２の具体的な仕様によって異なり得る。レコードの一つの典型例は、ストレージ装置１００と１０２内でストレージ領域を提供する記録ディスクデバイスのトラックであるが、必ずしもそうでなければならないわけではなく、例えば論理ブロックやその他のものであってもよい。いずれにせよ、レコードは、ファイルのようなデータグループより細かいサイズのデータ単位である。
【００５１】
このようなレコード毎に、図５に示された判別処理が行われる。この判断処理では、第１キーの優先度が最も高く、第２キーの優先度が２番目であり、第３と第４のキーの優先度が３番目である。この優先度の順序に従って、これらのキーが処理される。すなわち、ステップS21で、そのレコードのデータに付加された第1キーが参照されて、そのデータのリモートコピーが可能か否かが判断される。
【００５２】
ステップS21でそのデータのリモートコピーが可能と判断されると、ステップS22で、第２キーが参照されて、そのデータの上書きが可能か否かが判断される。ここで、上書きが可能と判断された場合には、ステップS23で、再構築コントローラ１１０は、そのデータを第２ストレージ装置１０２へ転送するより前に、その現在のデータに対する更新データが受信されると、その更新データを現在のデータに上書きした後に、その更新データを第２ストレージ装置１０２へ転送することとし、現在のデータの第２ストレージ装置１０２への転送は省略する。他方、上書き不可と判断された場合には、ステップS24で、再構築コントローラ１１０は、現在のデータを第２ストレージ装置１０２へ転送するより前に、現在のデータに対する更新データを受信した場合、更新データを現在のデータに上書きをすることはなく、現在のデータを第２ストレージ装置１０２へ転送した後でないと、更新データを第２ストレージ装置１０２へ転送しないこととする。
【００５３】
その後、ステップS25で、第３キーと第４キーの設定値が参照される。第３キーと第４キーに、有意な観察期間と有意なアクセス回数設定値が設定されている場合、ステップS26で、再構築コントローラ１１０は、最近過去(または最近将来）のその観察期間の間に実行されたそのデータのアクセスの回数を、第1ストレージ装置１００内のアクセスログまたはそれに類する情報に基づいて把握し、そして、把握されたアクセス回数が、指示されたアクセス回数設定値以上であるかどうかをチェックする。その結果、把握されたアクセス回数が、指示されたアクセス回数設定値以上であれば、ステップS27で、そのデータのリモートコピーが必要であると判定される。他方、把握されたアクセス回数が、指示されたアクセス回数設定値より少なければ、そのデータのリモートコピーは不要であると判定される。また、第３または第４キーに有意な観察期間または有意なアクセス回数設定値が設定されていない場合には、ステップS27で、そのデータのリモートコピーが必要であると判定される。
【００５４】
上述した第１〜第４キーに基づく判別とは別に、第５キーに基づく判別も行われる。すなわち、ステップS29で、第５キーが参照され、転送指示コマンドが有効か否かが判断される。転送指示コマンドが有効であると判断されると、ステップS30で、転送指示コマンドが発行されているかが判断され、その結果がYesであれば、ステップS27で、そのデータのリモートコピーが必要であると判定される。
【００５５】
図６は、図１に示されたストレージシステムにおけるデータの流れを示す。
【００５６】
ホスト１０６から第１ストレージ装置１００へ、複数のデータ＃１、＃２および＃３が書き込み要求と共に逐次に送信された場合を想定する。第１ストレージ装置１００に受信されたデータ＃１、＃２および＃３は、第1ストレージ装置１００内のキャッシュ領域１６０に記憶される。第１ストレージ装置１００内の再構築コントローラ１１０が、キャッシュ領域１６０上のデータ＃１、＃２および＃３のコピーポリシータグをタイムスタンプの早い順に逐次にチェックし、データ＃１、＃２および＃３のそれぞれについて、それぞれのコピーポリシータグに基づいて、リモートコピーの要否を判別する。
【００５７】
この判別の結果、データ＃１と＃３についてリモートコピーが必要と判断されると、キャッシュ領域１６０上で、それぞれのデータ＃１と＃３の複製が作成され、その複製されたデータ＃１と＃３が、第１ストレージ装置１００内のストレージ領域内の書き込み要求により指示されたアドレス１６２および１６６にそれぞれ書き込まれ、さらに、再構築コントローラ１１０によって、第２ストレージ装置１０２へ書き込み要求と共に転送される。キャッシュ領域１６０上のデータ＃１と＃３の各々は、第１ストレージ装置１００内のストレージ領域への書き込みが完了し、かつ、第２ストレージ装置１０２への転送が完了した後に、キャッシュ領域１６０から破棄される。他方、データ＃２についてリモートコピーが不要と判断されると、データ＃２は、第１ストレージ装置１００内のストレージ領域内の書き込み要求により指示されたアドレス１６４へ書き込まれるが、第２ストレージ装置１０２へは転送されない。第２ストレージ装置１０２では、再構築コントローラ１１０から書き込み要求と共に転送されて来たデータ＃１と＃３が、キャッシュ領域１７０に記憶され、その後に、ストレージ領域内の書き込み要求により指定されたアドレス１７２と１７４に書き込まれる。キャッシュ領域１６０上のデータ＃２は、第１ストレージ装置１００内のストレージ領域への書き込みが完了した後に、キャッシュ領域１６０から破棄される。
【００５８】
図７は、図２に示されたストレージシステムにおけるデータの流れを示す。
【００５９】
ここでも、ホスト１０６から第１ストレージ装置１００へ、複数のデータ＃１、＃２および＃３が書き込み要求と共に逐次に送信された場合を想定する。図６の場合と同様に、データ＃１、＃２および＃３が第1ストレージ装置１００内のキャッシュ領域１６０に記憶される。キャッシュ領域１６０上で、それぞれのデータ＃１、＃２および＃３の複製が作成され、その複製されたデータ＃１、＃２および＃３が、第１ストレージ装置１００内のストレージ領域内の書き込み要求により指示されたアドレス１６２、１６４および１６６にそれぞれ書き込まれ、さらに、再構築コントローラ１１０へ転送される。キャッシュ領域１６０上のデータ＃１、＃２および＃３の各々は、第１ストレージ装置１００内のストレージ領域への書き込みが完了し、かつ、再構築コントローラ１１０への転送が完了した後に、キャッシュ領域１６０から破棄される。
【００６０】
再構築コントローラ１１０では、第1ストレージ装置１００から転送されて来たデータ＃１、＃２および＃３が、再構築コントローラ１１０内のキャッシュ領域１８０に記憶される。再構築コントローラ１１０は、キャッシュ領域１８０上のデータ＃１、＃２および＃３のコピーポリシータグをタイムスタンプの早い順に逐次にチェックし、データ＃１、＃２および＃３のそれぞれについて、それぞれのコピーポリシータグに基づいて、リモートコピーの要否を判断する。
【００６１】
その結果、データ＃１と＃３についてリモートコピーが必要と判断されると、再構築コントローラ１１０は、データ＃１と＃３を第２ストレージ装置１０２へ書き込み要求と共に転送する。キャッシュ領域１８０上のデータ＃１および＃３の各々は、第２ストレージ装置１０２への転送が完了した後に、キャッシュ領域１８０から破棄される。他方、データ＃２についてリモートコピーが不要と判断されると、再構築コントローラ１１０は、データ＃２を第２ストレージ装置１０２へ転送しない。キャッシュ領域１８０上のデータ＃２は、リモートコピーが不要と判断されると直ちにキャッシュ領域１８０から破棄される。第２ストレージ装置１０２では、再構築コントローラ１１０から書き込み要求と共に転送されて来たデータ＃１と＃３が、キャッシュ領域１７０に記憶され、その後に、ストレージ領域内の書き込み要求により指定されたアドレス１７２と１７４に書き込まれる。
【００６２】
以上のようにして、再構築コントローラ１１０によりリモートコピーが必要であると判別されたデータだけが、選択的にリモートコピーされる。しかしながら、本実施形態では、上記のように再構築コントローラ１１０を通じたルートでリモートコピーを行う方法の他に、再構築コントローラ１１０を通さずに直接的なルートで第1ストレージ装置１００から第２ストレージ装置１０２へとデータを転送してリモートコピーを行う方法も利用可能である。後者のルートは、例えば、再構築コントローラ１１０が高負荷またはその他の原因でビジーとなって再構築コントローラ１１０内で処理待ちが生じている場合に、前者のルートの代替として利用され得る。
【００６３】
図８は、再構築コントローラ１１０を通すリモートコピーのルートと、再構築コントローラ１１０を通さない直接的なリモートコピーのルートを説明している。
【００６４】
図８では、矢印２００のルートでデータ＃１、＃２および＃３が再構築コントローラ１１０に逐次に送られた後、再構築コントローラ１１０では、現在、データ＃１の処理が実行中であるが、後続のデータ＃２および＃３の処理が待たされていて、更に後のデータ＃４の受け入れが難しいビジー状態が生じている場合い想定する。この場合、第1ストレージ装置１００は、再構築コントローラ１１０へ未転送の後続のデータ＃４を、矢印２０２で示すように、再構築コントローラ１１０を通さない直接的なルートで、第２ストレージ装置１０２へ転送してリもーコポーを実現することができる。これにより、再構築コントローラ１１０の負荷が更に増大することが回避される。既に再構築コントローラ１１０に転送済みのデータ＃１、＃２および＃３と同じデータは、直接的なルート２０２で転送されることはない。
【００６５】
図９は、上述した２つの転送ルートを選択するために第1ストレージ装置１００で行われる制御の流れを示す。
【００６６】
図９において、ステップS41で、ホスト１０６から第1ストレージ装置１００に、書きみを要求されたデータが受信される。ステップS42で、第1ストレージ装置１００は、再構築コントローラ１１０と通信して再構築コントローラ１１０の状態をチェックする。そのチェックの結果、再構築コントローラ１１０が正常状態であれば（ステップS43で「No」）、ステップS44で、第1ストレージ装置１００は、その受信データを再構築コントローラ１１０へ転送する。
【００６７】
他方、ステップS42のチェックの結果、再構築コントローラ１１０がビジー状態であれば（ステップS43で「Yes」）、ステップS45で、第1ストレージ装置１００は、その受信データのリモートコピーの要否を判別する。この判別は、再構築コントローラ１１０が行なう判別論理と同様の論理を用いて、その受信データに付加されたコピーポリシータグに基づいて行なうことができる。その判別の結果、リモートコピーが必要と判別されると（ステップS45で「Yes」）、ステップS46で、第1ストレージ装置１００はその受信データを直接的なルート２０２で第２ストレージ装置１０２へ転送する。他方、ステップS45の判別の結果、リモートコピーが不要と判別されると、その受信データの転送は行われない。図９の制御が繰り返されることで、再構築コントローラ１１０がビジー状態から正常状態に戻った後は、再び、再構築コントローラ１１０を通るルートが選択されることになる。
【００６８】
ところで、上述したステップS45は省略してもよい。すなわち、再構築コントローラ１１０がビジー状態であれば（ステップS43で「Yes」）、制御はステップS46へ進むようになっていてもよい。
【００６９】
既に述べたように、図１または図２に示されたポリシータガー１０７または１０９は、同一のデータグループ（例えば、同一のファイル）に属するすべてのデータに対して、そのデータグループに対して使用者により設定されたコピーポリシーに則った同一のポリシータグを自動的に付与することができるようになっている。しかし、何らかの原因により、同一のデータグループ（例えば、同一のファイル）に属する異なるデータに異なるコピーポリシ-タグが付与されてしまうトラブルが発生する虞が皆無ではない。このトラブルを解決するために、本実施形態では、再構築コントローラ１１０は、各データのリモートコピー要否の最終的な判別結果として、前述したような各データに付加されたコピーポリシ-タグに基づいた判別結果とは別の判別結果を下す論理を有している。
【００７０】
図１０は、同一のデータグループ内でのデータ間のコピーポリシ-タグの不整合のトラブルを解消するための再構築コントローラ１１０の構成を示す。
【００７１】
図１０に示すように、再構築コントローラ１１０は、リモートコピー制御テーブル２３０を有しており、このリモートコピー制御テーブル２３０には、レコード（例えば、トラック）毎に、データのリモートコピー制御に必要な複数の情報項目（以下、リモートコピー制御項目という）が登録される。再構築コントローラ１１０は、リモートコピー制御テーブル２３０を参照して、同一のデータグループ（例えば、同一のファイル）内でのレコード間のコピーポリシータグの不整合を探し、コピーポリシ-タグの不整合が見つかった場合には、それらのレコードのリモートコピーの要否を、それらのデータのコピーポリシータグの内容如何に関わらず、同一のもの（典型的には、リモートコピー不要）に強制的に制御するようになっている。図１０に示された例では、或る同一のデータグループ＃１に属する異なるレコードのデータ＃１と＃２には、同じコピーポリシータグが付されているべきであり、また、別の同一のデータグループ＃２に属する異なるレコードのデータ＃３と＃４には、同じコピーポリシータグが付されているべきである。もし、例えばデータ＃１と＃２のコピーポリシータグが異なっていた場合には、再構築コントローラ１１０は、データ＃１と＃２の双方のリモートコピーの要否を同一のもの（典型的には、リモートコピー不要）に強制的に制御する。ところで、図１０は、再構築コントローラ１１０が第1ストレージ装置１００に内蔵されたシステムを示しているが、図２に示されたように、再構築コントローラ１１０が第1ストレージ装置１００の外に存在するシステムでも、上記トラブルを解消するための再構築コントローラ１１０の構成と動作は同様である。
【００７２】
図１１は、リモートコピー制御テーブルの具体例を示す。
【００７３】
図１１の例では、ホスト１０６から受信された複数のレコードのデータ＃１、＃２、＃３および＃４のリモートコピー制御項目が、リモートコピー制御テーブル２３０に登録されている。リモートコピー制御テーブル２３０に登録されるレコード毎のリモートコピー制御項目には、例えば、レコード識別（例えばトラック識別）、タイムスタンプ、データ識別、データグループ識別、および、コピーポリシータグ（すなわち、第1キー、第２キー、第３キー、第４キーおよび第5キー）が含まれる。さらに、各レコードのデータについてのリモートコピー要否の判別結果も、リモートコピー制御テーブル２３０に登録される。再構築コントローラ１１０は、図１１に例示されたようなリモートコピー制御テーブル２３０を参照して、同一のデータグループ識別をもつ異なるレコード（データ）間で、コピーポリシータグ（第1キー、第２キー、第３キー、第４キーおよび第5キー）を比較する。この比較の結果、コピーポリシータグの不一致が見つかると、それらのデータのリモートコピー要否の判別結果を、コピーポリシータグの内容如何にかかわらず、例えば「リモートコピー不要」というような同一のものに強制的に設定する。図１１に示された例では、同一のデータグループ＃１に属する異なるデータ＃１と＃２の間で、コピーポリシータグの不一致（第１キーと第３キーにおける不一致）があるので、データ＃１と＃２のリモートコピー要否の判別結果が「リモートコピー不要」に強制的に設定される。他方、別の同一のデータグループ＃２に属する異なるデータ＃３と＃４の間では、コピーポリシータグが一致しているので、データ＃３と＃４のリモートコピー要否の判別結果は、その同一のコピーポリシータグに基づいて判別された結果に設定される。
【００７４】
図１２は、コピーポリシータグの不整合を解消するために、再構築コントローラ１１０が行う制御の流れを示す。
【００７５】
図１２において、ステップS51で、再構築コントローラ１１０は、書き込まれるべきデータを受信する都度、受信されたデータのリモートコピー制御項目をリモートコピー制御テーブル２３０に登録する。ステップS52で、再構築コントローラ１１０は、リモートコピー制御テーブル２３０を参照して、同一のデータグループに属するデータ間でコピーポリシータグを比較して、その不一致を探す。その結果、不一致が見つからなければ(ステップS53で「Yes」）、ステップS54で、再構築コントローラ１１０は、リモートコピー制御テーブル２３０に登録された各データについて、そのコピーポリシータグに基づくリモートコピー要否の判別結果に従って、第２ストレージ装置１０２へ転送するまたは転送しない処理を選択する。
【００７６】
同一のデータグループに属するデータ間でコピーポリシータグの不一致が見つかった場合(ステップS53で「No」）、ステップS55で、再構築コントローラ１１０は、リモートコピー制御テーブル２３０に登録されたそのデータグループのすべてのデータについて、同一のリモートコピー要否判別結果を適用する。この同一の判別結果としては、例えば「リモートコピー不要」が採用できるが、これに代えて、「リモートコピー要」を採用してもよいし、或いは、リモートコピー制御テーブル２３０上のそのデータグループに属するデータ中、タイムスタンプの最も古いデータのコピーポリシータグに基づく判別結果を採用してもよい。ステップS56で、再構築コントローラ１１０は、そのデータグループ内でコピーポリシータグの不一致がある旨をホスト１０６に報告する。
【００７７】
以上、本発明の実施形態を説明したが、この実施形態は本発明の説明のための例示に過ぎない。本発明は、その要旨を逸脱しない範囲において、上述の実施形態とは別の種々の形態でも実施することができる。
【図面の簡単な説明】
【００７８】
【図１】本発明の一実施形態にかかるストレージシステムの構成を示すブロック図。
【図２】変形例にかかるストレージシステムの構成を示すブロック図。
【図３】タグ付データの構造例を示す図。
【図４】タグ付データのリモートコピーの制御の概略の流れを示す図。
【図５】再構築コントローラにより行われるデータ毎のリモートコピー要否の判別の流れを示す。
【図６】図１に示されたストレージシステムにおけるデータの流れを示す図。
【図７】図２に示されたストレージシステムにおけるデータの流れを示す図。
【図８】再構築コントローラを通すリモートコピーのルートと、再構築コントローラを通さない直接的なリモートコピーのルートを説明した図。
【図９】図８に示された２つのルートを選択するために、第1ストレージ装置１００で行われる制御の流れを示す図。
【図１０】同一のデータグループ内でのデータ間のポリシータグの不整合のトラブルを解消するための再構築コントローラ１１０の構成を示す図。
【図１１】リモートコピー制御テーブルの具体例を示す図。
【図１２】コピーポリシータグの不整合を解消するために、再構築コントローラが行う制御の流れを示す。
【符号の説明】
【００７９】
１００    第１ストレージ装置
１０２    第２ストレージ装置
１０４    通信ネットワーク
１０６    ホスト
１０７、１０９    ポリシータガー
１１０    再構築コントローラ
１１２    タグ付データ
１１６    複製データ
１３２    タイムスタンプ
１３６    データ長
１３６    グループ属性
１３６    グループ属性
１３８    コピーポリシータグ
１５０    実データ
１６０    キャッシュ領域
１７０    キャッシュ領域
１８０    キャッシュ領域
【図１】
2008117342.tif 000003
【図２】
2008117342.tif 000004
【図３】
2008117342.tif 000005
【図４】
2008117342.tif 000006
【図５】
2008117342.tif 000007
【図６】
2008117342.tif 000008
【図７】
2008117342.tif 000009
【図８】
2008117342.tif 000010
【図９】
2008117342.tif 000011
【図１０】
2008117342.tif 000012
【図１１】
2008117342.tif 000013
【図１２】
2008117342.tif 000014