(57)【特許請求の範囲】
【請求項１】
記憶装置に記憶されたデータのバックアップを世代管理するストレージ装置であって、
前記記憶装置に記憶された複数のファイルそれぞれに対応するメタデータに対して各ファイルの更新の有無を示す識別情報が対応付けられた、前記バックアップの世代毎の管理情報を記憶する記憶部と、
何れかのファイルに対する更新の要求を受け付けると、更新前の前記ファイルの複製を保存した後に前記更新を実行し、前記ファイルの前記メタデータに対応付けて前記ファイルに更新があることを、前記記憶部における現世代の前記管理情報に登録する、制御部と、を有し、
前記制御部は、前記記憶装置の記憶領域がファイルアクセスまたはブロックアクセスの何れに用いられるかに応じて、前記記憶領域に対し、前記メタデータ毎に前記識別情報を対応付けた第１の種類の管理情報を用いるか、または、ブロック毎に前記識別情報を対応付けた第２の種類の管理情報を用いるか、を選択する、
ストレージ装置。
【請求項２】
前記制御部は、前記バックアップの取得指示を受け付けると、受け付け時に対応する世代の前記管理情報を生成する、請求項１記載のストレージ装置。
【請求項３】
前記制御部は、第１の記憶領域については前記第１の種類の管理情報を用いてデータの更新状況を管理し、第２の記憶領域については前記第２の種類の管理情報を用いてデータの更新状況を管理する、請求項１記載のストレージ装置。
【請求項４】
前記制御部は、前記ファイルに更新があることを前記管理情報に登録する際に、前記メタデータに対応付けて現世代を示す更新世代情報も登録し、前記メタデータおよび現世代に対応付けて前記複製の保存先を示す情報を前記記憶部に格納し、前記ファイルを復元する際に、前記更新世代情報に基づいて復元用の前記ファイルを検索する、請求項１乃至３の何れか１つに記載のストレージ装置。
【請求項５】
記憶装置に記憶されたデータのバックアップを世代管理するコンピュータに、
前記記憶装置の記憶領域がファイルアクセスまたはブロックアクセスの何れに用いられるかに応じて、前記記憶領域に対する前記バックアップの世代管理に、前記記憶領域に記憶された複数のファイルそれぞれに対応するメタデータに対して各ファイルの更新の有無を示す識別情報を対応付けた第１の種類の管理情報を用いるか、または、ブロック毎に更新の有無を示す前記識別情報を対応付けた第２の種類の管理情報を用いるか、を選択し、
前記ファイルアクセスに用いられる前記記憶装置の前記記憶領域に記憶された何れかのファイルに対する更新の要求を受け付けると、更新前の前記ファイルの複製を保存した後に前記更新を実行し、前記バックアップの世代毎の前記第１の種類の管理情報を記憶する記憶部における現世代の前記第１の種類の管理情報に、前記ファイルの前記メタデータに対応付けて前記ファイルに更新があることを、登録する、
処理を実行させるストレージ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はストレージ装置およびストレージ制御プログラムに関する。
【背景技術】
【０００２】
現在、データの保存にストレージ装置が用いられている。ストレージ装置は、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などの記憶装置を複数有し、大容量の記憶領域を利用可能とする。
【０００３】
ストレージ装置に保存されたデータのバックアップを取得することがある。例えば、バックアップを取得する１つの方法としてスナップショットがある。スナップショットでは、ある時点のバックアップを取得する場合、当該時点から更新されたデータに対する更新前のデータを記憶装置に退避して保持する。例えば、退避したデータが記録されていること（すなわち、データが更新されていること）をブロック単位に管理するために、論理ユニット内のブロックに対応するビットを有する差分ビットマップを用いる提案がある。
【０００４】
なお、例えば、Ｎ世代までが反映されたスナップショットイメージと、そのイメージに対する更新データとしてＮ＋１世代、Ｎ＋２世代、・・・の更新データをもつ履歴情報とを保存することで、スナップショットイメージを世代管理する提案もある。
【０００５】
また、第１の記憶領域と第２の記憶領域とを統合した統合記憶領域内に１つのファイルシステムを構築する提案もある。この提案では、ファイルを格納する際に、ファイルに関するメタデータ（ｉｎｏｄｅなど）を、第１の記憶領域のみに格納することで、ファイル移動時にメタデータを新たに作成せずに変更のみで済ませる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−３０１４９９号公報
【特許文献２】特開２００２−２７８８１９号公報
【特許文献３】特開２００７−７９７７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
近年、ブロックアクセスおよびファイルアクセスの両方を受け付け可能なストレージ装置が利用されている。このようなストレージ装置では、スナップショットによるバックアップの管理に用いられる管理情報に改善の余地がある。例えば、ブロックアクセスを受け付けるストレージ装置のスナップショットでは、上記のように差分ビットマップにより、ブロック単位にデータ更新の有無を管理している。このため、管理対象となるブロックの数が増えるほど、差分ビットマップのサイズも大きくなるという問題がある。
【０００８】
１つの側面では、本発明は、バックアップの管理情報のサイズを低減できるストレージ装置およびストレージ制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
１つの態様では、記憶装置に記憶されたデータのバックアップを世代管理するストレージ装置が提供される。このストレージ装置は、記憶部と制御部とを有する。記憶部は、記憶装置に記憶された複数のファイルそれぞれに対応するメタデータに対して各ファイルの更新の有無を示す識別情報が対応付けられた、バックアップの世代毎の管理情報を記憶する。制御部は、何れかのファイルに対する更新の要求を受け付けると、更新前のファイルの複製を保存した後に更新を実行し、ファイルのメタデータに対応付けてファイルに更新があることを、記憶部における現世代の管理情報に登録する。制御部は、記憶装置の記憶領域がファイルアクセスまたはブロックアクセスの何れに用いられるかに応じて、記憶領域に対し、メタデータ毎に識別情報を対応付けた第１の種類の管理情報を用いるか、または、ブロック毎に識別情報を対応付けた第２の種類の管理情報を用いるか、を選択する。
【００１０】
また、１つの態様では、記憶装置に記憶されたデータのバックアップを世代管理するコンピュータによって実行されるストレージ制御プログラムが提供される。このストレージ制御プログラムは、コンピュータに、記憶装置の記憶領域がファイルアクセスまたはブロックアクセスの何れに用いられるかに応じて、記憶領域に対するバックアップの世代管理に、記憶領域に記憶された複数のファイルそれぞれに対応するメタデータに対して各ファイルの更新の有無を示す識別情報を対応付けた第１の種類の管理情報を用いるか、または、ブロック毎に更新の有無を示す識別情報を対応付けた第２の種類の管理情報を用いるか、を選択し、ファイルアクセスに用いられる記憶装置の記憶領域に記憶された何れかのファイルに対する更新の要求を受け付けると、更新前のファイルの複製を保存した後に更新を実行し、バックアップの世代毎の第１の種類の管理情報を記憶する記憶部における現世代の第１の種類の管理情報に、ファイルのメタデータに対応付けてファイルに更新があることを、登録する、処理を実行させる。
【発明の効果】
【００１１】
１つの側面では、バックアップの管理情報のサイズを低減できる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態のストレージ装置を示す図である。
【図２】第２の実施の形態の情報処理システムを示す図である。
【図３】ＣＭのハードウェア例を示す図である。
【図４】業務サーバのハードウェア例を示す図である。
【図５】ＣＭの機能例を示す図である。
【図６】ブロック単位のビットマップテーブルの例を示す図である。
【図７】メタデータ単位のビットマップテーブルの例を示す図である。
【図８】バックアップ管理テーブルの例を示す図である。
【図９】共有領域の設定処理の例を示すフローチャートである。
【図１０】世代追加の例を示すフローチャートである。
【図１１】ビットマップ更新処理の例を示すフローチャートである。
【図１２】リストア処理の例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本実施の形態について図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態のストレージ装置を示す図である。ストレージ装置１は、ストレージ制御装置２および記憶装置３を有する。ストレージ制御装置２は、記憶装置３に対するデータアクセスを制御する。記憶装置３としては、ＨＤＤやＳＳＤなどを用いることができる。ストレージ装置１は、記憶装置３を複数備えてもよい。ここで、ストレージ装置１は、情報処理装置４とネットワーク５を介して接続されている。例えば、記憶装置３は、情報処理装置４の処理に用いられるデータを記憶する。ストレージ制御装置２は、ファイルシステムの機能を有し、情報処理装置４によるファイルアクセスを許容する。
【００１４】
ストレージ装置１は、記憶装置３に記憶されたデータのバックアップを取得し、取得したバックアップを世代管理する。ストレージ装置１は、スナップショットの技術によりバックアップを取得する。ストレージ装置１が用いるバックアップの取得方法は、コピーオンライト（Copy On Write）と呼ばれることもある。ストレージ装置１におけるバックアップ管理機能は、ストレージ制御装置２によって提供される。
【００１５】
ストレージ制御装置２は、記憶部２ａおよび制御部２ｂを有する。記憶部２ａは、ＲＡＭ（Random Access Memory）などの揮発性記憶装置でもよいし、フラッシュメモリなどの不揮発性記憶装置でもよい。制御部２ｂは、例えばプロセッサである。プロセッサは、ＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）などを含み得る。また、制御部２ｂは、マルチプロセッサでもよい。
【００１６】
記憶部２ａは、バックアップの世代毎の管理情報を記憶する。管理情報は、記憶装置３に記憶された複数のファイルそれぞれに対応するメタデータに対して各ファイルの更新の有無を示す識別情報が対応付けられた情報である。識別情報は、例えば、ファイルの更新がないことを“０”、ファイルの更新があることを“１”で表わすビット情報でもよい。また、メタデータは、ファイルが格納された記憶装置３上の物理的な記憶位置を示す複数のブロックに対応付けられる情報である。例えば、メタデータは、ファイルシステムで管理されるｉｎｏｄｅ番号やファイルのパスのハッシュ値などでもよい。
【００１７】
制御部２ｂは、バックアップの取得指示を受け付ける。バックアップの取得指示は、情報処理装置４から送信されてもよいし、他の装置から送信されてもよい。制御部２ｂは、バックアップの取得指示の受け付け時に対応する世代の管理情報を生成して記憶部２ａに格納する。
【００１８】
例えば、記憶部２ａに、第１世代、第２世代、・・・、第Ｎ−１世代（Ｎは２以上の整数）までの各世代の管理情報Ｔ１，Ｔ２，・・・が記憶されているものとする。ここで、世代は、世代の数値が大きいほど、新しい世代を表わす。制御部２ｂは、バックアップの取得指示を受け付けると、第Ｎ世代の管理情報ＴＮを生成して、記憶部２ａに格納する。管理情報ＴＮの生成時は、管理情報ＴＮに含まれる全ての識別情報が、“更新なし”を示す（例えば、“０”）。
【００１９】
制御部２ｂは、記憶部２ａにおけるバックアップの取得する世代の管理情報に、何れかのファイルに対する更新の要求を受け付けると、更新前のファイルの複製を保存した後に当該更新を実行し、該当のファイルのメタデータに対応付けて、当該ファイルに更新があることを、登録する。
【００２０】
例えば、制御部２ｂは、ファイルＸに対する更新の要求を、情報処理装置４から受け付ける。ファイルＸに対応するメタデータは“Ｂ”であるものとする。すると、制御部２ｂは、更新対象のファイルＸを複製し、記憶装置３の所定の記憶領域または他の記憶装置に、複製した更新前のファイルＸを格納する。こうして、制御部２ｂは、更新前のファイルＸの複製を保存する。このとき、制御部２ｂは、メタデータ“Ｂ”に対応するファイルＸの複製の格納先を特定するための情報を記憶部２ａに記録する。
【００２１】
そして、制御部２ｂは、ファイル更新の要求に応じて、当該更新を実行する。例えば、制御部２ｂは、保存した複製に対する複製元のファイルＸを更新する。ファイルＸの更新後のファイルをファイルＸａとする。そして、制御部２ｂは、管理情報ＴＮにおけるメタデータ“Ｂ”に対応付けられた識別情報を、“更新なし”から“更新あり”に変更する（例えば、“０”から“１”に変更する）。なお、以後、当該メタデータ“Ｂ”に対応するファイルＸａの更新要求を受け付けても、次の世代のバックアップの取得が指示されるまでは、管理情報ＴＮにおけるメタデータ“Ｂ”の識別情報の更新やファイルＸａの複製の保存を行わずに更新を行っていく。
【００２２】
すると、ストレージ装置１は、仮に、情報処理装置４から第Ｎ世代のバックアップを記憶装置３上に復元する旨の指示を受け付けたとき、管理情報ＴＮに基づいて、復元を実行できる。具体的には、制御部２ｂは、管理情報ＴＮを参照することで、メタデータ“Ｂ”に対し、第Ｎ世代のバックアップの取得指示を受け付けたタイミングにおけるファイルＸの複製が保存されていることを特定する。制御部２ｂは、ファイルＸの複製の格納先の情報を記憶部２ａに記録しているので、記録した情報を基にファイルＸの複製を取得し、ファイルＸを復元できる。他のファイルについても、ファイルＸと同様に管理することで、記憶装置３に記憶された各ファイルの第Ｎ世代の状態を復元できる。
【００２３】
ストレージ装置１によれば、バックアップの管理情報のサイズを低減できる。具体的には次の通りである。例えば、記憶装置３上の物理的な記憶位置に対応する複数のブロックそれぞれに対して識別情報を対応付けて管理することも考えられる。しかし、この方法では、管理対象となるブロックの数が増えるほど、管理情報のサイズも大きくなる。
【００２４】
特に、近年、ブロックアクセスおよびファイルアクセスの両方を受け付け可能なストレージ装置（ユニファイド（Unified）型のストレージ装置と呼ばれることがある）が利用されている。このようなストレージ装置は、ファイルサーバとして利用可能となり、多数のクライアント装置からアクセスされ得る。すると、バックアップ対象となるブロック範囲や世代数が、ブロックアクセスのみを受け付ける場合よりも増す可能性があり、管理情報のサイズの増大が深刻になるおそれがある。
【００２５】
そこで、ストレージ装置１では、記憶装置３に格納されたデータの更新状況を管理するために、ファイルのメタデータとファイル更新の有無を示す識別情報とを対応付けた管理情報を用いる。メタデータは、複数のブロックに対応付けられる情報である。このため、複数のブロックそれぞれに対して識別情報をもつよりも、管理情報のサイズを低減できる。例えば、１ブロック当たりのサイズが５１２バイトであり、ファイルＸのサイズが６キロバイトである場合を考える。この場合、ファイルＸは１２個のブロックに相当する。すなわち、ブロック単位に識別情報をもつ場合に比べて、ファイルのメタデータ単位に識別情報をもつ方が、１２個のブロックにおける更新状況を管理するための情報量を１／１２に削減できることになる。こうして、管理情報のサイズを低減することができる。
【００２６】
［第２の実施の形態］
図２は、第２の実施の形態の情報処理システムを示す図である。第２の実施の形態の情報処理システムは、ストレージ装置１０、業務サーバ２０，３０およびクライアント装置４０を含む。ストレージ装置１０および業務サーバ２０は、ＳＡＮ（Storage Area Network）５０に接続されている。ストレージ装置１０、業務サーバ３０およびクライアント装置４０は、ＬＡＮ（Local Area Network）６０に接続されている。
【００２７】
ストレージ装置１０は、複数のＨＤＤを備え、複数のＨＤＤを用いて業務サーバ２０，３０およびクライアント装置４０が業務処理に用いるデータを記憶する。ストレージ装置１０は、ＨＤＤに代えて、あるいは、ＨＤＤと併せてＳＳＤなどの他の種類の記憶装置を備えてもよい。
【００２８】
ここで、ストレージ装置１０は、ＳＡＮ５０経由でのブロックアクセス、および、ＬＡＮ６０経由でのファイルアクセスの両方を受け付け可能なユニファイド型のストレージ装置である。ストレージ装置１０は、ＣＭ（Controller Module）１００，１００ａおよびＤＥ（Drive Enclosure）２００，２００ａを有する。ＣＭ１００，１００ａは、ＤＥ２００，２００ａに収納されたＨＤＤに対するデータアクセスを制御するストレージ制御装置である。ＤＥ２００，２００ａは、複数のＨＤＤを収納するための筐体である。例えば、ストレージ装置１０では、ＣＭ１００，１００ａおよびＤＥ２００，２００ａを冗長構成として、何れかの障害時にも運用を継続可能である。
【００２９】
業務サーバ２０は、ストレージ装置１０に格納されたデータにアクセスするサーバコンピュータである。業務サーバ２０は、例えば、ＳＡＮ５０を介してストレージ装置１０に対するブロックアクセスを行う。
【００３０】
業務サーバ３０は、ストレージ装置１０に格納されたデータにアクセスするサーバコンピュータである。業務サーバ３０は、例えば、ＬＡＮ６０を介してストレージ装置１０に対するファイルアクセスを行う。
【００３１】
クライアント装置４０は、ユーザが操作するクライアントコンピュータである。クライアント装置４０は、例えば、ＬＡＮ６０を介してストレージ装置１０に対するファイルアクセスを行う。例えば、ユーザは、クライアント装置４０で所定のアプリケーションソフトウェアを利用し、当該アプリケーションソフトウェアによって作成されたファイルを、ストレージ装置１０に格納することができる。
【００３２】
ここで、ＣＭ１００は、ＤＥ２００に搭載されている複数のＨＤＤを組み合わせて、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）の技術により論理ボリュームを作成する。論理ボリュームは、ＣＭ１００が業務サーバ２０，３０およびクライアント装置４０に提供する記憶領域の１つの単位である。論理ボリュームには論理ボリュームを識別する論理ユニット番号（ＬＵＮ：Logical Unit Number）が割り当てられる。業務サーバ２０は、ＬＵＮおよび論理ボリュームにおけるブロックのアドレス（ＬＢＡ：Logical Block Address）を直接指定して、ストレージ装置１０に対するデータアクセス（以下、ブロックアクセス）を行える。一方、業務サーバ３０やクライアント装置４０は、業務サーバ３０、クライアント装置４０およびストレージ装置１０のファイルシステムを介して、ストレージ装置１０の論理ボリュームに格納されたデータに対するファイルアクセスを行える。
【００３３】
このため、ストレージ装置１０では、ある論理ボリュームを業務サーバ２０によるブロックアクセス用の論理ボリュームとし、別の論理ボリュームを業務サーバ３０やクライアント装置４０によるファイルアクセス用の論理ボリュームとすることができる。後者の場合、ストレージ装置１０は、例えば、ＮＡＳ（Network Attached Storage）として利用可能であり、業務サーバ３０やクライアント装置４０に対するファイルサーバとして機能し得る。ストレージ装置１０は、ファイル共有を行うためのプロトコルとして、例えば、ＮＦＳ（Network File System）やＣＩＦＳ（Common Internet File System）などを用いることができる。
【００３４】
図３は、ＣＭのハードウェア例を示す図である。ＣＭ１００は、プロセッサ１０１、ＲＡＭ１０２、ＮＶＲＡＭ（Non-Volatile RAM）１０３、ＣＡ（Channel Adapter）１０４、ＮＡ（Network Adapter）１０５、ＤＩ（Drive Interface）１０６および媒体リーダ１０７を有する。各ユニットはＣＭ１００のバスに接続されている。ＣＭ１００ａもＣＭ１００と同様のハードウェアにより実現できる。
【００３５】
プロセッサ１０１は、ＣＭ１００の情報処理を制御する。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどである。プロセッサ１０１は、ＣＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどのうちの２以上の要素の組み合わせであってもよい。
【００３６】
ＲＡＭ１０２は、ＣＭ１００の主記憶装置である。ＲＡＭ１０２は、プロセッサ１０１に実行させるファームウェアのプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０２は、プロセッサ１０１による処理に用いる各種データを記憶する。
【００３７】
ＮＶＲＡＭ１０３は、ＣＭ１００の補助記憶装置である。ＮＶＲＡＭ１０３は、例えば、不揮発性の半導体メモリである。ＮＶＲＡＭ１０３は、ファームウェアのプログラムや各種データなどを記憶する。
【００３８】
ＣＡ１０４は、ＳＡＮ５０を介して業務サーバ２０と通信するための通信インタフェースである。例えば、ＣＡ１０４として、ｉＳＣＳＩ（Internet Small Computer System Interface）や、ファイバチャネル（ＦＣ：Fibre Channel）などのインタフェースを用いることができる。
【００３９】
ＮＡ１０５は、ＬＡＮ６０を介して業務サーバ３０やクライアント装置４０と通信するための通信インタフェースである。例えば、ＮＡ１０５として、イーサネット（登録商標）のインタフェースを用いることができる。
【００４０】
ＤＩ１０６は、ＤＥ２００と通信するためのインタフェースである。例えば、ＤＩ１０６としてＳＡＳ（Serial Attached SCSI）などのインタフェースを用いることができる。また、ＤＩ１０６は、ＤＥ２００ａと接続されて、ＤＥ２００ａとの通信も行える。
【００４１】
媒体リーダ１０７は、可搬型の記録媒体１１に記録されたプログラムやデータを読み取る装置である。記録媒体１１として、例えば、フラッシュメモリなどの不揮発性の半導体メモリを使用することができる。媒体リーダ１０７は、例えば、プロセッサ１０１からの命令に従って、記録媒体１１から読み取ったプログラムやデータを、ＲＡＭ１０２やＮＶＲＡＭ１０３に格納することもできる。
【００４２】
ＤＥ２００は、複数のＨＤＤを有する。例えば、ＤＥ２００は、ＨＤＤ２０１，２０２２０３，２０４，２０５，２０６を有する。各ＨＤＤを用いて作成された論理ボリュームは共有領域として用いられる。共有領域に対して受け付けるアクセスの種類は、論理ボリューム毎に異なる。例えば、ＨＤＤ２０１，２０２，２０３により作成される第１の論理ボリュームは、ブロックアクセス用の共有領域を提供する。一方、ＨＤＤ２０４，２０５，２０６により作成される第２の論理ボリュームは、ファイルアクセス用の共有領域を提供する。なお、ＤＥ２００もＤＥ２００ａと同様に複数のＨＤＤを備えている。前述のように、ＤＥ２００，２００ａは、ＨＤＤに代えて、あるいは、ＨＤＤと併せて、ＳＳＤなどの他の記憶装置を備えてもよい。
【００４３】
ここで、ＣＭ１００は、ＣＭ１００ａと接続するためのインタフェースも備え、ＣＭ１００ａと連携してデータアクセスを行える。例えば、ＣＭ１００を運用系、ＣＭ１００ａを待機系としてもよい。あるいは、ＣＭ１００，１００ａの両方を運用系として、データアクセスを分散して行ってもよい。何れの場合も、一方の故障時に他方でデータアクセスを引き継ぐことができ、ユーザの業務が停止されることを防げる。
【００４４】
図４は、業務サーバのハードウェア例を示す図である。業務サーバ２０は、プロセッサ２１、ＲＡＭ２２、ＨＤＤ２３、画像信号処理部２４、入力信号処理部２５、媒体リーダ２６および通信アダプタ２７を有する。各ユニットは業務サーバ２０のバスに接続されている。業務サーバ３０およびクライアント装置４０も業務サーバ２０と同様のハードウェアにより実現できる。
【００４５】
プロセッサ２１は、業務サーバ２０の情報処理を制御する。プロセッサ２１は、マルチプロセッサであってもよい。プロセッサ２１は、例えばＣＰＵ、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどである。プロセッサ２１は、ＣＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどのうちの２以上の要素の組み合わせであってもよい。
【００４６】
ＲＡＭ２２は、業務サーバ２０の主記憶装置である。ＲＡＭ２２は、プロセッサ２１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ２２は、プロセッサ２１による処理に用いる各種データを記憶する。
【００４７】
ＨＤＤ２３は、業務サーバ２０の補助記憶装置である。ＨＤＤ２３は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ２３は、ＯＳのプログラム、アプリケーションプログラム、および各種データを記憶する。業務サーバ２０は、フラッシュメモリやＳＳＤなどの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
【００４８】
画像信号処理部２４は、プロセッサ２１からの命令に従って、業務サーバ２０に接続されたディスプレイ５１に画像を出力する。ディスプレイ５１としては、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどを用いることができる。
【００４９】
入力信号処理部２５は、業務サーバ２０に接続された入力デバイス５２から入力信号を取得し、プロセッサ２１に出力する。入力デバイス５２としては、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
【００５０】
媒体リーダ２６は、記録媒体５３に記録されたプログラムやデータを読み取る装置である。記録媒体５３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。また、記録媒体５３として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。媒体リーダ２６は、例えば、プロセッサ２１からの命令に従って、記録媒体５３から読み取ったプログラムやデータをＲＡＭ２２またはＨＤＤ２３に格納する。
【００５１】
通信アダプタ２７は、ＳＡＮ５０を介して仮想ボリュームにアクセスするためのインタフェースである。通信アダプタ２７としては、例えばｉＳＣＳＩアダプタやＦＣアダプタなどを用いることができる。
【００５２】
図５は、ＣＭの機能例を示す図である。ＣＭ１００は、記憶部１１０、ＩＯ（Input/Output）制御部１２０、バックアップ処理部１３０およびリストア処理部１４０を有する。記憶部１１０は、例えば、ＲＡＭ１０２またはＮＶＲＡＭ１０３に確保された記憶領域として実現される。ＩＯ制御部１２０、バックアップ処理部１３０およびリストア処理部１４０は、ＲＡＭ１０２に記憶されたプログラムを、プロセッサ１０１が実行することで実現される。
【００５３】
記憶部１１０は、ＤＥ２００における各論理ボリュームのバックアップを管理するための情報を記憶する。ここで、ＣＭ１００は、バックアップの取得にスナップショットの技術を用いる。具体的には、ＣＭ１００は、コピーオンライトの手法により、論理ボリュームにおけるバックアップ対象領域のバックアップを取得する（バックアップ対象領域の全てのデータではなく更新のあった差分のデータのみをバックアップする）。記憶部１１０は、ブロック単位およびファイル単位のデータ更新の管理に用いられるビットマップテーブルなどを記憶する。
【００５４】
ＩＯ制御部１２０は、業務サーバ２０，３０およびクライアント装置４０に対してデータを格納するための共有領域を提供する。業務サーバ２０からのブロックアクセスに対するデータの書き込みや読み出しなどのＩＯ処理を制御する。また、ＩＯ制御部１２０は、業務サーバ３０やクライアント装置４０からのファイルアクセスに対するデータのＩＯ処理を制御する。具体的には、ＩＯ制御部１２０は、指定されたファイルにアクセスする際、論理ボリュームおよびブロックと、指定されたファイルとのマッピングを行う。通常、１ファイルのサイズは、１つのブロックのサイズよりも大きい。このため、１つのファイルは、複数のブロックに跨って論理ボリュームに格納されることになる。
【００５５】
バックアップ処理部１３０は、各論理ボリュームにおけるバックアップ処理を行う。前述のように、バックアップには、コピーオンライトの手法を用いる。バックアップ処理部１３０は、バックアップの世代を管理するためのビットマップテーブルや、複製したデータの格納先を管理するための情報を、バックアップ処理に応じて生成し、記憶部１１０に格納する。ここで、世代は、年月日時分秒などで表わされる時間に対応付けられる情報である。
【００５６】
ここで、バックアップ処理部１３０は、ブロックアクセス用の論理ボリュームと、ファイルアクセス用の論理ボリュームとで、ビットマップテーブルのデータ構造を使い分ける。前者に対しては、ブロック単位にデータ更新の有無を対応付けたビットマップテーブルを用いる。後者に対しては、ファイルに対応するメタデータ単位にデータ更新の有無を対応付けたビットマップテーブルを用いる。バックアップ処理部１３０は、当該ビットマップテーブルを用いて、各論理ボリュームのバックアップを世代管理する。ここで、メタデータは、ファイルが格納された複数のブロックに対応付けられる情報である。このようなメタデータとしてファイルシステムで管理されるｉｎｏｄｅ番号や、ファイルのパスのハッシュ値が考えられる。例えば、バックアップ処理部１３０は、所定のハッシュ関数に、ファイルのパスを入力することで、当該ハッシュ値を得ることができる。
【００５７】
リストア処理部１４０は、クライアント装置４０などの他の装置から、何れかの論理ボリュームに対する何れかの世代のリストアが要求されると、バックアップ処理部１３０が生成した各種のテーブルに基づいて、当該論理ボリュームの当該世代のデータを復元する。
【００５８】
図６は、ブロック単位のビットマップテーブルの例を示す図である。ビットマップテーブル１１１は、記憶部１１０に格納される。ビットマップテーブル１１１は、ＨＤＤ２０１，２０２，２０３により作成された１つの論理ボリュームに対応付けられる。ビットマップテーブル１１１は、ブロック番号および更新情報の項目を含む。
【００５９】
ブロック番号の項目には、該当の論理ボリュームにおけるブロック番号が登録される。更新情報の項目には、各ブロックに格納されたデータの世代毎の更新の有無を示すビット（識別情報）を格納したビットマップが登録される。当該ビットは、“０”が更新なしを示し、“１”が更新ありを示す（以下、同様）。ビットマップは、世代毎に作成される。例えば、ビットマップ１１１ａは、第１世代のビットマップである。ビットマップ１１１ｂは、第２世代のビットマップである。ビットマップ１１１ｃは、第３世代のビットマップである。ここで、世代の数値が大きいほど、新しい世代を示す（以下、同様）。
【００６０】
例えば、ビットマップ１１１ａによれば、ブロック番号“１”、“１２”のビットが“０”であり、ブロック番号“２”、“１３”のビットが“１”である。これは、該当の論理ボリュームに対して、第１世代のバックアップの取得指示を受け付けたタイミングから、ブロック番号“１”、“１２”のブロックは更新がなく、また、ブロック番号“２”、“１３”のブロックは更新があったことを示す。
【００６１】
また、ビットマップ１１１ｂによれば、ブロック番号“１”、“２”、“１３”のビットが“０”であり、ブロック番号“１２”のビットが“１”である。これは、該当の論理ボリュームに対して、第２世代のバックアップの取得指示を受け付けたタイミングから、ブロック番号“１”、“２”、“１３”のブロックは更新がなく、また、ブロック番号“１２”のブロックは更新があったことを示す。
【００６２】
また、ビットマップ１１１ｃによれば、ブロック番号“１”、“２”、“１２”のビットが“０”であり、ブロック番号“１３”のビットが“１”である。これは、該当の論理ボリュームに対して、第３世代のバックアップの取得指示を受け付けたタイミングから、ブロック番号“１”、“２”、“１２”のブロックは更新がなく、また、ブロック番号“１３”のブロックは更新があったことを示す。
【００６３】
図７は、メタデータ単位のビットマップテーブルの例を示す図である。ビットマップテーブル１１２は、記憶部１１０に格納される。例えば、ビットマップテーブル１１２は、ＨＤＤ２０４，２０５，２０６により作成された１つの論理ボリュームに対応付けられる。ビットマップテーブル１１２は、メタデータ、最新更新世代および更新情報の項目を含む。
【００６４】
メタデータの項目には、ファイルに対応するメタデータが登録される。ここでは、メタデータとして、ファイルに対して一意に割り振られる番号を想定する。このような番号は、例えば、ｉｎｏｄｅ番号でもよいし、ファイルのパスのハッシュ値でもよい。最新更新世代の項目には、該当のメタデータに対応するファイルの最新の更新世代を示す情報（更新世代情報）が登録される。更新情報の項目には、各メタデータに対応するファイルの世代毎の更新の有無を示すビット（識別情報）を格納したビットマップが登録される。ビットマップは、世代毎に作成される。例えば、ビットマップ１１２ａは、第１世代のビットマップである。ビットマップ１１２ｂは、第２世代のビットマップである。ビットマップ１１２ｃは、第３世代のビットマップである。ここで、ビットマップテーブル１１１およびビットマップテーブル１１２において同じ数値で表わされる世代は、同期していなくてもよい。
【００６５】
例えば、ビットマップ１１２ａによれば、メタデータ“１”、“３”、“５”のビットが“０”であり、メタデータ“２”、“４”のビットが“１”である。これは、該当の論理ボリュームに対して、第１世代のバックアップの取得指示を受け付けたタイミングから、メタデータ“１”、“３”、“５”に対応するファイルは更新がなく、また、メタデータ“２”、“４”に対応するファイルは更新があったことを示す。
【００６６】
また、ビットマップ１１２ｂによれば、メタデータ“１”、“２”、“４”、“５”のビットが“０”であり、メタデータ“３”のビットが“１”である。これは、該当の論理ボリュームに対して、第２世代のバックアップの取得指示を受け付けたタイミングから、メタデータ“１”、“２”、“４”、“５”に対応するファイルは更新がなく、また、メタデータ“３”に対応するファイルは更新があったことを示す。
【００６７】
また、ビットマップ１１２ｃによれば、メタデータ“１”、“２”、“３”、“４”のビットが“０”であり、メタデータ“５”のビットが“１”である。これは、該当の論理ボリュームに対して、第３世代のバックアップの取得指示を受け付けたタイミングから、メタデータ“１”、“２”、“３”、“４”に対応するファイルは更新がなく、また、メタデータ“５”に対応するファイルは更新があったことを示す。
【００６８】
図８は、バックアップ管理テーブルの例を示す図である。バックアップ管理テーブル１１３，１１３ａ，１１３ｂは、記憶部１１０に格納される。バックアップ管理テーブル１１３，１１３ａ，１１３ｂは、あるファイルの更新時に作成された当該ファイルの複製（複製ファイルと称する）のメタデータを管理するための情報である。バックアップ管理テーブル１１３，１１３ａ，１１３ｂは、論理ボリューム毎、世代毎に作成される。ここで、バックアップ管理テーブル１１３，１１３ａ，１１３ｂは、図７で例示したビットマップテーブル１１２とセットで用いられる。バックアップ管理テーブル１１３，１１３ａ，１１３ｂは、それぞれ、ビットマップテーブル１１２における第１世代、第２世代、第３世代に対応付けられる。バックアップ管理テーブル１１３，１１３ａ，１１３ｂは、メタデータおよびバックアップとして退避されたファイルのポインタの項目を含む。
【００６９】
メタデータの項目には、ファイル（複製元のファイル）のメタデータが登録される。退避されたファイルのポインタの項目には、当該ファイル（複製元のファイル）に対するバックアップである複製ファイルの保存場所を示すポインタが登録される。
【００７０】
例えば、バックアップ管理テーブル１１３には、メタデータが“２”、退避されたファイルのポインタが“Ｐ１”という情報が登録される。これは、メタデータ“２”に対応するファイルの第１世代のバックアップとして、ポインタ“Ｐ１”で示される記憶領域に複製ファイルが退避されていることを示す。なお、ポインタとして、複製ファイルのｉｎｏｄｅ番号などのメタデータを用いてもよい。あるいは、ポインタは、複製ファイルのパスでもよい。
【００７１】
なお、ブロック毎にバックアップを取得する場合にも、バックアップ管理テーブル１１３，１１３ａ，１１３ｂに相当する情報を管理することになるが、この場合は既存の手法を利用できるので、説明を省略する。次に、ストレージ装置１０による処理手順を説明する。
【００７２】
図９は、共有領域の設定処理の例を示すフローチャートである。以下、図９に示す処理をステップ番号に沿って説明する。
（Ｓ１１）ストレージ装置１０は、ユーザの操作による電源投入を受け付ける。
【００７３】
（Ｓ１２）ＩＯ制御部１２０は、論理ボリューム毎に共有領域の設定を行う。
（Ｓ１３）バックアップ処理部１３０は、差分バックアップ（すなわち、コピーオンライトによるバックアップ）が有効であるか否かを判定する。有効である場合、処理をステップＳ１４に進める。有効でない場合、処理を終了する。例えば、ストレージ装置１０は、コピーオンライトによるバックアップを取得するか否かの設定情報をＮＶＲＡＭ１０３に予め格納している。バックアップ処理部１３０は、当該設定情報を参照することで、ステップＳ１３の判定を行える。
【００７４】
（Ｓ１４）バックアップ処理部１３０は、ストレージ装置１０がＮＡＳとして利用されるか否かを判定する。ＮＡＳとして利用される場合、処理をステップＳ１５に進める。ＮＡＳとして利用されない場合、処理をステップＳ１６に進める。例えば、バックアップ処理部１３０は、ＩＯ制御部１２０によるＮＡＳ用のサービス（例えば、ＮＦＳなど）の起動状況を確認することで、ステップＳ１４の判定を行える。
【００７５】
（Ｓ１５）バックアップ処理部１３０は、メタデータ単位のビットマップテーブル１１２を作成し、記憶部１１０に格納する。ここで、バックアップの取得対象となっているファイルアクセス用の論理ボリュームが複数存在する場合、バックアップ処理部１３０は、該当の論理ボリューム毎にビットマップテーブル１１２を作成する。なお、ストレージ装置１０では、前述のように、業務サーバ２０に対するブロックアクセス用の論理ボリュームを設けることも可能である。ブロックアクセス用の論理ボリュームが存在する場合、当該論理ボリュームに対して、ブロック単位のビットマップテーブル１１１を作成する。そして、処理を終了する。
【００７６】
（Ｓ１６）バックアップ処理部１３０は、ブロック単位のビットマップテーブル１１１を作成し、記憶部１１０に格納する。ここで、バックアップの取得対象となっているブロックアクセス用の論理ボリュームが複数存在する場合、バックアップ処理部１３０は、該当の論理ボリューム毎にビットマップテーブル１１１を作成する。そして、処理を終了する。
【００７７】
図１０は、世代追加の例を示すフローチャートである。以下、図１０に示す処理をステップ番号に沿って説明する。
（Ｓ２１）バックアップ処理部１３０は、クライアント装置４０などの他の装置から、バックアップ取得指示を受け付ける。バックアップ処理部１３０は、スケジュールされたタイミングで、ＣＭ１００におけるスケジューラ機能が発行したバックアップ取得指示を受け付けてもよい。
【００７８】
（Ｓ２２）バックアップ処理部１３０は、ブロック単位のビットマップテーブル１１１、または、メタデータ単位のビットマップテーブル１１２に、新たな世代のビットマップを追加する。なお、バックアップ処理部１３０は、ブロックアクセス用の論理ボリューム、および、ファイルアクセス用の論理ボリュームの両方に対して、バックアップ取得指示を受け付けてもよい。その場合、バックアップ処理部１３０は、ビットマップテーブル１１１およびビットマップテーブル１１２の両方に、新たな世代のビットマップを追加する。
【００７９】
（Ｓ２３）バックアップ処理部１３０は、バックアップの取得対象の論理ボリュームに対するデータの更新を待機する。
図１１は、ビットマップ更新処理の例を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。
【００８０】
（Ｓ３１）ＩＯ制御部１２０は、データの更新要求を受け付ける。データ更新要求は、業務サーバ２０により発行されたものであれば、ブロック番号を指定した更新要求である（ブロックアクセス）。また、データ更新要求は、業務サーバ３０やクライアント装置４０により発行されたものであれば、ファイルを指定した更新要求である（ファイルアクセス）。
【００８１】
（Ｓ３２）バックアップ処理部１３０は、ＩＯ制御部１２０が受け付けたデータ更新要求に基づいて、更新対象のデータについて現世代での初回の更新であるか否かを判定する。初回の更新である場合、処理をステップＳ３４に進める。初回の更新ではない場合、処理をステップＳ３３に進める。なお、バックアップ処理部１３０は、ビットマップテーブル１１１，１１２に基づいて、更新対象のデータについて現世代での初回の更新であるか否かを判定できる。例えば、データ更新要求がファイルアクセスである場合、バックアップ処理部１３０は、更新対象のファイルのメタデータを取得し、ビットマップテーブル１１２の現世代のビットを確認する。ビットが“０”であれば、初回の更新である。ビットが“１”であれば、初回の更新ではない。ブロックアクセスの場合も、ビットマップテーブル１１１に基づいて同様に判断できる。
【００８２】
（Ｓ３３）ＩＯ制御部１２０は、受け付けたデータ更新要求に応じて、データの更新を実行する。そして、処理を終了する。
（Ｓ３４）バックアップ処理部１３０は、更新対象のデータの複製（複製データ）を生成し、保存する。例えば、バックアップ処理部１３０は、保存先として、ＤＥ２００に収納されたＨＤＤの所定の記憶領域を用いることができる。
【００８３】
（Ｓ３５）ＩＯ制御部１２０は、受け付けたデータ更新要求に応じて、データの更新を実行する。
（Ｓ３６）バックアップ処理部１３０は、受け付けたデータ更新がファイルアクセスであるか否かを判定する。ファイルアクセスである場合、処理をステップＳ３７に進める。ファイルアクセスでない（すなわち、ブロックアクセスである）場合、処理をステップＳ３８に進める。
【００８４】
（Ｓ３７）バックアップ処理部１３０は、メタデータ単位のビットマップテーブル１１１を更新する。具体的には、バックアップ処理部１３０は、ビットマップテーブル１１２上の現世代のビットマップについて、更新対象となったファイルのメタデータに対応するビットを“０”から“１”に更新する。また、バックアップ処理部１３０は、更新対象となったファイルと、複製ファイル（ステップＳ３４で保存されたファイル）との対応関係を示す情報を作成する。例えば、図８で例示したバックアップ管理テーブルを作成して、更新対象となったファイル（複製元のファイル）に対する複製ファイルの所在を世代毎に管理する。更に、バックアップ処理部１３０は、更新対象となったファイルのメタデータに対する最新更新世代（現世代）を、ビットマップテーブル１１２に登録する。そして、処理を終了する。
【００８５】
（Ｓ３８）バックアップ処理部１３０は、ブロック単位のビットマップテーブル１１２を更新する。具体的には、バックアップ処理部１３０は、ビットマップテーブル１１２上の現世代のビットマップについて、更新対象となったブロックに対応するビットを“０”から“１”に更新する。また、バックアップ処理部１３０は、ステップＳ３７と同様に、更新対象となったブロックと、その複製との対応関係を示す情報を作成して、更新対象となったブロックに対する複製の所在を世代毎に管理する。そして、処理を終了する。
【００８６】
次に、ストレージ装置１０におけるリストア処理の手順を説明する。
図１２は、リストア処理の例を示すフローチャートである。以下、図１２に示す処理をステップ番号に沿って説明する。
【００８７】
（Ｓ４１）リストア処理部１４０は、クライアント装置４０などの他の装置からリストア要求を受信する。リストア要求は、リストア対象の論理ボリュームや世代の情報を含む。
【００８８】
（Ｓ４２）リストア処理部１４０は、ファイルのリストアであるか否かを判定する。ファイルのリストアである場合、処理をステップＳ４３に進める。ファイルのリストアではない場合、処理をステップＳ４５に進める。例えば、リストア処理部１４０は、リストア要求で指定された論理ボリュームが、ファイルアクセス用の論理ボリュームであれば、ファイルのリストアであると判定する。また、リストア処理部１４０は、リストア要求で指定された論理ボリュームが、ブロックアクセス用の論理ボリュームであれば、ファイルのリストアではないと判定する。
【００８９】
（Ｓ４３）リストア処理部１４０は、リストア要求で指定された論理ボリュームに対応するメタデータ単位のビットマップテーブル１１２を検索し、指定された世代のファイルを特定する。このとき、リストア処理部１４０は、ビットマップテーブル１１２に登録された各メタデータの最新更新世代の情報を用いることができる。例えば、ビットマップテーブル１１２のある１つのメタデータに着目する。そして、リストア要求で指定された世代が、着目するメタデータの最新更新世代よりも大きい場合、リストア処理部１４０は、着目するメタデータに対して、最新更新世代のファイルを、リストア対象データとする。一方、リストア要求で指定された世代が、着目するメタデータの最新更新世代以下の場合、例えば、リストア処理部１４０は、リストア要求で指定された世代から降順に（指定された世代から古い世代へ順に）検索して、更新された世代を特定し、最初に特定した世代でバックアップされた複製ファイルをリストア対象データとする。世代を降順に検索して、更新された世代が特定されない場合は、指定された世代から新しい世代へ昇順に検索して更新された世代を特定し、最初に特定した世代でバックアップされた複製ファイルをリストア対象データとする。なお、着目するメタデータに対して、全世代のビットが“０”である場合、当該メタデータに対応するファイルの更新は発生していないことになるので、当該ファイルについてはリストアしなくてよい。ここで、リストア処理部１４０は、あるメタデータに対応する世代における複製ファイルの保存場所を、バックアップ管理テーブル１１３，１１３ａ，１１３ｂに基づいて特定できる。
【００９０】
（Ｓ４４）リストア処理部１４０は、記憶部１１０に記憶された各世代のバックアップ管理テーブルに基づいて、ステップＳ４３で特定したファイルを、リストア対象のデータとして読み出す。そして、処理をステップＳ４７に進める。
【００９１】
（Ｓ４５）リストア処理部１４０は、リストア要求で指定された論理ボリュームに対応するブロック単位のビットマップテーブル１１１を検索し、指定された世代のブロック毎のデータを特定する。
【００９２】
（Ｓ４６）リストア処理部１４０は、ステップＳ４５で特定したデータを、リストア対象のデータとして読み出す。
（Ｓ４７）リストア処理部１４０は、ステップＳ４４またはステップＳ４６で読み出したリストア対象のデータの、指定された論理ボリュームへの書き込みをＩＯ制御部１２０に指示する。ＩＯ制御部１２０は、リストア対象のデータを該当の論理ボリュームに書き込む。こうして、当該論理ボリュームに格納されたデータが、リストア要求により指定された世代の状態に復元される。
【００９３】
このように、ストレージ装置１０は、ファイルのメタデータ単位に、当該ファイルの更新の有無を管理することで、ブロック単位に更新の有無を管理するよりも、ビットマップテーブル１１２のサイズを低減できる。
【００９４】
ここで、ファイル用の共有領域に格納されるファイルをブロックに分割して管理する場合を考える。しかし、この場合、管理対象となるブロック数が多くなると更新を管理するテーブルのサイズが大きくなる。特に、ユニファイド型のストレージ装置１０は、ファイルサーバとして利用することも可能であり、業務サーバ３０やクライアント装置４０などの多数の装置からアクセスされ得る。このため、ストレージ装置１０においてバックアップ対象となるブロック範囲や世代数が、ブロックアクセスのみを受け付ける場合よりも増す可能性があり、ビットマップテーブルのサイズの増大が深刻になるおそれがある。
【００９５】
そこで、第２の実施の形態では、メタデータ単位のビットマップテーブル１１２を用いて、ファイル単位に更新状況を管理する。ファイル単位に更新状況を管理することで、ブロック単位に更新状況を管理する場合に比べて、ビットマップテーブル１１２のデータサイズを低減できる。また、バックアップの管理用の情報のデータ量を抑制できるので、より多くの世代についてバックアップを管理可能となる。
【００９６】
また、ステップＳ４３で例示したように、ストレージ装置１０では、リストア対象ファイルを特定する際、ビットマップテーブル１１２に登録された最新更新世代の情報を用いる。これにより、ストレージ装置１０によるリストア対象ファイルの特定を高速化できる。特に、リストア要求において、ビットマップテーブル１１２における最新の世代がリストア先世代として指定された場合、全メタデータについて、最新更新世代を基にリストア対象ファイルを特定可能であり、この場合に最も高速化の効果が高まる。
【００９７】
なお、第１の実施の形態の情報処理は、制御部２ｂとして用いられるプロセッサに、プログラムを実行させることで実現できる。第２の実施の形態の情報処理は、プロセッサ１０１にプログラムを実行させることで実現できる。ストレージ制御装置２およびＣＭ１００，１００ａは、メモリとプロセッサとを含むコンピュータを備えていると考えることもできる。プログラムは、コンピュータ読み取り可能な記録媒体に記録できる。
【００９８】
例えば、プログラムを記録した記録媒体（例えば、記録媒体１１）を配布することで、プログラムを流通させることができる。コンピュータは、他のコンピュータ（例えば、業務サーバ２０，３０）から、当該プログラムをダウンロードすることもできる。コンピュータは、例えば、ダウンロードしたプログラム、または、記録媒体から読み出したプログラムを、ＲＡＭ１０２やＮＶＲＡＭ１０３などの記憶装置に格納し（インストールし）、当該記憶装置からプログラムを読み込んで実行してもよい。
【符号の説明】
【００９９】
１  ストレージ装置
２  ストレージ制御装置
２ａ  記憶部
２ｂ  制御部
３  記憶装置
４  情報処理装置
５  ネットワーク
Ｔ１，Ｔ２，ＴＮ  管理情報
【図１】
0006604115.tif 000002
【図２】
0006604115.tif 000003
【図３】
0006604115.tif 000004
【図４】
0006604115.tif 000005
【図５】
0006604115.tif 000006
【図６】
0006604115.tif 000007
【図７】
0006604115.tif 000008
【図８】
0006604115.tif 000009
【図９】
0006604115.tif 000010
【図１０】
0006604115.tif 000011
【図１１】
0006604115.tif 000012
【図１２】
0006604115.tif 000013