(57)【特許請求の範囲】
【請求項１】
情報処理装置と、第１の速度でデータにアクセス可能な第１の記憶部及び前記第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部を備えるストレージ装置とがネットワークを介して接続されたストレージシステムであって、
前記ストレージ装置は、
前記情報処理装置から送信された最新のデータを前記第１の記憶部又は前記第２の記憶部に記憶する最新データ記憶手段と、
前記最新データ及び所定の時点における前記データと前記最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、前記差分データを前記第１の記憶部又は前記第２の記憶部に記憶するかを割り当てる管理手段と、
前記管理手段によって割り当てられた記憶部に前記差分データを記憶する差分データ記憶手段と、
前記情報処理装置からスナップショットデータを作成する指示を受信した場合、前記最新データ記憶手段によって記憶される最新のデータ及び前記差分データ記憶手段によって記憶される差分データに基づいて、スナップショットデータを作成し、当該作成したスナップショットデータを前記情報処理装置へ出力するスナップショットデータ出力手段と、を有し、
前記情報処理装置は、
前記スナップショットデータの作成指示とともに前記割当ポリシを送信するスナップショット作成指示手段を有する、
ことを特徴とするストレージシステム。
【請求項２】
前記ルールは、少なくとも前記第２の記憶部に優先的に差分データを記憶するように定められている、ことを特徴とする請求項１記載のストレージシステム。
【請求項３】
前記情報処理装置は、バックアップ装置であり、前記スナップショットデータ出力手段から出力されたスナップショットデータをバックアップするバックアップ手段を有する、ことを特徴とする請求項１又は２記載のストレージシステム。
【請求項４】
前記情報処理装置は、ウィルスチェック装置であり、前記スナップショットデータ出力手段から出力されたスナップショットデータのウィルスチェックをするウィルスチェック手段を有する、ことを特徴とする請求項１又は２記載のストレージシステム。
【請求項５】
情報処理装置とネットワークを介して接続され、第１の速度でデータアクセス可能な第１の記憶部と、前記第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部と、を備えるストレージ装置であって、
最新のデータを前記第１の記憶部又は前記第２の記憶部に記憶する最新データ記憶手段と、
前記最新データ及び所定の時点における前記データと前記最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、前記差分データを前記第１の記憶部又は前記第２の記憶部に記憶するかを割り当てる管理手段と、
前記管理手段によって割り当てられた記憶部に前記差分データを記憶する差分データ記憶手段と、
前記情報処理装置からスナップショットデータを作成する指示を受信した場合、前記最新データ記憶手段によって記憶される最新のデータ及び前記差分データ記憶手段によって記憶される差分データに基づいて、スナップショットデータを生成し、前記情報処理装置へ出力するスナップショットデータ出力手段と、
を備えることを特徴とするストレージ装置。
【請求項６】
前記ルールは、少なくとも前記第２の記憶部に優先的に差分データを記憶するように定められている、ことを特徴とする請求項５記載のストレージ装置。
【請求項７】
情報処理装置とネットワークを介して接続され、第１の速度でデータにアクセス可能な第１の記憶部と、前記第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部と、を備えるストレージ装置のスナップショット処理方法であって、
最新のデータを前記第１の記憶部又は前記第２の記憶部に記憶するステップと、
前記最新データ及び所定の時点における前記データと前記最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、前記差分データを前記第１の記憶部又は前記第２の記憶部に記憶するかを割り当てるステップと、
前記割り当てられた記憶部に前記差分データを記憶するステップと、
前記情報処理装置からスナップショットデータを作成する指示を受信した場合、前記記憶されている最新のデータ及び前記記憶されている差分データに基づいて、スナップショットデータを生成し、前記情報処理装置へ出力するステップと、
を含むことを特徴とするストレージ装置のスナップショット処理方法。
【請求項８】
前記ルールは、少なくとも前記第２の記憶部に優先的に差分データを記憶するように定められている、ことを特徴とする請求項７記載のストレージ装置のスナップショット処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステム、ストレージ装置及びスナップショット処理方法に関する。
【背景技術】
【０００２】
コピー・オン・ライト方式のスナップショットは、スナップショットの作成と削除を一瞬で行えるため、ストレージ装置のデータ状態を保持するために広く利用されている。例えば、ソフトウェアの修正パッチを当てる前にスナップショットを取っておくことにより、なんらかの問題が後に生じた場合にもスナップショット時点のソフトウェアに戻すことが可能になる。
【０００３】
また、スナップショットは、データのバックアップ又はウィルススキャンにも利用することが可能である。スナップショットを作成することにより、当該時点のデータを全て保持することができ、データの走査中にデータが更新されても影響を受けなくなる。例えば、ＳＡＮ（Storage Area Network）のようにブロック単位でアクセスするストレージ装置においては、ある装置がファイルシステムを更新中に別の装置からファイルを走査するとデータの不整合が発生する可能性があるため、スナップショットの作成が必要である。
【０００４】
また、データを保持する技術に関連する技術として、フラッシュメモリ及びハードディスクドライブを有するストレージシステムにおいて、保持するデータがランダム、且つリード重視である場合は、当該データをフラッシュメモリに保持し、リード重視のデータでない場合は当該データをハードディスクドライブに保持するものが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１５６２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来のストレージシステムにおいては、スナップショットデータは、差分データと最新データの両方のデータを読み出し、これら読み出したデータに基づいてスナップショットデータを生成するため、最新データの出力能力等と比較して出力性能が低かった。
【０００７】
また、差分データは、断片的なデータの集合であるため、ランダムアクセスが必要であるが、磁気ディスクドライブにおけるランダムアクセスは半導体ドライブと比較して低速である。このため、差分データを磁気ディスクドライブに保持した場合、スナップショットデータの出力性能が更に低くなる。
【０００８】
これを回避するために、磁気ディスクドライブをランダムアクセスが高速な半導体ドライブに置き換える方法が考えられる。しかしながら、半導体ドライブは、磁気ディスクドライブに比べて容量あたりのコストが非常に高い。このため、スナップショットデータの出力性能は向上しても、製造コストの悪化につながり、製品としての魅力は低減する。更に、差分データを常に半導体ドライブに保持し、スナップショットデータを長期的に保持しても、そのスナップショットデータにアクセスが全くない場合がある。この場合、容量あたりのコストの高い半導体ドライブに差分データを保持するのは経済的ではない。
【０００９】
また、特許文献１に記載の技術のように、ストレージシステムが保持するデータに応じて自動的に記憶先を選択する技術を用いる場合、データの記憶先を自動で判断するための構成が必要になる。これでは、スナップショット処理が複雑化し、ストレージシステムの負荷が大きくなる。特に、頻繁にスナップショットを作成する必要があるストレージシステムの場合には、この傾向は顕著になる。
【００１０】
本発明は、上記事情に鑑みてなされたものであり、その目的は、スナップショットデータを高速に出力することができると共にデータ処理の負荷を低減することができるストレージシステム、ストレージ装置及びスナップショット処理方法を提供することにある。
【課題を解決するための手段】
【００１１】
本発明は、情報処理装置と、第１の速度でデータにアクセス可能な第１の記憶部及び第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部を備えるストレージ装置とがネットワークを介して接続されたストレージシステムであって、ストレージ装置は、情報処理装置から送信された最新のデータを第１の記憶部又は第２の記憶部に記憶する最新データ記憶手段と、最新データ及び所定の時点におけるデータと最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、差分データを第１の記憶部又は第２の記憶部に記憶するかを割り当てる管理手段と、管理手段によって割り当てられた記憶部に差分データを記憶する差分データ記憶手段と、情報処理装置からスナップショットデータを作成する指示を受信した場合、最新データ記憶手段によって記憶される最新のデータ及び差分データ記憶手段によって記憶される差分データに基づいて、スナップショットデータを作成し、当該作成したスナップショットデータを情報処理装置へ出力するスナップショットデータ出力手段と、を有し、情報処理装置は、スナップショットデータの作成指示とともに割当ポリシを送信するスナップショット作成指示手段を有する、ことを特徴とする。
【００１２】
また、他の本発明は、情報処理装置とネットワークを介して接続され、第１の速度でデータにアクセス可能な第１の記憶部と、第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部と、を備えるストレージ装置であって、最新のデータを第１の記憶部又は第２の記憶部に記憶する最新データ記憶手段と、最新データ及び所定の時点におけるデータと最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、差分データを第１の記憶部又は第２の記憶部に記憶するかを割り当てる管理手段と、管理手段によって割り当てられた記憶部に差分データを記憶する差分データ記憶手段と、情報処理装置からスナップショットデータを作成する指示を受信した場合、最新データ記憶手段によって記憶される最新のデータ及び差分データ記憶手段によって記憶される差分データに基づいて、スナップショットデータを生成し、情報処理装置へ出力するスナップショットデータ出力手段と、を備えることを特徴とする。
【００１３】
更に、他の本発明は、情報処理装置とネットワークを介して接続され、第１の速度でデータにアクセス可能な第１の記憶部と、第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部と、を備えるストレージ装置のスナップショット処理方法であって、最新のデータを第１の記憶部又は第２の記憶部に記憶するステップと、最新データ及び所定の時点におけるデータと最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、差分データを第１の記憶部又は第２の記憶部に記憶するかを割り当てるステップと、割り当てられた記憶部に差分データを記憶するステップと、情報処理装置からスナップショットデータを作成する指示を受信した場合、記憶されている最新のデータ及び記憶されている差分データに基づいて、スナップショットデータを生成し、情報処理装置へ出力するステップと、を含むことを特徴とする。
【発明の効果】
【００１４】
本発明によると、スナップショットを高速に出力すると共にデータ処理の負荷を低減することができるストレージシステム、ストレージ装置及びスナップショット処理方法を提供できる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施の形態に係るストレージシステムの概略的な構成を示す図である。
【図２】同実施の形態に係る最新データの一例を示す図である。
【図３】同実施の形態に係る差分データの一例を示す図である。
【図４】同実施の形態に係るメタデータの一例を示す図である。
【図５】同実施の形態に係る最新データ使用処理を示すフローチャートである。
【図６】同実施の形態に係るスナップショットデータ処理を示すフローチャートである。
【図７】同実施の形態に係るスナップショットデータ処理を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００１７】
図１は、ストレージシステム１の構成を概略的に示す図である。同図に示すように、ストレージシステム１は、最新データ使用装置１０、スナップショットデータ処理装置２０及びストレージ装置３０を有している。
【００１８】
最新データ使用装置１０は、ストレージ装置３０から最新データを読み出し、又はストレージ装置３０に最新データを書き込む装置である。最新データ使用装置１０は、例えば、ストレージ装置３０に接続されたサーバである。より具体的には、ＷＷＷサーバ、アプリケーションサーバ、データベースサーバ、又は、ファイルサーバである。
【００１９】
スナップショットデータ処理装置２０は、ストレージ装置３０に一時的なスナップショットを作成し、スナップショットを削除する処理を行う装置である。スナップショットデータ処理装置３０は、スナップショット作成削除手段３４（後述する。）に一時的なスナップショットの作成または削除を指示する一時スナップショット作成削除指示手段２１と、スナップショットデータ出力手段３７（後述する。）から出力されたスナップショットデータを処理するデータ処理手段２２と、を備えており、これら一時スナップショット作成削除指示手段２１及びデータ処理手段２２により既述のスナップショットの処理を実行する。
【００２０】
また、スナップショットデータ処理装置２０が、ストレージ装置３０に接続されたバックアップ装置である場合、データ処理手段（バックアップ手段）２２によりスナップショットデータのデータバックアップ処理を行い、ストレージ装置３０に接続されたウィルスチェック装置である場合、データ処理手段（ウィルスチェック手段）２２によりスナップショットデータのウィルスチェック処理を行う。
【００２１】
なお、本実施の形態においては、最新データ使用装置１０とスナップショットデータ処理装置２０とは異なる装置の場合で説明するが、これらは同一の情報処理装置に包まれるように構成されていても良い。
【００２２】
ストレージ装置３０は、第１の記憶部である磁気ディスクドライブ３１、第２の記憶部である半導体ドライブ３２、最新データ記憶手段である最新データ入出力手段３３、スナップショット作成削除手段３４、管理手段である領域管理手段３５、差分データ記憶手段であるコピー手段３６、スナップショットデータ出力手段３７を有している。また、磁気ディスクドライブに３１は最新データ３１ａが記憶され、半導体ドライブ３２には差分データ３２ａ及びメタデータ３２ｂが記憶される。
【００２３】
磁気ディスクドライブ３１は、回転する磁気ドライブに磁気でデータを記憶する装置である。磁気ディスクドライブ３１は、磁気ディスクドライブに記憶されるデータの記憶単位を一意に識別するためにアドレスを用いる。
【００２４】
また、ストレージ装置３０においては、複数の磁気ディスクドライブ３１がＲＡＩＤ（Redundant Arrays of Inexpensive Disks）構成になっていることが望ましいが、磁気ディスクドライブ３１は１つでもよい。なお、本実施の形態では、ＲＡＩＤ構成の磁気ディスクドライブ３１、又は、１つの磁気ディスクドライブ３１が有する記憶単位を一意に識別するアドレスは物理アドレスと表記する。
【００２５】
磁気ディスクドライブ３１は、例えば、ハードディスクドライブであり、記憶したデータに第１の速度でアクセス可能になっている。
【００２６】
半導体ドライブ３２は、ＮＡＮＤ型フラッシュメモリ等を用いて磁気ディスクドライブと同様のインタフェースでデータを記憶する装置である。半導体ドライブ３２は、磁気ディスクドライブと同様に、半導体ドライブ３２に記憶されるデータの記憶単位を一意に識別するために、アドレスを用いる。
【００２７】
また、ストレージ装置３０においては、複数の半導体ドライブ３２がＲＡＩＤ構成になっていることが望ましいが、半導体ドライブ３２は１つでもよい。本実施の形態では、ＲＡＩＤ構成の半導体ドライブ３２、又は、１つの半導体ドライブ３２がもつ記憶単位を一意に識別するアドレスは物理アドレスと表記する。
【００２８】
半導体ドライブ３２は、例えば、フラッシュＳＳＤ(Solid State Drive)であり、既述の第１の速度より速い第２の速度でデータにアクセス可能になっている。
【００２９】
最新データ入出力手段３３は、最新データ使用装置１０とネットワーク又はバスで接続し、メタデータ３２ｂを参照して磁気ディスクドライブ３１又は半導体ドライブ３２に記憶されたデータにアクセスする。
【００３０】
最新データ入出力手段３３は、データ入力においては、メタデータ３２ｂを参照してデータを記憶するドライブと当該ドライブの物理アドレスを判断し、最新データを記憶する処理を行う。また、最新データ入出力手段３３は、データ出力においては、メタデータ３２ｂを参照してデータを読み出すドライブと当該ドライブの物理アドレスを判断し、データを読み出す処理を行う。
【００３１】
最新データ３１ａは、最新データ入出力手段３３が磁気ディスクドライブ３１又は半導体ドライブ３２に記憶したデータである。最新データ３１ａは、具体的には、ドライブ内に構成される論理ユニットである。
【００３２】
図２に最新データ３１ａの一例４０を示す。図２を参照すると、最新データ４２は一連のバイト列で、それぞれのバイトは論理アドレス４１で識別される。最新データ４２を磁気ディスクドライブ３１及びと半導体ドライブ３２のいずれに記憶するかは領域管理手段３５が判断する。
【００３３】
なお、最新データ３１ａは磁気ディスクドライブ３１及び半導体ドライブ３２に分けて記憶しても良い。すなわち、１つの論理ユニットを磁気ディスクドライブ３１と半導体ドライブ３２とに分けて記憶しても良い。
【００３４】
差分データ３２ａは、コピー手段３６によってコピーされたデータであり、ある時点のスナップショットと最新データ３１ａとの差分を表現したデータである。
【００３５】
図３に差分データ３２ａの一例５０を示す。図３を参照すると、差分データ５０は更新論理アドレス５２と更新前データ５３を含んでいる。なお、差分データ５０において、論理アドレス５１のアドレスは省略して図示していない。
【００３６】
更新論理アドレス５２は、スナップショットの作成後に更新された最新データ３１ａの論理アドレスである。図３においては、差分データ作成の単位を６４ＫＢと仮定しており、更新論理アドレス５２の「０００３００００」は、論理アドレス「０００３００００」から「０００３ＦＦＦＦ」のうち少なくとも１バイトが更新されたことを示している。
【００３７】
更新前データ５３は、最新データ３１ａを更新する前にコピーしたデータである。差分データ５０はスナップショットの数だけ存在する。差分データ５０を磁気ディスクドライブ３１及び半導体ドライブ３２のいずれに記憶するかは領域管理手段３５により判断される。また、あるスナップショットの差分データ３２ａを磁気ディスクドライブ３１及び半導体ドライブ３２に分けて記憶してもよい。
【００３８】
メタデータ３２ｂは、領域管理手段３５が記憶したデータであり、最新データ３１ａ及び差分データ３２ａをいずれのドライブのどの領域に記憶するかを示すデータである。
【００３９】
図４にメタデータ３２ｂの一例６０を示す。図４を参照すると、メタデータ６０は、論理アドレス６１、領域ＩＤ６２、最新データ領域ＩＤ６３、ドライブＩＤ６４、開始物理アドレス６５、サイズ６６、…、を含んでいる。なお、メタデータ６０において、論理アドレス６１のアドレスは省略して図示していない。また、メタデータ３２ｂは、半導体ドライブ３２に記憶することが望ましいが、磁気ディスクドライブ３１に記憶しても良い。
【００４０】
領域ＩＤ６２は、領域を識別するデータである。
【００４１】
最新データ領域ＩＤ６３は、領域が差分データ３２ａに使用されている場合に、当該差分データ３２ａと対応する最新データ３１ａの領域ＩＤを示している。図４においては、最新データ領域ＩＤ６３の「００００００００」は、その領域が最新データ３１ａに使用されていることを示している。
【００４２】
ドライブＩＤ６４は、領域がいずれのドライブに割り当てられているかを示している。図４において、ドライブＩＤ６４の「０００１」は磁気ディスクドライブ３１を示し、「０００２」は半導体ドライブ３２を示している。
【００４３】
開始物理アドレス６５及びサイズ６６は、領域がドライブ内のいずれから何バイト割り当てられているかを示している。例えば、領域ＩＤ６２が「０００００００１」の例では、先頭「００００００００」から３２ＭＢである。
【００４４】
なお、図４においては、図示及び説明の簡単化のためにすべての領域を１つのドライブの連続した領域に割り当てることを前提として説明したが、領域は連続しない領域に割り当てても良く、更に言えば、複数のドライブに割り当てるようにしてもよい。
【００４５】
スナップショット作成削除手段３４は、スナップショットデータ処理装置２０とネットワーク又はバスで接続し、スナップショットデータ処理装置２０の要求に従って、領域管理手段３５に差分データ３２ａを記憶する領域の割り当て処理を要求する。
【００４６】
領域管理手段３５は、最新データ使用装置１０から最新データ入出力手段３３を介して、又は、スナップショットデータ処理装置２０からスナップショット作成削除手段３４を介して与えられた割当ポリシに基づいて、最新データ３１ａ又は差分データ３２ａを記憶する領域を磁気ディスクドライブ３１又は半導体ドライブ３２に割り当て、更に、データが不要になれば磁気ディスクドライブ３１又は半導体ドライブ３２への割り当てを解放する。
【００４７】
ここで、割当ポリシは、最新データ３１ａ及び差分データ３２ａのいずれかを、優先的に半導体ドライブ３２に割り当てること、又は、優先的に半導体ドライブ３２に割り当てないことをルールとして定めることができるようになっている。換言すれば、割当ポリシは、差分データ３２ａ等の記憶先に関するルールを定めており、本実施の形態においては、少なくも半導体ドライブ３２に優先的に差分データ３２ａを記憶するように定められる。
【００４８】
なお、割当ポリシは、既述のルールに代えて、例えば、最新データ３１ａ及び差分データ３２ａを必ず半導体ドライブ３２に割り当てるように、又は、優先的に磁気ディスクドライブ３１に割り当てるように、更には、必ず磁気ディスクドライブ３１に割り当てるように、などとユーザが任意に定めても良い。
【００４９】
さらに、割当ポリシは、同一の最新データ３１ａについて異なる時刻に複数のスナップショットが作成される、すなわち、複数世代のスナップショットが作成されるように構成されている場合、前世代の差分データを記憶しているドライブに基づいて新しい差分データの領域を割り当てるようにしても良い。
【００５０】
この割当ポリシは、最新データ使用装置１０が最新データ３１ａを使用する場合、又はスナップショットデータ処理装置２０が一時スナップショット処理をする場合に、ユーザの指示に基づいて、又は、ユーザが予め行った設定に基づいて、ストレージ装置３０に送信される。したがって、ユーザが、最新データ３１ａを使用する場合、又は、一時スナップショットデータを作成する場合に、ストレージ装置３０のデータの記憶状況等に応じて、臨機応変に割当ポリシを変更することも可能である。
【００５１】
また、領域管理手段３５は、最新データ３１ａ，差分データ３２ａを記憶する領域を割り当て、又は当該割り当てを解放した場合、メタデータ３２ｂを更新する。
【００５２】
コピー手段３６は、最新データ入出力手段３３が最新データ２１ａを更新する前に、更新されるデータが差分データ３２ａにコピー済みであるかを判断し、コピー済みでない場合、更新される最新データ３１ａを差分データ３２ａにコピーする。一般的に、この方法はコピー・オン・ライトと呼ばれる。このデータのコピーによってスナップショットが保持される。
【００５３】
スナップショットデータ出力手段３７は、スナップショットデータ処理装置２０とネットワーク又はバスで接続し、データ処理手段２２の要求に従って、メタデータ３２ｂを参照し、最新データ３１ａに差分データ３２ａを反映してスナップショットデータを作成し、この作成したスナップショットデータを出力する。
【００５４】
したがって、ストレージ装置は３０、差分データ３２ａの領域を優先的に半導体ドライブ３２に割り当てる割当ポリシを適用することにより、領域管理手段３５が差分データ３２ａを優先的にランダムアクセスが高速な半導体ドライブ３２に配置するため、スナップショットデータの出力を高速化することができる。
【００５５】
また、ストレージ装置３０は、最新データ使用装置１０及びスナップショットデータ処理装置２０が同時に使用できるように構成される。すなわち、最新データ使用装置１０が最新データの読み書き動作を行っている間に、スナップショットデータ処理装置２０が当該最新データのスナップショット処理を行うことが可能である。
【００５６】
次に、最新データ使用装置１０がストレージ装置３０に保持されている最新データ３１ａを使用する場合に、ストレージシステム１が実行する処理について、図５に示すフローチャートを参照して説明する。
【００５７】
先ず、最新データ使用装置１０からの指示に基づいて、最新データ入出力手段３３は領域管理手段３５に割当ポリシを送信するとともに最新データ３１ａを書き込むための領域の割り当てを要求する。領域管理手段３５は割当ポリシに従って半導体ドライブ３２又は磁気ディスクドライブ３１、或いはいその両方に最新データ３１ａの領域を割り当ててメタデータ３２ｂを更新する（Ｓ１０１）。当該割当ポリシは最新データ使用装置１０から送信され、本実施の形態においては、“磁気ディスクドライブに優先的に配置する”とする。このように最新データ３１ａを優先的に磁気ディスクドライブ３１に記憶する割当ポリシを適用することにより、差分データ３２ａを優先的に半導体ドライブ３２に記憶する確率を上げることができる。
【００５８】
次に、最新データ入出力手段３３は、最新データ使用装置１０からの指示に基づいて、最新データ３１ａの書き込みか否か、換言すれば、最新データ３１ａの書き込みか、又は、最新データ３１ａの読み出しかを判断する（ステップＳ１０２）。
【００５９】
最新データ３１ａの書き込みでない、換言すれば、最新データ３１ａの読み出しであると判断した場合（Ｓ１０２：ＮＯ）、最新データ入出力手段３３は、半導体ドライブ３２からメタデータ３２ｂを読み出し、読み出す最新データ３１ａがいずれのドライブのどの物理アドレスに記憶されているかを取得する（Ｓ１０３）。図４の例においては、領域ＩＤ６２「０００００００１」で識別される領域の先頭から最新データ３１ａを読み出す場合、ドライブＩＤ６４「０００１」で識別されるドライブ（磁気ディスクドライブ３１）の物理アドレス６５「００００００００」から始まる領域が該当する。
【００６０】
次に、最新データ入出力手段３３は、ステップＳ１０３で取得した物理アドレスに基づいて最新データ３１ａを読み出し、最新データ使用装置１０に送信する（ステップＳ１０４）。図２の例においては、論理アドレス４１「０００１００００」から４バイトを読み出す場合、送信するデータは「０７  ４２  ９３  ３７」になる。
【００６１】
一方、最新データ３１ａの書き込みであると判断した場合（Ｓ１０２：ＹＥＳ）、最新データ入出力手段３３は、半導体ドライブ３２からメタデータ３２ｂを読み出し、いずれのドライブのどの物理アドレスに最新データ３１ａを記憶するかを取得する（ステップＳ１０５）。図４の例においては、領域ＩＤ６２「０００００００１」で識別される領域の先頭からデータを書き込む場合、ドライブＩＤ６４「０００１」で識別されるドライブ（磁気ディスクドライブ３１）の物理アドレス６５「００００００００」から始まる領域が該当する。
【００６２】
また、コピー手段３６は、最新データ入出力手段３３が最新データ３１ａを更新する前に差分データ３２ａを参照し、更新される最新データ３１ａが差分データ３２ａにコピー済みかを判断する（Ｓ１０６）。図３の例においては、更新論理アドレス５２を参照すればよい。ただし、最新データ３１ａの書き込み処理が行われる毎に、更新論理アドレス５２をドライブから読みだすのは非効率なため、ストレージ装置３０を制御するプロセッサから高速にアクセスできる主記憶装置（メインメモリ）にも更新論理アドレス５２を保持しておくことが望ましい。
【００６３】
コピー済みでないと判断した場合（Ｓ１０６：ＮＯ）、コピー手段３６は、更新論理アドレス５２及び更新前データ５３を差分データ３２ａにコピーする（Ｓ１０７）。当該コピー時に、差分データ３２ａを記憶する領域のサイズが不足している場合、差分データ３２ａを記憶する領域をより大きいサイズで再度割り当てる。
【００６４】
また、最新データ３１ａに対して複数世代のスナップショットが存在する場合、最新世代のスナップショットの差分データ３２ａだけをコピーするようにしてもよい。この場合、スナップショットデータの読み出し時に、読み出す世代よりも後の世代のスナップショットの差分データ３２ａも読み出す必要がある。そのため、当該方式では、スナップショットを削除する場合、削除する世代のスナップショットよりも前の世代のスナップショットがある場合、当該削除する世代のスナップショットの差分データ３２ａは削除しないようにする。
【００６５】
このステップＳ１０７のコピー処理が終了した場合、又は、コピー手段３６がコピー済みであると判断した場合（Ｓ１０６：ＹＥＳ）、最新データ入出力手段３３は、最新データ３１ａを更新する（Ｓ１０８）。
【００６６】
次に、最新データ入出力手段３３が、最新データ使用装置１０の指示に基づいて、最新データ３１ａの使用が終了したか否かを判断する（Ｓ１０９）。最新データ３１ａの使用処理が終了してないと判断した場合（Ｓ１０９：ＮＯ）、既述のステップＳ１０２乃至Ｓ１０８の処理が繰り返される。このように、最新データ３１ａを使用する処理を繰り返し実施することが可能である。
【００６７】
一方、最新データ３１ａの使用処理が終了したと判断した場合（Ｓ１０９：ＹＥＳ）、最新データ入出力手段３３は、この処理を終了する。
【００６８】
次に、スナップショットデータ処理装置２０がストレージ装置３０に記憶されているスナップショットを処理する場合に、ストレージシステム１が実行する処理について図６及び図７に示すフローチャートを参照して説明する。
【００６９】
一時スナップショット作成削除指示手段２１からの指示に基づいて、スナップショット作成削除手段３４は一時スナップショットを作成するために、領域管理手段３５に割当ポリシを送信するとともに差分データ３２ａを記憶するための領域の割り当てを要求する（Ｓ２０１）。当該割当ポリシは、スナップショットデータ処理装置２０から送信され、本実施の形態においては、“半導体ドライブ３２に優先的に配置する”とする。このように差分データ３２ａを優先的に半導体ドライブ３２に記憶することにより、差分データ３２ａに高速にランダムアクセスでき、スナップショットデータの出力性能を高めることが可能になる。差分データ３２ａを記憶するための領域のサイズは、例えば、最新データ３１ａを記憶している領域のサイズの１０％である。
【００７０】
次に、領域管理手段３５は、半導体ドライブ３２に優先的に配置する割当ポリシを受信した場合、半導体ドライブ３２に空きがあるか否かを判断する（Ｓ２０２）。具体的には、領域管理手段３５は、半導体ドライブ３２に記憶されているメタデータ３２ｂを参照し、指定されたサイズの領域を割り当てられる半導体ドライブ３２が存在するか否かを判断する。
【００７１】
半導体ドライブ３２に空きがあると判断した場合（Ｓ２０２：ＹＥＳ）、領域管理手段３５は、半導体ドライブ３２に差分データ３２ａを記憶する領域を割り当てる（Ｓ２０３）。具体的には、領域管理手段３５は、差分データ３２ａに領域ＩＤ６２を割り当てて、当該割り当てた領域ＩＤ６２と最新データ領域ＩＤ６３と半導体ドライブ３２を識別するドライブＩＤ６４と開始物理アドレス６５とサイズ６６をメタデータ３２ｂに追加する。
【００７２】
一方、半導体ドライブ３２に空きがないと判断した場合（Ｓ２０２：ＮＯ）、領域管理手段３５は、磁気ディスクドライブ３１に差分データ３２ａを記憶する領域を割り当てる（Ｓ２０４）。具体的には、領域管理手段３５は、差分データ３２ａに領域ＩＤ６２を割り当てて、当該割り当てた領域ＩＤ６２と最新データ領域ＩＤ６３と磁気ディスクドライブ３１を識別するドライブＩＤ６４と開始物理アドレス６５とサイズ６６をメタデータ３２ｂに追加する。
【００７３】
このように差分データ３２ａを記憶する領域を割り当てた後（Ｓ２０３又はＳ２０４）、データ処理手段２２は、スナップショットデータ出力手段３７にスナップショットデータの出力を要求する（Ｓ２０５）。
【００７４】
次に、スナップショットデータ出力手段３７は、差分データ３２ａを参照して、要求されたデータが差分データ３２ａにあるか否かを判断する（Ｓ２０６）。図３の例においては、更新論理アドレス５２を参照して判断すればよい。ただし、スナップショットデータの出力を行う毎に更新論理アドレス５２をドライブから読みだすのは非効率であるため、ストレージ装置３０を制御するプロセッサから高速にアクセスできる主記憶装置（メインメモリ）にも更新論理アドレス５２を保持しておくことが望ましい。
【００７５】
要求されたスナップショットデータが差分データ３２ａにないと判断した場合（Ｓ２０６：ＮＯ）、スナップショットデータ出力手段３７は、最新データ３１ａから要求されたスナップショットデータを読み出し、この読み出したスナップショットデータをデータ処理手段２２に送信する（Ｓ２０７）。
【００７６】
一方、要求されたスナップショットデータが差分データ３２ａにあると判断した場合（Ｓ２０６：ＹＥＳ）、スナップショットデータ出力手段３７は、差分データ３２ａから要求された差分データを読み出し、この読み出したスナップショットデータをデータ処理手段２２に送信する（Ｓ２０８）。
【００７７】
次に、データ処理手段２２は、ステップＳ２０７又はＳ２０８において、スナップショットデータ出力手段３７から受信したスナップショットデータを処理する（Ｓ２０９）。具体的にはデータ処理手段２２は、スナップショットデータをバックアップとして保存し、又は、スナップショットデータのウィルスチェックを実施する。
【００７８】
次に、データ処理手段２２は、スナップショットデータの処理が終了したか否かを判断する（Ｓ２１０）。処理が終了していないと判断した場合（Ｓ２１０：ＮＯ）、既述のステップＳ２０５からＳ２０９の処理が繰り返される。このように繰り返し処理を行うことにより、複数世代のスナップショットデータを処理することが可能になる。
【００７９】
スナップショットデータの処理が終了したと判断した場合（Ｓ２１０：ＹＥＳ）、一時スナップショット作成削除指示手段２１は、スナップショット作成削除手段３４に一時スナップショットの削除を要求する。この要求を受けてスナップショット作成削除手段３４は、一時スナップショット削除の要求を領域管理手段３５へ送信する（Ｓ２１１）。
【００８０】
次に、領域管理手段３５は、一時スナップショット作成削除指示手段２１からスナップショット作成削除手段３４を介してスナップショット削除の要求を受信した場合、磁気ディスクドライブ３１又は半導体ドライブ３２に一時スナップショットデータを割り当てた領域を開放する（Ｓ２１２）。具体的には領域管理手段３５は、差分データ３２ａを記憶するために割り当てた領域の情報をメタデータ３２ｂから削除する。
【００８１】
以上説明したように、ストレージシステム１によると、最新データ３１ａの使用動作と一時スナップショットデータの処理とを同時に行うことができる。また、ストレージシステム１によると、割当ポリシに従って磁気ディスクドライブ３１にデータを保存するか、半導体ドライブ３２にデータを保存するかを判断するため、データ処理の負荷を低減することができる。
【００８２】
更に、ストレージシステム１は、ランダムアクセスが主となる差分データ３２ａをランダムアクセスが高速な半導体ドライブ３２から読み出す確率が高く、このように半導体ドライブ３２から読み出した差分データ３２ａに基づいて一時スナップショットデータを作成することにより、スナップショットデータの出力性能を高めることができる。
【００８３】
また更に、ストレージシステム１は、ストレージ装置３０に搭載する全てのドライブのうちの一部に半導体ドライブ３２を用いているため全てのドライブを半導体ドライブ３２にする場合と比較して、安価に製造することが可能になる。
【００８４】
なお、本発明は上述の実施の形態に限定されるものではなく、その実施に際して様々な変形が可能である。
【００８５】
上記実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００８６】
（付記１）
情報処理装置と、第１の速度でデータにアクセス可能な第１の記憶部及び前記第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部を備えるストレージ装置とがネットワークを介して接続されたストレージシステムであって、
前記ストレージ装置は、
前記情報処理装置から送信された最新のデータを前記第１の記憶部又は前記第２の記憶部に記憶する最新データ記憶手段と、
前記最新データ及び所定の時点における前記データと前記最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、前記差分データを前記第１の記憶部又は前記第２の記憶部に記憶するかを割り当てる管理手段と、
前記管理手段によって割り当てられた記憶部に前記差分データを記憶する差分データ記憶手段と、
前記情報処理装置からスナップショットデータを作成する指示を受信した場合、前記最新データ記憶手段によって記憶される最新のデータ及び前記差分データ記憶手段によって記憶される差分データに基づいて、スナップショットデータを作成し、当該作成したスナップショットデータを前記情報処理装置へ出力するスナップショットデータ出力手段と、を有し、
前記情報処理装置は、
前記スナップショットデータの作成指示とともに前記割当ポリシを送信するスナップショット作成指示手段を有する、
ことを特徴とするストレージシステム。
【００８７】
（付記２）
前記ルールは、少なくとも前記第２の記憶部に優先的に差分データを記憶するように定められている、ことを特徴とする付記１記載のストレージシステム。
【００８８】
（付記３）
前記情報処理装置は、バックアップ装置であり、前記スナップショットデータ出力手段から出力されたスナップショットデータをバックアップするバックアップ手段を有する、ことを特徴とする付記１又は２記載のストレージシステム。
【００８９】
（付記４）
前記情報処理装置は、ウィルスチェック装置であり、前記スナップショットデータ出力手段から出力されたスナップショットデータのウィルスチェックをするウィルスチェック手段を有する、ことを特徴とする付記１又は２記載のストレージシステム。
【００９０】
（付記５）
情報処理装置とネットワークを介して接続され、第１の速度でデータアクセス可能な第１の記憶部と、前記第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部と、を備えるストレージ装置であって、
最新のデータを前記第１の記憶部又は前記第２の記憶部に記憶する最新データ記憶手段と、
前記最新データ及び所定の時点における前記データと前記最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、前記差分データを前記第１の記憶部又は前記第２の記憶部に記憶するかを割り当てる管理手段と、
前記管理手段によって割り当てられた記憶部に前記差分データを記憶する差分データ記憶手段と、
前記情報処理装置からスナップショットデータを作成する指示を受信した場合、前記最新データ記憶手段によって記憶される最新のデータ及び前記差分データ記憶手段によって記憶される差分データに基づいて、スナップショットデータを生成し、前記情報処理装置へ出力するスナップショットデータ出力手段と、
を備えることを特徴とするストレージ装置。
【００９１】
（付記６）
前記ルールは、少なくとも前記第２の記憶部に優先的に差分データを記憶するように定められている、ことを特徴とする付記５記載のストレージ装置。
【００９２】
（付記７）
情報処理装置とネットワークを介して接続され、第１の速度でデータにアクセス可能な第１の記憶部と、前記第１の速度より速い第２の速度でデータにアクセス可能な第２の記憶部と、を備えるストレージ装置のスナップショット処理方法であって、
最新のデータを前記第１の記憶部又は前記第２の記憶部に記憶するステップと、
前記最新データ及び所定の時点における前記データと前記最新のデータとの差分データの記憶先に関するルールを定めた割当ポリシに従って、前記差分データを前記第１の記憶部又は前記第２の記憶部に記憶するかを割り当てるステップと、
前記割り当てられた記憶部に前記差分データを記憶するステップと、
前記情報処理装置からスナップショットデータを作成する指示を受信した場合、前記記憶されている最新のデータ及び前記記憶されている差分データに基づいて、スナップショットデータを生成し、前記情報処理装置へ出力するステップと、
を含むことを特徴とするストレージ装置のスナップショット処理方法。
【００９３】
（付記８）
前記ルールは、少なくとも前記第２の記憶部に優先的に差分データを記憶するように定められている、ことを特徴とする付記７記載のストレージ装置のスナップショット処理方法。
【産業上の利用可能性】
【００９４】
スナップショットデータを処理するストレージシステム、ストレージ装置及びストレージ装置のスナップショット処理方法に広く適用可能である。
【符号の説明】
【００９５】
１・・・ストレージシステム
１０・・・最新データ使用装置
２０・・・スナップショットデータ処理装置
２１・・・一時スナップショット作成削除指示手段
２２・・・データ処理手段
３０・・・ストレージ装置
３１・・・磁気ディスクドライブ
３２・・・半導体ドライブ
３３・・・最新データ入出力手段
３４・・・スナップショット削除処理手段
３５・・・領域管理手段
３６・・・コピー手段
３７・・・スナップショットデータ出力手段
４０・・・最新データの一例
５０・・・差分データの一例
６０・・・メタデータの一例
【図１】
0005648918.tif 000002
【図２】
0005648918.tif 000003
【図３】
0005648918.tif 000004
【図４】
0005648918.tif 000005
【図５】
0005648918.tif 000006
【図６】
0005648918.tif 000007
【図７】
0005648918.tif 000008