(57)【要約】【課題】  ディスクアレイ・サブシステムのスナップショット動作において、マスタ・ボリュームのアクセス性能遅延を発生させないデータ格納システムを提供する。【解決手段】  本発明に係るデータ複製装置は、一時データ複製制御手段２５とデータ複製制御手段２６とを有する。一時データ複製制御手段２５は、マスタ・ボリューム２１と、マスタ・ボリューム２１とスナップショット・ボリューム２３との間に構築したバッファ・ボリューム２２とが、同一のボリューム・イメージを維持するように機能する。データ複製制御手段２６は、スナップショット・ボリューム２３の実データ参照先として、マスタ・ボリューム２１とバッファ・ボリューム２２とを適宜切り替え、マスタ・ボリューム２１におけるＩＯ負荷を最小化するように機能する。【選択図】  図２
2006268139.tif 000002
【特許請求の範囲】
【請求項１】
マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムに用いられるデータ複製装置において、
前記マスタ・データが一時的に格納される一時データ記憶領域と、
前記マスタ・データを前記複製データ記憶領域に格納する前に、当該マスタ・データを前記一時データ記憶領域に複製する一時データ複製手段と、
前記複製データ記憶領域を経由して前記マスタ・データが読み出されるときに、当該マスタ・データの読み出し先を前記一時データ記憶領域に決定する機能を有するデータ複製手段と、
を備えたことを特徴とするデータ複製装置。
【請求項２】
マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムに用いられるデータ複製装置において、
前記マスタ・データが一時的に格納される一時データ記憶領域と、
前記マスタ・データを前記複製データ記憶領域に格納する前に、当該マスタ・データを前記一時データ記憶領域に複製する一時データ複製手段と、
前記マスタ・データの更新後に、前記一時データ複製手段によって前記一時データ記憶領域に格納された当該マスタ・データを前記複製データ記憶領域に格納する機能を有するデータ複製手段と、
を備えたことを特徴とするデータ複製装置。
【請求項３】
前記一時データ複製手段は、
前記一時データ記憶領域に複製すべき前記マスタ・データについてその位置の情報及び複製の有無に関する情報を保持する複製データ管理テーブルを含み、この複製データ管理テーブルの当該情報に基づき、前記マスタ・データの前記一時データ記憶領域への複製を起動する、
請求項１又は２記載のデータ複製装置。
【請求項４】
前記データ複製手段は、
前記複製データ記憶領域に格納されていない前記マスタ・データの読み出しにおいて、読み出し先の情報を保持する読み出しデータ管理テーブルを含み、この読み出しデータ管理テーブルの当該情報に基づき、前記マスタ・データの読み出し先を決定する、
請求項１記載のデータ複製装置。
【請求項５】
マスタ・データが格納される記憶領域であるマスタ・ボリュームと、前記マスタ・データの更新に伴って当該マスタ・データが格納される記憶領域であるスナップショット・ボリュームと、を有する記憶システムに用いられるデータ複製装置において、
前記マスタ・データが一時的に格納される記憶領域であるバッファ・ボリュームと、
前記マスタ・データを前記スナップショット・ボリュームに格納する前に、当該マスタ・データを前記バッファ・ボリュームに複製する一時データ複製手段と、
前記スナップショット・ボリュームを経由して前記マスタ・データが読み出されるときに、当該マスタ・データの読み出し先を前記バッファ・ボリュームに決定する機能を有するデータ複製手段と、
を備えたことを特徴とするデータ複製装置。
【請求項６】
マスタ・データが格納される記憶領域であるマスタ・ボリュームと、前記マスタ・データの更新に伴って当該マスタ・データが格納される記憶領域であるスナップショット・ボリュームと、を有する記憶システムに用いられるデータ複製装置において、
前記マスタ・データが一時的に格納される記憶領域であるバッファ・ボリュームと、
前記マスタ・データを前記スナップショット・ボリュームに格納する前に、当該マスタ・データを前記バッファ・ボリュームに複製する一時データ複製手段と、
前記マスタ・データの更新後に、前記一時データ複製手段によって前記バッファ・ボリュームに格納された当該マスタ・データを前記スナップショット・ボリュームに格納する機能を有するデータ複製手段と、
を備えたことを特徴とするデータ複製装置。
【請求項７】
マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムに用いられるデータ複製方法において、
前記マスタ・データが一時的に格納される一時データ記憶領域を予め作成しておく第一の手順と、
前記マスタ・データを前記複製データ記憶領域に格納する前に、当該マスタ・データを前記一時データ記憶領域に複製する第二の手順と、
前記複製データ記憶領域を経由して前記マスタ・データが読み出されるときに、当該マスタ・データの読み出し先を前記一時データ記憶領域に決定する第三の手順と、
を含むことを特徴とするデータ複製方法。
【請求項８】
マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムに用いられるデータ複製方法において、
前記マスタ・データが一時的に格納される一時データ記憶領域を予め作成しておく第一の手順と、
前記マスタ・データを前記複製データ記憶領域に格納する前に、当該マスタ・データを前記一時データ記憶領域に複製する第二の手順と、
前記マスタ・データの更新後に、前記第二の手順によって前記一時データ記憶領域に格納された当該マスタ・データを前記複製データ記憶領域に格納する第三の手順と、
を含むことを特徴とするデータ複製方法。
【請求項９】
マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムに用いられるデータ複製プログラムにおいて、
前記マスタ・データが一時的に格納される一時データ記憶領域を予め作成しておく第一の処理と、
前記マスタ・データを前記複製データ記憶領域に格納する前に、当該マスタ・データを前記一時データ記憶領域に複製する第二の処理と、
前記複製データ記憶領域を経由して前記マスタ・データが読み出されるときに、当該マスタ・データの読み出し先を前記一時データ記憶領域に決定する第三の処理と、
をコンピュータに実行させることを特徴とするデータ複製プログラム。
【請求項１０】
マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムに用いられるデータ複製プログラムにおいて、
前記マスタ・データが一時的に格納される一時データ記憶領域を予め作成しておく第一の処理と、
前記マスタ・データを前記複製データ記憶領域に格納する前に、当該マスタ・データを前記一時データ記憶領域に複製する第二の処理と、
前記マスタ・データの更新後に、前記第二の処理によって前記一時データ記憶領域に格納された当該マスタ・データを前記複製データ記憶領域に格納する第三の処理と、
をコンピュータに実行させることを特徴とするデータ複製プログラム。
【請求項１１】
マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムにおいて、
請求項１乃至４のいずれかに記載のデータ複製装置を備えた、
ことを特徴とする記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイ・サブシステム等の記憶システムにおけるデータの複製に関し、特に、スナップショット技術を使用したときのコピー・オン・ライト動作に起因するマスタ・ボリュームにおけるアクセス性能遅延を最小限に抑え、かつ、スナップショット関係にあるペアの各ボリュームに対するアクセスが、互いのアクセス性能へ及ぼす影響を最小限に抑えるデータ複製装置等に関する。
【背景技術】
【０００２】
近年、社会基盤がＩＴ化されるにつれ、企業又は個人が保有するデータ量は急激に増加している。また、電子商取引の普及や査証用データ保管の法制化等により、データ自体の質や価値が高まってきている。このような中で、データ損失という事態が及ぼす影響に関して、広く一般に認識されるようになるとともに、データ損失を未然に防ぐ手段として、バックアップ技術に大きな関心が寄せられてきている。
【０００３】
ここで、ディスクアレイ・サブシステムにおいて従来から採用されている、ミラーリング方式のバックアップ手順について説明する。先ず、バックアップの対象となるボリューム（マスタ・ボリューム）の静止点を確保するために、マスタ・ボリュームに対してアクセスしている、データベースなどのアプリケーションを停止する。次に、マスタ・ボリュームと同一容量のボリューム（バックアップ・ボリューム）を作成し、マスタ・ボリュームの全データをバックアップ・ボリュームへコピーする。コピーが完了すると、停止していたデータベースなどのアプリケーションを再開する一方、バックアップ・ボリュームからデータを読み出し、テープなどのバックアップ用装置にデータを保存する。
【０００４】
これらの手順では、アプリケーションを停止してから、バックアップ・ボリュームの作成と、マスタ・ボリュームからバックアップ・ボリュームへのデータ・コピーとを実行した。一方、アプリケーションが動作している最中に、バックアップ・ボリュームを作成し、マスタ・ボリュームからバックアップ・ボリュームへのデータ・コピーを起動しておくことにより、静止点を確保してから、マスタ・ボリュームとバックアップ・ボリュームとの同期を取るまでの時間を短縮する方式も実現されている。
【０００５】
しかし、何れの方式においても、静止点を確保してから、マスタ・ボリュームのデータをバックアップ・ボリュームへ完全にコピーし終えるまでに、コピー量に応じた時間を要することになる。また、バックアップ用途以外の、例えばデータ・マイニングなどのために、同一マスタ・ボリュームに対して複数のバックアップ・ボリュームを作成することがよくある。その場合は、マスタ・ボリュームの数倍のデータ容量を消費することになる。
【０００６】
このようなミラーリング方式の問題を回避するために、最近は、スナップショット方式を採用したバックアップが頻繁に使われるようになってきている（例えば特許文献１）。図１７は、一般的なスナップショットの作用原理を示す概念図である。以下、この図面に基づき説明する。
【０００７】
ここでいうスナップショットとは、指定された時点におけるスナップショット対象ボリュームの状態を保持するための技術のことであり、例えば、図１７（ａ）に示されるようなデータを記憶したスナップショット対象ボリュームのスナップショットを取ったとすれば、まず、このスナップショット対象ボリュームと同等の記憶容量を有するスナップショット複製ボリュームが図１７（ａ）に示されるようにして記憶システム内に生成される。
【０００８】
そして、スナップショット対象ボリュームにおけるデータ“ＢＢ”の記憶領域にデータ“ＥＥ”を書き込もうとした段階で、更新前のデータ“ＢＢ”が図１７（ｂ）に示されるようにしてスナップショット複製ボリュームの同一アドレスに格納され、このスナップショット複製ボリュームが第１世代のスナップショットとして機能することになる。
【０００９】
ここで、改めてスナップショット対象ボリュームのスナップショットを取ったとすれば、このスナップショット対象ボリュームと同等の記憶容量を有するスナップショット複製ボリュームが図１７（ｂ）に示されるようにして新たに記憶システム内に生成され、このスナップショット複製ボリュームが第２世代のスナップショットとなる。
【００１０】
ここで更にスナップショット対象ボリュームにおけるデータ“ＣＣ”の記憶領域にデータ“ＦＦ”を書き込もうとすれば、第１世代のスナップショットとして機能するスナップショット複製ボリュームの内容を図１７（ｂ）あるいは図１７（ｃ）に示されるようにして保持したまま、更新前のデータ“ＣＣ”が図１７（ｃ）に示されるようにして、第２世代のスナップショットとして機能するスナップショット複製ボリュームの同一アドレスに格納されることになる。
【００１１】
ここでは図１７（ａ）〜図１７（ｃ）を参照して直列方式のスナップショットについて簡単に説明したが、並列方式のスナップショットを適用した場合では、図１７（ｃ）のようにしてスナップショット対象ボリュームにおけるデータ“ＣＣ”の記憶領域にデータ“ＦＦ”を書き込むうとした際に、第２世代のスナップショットに加え第１世代のスナップショットにもデータ“ＣＣ”が格納される。
【００１２】
スナップショット技術を利用したボリューム複製方法では、ディスクアレイ・サブシステムがスナップショット・コマンドを受信した直後に、バックアップ対象ボリュームに対する更新データだけを保持するボリュームを定義するだけでよいので、見かけ上バックアップ対象ボリュームを瞬時に複製することができる。
【００１３】
次に、スナップショット方式を採用した従来のデータ複製装置の具体的な構成について、図１１乃至図１３を参照して、その一例を説明する。
【００１４】
図１１は、従来のデータ複製装置を示す機能ブロック図であり、従来のスナップショット動作の具体例を示す。図１２は、図１１におけるデータ複製制御手段を示す機能ブロック図である。図１３は、図１１におけるアドレス変換手段を示す機能ブロック図である。以下、これらの図面に基づき説明する。
【００１５】
図１１に示すように、従来のデータ複製装置１００は、マスタ・ボリューム１０１と、マスタ・ボリューム１０１と同一容量で、実際には物理的な容量を持たない仮想的なボリューム（以下「スナップショット・ボリューム」という。）１０２と、スナップショット・ボリューム１０２のデータを格納するボリューム（以下「共有ボリューム」という。）１０３と、スナップショット・ボリューム１０２へのデータ・アクセスを管理するデータ複製制御手段１０４と、複製データの実際の格納先を管理するアドレス変換手段１０５とを有する。
【００１６】
図１２に示すように、データ複製制御手段１０４は、マスタやスナップショット等の、ボリュームの属性を管理する属性管理テーブル１２１と、ボリューム間のスナップショット関係を保持するボリューム対応管理テーブル１２２と、マスタ・ボリューム１０１とスナップショット・ボリューム１０２との差分を管理する差分管理テーブル１２３とを有する。
【００１７】
図１３に示すように、アドレス変換手段１０５は、スナップショット・ボリューム１０２の実際の格納アドレスを保持するディレクトリ１３１と、共有ボリューム１０３の空き状況を管理する割当管理テーブル１３２とを有する。
【００１８】
次に、図１４乃至図１６を参照して、従来のデータ複製装置の動作について説明する。図１４は、従来の複製準備動作を示すフローチャートである。以下、図１４を中心に図１１乃至図１３を用いつつ説明する。
【００１９】
ボリュームを複製する手順として、まず、ディスクアレイ・サブシステム１００内に共有ボリューム１０３を作製し、属性管理テーブル１２１と割当管理テーブル１３２とを初期化する（ステップ１４０）。すなわち、属性管理テーブル１２１において「ＬＶ２」に共有属性を設定し、割当管理テーブル１３２において共有ボリューム１０３が未使用状態であることを示す値「０」を設定する。
【００２０】
続いて、マスタ・ボリューム１０１と、マスタ・ボリューム１０１と同じ記憶容量のスナップショット・ボリューム１０２とを作製する（ステップ１４１）。このときの様子を図１１に示す。
【００２１】
続いて、ディスクアレイ・サブシステム１００がスナップショット・コマンドを受信すると（ステップ１４２）、属性管理テーブル１２１、ボリューム対応管理テーブル１２２及び差分管理テーブル１２３を初期化する（ステップ１４３）。すなわち、属性管理テーブル１２１において、「ＬＶ０」にマスタ属性を、「ＬＶ１」にスナップショット属性を設定する。かつ、ボリューム対応管理テーブル１２２において、「ＬＶ０」と「ＬＶ１」とがスナップショット関係にあることを示すように、スナップショットの「ＬＶ０」に「ＬＶ１」を設定し、スナップショットの「ＬＶ１」に「ＬＶ０」を設定する。かつ、差分管理テーブル１２３のスナップショット・ボリューム１０２すなわち「ＬＶ１」に、スナップショット・ボリューム１０２がデータを保持していないことを示す値「０」を設定する。かつ、ディレクトリ１３１において、スナップショット・ボリューム１０２に共有ボリューム１０３の記憶空間が割り当てられていないことを示す「ｎｕｌｌ」値を設定する。このときの各テーブルの状態を、図１２及び図１３に示す。
【００２２】
次に、前述のボリューム複製手順で説明したディスクアレイ・サブシステム１００が、ライト・コマンドとリード・コマンドを受信したときの処理手順について説明する。図１５は、従来のライト・コマンド動作を示すフローチャートである。以下、図１５を中心に図１１乃至図１４も用いつつ説明する。
【００２３】
ライト・コマンドを受信したときの処理手順について説明する。まず、ディスクアレイ・サブシステム１００のマイクロプロセッサ（以下「ＣＰＵ」という）は、属性管理テーブル１２１を参照し（ステップ１５０）、受信したコマンドがマスタ・ボリューム１０１へのコマンドであるのか、それともスナップショット・ボリューム１０２へのコマンドであるのかを判断する（ステップ１５１）。
【００２４】
スナップショット・ボリューム１０２へのライト・コマンドと判断した場合は、データを書き込まずに処理を終了する。これは、スナップショット・ボリューム１０２がスナップショット・コマンドを受信した時点でのマスタ・ボリューム１０１の複製を維持するという運用に従った場合の処理、例えばバックアップ等の場合の処理である。その他の運用形態においては、ライト・コマンドの要求通りにスナップショット・ボリューム１０２へデータを書き込んでも良い。
【００２５】
一方、マスタ・ボリューム１０１へのライト・コマンドと判断した場合は、ＣＰＵは、ボリューム対応管理テーブル１２２を参照し（ステップ１５２）、このマスタ・ボリューム１０１と対になるスナップショット・ボリューム１０２を特定する。そして、特定したスナップショット・ボリューム１０２の書き込み要求アドレスにデータがあるか否かを差分管理テーブル１２３から判断し（ステップ１５３）、スナップショット・ボリューム１０２にデータがあると判断したときは（ステップ１５４）、マスタ・ボリューム１０１へデータを書き込み（ステップ１５９）、処理を終了する。
【００２６】
スナップショット・ボリューム１０２にデータが無いと判断したときは（ステップ１５４）、割当管理テーブル１３２を探索し、共有ボリューム１０３の未使用領域の中から今回使用する領域を決定する（ステップ１５５）。そして、マスタ・ボリューム１０１の書き込み要求アドレスにある既存データを、共有ボリューム１０３の未使用領域にコピーしてから（ステップ１５６）、割当管理テーブル１３２の当該箇所に使用済みであることを示す値「１」を設定し、ディレクトリ１３１の当該箇所に前記未使用領域のアドレスを設定する（ステップ１５７）。そして、差分管理テーブル１２３の当該箇所にデータがあることを示す値「１」を設定し（ステップ１５８）、マスタ・ボリューム１０１へデータを書き込み（ステップ１５９）、処理を終了する。
【００２７】
図１６は、従来のリード・コマンド動作を示すフローチャートである。以下、図１６を中心に図１１乃至図１４も用いつつ説明する。
【００２８】
リード・コマンドを受信したときの処理手順について説明する。ＣＰＵは、属性管理テーブル１２１を参照し（ステップ１６０）、受信したコマンドがマスタ・ボリューム１０１へのコマンドであるのか、それともスナップショット・ボリューム１０２へのコマンドであるのかを判断する（ステップ１６１）。マスタ・ボリューム１０１へのコマンドと判断した場合、マスタ・ボリューム１０１からデータを読み出し（ステップ１６６）、処理を終了する。
【００２９】
一方、スナップショット・ボリューム１０２へのコマンドと判断した場合、差分管理テーブル１２３を参照し（ステップ１６２）、スナップショット・ボリューム１０２の読み出し要求アドレスにデータがあるか否かを判断する（ステップ１６３）。スナップショット・ボリューム１０２にデータがあると判断したときは、ディレクトリ１３１を参照し、データが格納されている共有ボリューム１０３上のアドレスを取得する（ステップ１６５）。そして、共有ボリューム１０３からデータを読み出し（ステップ１６６）、処理を終了する。
【００３０】
スナップショット・ボリューム１０２にデータが無いと判断したときは、ボリューム対応管理テーブル１２２を参照し（ステップ１６４）、スナップショット・ボリューム１０２と対となるマスタ・ボリューム１０１からデータを読み出し（ステップ１６６）、処理を終了する。
【００３１】
【特許文献１】特開２００４−１９２１３３号公報
【発明の開示】
【発明が解決しようとする課題】
【００３２】
前述したように、スナップショット方式では、マスタ・ボリュームに対してライト・コマンドが発行されると、マスタ・ボリュームに対するライト処理に先立ち、スナップショット・ボリュームにおいて、前記ライト・コマンドで指定されるページにデータが格納されているか否かを判定し、データが格納されていない場合は、前記ページのデータをスナップショット・ボリュームへコピーする必要がある。そのため、マスタ・ボリュームのアクセス性能が低下することになる。
【００３３】
更に、近年、安価にバックアップを行うために、スナップショット・ボリュームをＡＴＡ（AT Attachment）規格の磁気ディスク装置を使って構築するシステムが見られる。このようなシステムの場合、マスタ・ボリュームへのアクセス性能が著しく低下することが予想される。
【００３４】
また、前述したように、スナップショット・ボリュームは、スナップショット・コマンドを受信した以降のマスタ・ボリュームにおける更新ページのみを保持している。そのため、スナップショット・ボリュームに対して、前記更新ページ以外のページを含むリード・コマンドが発行されると、マスタ・ボリュームにおけるアクセス性能が低下することになる。
【００３５】
本発明の第一の目的は、スナップショット動作を実行中のマスタ・ボリュームに対するライト性能の低下を防止することである。本発明の第二の目的は、マスタ・ボリュームに対するアクセスが、スナップショット・ボリュームに対するアクセスを阻害しないようにし、かつ、スナップショット・ボリュームに対するアクセスが、マスタ・ボリュームに対するアクセスを阻害しないようにすることである。
【課題を解決するための手段】
【００３６】
本発明に係るデータ複製装置は、マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムに用いられるものであり、一時データ記憶領域、一時データ複製手段及びデータ複製手段を備えている。一時データ記憶領域には、マスタ・データが一時的に格納される。一時データ複製手段は、マスタ・データを複製データ記憶領域に格納する前に、そのマスタ・データを一時データ記憶領域に複製する。データ複製手段は、複製データ記憶領域を経由してマスタ・データが読み出されるときに、そのマスタ・データの読み出し先を一時データ記憶領域に決定する機能を有する。
【００３７】
従来技術では、複製データ記憶領域からマスタ・データを読み出すときに、そのマスタ・データが複製データ記憶領域に無ければ、元のマスタ・データにアクセスする必要があったので、元のマスタ・データに対する他のアクセスが阻害されていた。これに対して、本発明では、複製データ記憶領域からマスタ・データを読み出すときに、そのマスタ・データが複製データ記憶領域に無ければ、一時データ記憶領域からマスタ・データを読み出すので、元のマスタ・データに対する他のアクセスが阻害されることはない。
【００３８】
また、本発明に係るデータ複製装置は、マスタ・データの更新に伴って当該マスタ・データを複製データ記憶領域に格納する記憶システムに用いられるものであり、一時データ記憶領域、一時データ複製手段及びデータ複製手段を備えている。一時データ記憶領域には、マスタ・データが一時的に格納される。一時データ複製手段は、マスタ・データを複製データ記憶領域に格納する前に、そのマスタ・データを一時データ記憶領域に複製する。データ複製手段は、マスタ・データの更新後に、一時データ複製手段によって一時データ記憶領域に格納されたマスタ・データを複製データ記憶領域に格納する機能を有する。
【００３９】
従来技術では、元のマスタ・データを更新する際に、更新する前にそのマスタ・データを複製データ記憶領域に格納する必要があったので、元のマスタ・データに対する他のアクセスが阻害されていた。これに対して、本発明では、元のマスタ・データを更新した後に、一時データ記憶領域に格納されていたマスタ・データを複製データ記憶領域に格納するので、元のマスタ・データに対する他のアクセスが阻害されることはない。つまり、マスタ・ボリュームからスナップショット・ボリュームへのコピーをバックグラウンド処理することにより、ホストに対してライト完了応答を直ちに返すことができる。
【００４０】
また、一時データ複製手段は、一時データ記憶領域に複製すべきマスタ・データについてその位置の情報及び複製の有無に関する情報を保持する複製データ管理テーブルを含み、この複製データ管理テーブルの当該情報に基づき、マスタ・データの一時データ記憶領域への複製を起動する、としてもよい。
【００４１】
また、データ複製手段は、複製データ記憶領域に格納されていないマスタ・データの読み出しにおいて、読み出し先の情報を保持する読み出しデータ管理テーブルを含み、この読み出しデータ管理テーブルの当該情報に基づき、マスタ・データの読み出し先を決定する、としてもよい。
【００４２】
本発明に係るデータ複製方法は、本発明に係るデータ複製装置の各手段の動作を手順として捉えたものである。本発明に係るデータ複製プログラムは、本発明に係るデータ複製装置の各手段の動作をコンピュータに実行させるためのものである。
【００４３】
具体例を述べれば、本発明に係るデータ複製装置は、一時データ複製制御手段とデータ複製制御手段とを有する。
【００４４】
一時データ複製制御手段は、マスタ・ボリュームと、マスタ・ボリュームとスナップショット・ボリュームとの間に構築したバッファ・ボリュームとが、同一のボリューム・イメージを維持するように機能する。より具体的には、マスタ・ボリュームに対する更新がバッファ・ボリュームへも反映されるように、マスタ・ボリュームに対するライトが発生した箇所を登録しておき、前記登録箇所のデータを定期的にマスタ・ボリュームからバッファ・ボリュームへコピーするように機能する。また、マスタ・ボリュームに対してライトが発生箇所のデータをスナップショット・ボリュームが参照している場合は、マスタ・ボリュームへデータを書き込む前に、更新前データをバッファ・ボリュームへコピーするように機能する。
【００４５】
データ複製制御手段は、スナップショット・ボリュームの実際のデータの格納先を決定するように機能する。より具体的には、先ず、スナップショット・ボリュームのデータの格納先が共有ボリュームであるか否かを判断し、次に、共有ボリュームではないときは、マスタ・ボリュームとバッファ・ボリュームのどちらにデータが格納されているかを判断する。このとき、目的のデータがマスタ・ボリュームとバッファ・ボリュームの両方に格納されているときは、バッファ・ボリュームがデータの格納先となるようにする。
【００４６】
本発明に係るデータ複製装置は、マスタ・ボリュームとスナップショット・ボリュームとの間に、一時的にマスタ・ボリュームと同一のデータを保持するボリュームを有しているので、マスタ・ボリュームに対してライト要求が発生したときに、更新前データをスナップショット・ボリュームへコピーする処理が削減でき、また、スナップショット・ボリュームに対するリード要求が発生したときに、マスタ・ボリュームからのデータのリードを削減できるため、結果として、スナップショット動作中のマスタ・ボリュームにおけるＩＯ負荷を大幅に軽減することができる。
【発明の効果】
【００４７】
本発明によれば、元のマスタ・データと複製データ記憶領域との間に、一時的にマスタ・データを保持する一時データ記憶領域を有しているので、元のマスタ・データに対してライト要求が発生したときに、更新前データを複製データ記憶領域へコピーする処理が削減でき、また、複製データ記憶領域に対するリード要求が発生したときに、元のマスタ・データからのリードを削減できるため、結果として、マスタ・データにおけるＩＯ負荷を大幅に軽減することができる。
【発明を実施するための最良の形態】
【００４８】
本発明に係るデータ複製装置を、記憶システムとしてのディスクアレイ・サブシステムに適用した場合の実施の形態について、図面を参照して詳細に説明をする。なお、特許請求の範囲における「複製データ記憶領域」、「一時データ記憶領域」、「一時データ複製手段」、「データ複製手段（論理ディスク変換手段）」、「複製データ管理テーブル」、「読み出しデータ管理テーブル」は、本実施形態ではそれぞれ「スナップショット・ボリューム」、「バッファ・ボリューム」、「一時データ複製制御手段」、「データ複製制御手段」、「一時差分管理テーブル」、「複製参照テーブル」と具体化して言い換える。
【００４９】
図１は、本発明に係るディスクアレイ・サブシステムのハードウェア構成の概略ブロック図である。以下、この図面に基づき説明する。
【００５０】
ディスクアレイ・サブシステム１０は、上位装置としての管理端末１７やホストコンピュータ１６等に対して、複数の磁気ディスク装置１５ａ〜１５ｆを割り当ててデータのバックアップ等を始めとする処理を行うものであり、上位装置との間の接続に用いられるインタフェース制御部１２と各磁気ディスク装置１５ａ〜１５ｆとを接続するためのＲＡＩＤ制御部１４を備えている。インタフェース制御部１２及びＲＡＩＤ制御部１４は、制御用メモリ１３に格納された制御プログラムに基づいて作動するマイクロプロセッサ１１（以下「ＣＰＵ」という。）によって、データの入出力を制御される。制御用メモリ１３に書き込む制御用プログラムを書き換えることにより、ＣＰＵ１１を様々な機能実現手段として利用することが可能である。ここでは、データの複製や、複製したデータへのアクセスを制御するデータ複製制御手段、複製したデータの格納先を制御するアドレス変換手段、データ複製の際に一時的に複製データを保持するように制御する一時データ複製制御手段等として、ＣＰＵ１１を利用している。
【００５１】
図１では六台の磁気ディスク装置１５ａ〜１５ｆが接続されている例について示しているが、実際には各々が論理的に独立したボリューム、例えば、マスタ・ボリュームやスナップショット・ボリュームや共有ボリューム、又はマスタ・ボリュームと同一容量で、複製データを一時的に格納するボリューム（以下「バッファ・ボリューム」という。）等といったものを構成するとは限らず、ＲＡＩＤ制御部の制御のもとに、複数の磁気ディスク装置に跨って見かけ上単一のボリュームを設けることも、また、１つの磁気ディスク装置にパーティションを設定して、見かけ上複数のボリュームを１つの磁気ディスク装置内に設けることもできる。
【００５２】
図２は、図１のディスクアレイ・サブシステムにおけるスナップショット動作の具体例を示す機能ブロック図である。以下、図１及び図２に基づき説明する。
【００５３】
本発明のデータ複製装置を有するディスクアレイ・サブシステム１０は、複製元データを記憶したマスタ・ボリューム２１と、マスタ・ボリューム２１の複製ボリュームとなるスナップショット・ボリューム２３と、複製データの実際の格納先となる共有ボリューム２４と、マスタ・ボリューム２１からスナップショット・ボリューム２３へデータを複製する際に、一時的に前記複製データを保持するバッファ・ボリューム２２と、マスタ・ボリューム２１からバッファ・ボリューム２２へのデータ複製を管理する一時データ複製制御手段２５と、バッファ・ボリューム２２からスナップショット・ボリューム２３へのデータ複製を管理するデータ複製制御手段２６と、スナップショット・ボリューム２３から共有ボリューム２４へのデータ記憶を管理するアドレス変換手段２７とを有する。
【００５４】
マスタ・ボリューム２１、バッファ・ボリューム２２、スナップショット・ボリューム２３及び共有ボリューム２４の個数に関しては特に制限は無く、この図において各ボリュームの数を１としているのは一例に過ぎない。
【００５５】
図３及び図４は、図１のディスクアレイ・サブシステムにおける一時データ複製制御手段を示す機能ブロック図である。以下、図２乃至図４に基づき説明する。
【００５６】
一時データ複製制御手段２５は、マスタ・ボリューム２１とバッファ・ボリューム２２とに記憶されているデータのうち、両者のデータが一致していない箇所を保持する一時差分管理テーブル２５１を有する。
【００５７】
図５は、図１のディスクアレイ・サブシステムにおけるデータ複製制御手段を示す機能ブロック図である。以下、図２及び図５に基づき説明する。
【００５８】
データ複製制御手段２６は、マスタやスナップショット等の、ボリュームの属性を管理する属性管理テーブル２６１と、ボリューム間のスナップショット関係を保持するボリューム対応管理テーブル２６２と、マスタ・ボリューム２１とスナップショット・ボリューム２３との差分を管理する差分管理テーブル２６３と、マスタ・ボリューム２１とスナップショット・ボリューム２３との間に差分がないとき、スナップショット・ボリューム２３のデータとして、マスタ・ボリューム２１が保持しているデータが有効なのか、又はバッファ・ボリューム２２が保持しているデータが有効なのかを判断する複製参照テーブル２６４とを有する。
【００５９】
図６は、図１のディスクアレイ・サブシステムにおけるアドレス変換手段を示す機能ブロック図である。以下、この図面に基づき説明する。
【００６０】
アドレス変換手段２７は、従来のアドレス変換手段１０５（図１３）と同様に、スナップショット・ボリューム２３の実際の格納アドレスを保持するディレクトリ２７１と、共有ボリューム２４の空き状況を管理する割当管理テーブル２７２とを有する。
【００６１】
次に、本実施形態のディスクアレイ・サブシステムの動作について、フローチャートを参照しながら詳細に説明する。図７は、本実施形態のディスクアレイ・サブシステムにおける複製準備動作を示すフローチャートである。以下、図７を中心に図１乃至図６も用いつつ説明する。
【００６２】
まず、スナップショット動作の事前準備として、ディスクアレイ・サブシステム１０内に、共有ボリューム２４を作製するとともに、データ複製制御手段２６内の属性管理テーブル２６１とアドレス変換手段２７内の割当管理テーブル２７２とを初期化する（ステップ３０）。すなわち、属性管理テーブル２６１において「ＬＶ３」に共有属性を設定し、割当管理テーブル２７２において共有ボリューム２４が未使用状態であることを示す値「０」を設定する。共有ボリューム２４の記憶容量は、任意に決めてよいが、複数のスナップショット・ボリューム２３の実際の格納先になることを考慮し、当面必要となるデータ量を見積もった上で作製することが望ましい。
【００６３】
続いて、マスタ・ボリューム２１と、マスタ・ボリューム２１と同じ記憶容量のスナップショット・ボリューム２３とを作製する（ステップ３１）。複製データ記憶領域として機能するスナップショット・ボリューム２３は、見かけ上マスタ・ボリューム２１と同じ記憶容量を持っている。しかし、スナップショット・ボリューム２３の実際のデータの格納先は共有ボリューム２４になるので、スナップショット・ボリューム２３自身が記憶領域を消費することはない。つまり、スナップショット・ボリューム２３は、ディスクアレイ・サブシステム１０内に仮想的に構築されたボリュームに過ぎないので、実質的な記憶容量を持たない。また、マスタ・ボリューム２１は、この段階で作製しても良いし、既に存在するボリュームを指定しても良い。既に存在するボリュームを指定するとき、スナップショット関係を持たないボリュームを指定しても良いし、既にスナップショット関係にあるマスタ・ボリュームに対して、さらにスナップショット・ボリュームを関連付けても良い。
【００６４】
続いて、マスタ・ボリューム２１と同一記憶容量のバッファ・ボリューム２２を作製し、属性管理テーブル２６１、ボリューム対応管理テーブル２６２及び一時差分管理テーブル２５１を初期化する（ステップ３２）。すなわち、属性管理テーブル２６１において、「ＬＶ０」にマスタ属性を設定し、「ＬＶ１」にバッファ属性を設定する。かつ、ボリューム対応管理テーブル２６２において、「ＬＶ０」と「ＬＶ１」とが一時複製の関係にあることを示すように、一時複製の「ＬＶ０」に「ＬＶ１」を設定し、一時複製の「ＬＶ１」に「ＬＶ０」を設定する。かつ、一時差分管理テーブル２５１において、マスタ・ボリューム２１のデータとバッファ・ボリューム２２のデータとが一致していないことを示す「１」をセットする。一時データ複製制御手段２５は、一時差分管理テーブル２５１を定期的に監視し、前述した不一致を示す「１」を見つけると、この不一致データをマスタ・ボリューム２１からバッファ・ボリューム２２へ複製するように動作する。そして、マスタ・ボリューム２１からバッファ・ボリューム２２への複製が完了した箇所には、データが一致していることを示す「０」を設定する。
【００６５】
このときの一時差分管理テーブルの様子を図４に例示する。図４では、バッファ・ボリューム２２を作製し、一時差分管理テーブル２５１に初期値である「１」を設定した後、一時データ複製制御手段２５が一時差分管理テーブル２５１の「１」を検出し、ページ２のデータをマスタ・ボリューム２１からバッファ・ボリューム２２へ複製した後の様子を示している。
【００６６】
スナップショット・コマンドをディスクアレイ・サブシステム１０が受信すると（ステップ３３）、属性管理テーブル２６１、ボリューム対応管理テーブル２６２、差分管理テーブル２６３、ディレクトリ２７１及び複製参照テーブル２６４を初期化する（ステップ３４）。すなわち、属性管理テーブル２６１において「ＬＶ２」にスナップショット属性を設定する。かつ、ボリューム対応管理テーブル２６２において、「ＬＶ０」と「ＬＶ２」とがスナップショット関係であることを示すように、スナップショットの「ＬＶ０」に「ＬＶ２」を設定し、スナップショットの「ＬＶ２」に「ＬＶ０」を設定する。かつ、差分管理テーブル２６１のスナップショット・ボリューム２３すなわち「ＬＶ２」において、このスナップショット・ボリューム２３がデータを保持していないことを示す値「０」を設定する。かつ、複製参照テーブル２６４のスナップショット・ボリューム２３すなわち「ＬＶ２」において、ページ２はマスタ・ボリューム２１からバッファ・ボリューム２２へのデータの複製が完了しているので、このデータの参照先がバッファ・ボリューム２２となるように値「０」を設定し、それ以外のページはマスタ・ボリューム２１を参照するように値「１」を設定する。かつ、ディレクトリ２７１において、スナップショット・ボリューム２３に共有ボリューム２４の記憶空間が割り当てられていないことを示す「ｎｕｌｌ」値を設定する。
【００６７】
なお、複製参照テーブル２６４の初期化は、スナップショット・コマンドを受信した時点での一時差分管理テーブル２５１を、複製参照テーブル２６４へコピーすることによってもなし得る。このときの様子を図５に例示する。
【００６８】
これ以降、スナップショット・ボリューム２３は、スナップショット・コマンドを受信した時点におけるマスタ・ボリューム２１のボリューム・イメージを保持する。
【００６９】
図８は、本実施形態のディスクアレイ・サブシステムにおけるライト・コマンド動作を示すフローチャートである。以下、図８を中心に図１乃至図６も用いつつ説明する。
【００７０】
スナップショット・コマンドを受信した後に発生したマスタ・ボリュームへのライト・コマンド処理について説明する。まず、属性管理テーブル２６１を参照し（ステップ４０）、マスタ・ボリューム２１へのライト・コマンドであるか否かを判断する（ステップ４１）。マスタ・ボリューム２１へのライト・コマンドであると判断した場合は、ボリューム対応管理テーブル２６２を参照し（ステップ４２）、マスタ・ボリューム２１と対をなすバッファ・ボリューム２２とスナップショット・ボリューム２３とを特定する。
【００７１】
続いて、一時差分管理テーブル２５１を参照し（ステップ４３）、ライト・コマンドで指定されたページのデータが、マスタ・ボリューム２１とバッファ・ボリューム２２とで一致しているか判断する（ステップ４４）。一時差分管理テーブル２５１において値が「０」のページは、データが一致していることを意味しており、この場合、一時差分管理テーブル２５１の当該ページにデータ不一致を示す値「１」をセットし、マスタ・ボリューム２１の当該ページにデータを書き込み（ステップ４５）、ライト・コマンドを終了する。なお、マスタ・ボリューム２１とバッファ・ボリューム２２とでデータが不一致となる場合は、例えば、マスタ・ボリューム２１のデータをバッファ・ボリューム２２にミラーリングする処理が完了する前に、マスタ・ボリューム２１の同一アドレスのデータが更新されたときなどである。
【００７２】
マスタ・ボリューム２１に書き込んだデータは、一時データ複製制御手段２５によってバッファ・ボリューム２２にコピーされるが、その動作ついては後述する。一時差分管理テーブル２５１において値が「１」のページは、データが一致していないことを意味しており、この場合、差分管理テーブル２６３を参照し（ステップ４６）、スナップショット・ボリューム２３がデータを保持しているか判断する（ステップ４７）。スナップショット・ボリューム２３がデータを保持していると判断した場合は、ライト・コマンド発行時のマスタ・ボリューム２１及びバッファ・ボリューム２２のデータはスナップショット・ボリューム２３が保持しているボリューム・イメージとは無関係のデータであるので、マスタ・ボリューム２１の当該ページにデータを書き込み（ステップ５２）、ライト・コマンドを終了する。
【００７３】
スナップショット・ボリューム２３がデータを保持していないと判断した場合は（ステップ４７）、複製参照テーブル２６４を参照し（ステップ４８）、スナップショット・ボリューム２３のボリューム・イメージの実データが、マスタ・ボリューム２１にあるのかバッファ・ボリューム２２にあるのかを判断する（ステップ４９）。実データがバッファ・ボリューム２２にあるときは、マスタ・ボリューム２１の当該ページにデータを書き込み（ステップ５２）、ライト・コマンドを終了する。
【００７４】
実データがマスタ・ボリューム２１にあるときは（ステップ４７）、スナップショット・ボリューム２３のボリューム・イメージを維持するために、マスタ・ボリューム２１へデータを書き込む前に、マスタ・ボリューム２１のデータをバッファ・ボリューム２２にコピーする（ステップ５０）。そして、複製参照テーブル２６４に、ボリューム・イメージの実データがバッファ・ボリューム２２にあることを示す値「０」を設定するとともに、一時差分管理テーブル２５１に、マスタ・ボリューム２１とバッファ・ボリューム２２とのデータが一致することを示す値「０」を設定し（ステップ５１）、マスタ・ボリューム２１の当該ページにデータを書き込み（ステップ５２）、ライト・コマンドを終了する。
【００７５】
図９は、本実施形態のディスクアレイ・サブシステムにおける一時データ複製動作を示すフローチャートである。以下、図９を中心に、図１乃至図６も用いつつ説明する。
【００７６】
スナップショット実行中の一時データ複製制御手段２５の動作について説明する。この動作はバックグラウンド処理で実行されるので、この動作によってマスタ・ボリューム２１に対するアクセスが阻害されることはない。一時データ複製制御手段２５は、一時差分管理テーブル２５１を定期的に探索することにより、マスタ・ボリューム２１とバッファ・ボリューム２２との間で、データの内容が一致していないページ位置を取得し、不一致のデータをマスタ・ボリューム２１からバッファ・ボリューム２２へコピーするように機能する。
【００７７】
まず、一時差分管理テーブル２５１をチェックし（ステップ６０）、マスタ・ボリューム２１とバッファ・ボリューム２２とのデータの内容が一致していることを示す値「０」を検出した場合は（ステップ６１）、次のページへ進み（ステップ７０）、ステップ６０から始まる一連の処理を繰り返す。
【００７８】
マスタ・ボリューム２１とバッファ・ボリューム２２とのデータの内容が一致していないことを示す値「１」を検出した場合は（ステップ６１）、差分管理テーブル２６３をチェックする（ステップ６２）。当該ページにおいて、スナップショット・ボリューム２３が実データを保持していることを示す値「１」を検出した場合は（ステップ６３）、マスタ・ボリューム２１からバッファ・ボリューム２２にデータをコピーし（ステップ６７）、一時差分管理テーブル２５１にマスタ・ボリューム２１とバッファ・ボリューム２２とのデータが一致していることを示す値「０」を設定する（ステップ６８）。そして、次のページへ進み（ステップ７０）、ステップ６０から始まる一連の処理を繰り返す。
【００７９】
スナップショット・ボリューム２３が実データを保持していないことを示す値「０」を検出した場合は（ステップ６３）、複製参照テーブル２６４を参照し、実データを保持するボリュームを特定する（ステップ６４）。
【００８０】
続いて、バッファ・ボリューム２２が実データを保持すると判断した場合は（ステップ６５）、マスタ・ボリューム２１からバッファ・ボリューム２２へデータをコピーする前に、スナップショット・ボリューム２３のボリューム・イメージを維持するために、バッファ・ボリューム２２のデータをスナップショット・ボリューム２３へコピーする必要がある。スナップショット・ボリューム２３へのデータ格納手順（ステップ６６）は、従来のスナップショット動作と同様に、割当管理テーブル２７２を探索し、共有ボリューム２４の未使用領域の中から今回使用する領域を決定する。そして、バッファ・ボリューム２２の当該ページにある既存データを、共有ボリューム２４の未使用領域にコピーしてから、割当管理テーブル２７２の当該箇所が使用済みであることを示す値「１」を設定し、ディレクトリ２７１の当該箇所に今回割り当てた共有ボリューム２４のページ・アドレスを設定する。そして、差分管理テーブル２６３の当該箇所にデータがあることを示す値「１」を設定する。
【００８１】
このようにしてバッファ・ボリューム２２からスナップショット・ボリューム２３へデータを退避した後、マスタ・ボリューム２１からバッファ・ボリューム２２へデータをコピーし（ステップ６７）、一時差分管理テーブル２５１にマスタ・ボリューム２１とバッファ・ボリューム２２とのデータが一致していることを示す値「０」を設定する（ステップ６８）。そして、次のページへ進み（ステップ７０）、ステップ６０から始まる一連の処理を繰り返す。
【００８２】
マスタ・ボリューム２１が実データを保持すると判断した場合は（ステップ６５）、マスタ・ボリューム２１からバッファ・ボリューム２２へデータをコピーし（ステップ６９）、複製参照テーブル２６４に、スナップショット・ボリューム２３の実データの参照先がバッファ・ボリューム２２であることを示す値「０」を設定する（ステップ７１）。そして、一時差分管理テーブル２５１にマスタ・ボリューム２１とバッファ・ボリューム２２とのデータが一致していることを示す値「０」を設定し（ステップ６８）、次のページへ進み（ステップ７０）、ステップ６０から始まる一連の処理を繰り返す。
【００８３】
図１０は、本実施形態のディスクアレイ・サブシステムにおけるリード・コマンド動作を示すフローチャートである。以下、図１０を中心に図１乃至図６も用いつつ説明する。
【００８４】
スナップショット・コマンドを受信した後に発生したスナップショット・ボリューム２３へのリード・コマンド処理について説明する。スナップショット・ボリューム２３へのリードは、例えば、スナップショット・ボリューム２３を用いて、データをバックアップするときや、実際に使用された過去のデータによって新規システムを評価するときなどに、実行される。まず、属性管理テーブル２６１を参照し（ステップ８０）、このリード・コマンドがスナップショット・ボリューム２３へのコマンドであるか判断する（ステップ８１）。ここで、リード対象のボリュームがスナップショット・ボリューム２３でない場合、リード・コマンドが発行されたボリュームからデータを読み出して、処理を終了する（ステップ９２）。
【００８５】
一方、スナップショット・ボリューム２３へのリード・コマンドであると判断した場合（ステップ８１）、差分管理テーブル２６３を参照し（ステップ８２）、スナップショット・ボリューム２３上の今読み出そうとしているページに、データを保持していることを示す値が設定されているかを判断する（ステップ８３）。スナップショット・ボリューム２３がデータを保持していると判断した場合は、ディレクトリ２７１からデータの実際の格納先である共有ボリューム番号及びページ・アドレスを取得し（ステップ８４）、当該ページのデータを読み出し、処理を終了する（ステップ９２）。
【００８６】
スナップショット・ボリューム２３がデータを保持していないと判断した場合は（ステップ８３）、複製参照テーブル２６４を参照し（ステップ８５）、スナップショット・ボリューム２３のボリューム・イメージが参照しているデータの実体が、マスタ・ボリューム２１にあるのか、それともバッファ・ボリューム２２にあるのかを判断する（ステップ８６）。
【００８７】
データの実体がバッファ・ボリューム２２にあることを示す値がセットされていた場合は（ステップ８６）、ボリューム対応管理テーブル２６２を参照することにより、リード・コマンドの発行先をバッファ・ボリューム２２に変換し（ステップ９１）、目的のページのデータを読み出し（ステップ９２）、処理を終了する。
【００８８】
スナップショット・ボリューム２３のボリューム・イメージが参照しているデータの実体がマスタ・ボリューム２１にあると判断された場合は（ステップ８６）、ボリューム対応管理テーブル２６２によりマスタ・ボリューム２１と対をなすバッファ・ボリューム２２を特定し（ステップ８７）、マスタ・ボリューム２１からバッファ・ボリューム２２へデータをコピーする（ステップ８８）。そして、一時差分管理テーブル２５１に、マスタ・ボリューム２１とバッファ・ボリューム２２とのデータが一致していることを示す値「０」を設定し（ステップ８９）、複製参照テーブル２６４に、スナップショット・ボリュームの実データ参照先がバッファ・ボリュームであることを示す値０を設定した後（ステップ９０）、ボリューム対応管理テーブル２６２を参照することにより、リード・コマンドの発行先をバッファ・ボリューム２２に変換し（ステップ９１）、目的のページのデータを読み出し（ステップ９２）、処理を終了する。
【産業上の利用可能性】
【００８９】
本発明は、ディスクアレイ・サブシステムにおけるボリューム・レベルのバックアップ等の用途に利用できる。
【図面の簡単な説明】
【００９０】
【図１】本発明に係るディスクアレイ・サブシステムの一実施形態におけるハードウェア構成を示す概略ブロック図である。
【図２】本実施形態のディスクアレイ・サブシステムにおけるスナップショット動作の具体例を示す機能ブロック図である。
【図３】本実施形態のディスクアレイ・サブシステムにおける一時データ複製制御手段（その１）を示す機能ブロック図である。
【図４】本実施形態のディスクアレイ・サブシステムにおける一時データ複製制御手段（その２）を示す機能ブロック図である。
【図５】本実施形態のディスクアレイ・サブシステムにおけるデータ複製制御手段を示す機能ブロック図である。
【図６】本実施形態のディスクアレイ・サブシステムにおけるアドレス変換手段を示す機能ブロック図である。
【図７】本実施形態のディスクアレイ・サブシステムにおける複製準備動作を示すフローチャートである。
【図８】本実施形態のディスクアレイ・サブシステムにおけるライト・コマンド動作を示すフローチャートである。
【図９】本実施形態のディスクアレイ・サブシステムにおける一時データ複製動作を示すフローチャートである。
【図１０】本実施形態のディスクアレイ・サブシステムにおけるリード・コマンド動作を示すフローチャートである。
【図１１】従来のディスクアレイ・サブシステムにおけるスナップショット動作の具体例を示す機能ブロック図である。
【図１２】従来のディスクアレイ・サブシステムにおけるデータ複製制御手段を示す機能ブロック図である。
【図１３】従来のディスクアレイ・サブシステムにおけるアドレス変換手段を示す機能ブロック図である。
【図１４】従来のディスクアレイ・サブシステムにおける複製準備動作を示すフローチャートである。
【図１５】従来のディスクアレイ・サブシステムにおけるライト・コマンド動作を示すフローチャートである。
【図１６】従来のディスクアレイ・サブシステムにおけるリード・コマンド動作を示すフローチャートである。
【図１７】一般的なスナップショットの作用原理を示す概念図である。
【符号の説明】
【００９１】
１０  ディスクアレイ・サブシステム
１１  マイクロプロセッサ
１２  インタフェース制御部
１３  制御用メモリ
１４  ＲＡＩＤ制御部
１５ａ〜１５ｆ  磁気ディスク装置
１６  ホストコンピュータ
１７  管理端末
２１  マスタ・ボリューム
２２  バッファ・ボリューム
２３  スナップショット・ボリューム
２４  共有ボリューム
２５  一時データ複製制御手段
２５１  一時差分管理テーブル
２６  データ複製制御手段
２６１  属性管理テーブル
２６２  ボリューム対応管理テーブル
２６３  差分管理テーブル
２６４  複製参照テーブル
２７  アドレス変換手段
２７１  ディレクトリ
２７２  割当管理テーブル
【図１】
2006268139.tif 000003
【図２】
2006268139.tif 000004
【図３】
2006268139.tif 000005
【図４】
2006268139.tif 000006
【図５】
2006268139.tif 000007
【図６】
2006268139.tif 000008
【図７】
2006268139.tif 000009
【図８】
2006268139.tif 000010
【図９】
2006268139.tif 000011
【図１０】
2006268139.tif 000012
【図１１】
2006268139.tif 000013
【図１２】
2006268139.tif 000014
【図１３】
2006268139.tif 000015
【図１４】
2006268139.tif 000016
【図１５】
2006268139.tif 000017
【図１６】
2006268139.tif 000018
【図１７】
2006268139.tif 000019