(57)【要約】【課題】大量のデータを記憶するコンピュータシステムにおいてＩ／Ｏ処理の負荷を抑制しつつ重複データの書き込み制御を高速化する。【解決手段】ストレージ装置４０は、応答速度が異なる２以上の記憶部を含み、これらの記憶部は、応答速度が速い記憶部ほど格納する特定値のデータ長が短くなっているインデックスをそれぞれ有している。書き込み制御装置３０は、入力データを管理するとともにそのハッシュ値を格納するインデックスを決定し、入力データに基づいて生成したハッシュ値のデータ長を入力データの更新前データに基づいてインデックスに格納された特定値と同じデータ長に変換する。そして、両特定値を比較し、比較結果が両特定値の一致を示す場合、入力データ及び特定値の書き込みを中止し、両特定値の一致を示さない場合、入力データをストレージ装置に書き込むとともに、特定値を既述の決定したインデックスに格納する。【選択図】図２
2012133551.tif 000002
【特許請求の範囲】
【請求項１】
ストレージ装置に対するデータの書き込みを制御する書き込み制御システムであって、
応答速度が異なる２以上の記憶部を含み、前記２以上の記憶部それぞれが前記ストレージ装置に書き込まれるデータに基づいて定まる特定値を格納するインデックスを有し、前記応答速度が速い記憶部ほど前記インデックスに格納される特定値のデータ長が短くなるように構成された記憶部群と、
前記ストレージ装置に対する入力データを管理するとともに当該入力データの特定値を格納する前記インデックスを決定する管理部と、
前記入力データに基づいて特定値を生成する生成部と、
前記生成部で生成した特定値のデータ長を前記入力データの更新前データに基づいて前記インデックスに格納された特定値と同じデータ長に変換する変換部と、
前記変換部でデータ長が変換された特定値と前記更新前データの特定値とを比較する比較部と、
前記比較部の比較結果が両特定値の一致を示す場合、前記入力データ及び前記特定値の書き込みを中止し、当該比較結果が両特定値の一致を示さない場合、前記入力データを前記ストレージ装置に書き込むとともに、前記特定値を前記管理部で決定したインデックスに格納する制御部と、
を備えることを特徴とする書き込み制御システム。
【請求項２】
データを最小の書き込み単位に分割するデータ分割部を備え、
前記特定値は、前記データ分割部によって分割されたデータ毎に生成されること、
を特徴とする請求項１記載の書き込み制御システム。
【請求項３】
前記管理部は、前記入力データを記憶するデータグループを示すグループ情報と、前記特定値を格納するインデックスを示すインデックス情報と、当該インデックスに格納される特定値のデータ長情報と、を関連付けて管理するとともに、当該管理するグループ情報及びインデックス情報に基づいて前記入力データのハッシュ値を格納するインデックスを決定し、
前記変換部は、前記管理部が管理するデータ長情報に基づいて前記特定値のデータ長の変換を行うこと、
を特徴とする請求項１又は２記載の書き込み制御システム。
【請求項４】
ストレージ装置に対するデータの書き込みを制御する書き込み制御システムの書き込み制御方法であって、
前記書き込み制御システムは、
応答速度が異なる２以上の記憶部を含み、前記２以上の記憶部それぞれが前記ストレージ装置に書き込まれるデータに基づいて定まる特定値を格納するインデックスを有し、前記応答速度が速い記憶部ほど前記インデックスに格納される特定値のデータ長が短くなるように構成された記憶部群を備えており、
前記ストレージ装置に対する入力データを管理するとともに当該入力データの特定値を格納する前記インデックスを決定するステップと、
前記入力データに基づいて特定値を生成するステップと、
前記生成した特定値のデータ長を前記入力データの更新前データに基づいて前記インデックスに格納された特定値と同じデータ長に変換するステップと、
前記データ長が変換された特定値と前記更新前データの特定値とを比較するステップと、
前記比較結果が両特定値の一致を示す場合、前記入力データ及び前記特定値の書き込みを中止し、当該比較結果が両特定値の一致を示さない場合、前記入力データを前記ストレージ装置に書き込むとともに、前記特定値を前記管理部で決定したインデックスに格納するステップと、
を有することを特徴とする書き込み制御システムの書き込み制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置に対する重複データの書き込みを制御する書き込み制御システム及びこれの書き込み制御方法に関する。
【背景技術】
【０００２】
重複データの書き込み制御をハッシュ値に基づいて行っているストレージシステムが知られている。ハッシュ値は、入力データに対してハッシュ関数、例えば、ＳＨＡ−１（Secure Hash Algorithm 1）を用いて算出される値であり、どのようなサイズの入力データに対しても固定長になる。このため、特に大容量のファイルシステムを有し、大量のデータを記憶するコンピュータシステムにおいては、多くのハッシュ値が算出され、ハッシュ値を格納するインデックスが応答速度の速いメモリに納まらない場合が生じる。この場合、該インデックスは、例えば、応答速度がメモリより遅いハードディスクドライブ等の記憶装置にＩ／Ｏ処理によって格納される。
【０００３】
また、ハッシュ値に更に別のハッシュ関数を用いて、当該ハッシュ値の固定長より短い新たなハッシュ値を算出する技術も知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２６５４２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
既述のように、大量のデータを記憶するコンピュータシステムにおいて、ハッシュ値のインデックスがメモリに納まらない場合、該インデックスは記憶装置にＩ／Ｏ処理が行われて格納される。その記憶装置のＩ／Ｏ処理がボトルネックになり、コンピュータシステムに負荷がかかり、該コンピュータシステム性能の低下が発生することが考えられる。更に、Ｉ／Ｏ処理を行う記憶装置は応答速度がメモリと比較して遅いため、ハッシュ値をフェッチする速度が低下し、重複データか否かを判定する処理にも時間を要することになる。
【０００６】
これを制御するために、例えば、特許文献１に記載の技術を用いることでハッシュ値のインデックスのサイズを小さくし応答速度の速いメモリに格納する方法も考えられる。しかしながら、ハッシュ値を階層化した場合、重複データか否かを判定する処理が複雑化し、結局、この処理の負荷がコンピュータシステムの性能に悪影響を与えてしまう。更に、メモリに格納するためにハッシュ値のインデックスのサイズを小さくした場合、コリジョンの可能性も大きくなる。
【０００７】
本発明は、上記事情に鑑みてなされたものであり、その目的は、大量のデータを記憶するコンピュータシステムにおいて、Ｉ／Ｏ処理の負荷を抑制しつつ重複データの書き込み制御を高速化できる書き込み制御システム及び書き込み制御システムの書き込み制御方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、ストレージ装置に対するデータの書き込みを制御する書き込み制御システムであって、応答速度が異なる２以上の記憶部を含み、２以上の記憶部それぞれがストレージ装置に書き込まれるデータに基づいて定まる特定値を格納するインデックスを有し、応答速度が速い記憶部ほどインデックスに格納される特定値のデータ長が短くなるように構成された記憶部群と、ストレージ装置に対する入力データを管理するとともに当該入力データの特定値を格納するインデックスを決定する管理部と、入力データに基づいて特定値を生成する生成部と、生成部で生成した特定値のデータ長を入力データの更新前データに基づいてインデックスに格納された特定値と同じデータ長に変換する変換部と、変換部でデータ長が変換された特定値と更新前データの特定値とを比較する比較部と、比較部の比較結果が両特定値の一致を示す場合、入力データ及び特定値の書き込みを中止し、当該比較結果が両特定値の一致を示さない場合、入力データをストレージ装置に書き込むとともに、特定値を管理部で決定したインデックスに格納する制御部と、を備えることを特徴とする。
【０００９】
また、他の本発明は、ストレージ装置に対するデータの書き込みを制御する書き込み制御システムの書き込み制御方法であって、書き込み制御システムは、応答速度が異なる２以上の記憶部を含み、２以上の記憶部それぞれがストレージ装置に書き込まれるデータに基づいて定まる特定値を格納するインデックスを有し、応答速度が速い記憶部ほどインデックスに格納される特定値のデータ長が短くなるように構成された記憶部群を備えており、ストレージ装置に対する入力データを管理するとともに当該入力データの特定値を格納するインデックスを決定するステップと、入力データに基づいて特定値を生成するステップと、生成した特定値のデータ長を入力データの更新前データに基づいてインデックスに格納された特定値と同じデータ長に変換するステップと、データ長が変換された特定値と更新前データの特定値とを比較するステップと、比較結果が両特定値の一致を示す場合、入力データ及び特定値の書き込みを中止し、当該比較結果が両特定値の一致を示さない場合、入力データをストレージ装置に書き込むとともに、特定値を管理部で決定したインデックスに格納するステップと、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によると、大量のデータを記憶するコンピュータシステムにおいて、Ｉ／Ｏ処理の負荷を抑制しつつ重複データの書き込み制御を高速化できる書き込み制御システム及び書き込み制御システムの書き込み制御方法を提供できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態に係るコンピュータシステム全体の構成を示す図である。
【図２】同実施の形態に係る重複データ書き込み制御システムの構成を示す図である。
【図３】同実施の形態に係る管理部で管理される内容を示す図である。
【図４】同実施の形態に係ハッシュ長の変換を説明するための図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００１３】
図１は、コンピュータシステム全体の構成を示す図である。同図に示すように、コンピュータシステム１は、複数の業務サーバ１０と、バックアップサーバ２０と、重複データ書き込み制御装置３０と、ストレージ装置４０とを有している。なお、重複データ書き込み制御装置３０と、ストレージ装置４０とで重複データ書き込み制御システム２を構成する。
【００１４】
業務サーバ１０は、コンピュータシステム１が設置される会社等の業務に関する様々な処理を実行する。
【００１５】
バックアップサーバ２０は、業務サーバ１０が実行した処理の内容を所定のタイミングでバックアップする。より詳細には、バックアップサーバ２０は、業務サーバ１０が業務を実行した場合、その業務の処理に関するデータを取得し、重複データ書き込み制御装置３０を介してその取得したデータをストレージ装置４０にバックアップする。
【００１６】
ストレージ装置４０は、バックアップサーバ２０によって書き込まれるデータを記憶し、所定の指示があった場合当該指示で指定されたデータを外部へ出力する。
【００１７】
また、ストレージ装置４０は、上位装置であるホスト（図示を省略する。）との応答速度が異なる２以上の記憶部（メモリキャッシュ４１、メモリ４２、ＳＳＤ（Solid State Drive）４３、ＨＤＤ（Hard Disk Drive）４４）を含み、当該２以上の記憶部それぞれが書き込まれるデータに基づいて定まる特定値（ハッシュ値）を格納するハッシュインデックスを有し、応答速度が速い記憶部ほどハッシュインデックスに格納される特定値のデータ長が短くなるように構成された記憶部群と、データを記憶するテープ装置４５とを有している。なお、ストレージ装置４０の他の構成については、一般的なストレージ装置が有する構成と同様であるため図示及び詳細な説明を省略する。
【００１８】
メモリ４２、ＳＳＤ４３、ＨＤＤ４４にはバックアップされたデータのハッシュ値が格納される。より詳細には、メモリキャッシュ４１、メモリ４２、ＳＳＤ４３、ＨＤＤ４４は、それぞれハッシュインデックスＦＳ１，ＦＳ２，ＦＳ３，ＦＳ４を格納し、メモリ４２、ＳＳＤ４３、ＨＤＤ４４はこの順で格納するハッシュ値のデータ長が短くなるように構成されている。
【００１９】
また、メモリ４２、ＳＳＤ４３、ＨＤＤ４４はこの順で上位装置との応答速度が速いため、重複データ書き込み制御装置３０がストレージ装置４０からハッシュ値をフェッチする場合、レイテンシー、スループットが、メモリ４２、ＳＳＤ４３、ＨＤＤ４４の順に有利になるように、換言すれば、高速処理ができるように構成されている。
【００２０】
テープ装置４５は、バックアップサーバ２０によりバックアップされるデータを記憶する。テープ装置がデータを記憶する構成については、従来よりあるものと同様であるため詳細な説明は省略する。
【００２１】
重複データ書き込み制御装置３０は、ストレージ装置４０に対する入力データを管理するとともに当該入力データのハッシュ値を格納するハッシュインデックスを決定するファイルシステム管理部３１と、入力データに基づいてハッシュ値を生成するハッシュ値生成部３４と、ハッシュ値生成部３４で生成したハッシュ値のデータ長を入力データの更新前データに基づいてハッシュインデックスに格納されたハッシュ値と同じデータ長に変換するハッシュ長変換部３５と、ハッシュ長変換部３５でデータ長が変換されたハッシュ値とリード制御部３３で読み出された更新前データのハッシュ値とを比較するハッシュ値比較部３６と、ハッシュ値比較部３６の比較結果が両ハッシュ値の一致を示す場合、入力データ及びハッシュ値の書き込みを中止し、当該比較結果が両ハッシュ値の一致を示さない場合、入力データをストレージ装置４０に書き込むとともに、ハッシュ値をファイルシステム管理部３１で決定したインデックスに格納する制ライト御部３８と、を有している（図２を参照。）。
【００２２】
更に、重複データ書き込み制御装置３０は、書き込み（更新）データを最小の書き込み単位に分割するデータ分割出力部３２を備えており（図２を参照。）、ハッシュ値は、データ分割出力部３２によって分割されたデータ毎にハッシュ値生成部３４によって生成される。
【００２３】
次に、重複データ書き込み制御装置３０の有するファイルシステム管理部３１、データ分割出力部３２、リード制御部３３、ハッシュ値生成部３４、ハッシュ長変換部３５、ハッシュ値比較部３６、メモリ階層指定部３７、及びライト制御部３８について、図２を参照しながらより詳細に説明する。
【００２４】
ファイルシステム管理部３１は、入力データを記憶するデータグループ（本実施の形態では、ファイルシステム）を示すグループ情報と、ハッシュ値を格納するハッシュインデックスを示すインデックス情報と、ハッシュインデックスに格納されるハッシュ値のデータ長情報と、を関連付けて管理する。また、ファイルシステム管理部３１は、ストレージ装置４０に対する入力データを受信した場合、入力データを管理するとともに、グループ情報及びインデックス情報に基づいて当該入力データのハッシュ値を格納するハッシュインデックスを決定し、入力データに関する情報を制御情報としてデータ分割出力部３２、リード制御部３３、ハッシュ長変換部３５及びメモリ階層指定部３７へ出力する。
【００２５】
図３は、ファイルシステム管理部３１が管理する情報の具体例を示している。同図に示すように、ファイルシステム管理部３１は、ファイルシステム識別子欄３１ａ、ハッシュ長情報欄３１ｂ、優先度情報欄３１ｃ、及び各種メタ情報欄３１ｄを有して構成されている。ファイルシステム識別子欄３１ａは、ストレージ装置４０内のファイルシステムを識別する識別子を保存する。ハッシュ長情報欄３１ｂは、ファイルシステムに設定されたハッシュ値のハッシュ長情報を保存する。優先度情報欄３１ｃは、ハッシュ値を格納する記憶部の階層を示す優先度情報を保存する。各種メタ情報欄１ｄはファイルの各種属性を示す情報を保存する。
【００２６】
ファイルシステム管理部３１は、例えば、図３に示すように、ファイルシステム識別子欄３１ａに保存されている「ファイルシステムＡ」には、ハッシュ長情報として「１０Ｂ（バイト）」、優先度情報として「高／メモリ」、各種メタ情報として「各種メタ情報Ａ」が関連付けて保存される。よって、ファイルシステムＡのハッシュ値は、メモリ４２のハッシュインデックスＦＳ２に１０バイトのデータ長で格納される。
【００２７】
データ分割出力部３２は、データ重複書き込み制御装置３０を介してバックアップサーバ２０からライトデータを受信した場合、当該ライトデータを書き込むファイルシステムに関する制御情報をファイルシステム管理部３１から受信し、そのファイルシステムに応じてライトデータを最小の書き込み単位に分割する。ファイルシステムにデータを書き込む最小単位は、例えば、ファイル、ブロックなどである。
【００２８】
リード制御部３３は、分割データを書き込む領域に既に記憶されている分割データ（更新前分割データ）のハッシュ値をメモリ４２、ＳＳＤ４３、ＨＤＤ４４のいずれかの階層から読み出す。このハッシュ値を読み出す階層は、リード制御部３３がファイルシステム管理部３１から受信する制御情報に基づいて取得される。
【００２９】
ハッシュ値生成部３４は、一般的なハッシュ関数、例えばＳＨＡ−１、又はＭＤ５アルゴニズムを用いてデータ分割出力部３２から入力された分割データに対して演算を行い、所定の桁数のハッシュ値を生成する。
【００３０】
ハッシュ長変換部３５は、入力された所定の桁数のハッシュ値のハッシュ長をファイルシステムに応じた桁数のハッシュ長に変換する。この変換するハッシュ長の桁数は、ハッシュ長変換部３５がファイルシステム管理部３１から受信する制御情報に基づいて取得される。
【００３１】
図４は、ハッシュ値のハッシュ長変換を説明するための図である。同図に示すように、ハッシュ長変換部３５に入力された所定のハッシュ長（変換前ハッシュ長）のハッシュ値は、データを書き込むファイルシステムに応じたハッシュ長（変換後ハッシュ長）に変換される。
【００３２】
例えば、データをファイルシステムＡに書き込む場合、入力されたハッシュ値は、所定のハッシュ長から１０Ｂ（図３参照。）に変換される。また、同様に、データをファイルシステムＢ，Ｃに書き込む場合、ハッシュ値のハッシュ長は、それぞれ、１５Ｂ，２０Ｂ（図３参照。）に変換される。このハッシュ長を所定の長さに変換する処理については従来よりあるものと同様であるため詳細な説明は省略する。
【００３３】
ハッシュ値比較部３６は、ハッシュ長変換部３５で変換されたハッシュ長のハッシュ値と（更新分割データのハッシュ値）と、リード制御部３３がストレージ装置４０の記憶部群の所定の階層から読み込出したハッシュ値（更新前分割データのハッシュ値）とを比較する。
【００３４】
メモリ階層指定部３７は、ライト制御部３８がハッシュ値を書き込むハッシュインデックスの階層を指定する。このハッシュ値を書き込む階層は、メモリ階層指定部３７がファイルシステム管理部３１から受信する制御情報に基づいて取得される。
【００３５】
ライト制御部３８は、ハッシュ値比較部３６の比較結果を取得し、比較結果が両ハッシュ値の一致を示す場合、ストレージ装置４０に記憶されている更新前分割データと今回の更新分割データとが同じであるためデータライトを中止する。一方、ライト制御部３８は、当該比較結果が両ハッシュ値の一致を示さない場合、ストレージ装置４０に記憶されている更新前分割データと今回の更新分割データとが異なるものであるため、今回の更新分割データをストレージ装置４０に記憶されている更新前分割データに上書きするとともに、メモリ階層指定部３７が指定する階層のハッシュインデックスに今回のハッシュ値を格納する。
【００３６】
次に、以上のように構成された重複データ書き込み制御システム２に関し、バックアップサーバ２０によりバックアップされたデータが、ストレージ装置４０内のファイルシステムＡに書き込まれる場合について説明する。
【００３７】
バックアップサーバ２０からライトデータを受信した場合、ファイルシステム管理部３１から当該ライトデータの制御情報、つまり、ファイルシステムＡに関する情報がデータ分割出力部３２、リード制御部３３、ハッシュ長変換部３５、及びメモリ階層指定部３７にそれぞれ送信される。
【００３８】
データ分割出力部３２は、ファイルシステム管理部３１から入力される制御情報に基づいて、ライトデータをデータの書き込みを行う最小単位に分割して分割データを生成する。更に、データ分割出力部３２は、分割データをハッシュ値生成部３４及びライト制御部３８へ出力する。
【００３９】
ハッシュ値生成部３４は、データ分割出力部３２から入力される分割データ及び所定のハッシュ関数を用いて、分割データ毎にハッシュ値を生成する。更に、ハッシュ値生成部３４は、生成したハッシュ値をハッシュ長変換部３５へ出力する。
【００４０】
ハッシュ長変換部３５は、ファイルシステム管理部３１から入力される制御情報に含まれるハッシュ長情報を用いて、ハッシュ値生成部３４から入力されるハッシュ値のハッシュ長を変換する。具体的には、ファイルシステムＡに書き込まれる分割データの場合、そのハッシュ長が所定のハッシュ長から１０Ｂ（バイト）に変換される（図４参照。）。ハッシュ長変換部３５は、変換した１０バイトのハッシュ長のハッシュ値をハッシュ値比較部３６へ出力する。
【００４１】
一方、リード制御部３３は、ファイルシステム管理部３１から入力される制御情報に基づいて、ストレージ装置４０から分割データ（更新分割データ）が書き込まれる領域に既に書き込まれている分割データ（更新前分割データ）のハッシュ値を、ストレージ装置４０のメモリキャッシュ４１、メモリ４２、ＳＳＤ４３、ＨＤＤ４４のいずれかから読み出し、その読み出したハッシュ値をハッシュ値比較部３６へ出力する。
【００４２】
したがって、ハッシュ値比較部３６には、分割データ毎に、ハッシュ長変換部３５でハッシュ長が変換された更新データのハッシュ値と、リード制御部３３が読み出した更新前データのハッシュ値とが入力される。ハッシュ値比較部は、分割データ毎に、両ハッシュ値を比較し、その比較結果をライト制御部３８へ出力する。
【００４３】
一方、メモリ階層指定部３７は、ファイルシステム管理部３１から入力される制御情報に含まれる優先度情報基づいて、更新データのハッシュ値を格納するハッシュインデックスの階層を指定し、その階層を示す情報をライト制御部３８へ出力する。具体的には、例えば、ファイルシステムＡに書き込まれるデータの場合、各分割データのハッシュ値は、「高／メモリ」、つまり、優先度が高いためメモリ４２に格納するようにライト制御部３８へ指定する。
【００４４】
ライト制御部３８は、ハッシュ値比較部３６から入力される比較結果に基づいて、分割データ及びハッシュ値をストレージ装置４０に書き込む処理を行う。より詳細には、両ハッシュ値が一致するという比較結果を得た場合、ライト制御部３８は、該分割データ及びハッシュ値のストレージ装置４０へ書き込み（上書き保存）を中止する。一方、両ハッシュ値が一致しないという比較結果を得た場合、ライト制御部３８は、該分割データをストレージ装置４０内のファイルシステムＡへ書き込むとともに、更新分割データのハッシュ値をメモリ階層指定部３７に指定された階層、つまり、メモリ４２のハッシュインデックスＦＳ２に書き込む。
【００４５】
以上のように構成された重複データ書き込み制御システム２は、ファイルシステム管理部３１が管理する優先度情報に基づいて、更新前データのハッシュ値が格納されているメモリ４２，ＳＳＤ４３，ＨＤＤ４４のいずれかのハッシュインデックスに的確にアクセスすることができる。よって、更新前データのハッシュ値を読み出し、その読み出したハッシュ値とデータ長変換部３５でデータ長が変換されたハッシュ値とを比較する制御を高速化することができる。
【００４６】
更に、重複データ書き込み制御システム２は、応答速度の速い上位階層の記憶部のハッシュインデックスほどハッシュ値のデータ長が短くなるように構成されているため、応答速度の速い記憶部のハッシュインデックスに多くのハッシュ値を格納できるようになっている。このため、重複データ書き込み制御システム２は、Ｉ／Ｏ処理が必要な記憶部へのアクセスを抑制することができる。
【００４７】
したがって、重複データ書き込み制御システム２は、コンピュータシステムのＩ／Ｏ処理の負荷を抑制しつつ重複データの書き込み制御を高速化することができる。
【００４８】
なお、上記実施の形態では、優先度情報はハッシュ値を格納するストレージ装置４０の記憶部群の階層、すなわち、メモリ４２、ＳＳＤ４３、ＨＤＤ４４のいずれかを示す情報である場合で説明したが、これに限られるものではなく、様々な定義づけを行うことができる。
【００４９】
更に、ファイルシステム管理部３１は、ファイルシステム識別子３１ａに関連してハッシュ長情報３１ｂ、優先度情報３１ｃ、各種メタ情報３１ｄを管理する場合で説明したが、これに限られるものではない。例えば、管理部は、ファイルシステム識別子３１ａに代えてボリュームグループ等の所定のまとまりのあるデータグループ毎に、又は、ファイルシステム識別子３１ａとともにボリュームグループ等のデータグループ毎に、ハッシュ長情報３１ｂ、優先度情報３１ｃ、各種メタ情報３１ｄを管理するようにしても良い。
【００５０】
なお、本発明は上述の実施の形態に限定されるものではなく、その実施に際して様々な変形が可能である。
【００５１】
上記実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００５２】
（付記１）
ストレージ装置に対するデータの書き込みを制御する書き込み制御システムであって、
応答速度が異なる２以上の記憶部を含み、前記２以上の記憶部それぞれが前記ストレージ装置に書き込まれるデータに基づいて定まる特定値を格納するインデックスを有し、前記応答速度が速い記憶部ほど前記インデックスに格納される特定値のデータ長が短くなるように構成された記憶部群と、
前記ストレージ装置に対する入力データを管理するとともに当該入力データの特定値を格納する前記インデックスを決定する管理部と、
前記入力データに基づいて特定値を生成する生成部と、
前記生成部で生成した特定値のデータ長を前記入力データの更新前データに基づいて前記インデックスに格納された特定値と同じデータ長に変換する変換部と、
前記変換部でデータ長が変換された特定値と前記更新前データの特定値とを比較する比較部と、
前記比較部の比較結果が両特定値の一致を示す場合、前記入力データ及び前記特定値の書き込みを中止し、当該比較結果が両特定値の一致を示さない場合、前記入力データを前記ストレージ装置に書き込むとともに、前記特定値を前記管理部で決定したインデックスに格納する制御部と、
を備えることを特徴とする書き込み制御システム。
【００５３】
（付記２）
データを最小の書き込み単位に分割するデータ分割部を備え、
前記特定値は、前記データ分割部によって分割されたデータ毎に生成されること、
を特徴とする付記１記載の書き込み制御システム。
【００５４】
（付記３）
前記管理部は、前記入力データを記憶するデータグループを示すグループ情報と、前記特定値を格納するインデックスを示すインデックス情報と、当該インデックスに格納される特定値のデータ長情報と、を関連付けて管理するとともに、当該管理するグループ情報及びインデックス情報に基づいて前記入力データのハッシュ値を格納するインデックスを決定し、
前記変換部は、前記管理部が管理するデータ長情報に基づいて前記特定値のデータ長の変換を行うこと、
を特徴とする付記１又は２記載の書き込み制御システム。
【００５５】
（付記４）
ストレージ装置に対するデータの書き込みを制御する書き込み制御システムの書き込み制御方法であって、
前記書き込み制御システムは、
応答速度が異なる２以上の記憶部を含み、前記２以上の記憶部それぞれが前記ストレージ装置に書き込まれるデータに基づいて定まる特定値を格納するインデックスを有し、前記応答速度が速い記憶部ほど前記インデックスに格納される特定値のデータ長が短くなるように構成された記憶部群を備えており、
前記ストレージ装置に対する入力データを管理するとともに当該入力データの特定値を格納する前記インデックスを決定するステップと、
前記入力データに基づいて特定値を生成するステップと、
前記生成した特定値のデータ長を前記入力データの更新前データに基づいて前記インデックスに格納された特定値と同じデータ長に変換するステップと、
前記データ長が変換された特定値と前記更新前データの特定値とを比較するステップと、
前記比較結果が両特定値の一致を示す場合、前記入力データ及び前記特定値の書き込みを中止し、当該比較結果が両特定値の一致を示さない場合、前記入力データを前記ストレージ装置に書き込むとともに、前記特定値を前記管理部で決定したインデックスに格納するステップと、
を有することを特徴とする書き込み制御システムの書き込み制御方法。
【産業上の利用可能性】
【００５６】
ストレージ装置に対して重複データの書き込みを制御する書き込み制御システム及び書き込み制御システムの書き込み制御方法などに広く適用可能である。
【符号の説明】
【００５７】
１・・・コンピュータシステム
２・・・重複データ書き込み制御システム
１０・・・業務サーバ
２０・・・バックアップサーバ
３０・・・重複データ書き込み制御装置
３１・・・ファイルシステム管理部
３２・・・データ分割出力部
３３・・・リード制御部
３４・・・ハッシュ値生成部
３５・・・ハッシュ長変換部
３６・・・ハッシュ値比較部
３７・・・メモリ階層指定部
３８・・・ライト制御部
４０・・・ストレージ装置
４１・・・メモリキャッシュ（ハッシュインデックスＦＳ１）
４２・・・メモリ（ハッシュインデックスＦＳ２）
４３・・・ＳＳＤ（ハッシュインデックスＦＳ３）
４４・・・ＨＤＤ（ハッシュインデックスＦＳ４）
４５・・・テープ装置
【図１】
2012133551.tif 000003
【図２】
2012133551.tif 000004
【図３】
2012133551.tif 000005
【図４】
2012133551.tif 000006