(57)【要約】【課題】バックアップ容量の圧迫を防止するとともに、データのバックアップ及びリストアの時間を短縮すること。【解決手段】制御装置が、データとデータを特定するためのキー情報との組合せを、上書き及び削除せずに追加のみでストレージ装置に書き込むとともに、ストレージ装置に記憶されているデータに対応するキー情報の一覧を含むメタファイルを記憶する。バックアップ管理装置が、制御装置に記憶されているメタファイルを所定のバックアップ記憶部にバックアップする。【選択図】図３
2013228778.tif 000002
【特許請求の範囲】
【請求項１】
ストレージ装置と、制御装置と、バックアップ管理装置とを含むストレージシステムであって、
前記制御装置は、
データと当該データを特定するためのキー情報との組合せを、上書き及び削除せずに追加のみで前記ストレージ装置に書き込むデータ書込部と、
前記ストレージ装置に記憶されているデータに対応するキー情報の一覧を含むメタファイルを記憶するメタファイル記憶部とを備え、
前記バックアップ管理装置は、
バックアップ要求を受け付ける受付部と、
前記受付部によってバックアップ要求が受け付けられた場合に、前記メタファイル記憶部に記憶されているメタファイルを所定のバックアップ記憶部にバックアップするバックアップ部と
を備えたことを特徴とするストレージシステム。
【請求項２】
前記メタファイル記憶部は、
前記データにより形成されるファイル毎に生成されるメタファイルであって、最後に更新されたファイルを形成するデータに対応するキー情報が記述されたメタファイルを前記ファイル毎に記憶する
ことを特徴とする請求項１に記載のストレージシステム。
【請求項３】
前記データ書込部は、
前記データを所定サイズのデータ長に分割した分割データ毎に当該分割データに対応するキー情報を生成し、生成したキー情報が前記ストレージ装置に記憶されていない場合に、当該分割データと当該キー情報との組合せを前記ストレージ装置に書き込む、
ことを特徴とする請求項１又は２に記載のストレージシステム。
【請求項４】
前記バックアップ管理装置は、
前記受付部によってリストア要求が受け付けられた場合に、前記バックアップ記憶部に記憶されているメタファイルを前記メタファイル記憶部にリストアするリストア部
をさらに備えたことを特徴とする請求項１〜３のいずれか一つに記載のストレージシステム。
【請求項５】
データと当該データを特定するためのキー情報との組合せを、上書き及び削除せずに追加のみでストレージ装置に書き込むとともに、前記ストレージ装置に記憶されているデータに対応するキー情報の一覧を含むメタファイルを記憶する制御装置に対するバックアップ要求を受け付ける受付部と、
前記受付部によってバックアップ要求が受け付けられた場合に、前記制御装置に記憶されているメタファイルを所定のバックアップ記憶部にバックアップするバックアップ部と
を備えたことを特徴とするバックアップ管理装置。
【請求項６】
バックアップ管理装置が実行するバックアップ方法であって、
データと当該データを特定するためのキー情報との組合せを、上書き及び削除せずに追加のみでストレージ装置に書き込むとともに、前記ストレージ装置に記憶されているデータに対応するキー情報の一覧を含むメタファイルを記憶する制御装置に対するバックアップ要求を受け付ける受付工程と、
前記受付工程においてバックアップ要求が受け付けられた場合に、前記制御装置に記憶されているメタファイルを所定のバックアップ記憶部にバックアップするバックアップ工程と
を含んだことを特徴とするバックアップ方法。
【請求項７】
データと当該データを特定するためのキー情報との組合せを、上書き及び削除せずに追加のみでストレージ装置に書き込むとともに、前記ストレージ装置に記憶されているデータに対応するキー情報の一覧を含むメタファイルを記憶する制御装置に対するバックアップ要求を受け付ける受付手順と、
前記受付手順においてバックアップ要求が受け付けられた場合に、前記制御装置に記憶されているメタファイルを所定のバックアップ記憶部にバックアップするバックアップ手順と
をコンピュータに実行させることを特徴とするバックアッププログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ストレージシステム、バックアップ管理装置、バックアップ方法及びバックアッププログラムに関する。
【背景技術】
【０００２】
従来、コンピュータシステムにおいては、各種データを任意の時点における状態に戻すことが可能なように、各種データのバックアップが行われている。バックアップデータを用いれば、例えば、コンピュータウイルスに感染した場合に、感染前のデータに戻したり、誤ってデータを上書きした場合に、上書き前のデータに戻したりすることが可能となる。
【０００３】
バックアップ方式としては、例えば、差分バックアップ、増分バックアップ、世代管理バックアップ等が知られている。差分バックアップは、まずデータ全体をバックアップ（フルバックアップ）し、２回目以降は、フルバックアップデータとの差分データをバックアップする方式である（非特許文献１）。かかる差分バックアップの利点は、フルバックアップデータと差分データが存在すれば、任意の時点における状態までワンホップで遡れるので、リストアの時間が早い点が挙げられる。一方、差分バックアップの欠点は、あらゆる時点で差分データをバックアップしなければ任意の時点における状態まで遡れないので、バックアップ容量を圧迫する点、また、フルバックアップデータからの差分が大きくなればなるほど、差分データの量が増えるので、バックアップに時間を要する点が挙げられる。
【０００４】
増分バックアップは、まずフルバックアップを行い、２回目はフルバックアップデータとの差分データ、３回目は２回目の差分データとの差分データという形で、ｎ回目に（ｎ−１）回目との差分データをバックアップする方式である（非特許文献２）。かかる増分バックアップの利点は、毎回のバックアップが前回との差分データだけであるので、バックアップの時間が早い点が挙げられる。一方、増分バックアップの欠点は、リストアを行う場合に、これまでの全ての差分データを辿らなくてはならないので、リストアに時間を要する点が挙げられる。
【０００５】
世代管理バックアップは、決められた世代分のフルバックアップデータを保持し、古いフルバックアップデータから順次削除する方式である。かかる世代管理バックアップの利点は、バックアップ、リストアともに容易である点、また、リストアの時間が早い点が挙げられる。一方、世代管理バックアップの欠点は、大容量のバックアップ領域が必要なため、世代数を限定することを要する点である。
【０００６】
ところで、コンピュータシステムにおけるデータの保存・管理手法として、ＫＶＳ（Key  Value  Store）が知られている。かかるＫＶＳは、所定のデータであるｖａｌｕｅに対して、かかるｖａｌｕｅを特定するためのｋｅｙを割り当て、ｋｅｙとｖａｌｕｅとの組合せを記憶する方式である。このようなＫＶＳによりデータ管理する場合であっても、上述したようなバックアップが行われる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】"バックアップ  ｆｏｒ  ＰＣ"、［online］、［平成２４年３月７日検索］、インターネット＜http://backup.hikaq.com/yogo/sabun.html＞
【非特許文献２】"バックアップ  ｆｏｒ  ＰＣ"、［online］、［平成２４年３月７日検索］、インターネット＜http://backup.hikaq.com/yogo/zobun.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記の通り、データのバックアップに要する時間、データのリストアに要する時間、バックアップに必要なバックアップ容量は、トレードオフの関係にある。すなわち、上述した各バックアップ方式では、バックアップ容量を圧迫することなくデータのバックアップ及びリストアの時間を短縮することが困難である。
【０００９】
本願の開示する技術は、上記に鑑みてなされたものであって、バックアップ容量の圧迫を防止するとともに、データのバックアップ及びリストアの時間を短縮することができるストレージシステム、バックアップ管理装置、バックアップ方法及びバックアッププログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
実施形態に係るストレージシステムは、ストレージ装置と、制御装置と、バックアップ管理装置とを含むストレージシステムであって、前記制御装置は、データと当該データを特定するためのキー情報との組合せを、上書き及び削除せずに追加のみで前記ストレージ装置に書き込むデータ書込部と、前記ストレージ装置に記憶されているデータに対応するキー情報の一覧を含むメタファイルを記憶するメタファイル記憶部とを備え、前記バックアップ管理装置は、バックアップ要求を受け付ける受付部と、前記受付部によってバックアップ要求が受け付けられた場合に、前記メタファイル記憶部に記憶されているメタファイルを所定のバックアップ記憶部にバックアップするバックアップ部とを備えることを特徴とする。
【発明の効果】
【００１１】
実施形態に係るストレージシステム、バックアップ管理装置、バックアップ方法及びバックアッププログラムは、バックアップ容量の圧迫を防止するとともに、データのバックアップ及びリストアの時間を短縮することができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、第１の実施形態に係るストレージシステムの構成例を示す図である。
【図２】図２は、第１の実施形態に係るストレージ装置群及び制御装置が保持する情報を模式的に示す図である。
【図３】図３は、第１の実施形態に係る制御装置及びバックアップ管理装置の構成例を示す図である。
【図４】図４は、第１の実施形態に係る制御装置内のフォルダ構成例を示す図である。
【図５】図５は、第１の実施形態に係るメタファイルの一例を示す図である。
【図６】図６は、第１の実施形態に係るデータ読込部によるデータ読込処理の一例を示す図である。
【図７】図７は、第１の実施形態に係るデータ読込部によるデータ読込処理の一例を示す図である。
【図８】図８は、第１の実施形態に係るデータ書込部によるデータ書込処理の一例を示す図である。
【図９】図９は、第１の実施形態に係るデータ書込部によるデータ書込処理の一例を示す図である。
【図１０】図１０は、第１の実施形態に係るバックアップリスト記憶部の一例を示す図である。
【図１１】図１１は、第１の実施形態に係るバックアップ管理装置によるバックアップ処理手順を示すフローチャートである。
【図１２】図１２は、第１の実施形態に係るバックアップ管理装置によるリストア処理手順を示すフローチャートである。
【図１３】図１３は、バックアッププログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１３】
以下に、本願に係るストレージシステム、バックアップ管理装置、バックアップ方法及びバックアッププログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本願に係るストレージシステム、バックアップ管理装置、バックアップ方法及びバックアッププログラムが限定されるものではない。
【００１４】
（第１の実施形態）
［ストレージシステムの構成］
まず、図１を用いて、第１の実施形態に係るストレージシステムについて説明する。図１は、第１の実施形態に係るストレージシステムの構成例を示す図である。図１に示した例では、ストレージシステム１には、ストレージ装置群１０と、ユーザ側装置２０と、制御装置１００と、バックアップ管理装置２００とが含まれる。なお、図１では、１台のユーザ側装置２０が含まれる例を示したが、複数台のユーザ側装置２０が含まれてもよい。
【００１５】
ストレージ装置群１０は、各種データを記憶する複数のストレージ装置１０１〜１０５を含む。かかるストレージ装置１０１〜１０５は、データ管理方式としてＫＶＳが採用されており、ｋｅｙとｖａｌｕｅとの組合せを記憶する。なお、図１に示した例では、５台のストレージ装置１０１〜１０５を示したが、ストレージ装置群１０には、４台以下のストレージ装置が含まれてもよいし、６台以上のストレージ装置が含まれてもよい。
【００１６】
ユーザ側装置２０は、ユーザによって利用されるＰＣ（Personal  Computer）やサーバ装置等の情報処理装置である。かかるユーザ側装置２０は、ストレージ装置群１０を記憶領域として利用する各種アプリケーションが搭載される。すなわち、ユーザ側装置２０は、制御装置１００を介して、ストレージ装置群１０に各種データを格納したり、ストレージ装置群１０に記憶されている各種データを読み出したりする。
【００１７】
制御装置１００は、ストレージ装置群１０とユーザ側装置２０との間におけるデータのリードライト等を制御する。具体的には、制御装置１００は、ユーザ側装置２０からデータの書込要求（ライト要求）を受け付けた場合に、かかるデータを予め決められたビット長（例えば、２５６ＫＢ）のｖａｌｕｅ（「チャンク」等とも呼ばれる）に分割する。そして、制御装置１００は、各ｖａｌｕｅについてｈａｓｈ（ｖａｌｕｅ）を計算することにより、各ｖａｌｕｅに対応するｋｅｙ（ハッシュ値）を生成し、ｋｅｙ及びｖａｌｕｅの組合せをストレージ装置群１０に書き込む。なお、ｈａｓｈは、衝突困難性を有するハッシュ関数であり、例えば、ＳＨＡ２５６等である。
【００１８】
また、制御装置１００は、ストレージ装置群１０に書き込んだデータの属性情報等が記述されたメタファイルを記憶する。具体的には、制御装置１００は、ストレージ装置群１０に書き込まれたｋｅｙが記述されたメタファイルを記憶する。
【００１９】
また、制御装置１００は、ユーザ側装置２０からデータの読込要求（リード要求）を受け付けた場合に、メタファイルに記述されているｋｅｙを参照して、読込対象のｋｅｙに対応するｖａｌｕｅをストレージ装置群１０から読み込み、読み込んだｖａｌｕｅを結合してユーザ側装置２０に送信する。
【００２０】
なお、第１の実施形態に係る制御装置１００は、ストレージ装置群１０に記憶されるｖａｌｕｅによって形成される所定のファイル（例えば、テキストファイル、表計算ファイル、ワープロ文書ファイル、画像ファイルなど）毎に、かかる所定のファイルに対応するメタファイルを記憶する。すなわち、制御装置１００は、ユーザ側装置２０によって指定され得るファイル毎に、メタファイルを記憶する。例えば、ファイル「Ａ．ｔｘｔ」（実際には、ビット列のデータ）が３個のｖａｌｕｅに分割されてストレージ装置群１０に記憶されている場合、制御装置１００は、ファイル「Ａ．ｔｘｔ」に対応する１個のメタファイルを記憶する。そして、かかるメタファイルには、「Ａ．ｔｘｔ」が分割された３個のｖａｌｕｅに対応する３個のｋｅｙが記述されることとなる。
【００２１】
以下では、ストレージ装置群１０に記憶されているｖａｌｕｅによって形成されるファイルであって、制御装置１００に記憶されるメタファイルに対応するファイルを「メタ対応ファイル」と表記する場合がある。
【００２２】
ここで、上述した制御装置１００は、ストレージ装置群１０にデータを書き込む場合に、ストレージ装置群１０に記憶されているｋｅｙとｖａｌｕｅとの組合せを上書き及び削除せずに、追加のみでｋｅｙとｖａｌｕｅとの組合せを格納する。また、制御装置１００は、自装置（制御装置１００）内で保持するメタファイルについては最新の情報に更新する。
【００２３】
この点について図２を用いて具体的に説明する。図２は、第１の実施形態に係るストレージ装置群１０及び制御装置１００が保持する情報を模式的に示す図である。図２の上段に示すように、ストレージ装置群１０が、ｋｅｙ「ｋ１」及びｖａｌｕｅ「ｖ１」の組合せと、ｋｅｙ「ｋ２」及びｖａｌｕｅ「ｖ２」の組合せと、ｋｅｙ「ｋ３」及びｖａｌｕｅ「ｖ３」の組合せとを記憶しているものとする。かかるｖａｌｕｅ「ｖ１」〜「ｖ３」は、ファイルＡ（例えば、テキストファイル）を形成するものとする。このとき、制御装置１００が、ファイルＡに対応するメタファイルとして、ｋｅｙ「ｋ１」、「ｋ２」及び「ｋ３」が記述されたメタファイルＭ１を記憶しているものとする。
【００２４】
このような状況において、例えば、ユーザ側装置２０が、制御装置１００を介して、ファイルＡを形成するｖａｌｕｅ「ｖ１」〜「ｖ３」のうち、ｖａｌｕｅ「ｖ１」をｖａｌｕｅ「ｖ４」に更新する処理を行ったものとする。かかる場合に、制御装置１００は、ｖａｌｕｅ「ｖ４」に対応するｋｅｙ「ｋ４」を生成する。そして、制御装置１００は、図２の下段に示すように、ストレージ装置群１０に記憶されているｋｅｙ「ｋ１」とｖａｌｕｅ「ｖ１」との組合せを更新せずに、ｋｅｙ「ｋ４」とｖａｌｕｅ「ｖ４」との組合せを新たにストレージ装置群１０に格納する。そして、制御装置１００は、自装置（制御装置１００）内で保持するメタファイルＭ１については、ｋｅｙ「ｋ１」をｋｅｙ「ｋ４」に更新する。
【００２５】
図１に戻って、バックアップ管理装置２００は、所定のタイミングとなった場合に、制御装置１００に記憶されているメタファイルをバックアップする。例えば、バックアップ管理装置２００は、システム管理者によってバックアップする旨の操作が行われた場合に、メタファイルをバックアップする。
【００２６】
また、バックアップ管理装置２００は、システム管理者によってリストアする旨の操作が行われた場合に、バックアップしたメタファイルのうち、システム管理者によって指定されたメタファイルを制御装置１００にリストアする。
【００２７】
ここで、図２を用いて、バックアップ管理装置２００によるバックアップ処理の一例について説明する。例えば、バックアップ管理装置２００は、図２の上段に示した状態においてバックアップのタイミングとなった場合、制御装置１００に記憶されているメタファイルＭ１（ｋｅｙ「ｋ１」〜「ｋ３」が記述されている）をバックアップする。
【００２８】
そして、バックアップ管理装置２００は、図２の下段に示した状態となった後に、図２の上段に示した状態に戻すために、メタファイルＭ１をリストアするように指示された場合、バックアップしたメタファイルＭ１を制御装置１００にリストアする。この場合、制御装置１００には、ｋｅｙ「ｋ１」〜「ｋ３」が記述されているメタファイルＭ１が記憶される。ただし、ストレージ装置群１０には、ｋｅｙ「ｋ１」〜「ｋ４」及びｖａｌｕｅ「ｖ１」〜「ｖ４」が記憶されたままの状態となる。すなわち、制御装置１００は、ファイルＡに対応するメタファイルとして、ｋｅｙ「ｋ１」〜「ｋ３」が記述されたメタファイルＭ１を記憶するので、ユーザ側装置２０からファイルＡの読込要求を受け付けた場合には、ｋｅｙ「ｋ１」〜「ｋ３」に対応するｖａｌｕｅ「ｖ１」〜「ｖ３」により形成されるファイルＡをユーザ側装置２０に応答することとなる。
【００２９】
このように、第１の実施形態に係るバックアップ管理装置２００は、制御装置１００に記憶されているメタファイルを世代管理バックアップするだけで、ユーザ側装置２０が参照可能なデータを任意の時点における状態に戻すことができる。また、バックアップ管理装置２００は、ストレージ装置群１０に記憶されているデータ自体（ｖａｌｕｅ）をバックアップするのではなく、ｋｅｙ等が記述された容量の小さいメタファイルをバックアップするだけなので、バックアップ領域が圧迫されることを防止することができ、さらに、バックアップ処理の高速化及び負荷低減を図ることができる。また、バックアップ管理装置２００は、リストア時には、容量の小さいメタファイルを制御装置１００にコピーするだけなので、リストア処理の高速化及び負荷低減を図ることができる。以上のように、第１の実施形態に係るバックアップ管理装置２００は、バックアップ容量の圧迫を防止するとともに、データのバックアップ及びリストアの時間を短縮することができる。
【００３０】
［制御装置１００の構成］
次に、図１に示した制御装置１００及びバックアップ管理装置２００の構成について説明する。図３は、第１の実施形態に係る制御装置１００及びバックアップ管理装置２００の構成例を示す図である。
【００３１】
図３に示すように、制御装置１００は、メタファイル記憶部１１０と、マウント部１２１と、参照部１２２と、キャッシュメモリ１２３と、データ読込部１２４と、データ書込部１２５とを有する。
【００３２】
メタファイル記憶部１１０は、ストレージ装置群１０に記憶されている各種データに対応するメタファイルを記憶する。なお、メタファイル記憶部１１０は、ハードディスク等によって実現される記憶領域であり、フォルダ（ディレクトリ等とも呼ばれる）により構成されるファイルシステムによって管理される。そして、メタファイル記憶部１１０は、かかるファイルシステムによって管理されるフォルダのうち、所定のフォルダ配下にメタファイルを記憶する。以下では、メタファイルが記憶されるフォルダを「ソースフォルダ」と表記する場合がある。
【００３３】
マウント部１２１は、メタファイルが記憶されるソースフォルダを他のフォルダ（以下、「ルートフォルダ」と表記する）に割り当てる。
【００３４】
ここで、図４を用いて、マウント部１２１による処理について説明する。図４は、第１の実施形態に係る制御装置１００内のフォルダ構成例を示す図である。図４の＜実体＞に示したフォルダ構成は、メタファイルが実際に記憶されるメタファイル記憶部１１０のフォルダ構成を示す。
【００３５】
具体的には、図４の＜実体＞において、ソースフォルダは、「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ」に該当する。また、図４の＜実体＞では、ソースフォルダ配下のフォルダＦ１０にメタファイルＭ１１及びＭ１２が記憶されており、フォルダＦ２０にメタファイルＭ２１及びＭ２２が記憶されており、ソースフォルダの直下にメタファイルＭ１０が記憶されている例を示している。
【００３６】
また、図４の＜仮想ファイルシステム＞は、マウント部１２１によって、ソースフォルダ「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ」がルートフォルダ「Ｖ：￥」に割り当てられた例を示している。
【００３７】
ここで、第１の実施形態では、各メタファイルのファイル名は、かかるメタファイルに対応するメタ対応ファイルのファイル名と同一であるものとする。例えば、メタ対応ファイル「Ａ．ｔｘｔ」のｖａｌｕｅがストレージ装置群１０に記憶されている場合、制御装置１００は、メタ対応ファイル「Ａ．ｔｘｔ」に対応する１個のメタファイル「Ａ．ｔｘｔ」を記憶する。なお、図４に示した例では、メタファイルに付した参照符号がメタファイルのファイル名であるものとする。例えば、メタファイルＭ１１のファイル名は「Ｍ１１」である。
【００３８】
そして、制御装置１００は、ユーザ側装置２０に対しては、図４の＜仮想ファイルシステム＞に示したフォルダ構成を提供する。すなわち、ユーザ側装置２０のユーザは、「Ｖ：￥Ｆ１０」配下に、ファイル名が「Ｍ１１」であるファイルと、ファイル名が「Ｍ１２」であるファイルとが記憶されており、「Ｖ：￥Ｆ２０」配下に、ファイル名が「Ｍ２１」であるファイルと、ファイル名が「Ｍ２２」であるファイルとが記憶されていると認識することとなる。
【００３９】
なお、図４では、ソースフォルダが「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ」である例を示したが、ストレージ装置群１０が複数のユーザによって利用される場合等では、ユーザ毎にソースフォルダが存在してもよい。かかる場合には、ソースフォルダは、例えば、「Ｃ：￥ｔｅｓｔ￥（ユーザＩＤ）」等が該当する。
【００４０】
続いて、第１の実施形態に係るメタファイルについて説明する。第１の実施形態に係るメタファイルは、少なくとも以下の（１）〜（７）に示す情報を含む。
【００４１】
（１）ソースフォルダからの相対位置（相対ファイルパス）
（２）ファイル名
（３）メタファイルに対応するメタ対応ファイルのファイルサイズ
（４）ｋｅｙのリスト
（５）メタ対応ファイルの作成日時
（６）メタ対応ファイルの更新日時
（７）メタ対応ファイルへのアクセス日時
【００４２】
上記（１）、（２）、（５）〜（７）は、メタファイル自体の属性情報に該当する。このうち、（５）〜（７）は、メタファイル自体の属性情報であるが、メタ対応ファイルの属性情報にも該当する。具体的には、第１の実施形態において、メタ対応ファイルが作成、更新、アクセス（参照）された場合には、かかるメタ対応ファイルに対応するメタファイルも作成、更新、アクセス（参照）される。すなわち、メタファイルの作成日時、更新日時、アクセス日時は、メタ対応ファイルの作成日時、更新日時、アクセス日時を示すこととなる。
【００４３】
また、上記（３）及び（４）は、メタファイルに記述される。この点について図５を用いて説明する。図５は、第１の実施形態に係るメタファイルの一例を示す図である。図５では、図４に示したメタファイルＭ１１を例に挙げて説明する。
【００４４】
図５に示したメタファイルＭ１１のうち、１行目Ｌ１１には、上記（１）ファイルサイズが記述される。かかるファイルサイズは、メタファイルＭ１１のファイルサイズではなく、メタファイルＭ１１に対応するメタ対応ファイルのサイズを示す。また、メタファイルＭ１１のうち、２行目以降のＬ１２〜Ｌ１５には、メタ対応ファイルを形成するｖａｌｕｅのｋｅｙが記述される。すなわち、図５にメタファイルＭ１１に対応するメタ対応ファイルは、４個のｖａｌｕｅに分割されており、メタファイルＭ１１には、かかる４個のｖａｌｕｅに対応する４個のｋｅｙが記述される。
【００４５】
図３に戻って、参照部１２２は、ユーザ側装置２０によってルートフォルダ配下のフォルダにアクセスされた場合に、かかるフォルダ内に存在するメタファイルの一覧をユーザ側装置２０に応答する。
【００４６】
具体的には、参照部１２２は、ユーザ側装置２０から、ルートフォルダ配下のフォルダを特定するためのフォルダパス（例えば、絶対パス）とともに、ファイル一覧の参照要求を受け付ける。かかる場合に、参照部１２２は、ユーザ側装置２０から受け付けたフォルダパス（例えば、絶対パス）のうち、ルートフォルダを起点とした場合における相対パスを取得する。そして、参照部１２２は、ソースフォルダを起点とし、かかる相対パスによって示されるフォルダが存在するか否かを判定する。そして、参照部１２２は、フォルダが存在しない場合には、存在しない旨をユーザ側装置２０に応答する。一方、参照部１２２は、フォルダが存在する場合には、かかるフォルダ配下に存在するメタファイルの一覧を取得し、取得した一覧をユーザ側装置２０に応答する。
【００４７】
図４に示した例を用いて説明する。例えば、参照部１２２は、フォルダパス「Ｖ：￥Ｆ１０」とともに参照要求を受け付けたものとする。かかる場合に、参照部１２２は、フォルダパス「Ｖ：￥Ｆ１０」から、ルートフォルダ「Ｖ：￥」からの相対パス「Ｆ１０」を取得する。そして、参照部１２２は、ソースフォルダ「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ」を起点とした場合に相対パス「Ｆ１０」によって示される「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ￥Ｆ１０」が存在するか否かを判定する。図４に示した例では、「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ￥Ｆ１０」が存在するので、参照部１２２は、Ｆ１０の配下に存在するメタファイルの一覧「Ｍ１１」及び「Ｍ１２」をユーザ側装置２０に応答する。
【００４８】
また、参照部１２２は、ユーザ側装置２０からメタ対応ファイルの属性情報参照要求を受信した場合には、メタファイル記憶部１１０に記憶されているメタファイルに関する各種情報をユーザ側装置２０に応答する。
【００４９】
具体的には、参照部１２２は、ユーザ側装置２０から、ルートフォルダ配下のファイルを特定するためのファイルパス（例えば、絶対パス）とともに、属性情報参照要求を受け付ける。かかる場合に、参照部１２２は、ユーザ側装置２０から受け付けたファイルパス（例えば、絶対パス）のうち、ルートフォルダを起点とした場合における相対パスを取得する。そして、参照部１２２は、ソースフォルダを起点とし、かかる相対パスによって示されるメタファイルを特定する。そして、参照部１２２は、特定したメタファイルのファイル名、ファイルサイズ、作成日時、更新日時、アクセス日時等をユーザ側装置２０に応答する。なお、参照部１２２は、ファイルサイズについては、特定したメタファイルに記述されているファイルサイズの情報をメタ対応ファイルのファイルサイズとして応答する。
【００５０】
図４に示した例を用いて説明する。例えば、参照部１２２は、フォルダパス「Ｖ：￥Ｆ１０￥Ｍ１１」とともに属性情報参照要求を受け付けたものとする。かかる場合に、参照部１２２は、ファイルパス「Ｖ：￥Ｆ１０￥Ｍ１１」から、ルートフォルダ「Ｖ：￥」からの相対パス「Ｆ１０￥Ｍ１１」を取得する。そして、参照部１２２は、ソースフォルダ「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ」からの相対パス「Ｆ１０￥Ｍ１１」、すなわち、「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ￥Ｆ１０￥Ｍ１１」を特定する。そして、参照部１２２は、メタファイルＭ１１から取得できるファイル名、ファイルサイズ、作成日時、更新日時、アクセス日時等をユーザ側装置２０に応答する。
【００５１】
なお、上記の通り、メタファイルの各種属性情報（ファイル名、作成日時、更新日時及びアクセス日時等）は、メタ対応ファイルの属性情報を示し、メタファイルに記述されているファイルサイズは、メタ対応ファイルのファイルサイズを示す。したがって、ユーザ側装置２０は、参照部１２２から、メタファイルの各種属性情報を受信することにより、メタ対応ファイルの属性情報を取得することができる。
【００５２】
また、参照部１２２は、ユーザ側装置２０から、フォルダパスとともにフォルダの作成要求を受け付けた場合には、指定されたフォルダをソースフォルダに作成し、フォルダパスとともにフォルダの削除要求を受け付けた場合には、指定されたフォルダをソースフォルダから削除する。
【００５３】
図３に戻って、キャッシュメモリ１２３は、後述するデータ読込部１２４及びデータ書込部１２５によって、ｋｅｙとｖａｌｕｅとの組合せが格納される。キャッシュメモリ１２３については、データ読込部１２４及びデータ書込部１２５とともに説明する。
【００５４】
データ読込部１２４は、ユーザ側装置２０からデータのリード要求を受け付けた場合に、ストレージ装置群１０やキャッシュメモリ１２３からデータ（ｖａｌｕｅ）を取得し、取得したデータをユーザ側装置２０に応答する。
【００５５】
具体的には、データ読込部１２４は、リード要求とともに、ルートフォルダ配下のファイルを特定するための「ファイルパス」と、「読み出し開始位置」と、「最大読み出しサイズ」をユーザ側装置２０から受け付ける。
【００５６】
かかる場合に、データ読込部１２４は、ユーザ側装置２０から受け付けたファイルパスのうちルートフォルダからの相対パスを取得し、かかる相対パスによって示されるソースフォルダ配下のメタファイルを特定する。
【００５７】
そして、データ読込部１２４は、特定したメタファイルを開く処理（ファイルオープン）を行う。このとき、データ読込部１２４は、相対パスによって示されるメタファイルが存在しない場合には、ユーザ側装置２０から受け付けたファイルパスによって示されるファイル（すなわち、メタ対応ファイル）が存在しない旨をユーザ側装置２０に応答する。
【００５８】
一方、データ読込部１２４は、相対パスによって示されるメタファイルが存在する場合には、かかるメタファイルを開く。そして、データ読込部１２４は、予め決められているｖａｌｕｅのサイズ（データの分割サイズ）と、ユーザ側装置２０から受け付けた「読み出し開始位置」及び「最大読み出しサイズ」とを用いて、特定したメタファイルに記述されているｋｅｙのリストのうち、参照対象のｋｅｙを特定する。
【００５９】
このとき、データ読込部１２４は、参照対象のｋｅｙがキャッシュメモリ１２３に記憶されている場合には、かかるｋｅｙに対応するｖａｌｕｅをキャッシュメモリ１２３から取得する。一方、データ読込部１２４は、参照対象のｋｅｙがキャッシュメモリ１２３に記憶されていない場合には、かかるｋｅｙに対応するｖａｌｕｅをストレージ装置群１０から取得する。
【００６０】
なお、後述するデータ書込部１２５は、ｋｅｙとストレージ装置１０１〜１０５とを対応付ける対応表やアルゴリズムを用いることにより、ｋｅｙ及びｖａｌｕｅの組合せの格納先となるストレージ装置１０１〜１０５のいずれかを特定する。そして、データ読込部１２４は、データ書込部１２５と同様に、上記の対応表やアルゴリズムを用いることにより、ｋｅｙ及びｖａｌｕｅの組合せが記憶されているストレージ装置１０１〜１０５のいずれかを特定し、特定したストレージ装置１０１〜１０５のいずれかから、ｋｅｙに対応するｖａｌｕｅをストレージ装置群１０から取得する。
【００６１】
そして、データ読込部１２４は、ストレージ装置群１０又はキャッシュメモリ１２３から取得したｖａｌｕｅを結合することにより、ユーザ側装置２０により指定されたリード対象のデータを生成し、生成したデータをユーザ側装置２０に応答する。
【００６２】
ここで、図６及び図７を用いて、データ読込部１２４によるデータ読込処理について説明する。図６及び図７は、第１の実施形態に係るデータ読込部１２４によるデータ読込処理の一例を示す図である。
【００６３】
図６に示した例において、実データとは、ストレージ装置群１０に記憶されているデータを示す。データ読込部１２４は、ユーザ側装置２０からリード要求とともに受け付けた「ファイルパス」から、リード対象のデータに関するｋｅｙが記述されているメタファイルを特定する。そして、データ読込部１２４は、かかる「ファイルパス」が示すメタ対応ファイルの実データのうち「読み出し開始位置」から「最大読み出しサイズ」までの範囲に対応するｋｅｙを、前述において特定したメタファイルから読み出す。図６に示した例では、データ読込部１２４は、メタファイルからｋｅｙ「ｋ１２」、「ｋ１３」及び「ｋ１４」を読み出す。
【００６４】
続いて、データ読込部１２４は、ｋｅｙ「ｋ１２」、「ｋ１３」及び「ｋ１４」がキャッシュメモリ１２３に記憶されているか否かを判定する。図６の例では、ｋｅｙ「ｋ１２」、「ｋ１３」及び「ｋ１４」のいずれもキャッシュメモリ１２３に記憶されていないものとする。かかる場合に、データ読込部１２４は、ｋｅｙ「ｋ１２」に対応するｖａｌｕｅ「ｖ１２」と、ｋｅｙ「ｋ１３」に対応するｖａｌｕｅ「ｖ１３」と、ｋｅｙ「ｋ１４」に対応するｖａｌｕｅ「ｖ１４」とをストレージ装置群１０から読み出す。
【００６５】
そして、データ読込部１２４は、ｖａｌｕｅ「ｖ１２」〜「ｖ１４」のうち、ユーザ側装置２０によって指定された「読み出し開始位置」から「最大読み出しサイズ」までの範囲に対応する実データを抽出し、抽出した実データを結合する。そして、データ読込部１２４は、結合した実データをユーザ側装置２０に応答する。
【００６６】
一方、図７に示した例のように、ｋｅｙ「ｋ１２」、「ｋ１３」及び「ｋ１４」がキャッシュメモリ１２３に記憶されているものとする。かかる場合に、データ読込部１２４は、キャッシュメモリ１２３に記憶されているｋｅｙ「ｋ１２」〜「ｋ１４」に対応するｖａｌｕｅ「ｖ１２」〜「ｖ１４」のうち、「読み出し開始位置」から「最大読み出しサイズ」までの範囲に対応する実データを読み出し、読み出した実データを結合する。そして、データ読込部１２４は、結合した実データをユーザ側装置２０に応答する。
【００６７】
図３に戻って、データ書込部１２５は、ユーザ側装置２０からデータのライト要求を受け付けた場合に、受け付けたデータをｖａｌｕｅに分割し、分割したｖａｌｕｅをストレージ装置群１０に書き込む。
【００６８】
具体的には、データ書込部１２５、ライト要求とともに、ルートフォルダ配下のファイルを特定するための「ファイルパス」と、「書き込み開始位置」と、「書き込みデータ」とをユーザ側装置２０から受け付ける。
【００６９】
かかる場合に、データ書込部１２５は、ユーザ側装置２０から受け付けたファイルパスのうちルートフォルダからの相対パスを取得し、かかる相対パスによって示されるソースフォルダ配下のメタファイルを特定する。
【００７０】
そして、データ書込部１２５は、特定したメタファイルを開く。そして、データ書込部１２５は、予め決められているｖａｌｕｅのサイズ（データの分割サイズ）と、ユーザ側装置２０から受け付けた「書き込み開始位置」及び「書き込みデータのサイズ」とを用いて、特定したメタファイルに記述されているｋｅｙのリストのうち、書き換え対象のｋｅｙを特定する。
【００７１】
このとき、データ書込部１２５は、書き換え対象のｋｅｙがキャッシュメモリ１２３に記憶されている場合には、かかるｋｅｙに対応するｖａｌｕｅをキャッシュメモリ１２３から取得する。一方、データ書込部１２５は、書き換え対象のｋｅｙがキャッシュメモリ１２３に記憶されていない場合には、かかるｋｅｙに対応するｖａｌｕｅをストレージ装置群１０から取得する。
【００７２】
また、データ書込部１２５は、書き換え対象のｋｅｙがキャッシュメモリ１２３に記憶されている場合には、かかるｋｅｙに対応するキャッシュメモリ１２３内のｖａｌｕｅのうち、「書き込み開始位置」により特定される位置のデータを「書き込みデータ」に書き換える。
【００７３】
また、データ書込部１２５は、ストレージ装置群１０又はキャッシュメモリ１２３から取得したｖａｌｕｅを、ユーザ側装置２０から受け付けた「書き込みデータ」に書き換える。そして、データ書込部１２５は、書き換え後のｖａｌｕｅに対して、ｋｅｙ＝ｈａｓｈ（ｖａｌｕｅ）を計算することにより、書き換え後のｖａｌｕｅに対応する新たなｋｅｙを算出する。
【００７４】
そして、データ書込部１２５は、書き換え対象のｋｅｙがキャッシュメモリ１２３に記憶されている場合には、キャッシュメモリ１２３に記憶されている書き換え対象のｋｅｙを、新たなｋｅｙに更新する。一方、データ書込部１２５は、書き換え対象のｋｅｙがキャッシュメモリ１２３に記憶されていない場合には、新たなｋｅｙと書き換え後のｖａｌｕｅとの組合せをキャッシュメモリ１２３に格納する。
【００７５】
また、データ書込部１２５は、新たなｋｅｙと書き換え後のｖａｌｕｅとの組合せをストレージ装置群１０に格納する。このとき、データ書込部１２５は、上記の通り、ｋｅｙとストレージ装置１０１〜１０５とを対応付ける対応表やアルゴリズムを用いて、新たなｋｅｙと書き換え後のｖａｌｕｅとの組合せの格納先となるストレージ装置１０１〜１０５のいずれかを特定する。例えば、データ書込部１２５は、上記の対応表を参照することにより、ｋｅｙのハッシュ値（例えば、先頭１ビット目の値）に対応するストレージ装置を格納先として特定する。
【００７６】
そして、データ書込部１２５は、格納先のストレージ装置に、新たなｋｅｙが既に記憶されているか否かを判定する。このとき、データ書込部１２５は、新たなｋｅｙが既に記憶されている場合には、新たなｋｅｙと書き換え後のｖａｌｕｅとの組合せを格納先のストレージ装置に格納しない。一方、データ書込部１２５は、新たなｋｅｙが格納先のストレージ装置に記憶されていない場合には、新たなｋｅｙと書き換え後のｖａｌｕｅとの組合せを格納先のストレージ装置に格納する。
【００７７】
このように、第１の実施形態に係るデータ書込部１２５は、同一のｋｅｙとｖａｌｕｅとの組合せを重複してストレージ装置群１０に格納しない。これにより、データ書込部１２５は、ストレージ装置群１０の記憶容量を効率的に利用することができる。
【００７８】
なお、データ書込部１２５は、ソースフォルダ配下のメタファイルを開く処理を行う際に、かかるメタファイルが存在しなければ、「ファイルパス」に含まれるファイル名のメタファイルを新規に作成する。この例は、ストレージ装置群１０に記憶されていないメタ対応ファイルが新たにストレージ装置群１０に書き込まれることを示す。この場合、データ書込部１２５は、ユーザ側装置２０から受け付けた「書き込みデータ」を分割してｖａｌｕｅを生成するとともに、各ｖａｌｕｅに対応するｋｅｙを算出する。そして、データ書込部１２５は、ｋｅｙとｖａｌｕｅとの組合せをストレージ装置群１０に格納するとともに、キャッシュメモリ１２３に格納する。
【００７９】
ここで、図８及び図９を用いて、データ書込部１２５によるデータ書込処理について説明する。図８及び図９は、第１の実施形態に係るデータ書込部１２５によるデータ書込処理の一例を示す図である。なお、図８及び図９では、ストレージ装置群１０に既に記憶されているデータ（ｖａｌｕｅ）を更新する例について説明する。
【００８０】
図８に示した例において、データ書込部１２５は、ユーザ側装置２０からライト要求とともに受け付けた「ファイルパス」から、メタファイルを特定する。そして、データ書込部１２５は、かかる「ファイルパス」が示すメタ対応ファイルの実データのうち、「書き込み開始位置」から「書き込みデータのサイズ」までの範囲に対応するｋｅｙを、前述において特定したメタファイルから読み出す。図８に示した例では、データ書込部１２５は、メタファイルからｋｅｙ「ｋ１２」、「ｋ１３」及び「ｋ１４」を読み出す。
【００８１】
続いて、データ書込部１２５は、ｋｅｙ「ｋ１２」、「ｋ１３」及び「ｋ１４」がキャッシュメモリ１２３に記憶されているか否かを判定する。図８の例では、ｋｅｙ「ｋ１２」、「ｋ１３」及び「ｋ１４」のいずれもキャッシュメモリ１２３に記憶されていないものとする。かかる場合に、データ書込部１２５は、ｋｅｙ「ｋ１２」に対応するｖａｌｕｅ「ｖ１２」と、ｋｅｙ「ｋ１３」に対応するｖａｌｕｅ「ｖ１３」と、ｋｅｙ「ｋ１４」に対応するｖａｌｕｅ「ｖ１４」とをストレージ装置群１０から読み出す。
【００８２】
そして、データ書込部１２５は、図８の下段に示すように、ストレージ装置群１０から取得したｖａｌｕｅ「ｖ１２」〜「ｋ１４」のうち、「書き込み開始位置」により特定される位置のデータを「書き込みデータ」に書き換える。これにより、データ書込部１２５は、新たなｖａｌｕｅ「ｖ２２」〜「ｖ２４」を生成する。そして、データ書込部１２５は、新たなｖａｌｕｅ「ｖ２２」〜「ｖ２４」に対応するｋｅｙ「ｋ２２」〜「ｋ２４」を算出し、ｋｅｙ「ｋ２２」とｖａｌｕｅ「ｖ２２」との組合せと、ｋｅｙ「ｋ２３」とｖａｌｕｅ「ｖ２３」との組合せと、ｋｅｙ「ｋ２４」とｖａｌｕｅ「ｖ２４」との組合せとをストレージ装置群１０に新たに格納する。
【００８３】
また、図８では図示することを省略したが、データ書込部１２５は、ｋｅｙ「ｋ２２」〜「ｋ２４」とｖａｌｕｅ「ｖ２２」〜「ｖ２４」との組合せをキャッシュメモリ１２３に格納する。
【００８４】
一方、図９に示した例のように、ｋｅｙ「ｋ１２」、「ｋ１３」及び「ｋ１４」がキャッシュメモリ１２３に記憶されているものとする。かかる場合に、データ書込部１２５は、キャッシュメモリ１２３に記憶されているｋｅｙ「ｋ１２」〜「ｋ１４」に対応するｖａｌｕｅ「ｖ１２」〜「ｖ１４」のうち、「書き込み開始位置」により特定される位置のデータを「書き込みデータ」に書き換える。これにより、データ書込部１２５は、図９の上段に示すように、キャッシュメモリ１２３に記憶されていたｖａｌｕｅ「ｖ１２」〜「ｖ１４」をｖａｌｕｅ「ｖ２２」〜「ｖ２４」に更新する。
【００８５】
また、データ書込部１２５は、ｖａｌｕｅ「ｖ２２」〜「ｖ２４」に対応するｋｅｙ「ｋ２２」〜「ｋ２４」を算出する。そして、データ書込部１２５は、図９の下段に示すように、キャッシュメモリ１２３に記憶されていたｋｅｙ「ｋ１２」〜「ｋ１４」をｋｅｙ「ｋ２２」〜「ｋ２４」に更新する。
【００８６】
また、データ書込部１２５は、図８に示した例と同様に、ｋｅｙ「ｋ２２」とｖａｌｕｅ「ｖ２２」との組合せと、ｋｅｙ「ｋ２３」とｖａｌｕｅ「ｖ２３」との組合せと、ｋｅｙ「ｋ２４」とｖａｌｕｅ「ｖ２４」との組合せとをストレージ装置群１０に新たに格納する。
【００８７】
なお、上述した参照部１２２、データ読込部１２４及びデータ書込部１２５は、ファイルを扱う処理部として、ファイルを開いた後には、ファイルを閉じる処理（ファイルクローズ）も行う。このとき、参照部１２２、データ読込部１２４及びデータ書込部１２５は、メタファイルを閉じるたびに、かかるメタファイルに記述されているｋｅｙと、かかるｋｅｙに対応するｖａｌｕｅとをキャッシュメモリ１２３に格納してもよい。
【００８８】
［バックアップ管理装置２００の構成］
次に、図３に示したバックアップ管理装置２００について説明する。図３に示すように、バックアップ管理装置２００は、バックアップ記憶部２１１と、バックアップリスト記憶部２１２と、バックアップ制御部２２０と、リストア制御部２３０とを有する。
【００８９】
バックアップ記憶部２１１は、バックアップ用の記憶領域であり、メタファイル記憶部１１０に記憶されている各メタファイルを記憶する。例えば、バックアップ記憶部２１１は、図４＜実体＞に示したソースフォルダ全体を記憶したり、かかるソースフォルダ配下のフォルダ（例えば、「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ￥Ｆ１０」）を記憶したりする。また、バックアップ記憶部２１１は、メタファイルの世代管理バックアップが可能なように、所定のフォルダ配下に、バックアップ用のメタファイルを記憶する。
【００９０】
バックアップリスト記憶部２１２は、バックアップ記憶部２１１に記憶されているバックアップ用のメタファイル（ソースフォルダ等）を特定するための各種情報を記憶する。ここで、図１０に、第１の実施形態に係るバックアップリスト記憶部２１２の一例を示す。
【００９１】
図１０に示した例では、バックアップリスト記憶部２１２は、「バックアップＩＤ」と「ソースフォルダ名」といった項目を有する。「バックアップＩＤ」は、システム管理者によって指定される情報である。「ソースフォルダ名」は、バックアップ用のメタファイル群が記憶されているバックアップ記憶部２１１内のフォルダ名を示す。
【００９２】
例えば、図１０の例では、メタファイル記憶部１１０に記憶されていた初期状態のメタファイル群（例えば、ソースフォルダ）が、バックアップ記憶部２１１内のフォルダ名「０００１」配下に記憶されていることを示す。また、図１０の例では、バックアップＩＤ「２０１１０３１２」がシステム管理者によって指定された際にバックアップしたメタファイル群が、バックアップ記憶部２１１内のフォルダ名「０００２」配下に記憶されていることを示す。
【００９３】
図３に戻って、バックアップ制御部２２０は、制御装置１００のメタファイル記憶部１１０に記憶されているメタファイル群をバックアップするバックアップ処理を行う。かかるバックアップ制御部２２０は、受付部２２１と、バックアップ部２２２とを有する。
【００９４】
受付部２２１は、図示しない入力部（キーボード、マウス等）を介して、システム管理者から、バックアップＩＤとともにバックアップ要求を受け付ける。かかる場合に、受付部２２１は、所定のアルゴリズム（ハッシュ関数等）を用いて、バックアップＩＤを変換することにより「ソースフォルダ名」を生成する。そして、受付部２２１は、バックアップＩＤとソースフォルダ名とを対応付けて、バックアップリスト記憶部２１２に格納する。
【００９５】
バックアップ部２２２は、受付部２２１によって生成されたソースフォルダ名のバックアップフォルダをバックアップ記憶部２１１に作成する。そして、バックアップ部２２２は、バックアップ記憶部２１１に作成したバックアップフォルダに、制御装置１００のメタファイル記憶部１１０に記憶されているソースフォルダをコピーする。例えば、バックアップ部２２２は、図４＜実体＞に例示したようなソースフォルダ「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ」全体をバックアップフォルダにコピーする。
【００９６】
なお、制御装置１００が有するディスク全体（例えば、「Ｃ：￥」等）をバックアップ対象とする場合には、バックアップ部２２２は、バックアップ元のディスクと異なるディスク（例えば、「Ｄ：￥」等）にバックアップすることが望ましい。また、上記例のように、所定のフォルダ配下（例えば、「Ｃ：￥ｔｅｓｔ￥ｆｏｌｄｅｒ」等）をバックアップ対象とする場合には、バックアップ部２２２は、バックアップ元と同一のディスクであっても異なるフォルダ（例えば、「Ｃ：￥ｔｅｓｔ￥０００１」等）にバックアップすることができる。
【００９７】
リストア制御部２３０は、バックアップ記憶部２１１に記憶されているバックアップ用のメタファイル記憶部１１０にリストアするリストア処理を行う。かかるリストア制御部２３０は、受付部２３１と、リストア部２３２とを有する。
【００９８】
受付部２３１は、図示しない入力部を介して、システム管理者から、バックアップＩＤとともにリストア要求を受け付ける。かかる場合に、受付部２３１は、バックアップＩＤに対応する「ソースフォルダ名」をバックアップリスト記憶部２１２から取得する。
【００９９】
リストア部２３２は、受付部２３１によってバックアップリスト記憶部２１２から取得されたソースフォルダ名が示すバックアップ記憶部２１１のバックアップフォルダから、バックアップ用のメタファイル群（例えば、ソースフォルダ）を取得する。そして、リストア部２３２は、バックアップフォルダから取得したメタファイル群を、制御装置１００のメタファイル記憶部１１０にコピーする。
【０１００】
［バックアップ処理手順］
次に、図１１を用いて、第１の実施形態に係るバックアップ管理装置２００によるバックアップ処理の手順について説明する。図１１は、第１の実施形態に係るバックアップ管理装置２００によるバックアップ処理手順を示すフローチャートである。
【０１０１】
図１１に示すように、バックアップ管理装置２００の受付部２２１は、バックアップ要求を受け付けたか否かを判定する（ステップＳ１０１）。例えば、受付部２２１は、システム管理者からバックアップＩＤとともにバックアップ要求を受け付けたか否かを判定する。
【０１０２】
そして、受付部２２１は、バックアップ要求を受け付けた場合に（ステップＳ１０１肯定）、システム管理者から受け付けたバックアップＩＤを用いて、ソースフォルダ名を生成する（ステップＳ１０２）。続いて、受付部２２１は、バックアップＩＤとソースフォルダ名とを対応付けて、バックアップリスト記憶部２１２に格納する（ステップＳ１０３）。
【０１０３】
続いて、バックアップ部２２２は、受付部２２１によって生成されたソースフォルダ名のバックアップフォルダをバックアップ記憶部２１１に作成する（ステップＳ１０４）。続いて、バックアップ部２２２は、かかるバックアップフォルダに、制御装置１００のメタファイル記憶部１１０に記憶されているソースフォルダをコピーする（ステップＳ１０５）。
【０１０４】
［リストア処理手順］
次に、図１２を用いて、第１の実施形態に係るバックアップ管理装置２００によるリストア処理の手順について説明する。図１２は、第１の実施形態に係るバックアップ管理装置２００によるリストア処理手順を示すフローチャートである。
【０１０５】
図１２に示すように、バックアップ管理装置２００の受付部２３１は、リストア要求を受け付けたか否か判定する（ステップＳ２０１）。例えば、受付部２３１は、システム管理者からバックアップＩＤとともにリストア要求を受け付けたか否かを判定する。
【０１０６】
そして、受付部２３１は、リストア要求を受け付けた場合に（ステップＳ２０１肯定）、システム管理者から受け付けたバックアップＩＤに対応する「ソースフォルダ名」をバックアップリスト記憶部２１２から取得する（ステップＳ２０２）。
【０１０７】
続いて、リストア部２３２は、受付部２３１によって取得されたソースフォルダ名が示すバックアップ記憶部２１１のバックアップフォルダから、バックアップされたソースフォルダを取得する（ステップＳ２０３）。そして、リストア部２３２は、バックアップフォルダから取得したソースフォルダを、制御装置１００のメタファイル記憶部１１０にコピーする（ステップＳ２０４）。
【０１０８】
［第１の実施形態の効果］
上述してきたように、第１の実施形態に係るストレージシステム１において、制御装置１００は、ｋｅｙとｖａｌｕｅとの組合せを上書き及び削除せずに追加のみでストレージ装置群１０に書き込み、かかるストレージ装置群１０に記憶されているデータに対応するｋｅｙの一覧を含むメタファイルを記憶する。また、バックアップ管理装置２００は、バックアップ要求を受け付けた場合に、制御装置１００に記憶されているメタファイルをバックアップする。
【０１０９】
これにより、第１の実施形態に係るストレージシステム１によれば、バックアップ管理装置２００は、制御装置１００に記憶されているメタファイルを世代管理バックアップするだけなので、バックアップ領域が圧迫されることを防止することができ、さらに、バックアップ処理の高速化及び負荷低減を図ることができる。また、バックアップ管理装置２００は、リストア時には、容量の小さいメタファイルを制御装置１００にコピーするだけなので、リストア処理の高速化及び負荷低減を図ることができる。
【０１１０】
また、第１の実施形態に係るストレージシステム１において、制御装置１００のメタファイル記憶部１１０は、データにより形成されるメタ対応ファイル毎に生成されるメタファイルであって、最後に更新されたメタ対応ファイルを形成するデータに対応するｋｅｙが記述されたメタファイルのみをメタ対応ファイル毎に記憶する。そして、制御装置１００は、メタファイルに記述されているｋｅｙに基づいて、ストレージ装置群１０等からメタ対応ファイルをユーザ側装置２０に送信したりする。
【０１１１】
これにより、第１の実施形態に係るストレージシステム１によれば、バックアップ管理装置２００は、制御装置１００に記憶されているメタファイルを世代管理バックアップするだけで、ユーザ側装置２０が参照可能なデータを任意の時点における状態に戻すことができる。
【０１１２】
また、第１の実施形態に係るストレージシステム１において、制御装置１００は、データを所定サイズのデータ長に分割したｖａｌｕｅ毎にｋｅｙを生成し、生成したｋｅｙがストレージ装置群１０に記憶されていない場合に、かかるｋｅｙとｖａｌｕｅとの組合せをストレージ装置群１０に格納する。
【０１１３】
これにより、第１の実施形態に係るストレージシステム１によれば、ストレージ装置群１０における記憶容量についても効率的に利用することができる。
【０１１４】
（第２の実施形態）
上述したストレージシステム１は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、第２の実施形態では、上記のストレージシステム１の他の実施形態について説明する。
【０１１５】
［システム構成］
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、上記実施形態では、バックアップ制御部２２０が、システム管理者からバックアップ要求を受け付けた場合に、バックアップ処理を行う例を示した。しかし、バックアップ制御部２２０は、予め決められた日時に、予め決められたメタファイルが記憶されているフォルダ（例えば、ソースフォルダ）をバックアップしてもよい。
【０１１６】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図３に示した受付部２２１と受付部２３１とは統合されてもよい。
【０１１７】
また、例えば、図１では、ストレージシステム１に、ストレージ装置群１０と、制御装置１００と、バックアップ管理装置２００とが別装置として含まれる例を示した。しかし、制御装置１００とバックアップ管理装置２００とは統合された１個の装置であってもよい。また、ストレージ装置群１０と制御装置１００とは統合された１個の装置であってもよい。また、ストレージ装置群１０と制御装置１００とバックアップ管理装置２００とは統合された１個の装置であってもよい。
【０１１８】
［プログラム］
また、上記実施形態において説明した制御装置１００やバックアップ管理装置２００が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、制御装置１００が実行する処理をコンピュータが実行可能な言語で記述した制御プログラムを作成することもできる。また、例えば、バックアップ管理装置２００が実行する処理をコンピュータが実行可能な言語で記述したバックアッププログラムを作成することもできる。この場合、コンピュータが制御プログラムやバックアッププログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかる制御プログラムやバックアッププログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録された制御プログラムやバックアッププログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。以下に、一例として、図３に示したバックアップ管理装置２００と同様の機能を実現するバックアッププログラムを実行するコンピュータの一例を説明する。
【０１１９】
図１３は、バックアッププログラムを実行するコンピュータ１０００を示す図である。図１３に例示するように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有し、これらの各部はバス１０８０によって接続される。
【０１２０】
メモリ１０１０は、図１３に例示するように、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、図１３に例示するように、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、図１３に例示するように、ディスクドライブ１０４１に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブに挿入される。シリアルポートインタフェース１０５０は、図１３に例示するように、例えばマウス１０５１、キーボード１０５２に接続される。ビデオアダプタ１０６０は、図１３に例示するように、例えばディスプレイ１０６１に接続される。
【０１２１】
ここで、図１３に例示するように、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、上記のバックアッププログラムは、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ１０３１に記憶される。例えば、図３に例示した受付部２２１と同様の情報処理を実行する受付手順と、バックアップ部２２２と同様の情報処理を実行するバックアップ手順と、受付部２３１と同様の情報処理を実行する受付手順と、リストア部２３２と同様の情報処理を実行するリストア手順とが記述されたプログラムモジュール１０９３が、ハードディスクドライブ１０３１に記憶される。
【０１２２】
また、上記実施形態で説明したバックアップ記憶部２１１やバックアップリスト記憶部２１２が保持する各種データは、プログラムデータとして、例えばメモリ１０１０やハードディスクドライブ１０３１に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出し、受付手順、バックアップ手順、リストア手順を実行する。
【０１２３】
なお、バックアッププログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、バックアッププログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【０１２４】
１  ストレージシステム
１０  ストレージ装置群
１００  制御装置
１１０  メタファイル記憶部
１２３  キャッシュメモリ
１２４  データ読込部
１２５  データ書込部
２００  バックアップ管理装置
２１１  バックアップ記憶部
２１２  バックアップリスト記憶部
２２１  受付部
２２２  バックアップ部
２３１  受付部
２３２  リストア部
【図１】
2013228778.tif 000003
【図２】
2013228778.tif 000004
【図３】
2013228778.tif 000005
【図４】
2013228778.tif 000006
【図５】
2013228778.tif 000007
【図６】
2013228778.tif 000008
【図７】
2013228778.tif 000009
【図８】
2013228778.tif 000010
【図９】
2013228778.tif 000011
【図１０】
2013228778.tif 000012
【図１１】
2013228778.tif 000013
【図１２】
2013228778.tif 000014
【図１３】
2013228778.tif 000015