(57)【要約】【課題】共有化したブロックデータが属するファイルを特定するストレージシステム、ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラムを提供する。【解決手段】ファイルを分割したブロックデータと、ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する、記憶部２と、コンテンツアドレスを関連付けて共有化したブロックデータが属するファイルを特定する、特定部３と、を有するストレージシステム１である。【選択図】図１
2019160245.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを分割したブロックデータと、前記ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する、記憶部と、
前記コンテンツアドレスを関連付けて共有化した前記ブロックデータが属する前記ファイルを特定する、特定部と、
を有するストレージシステム。
【請求項２】
請求項１に記載のストレージシステムであって、
前記ブロックデータを記憶する場合、前記ブロックデータを識別するブロックデータ識別情報と、ファイルを識別するファイル識別情報と、前記ファイルに対する前記ブロックデータのオフセット情報とを関連付けた管理情報を生成する、生成部を有し、
前記特定部は、前記ブロックデータに対応するブロックデータ識別情報を用いて、前記管理情報を参照して、ファイルを特定する。
【請求項３】
請求項１又は２に記載のストレージシステムであって、
共有化した前記ブロックデータと、共有化した前記ブロックデータが属する前記ファイルと、共有化した前記ブロックデータに対応する前記コンテンツアドレスとを関連付けた表示画像を、表示部に表示させるための表示情報を生成する、表示情報生成部を有する。
【請求項４】
ファイルを分割したブロックデータと、前記ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて書き込みをする、ファイル書き込み部と、
前記コンテンツアドレスを関連付けて共有化した前記ブロックデータが属する前記ファイルを特定する、特定部と、
を有するストレージ制御装置。
【請求項５】
請求項４に記載のストレージ制御装置であって、
前記ブロックデータを記憶する場合、前記ブロックデータを識別するブロックデータ識別情報と、ファイルを識別するファイル識別情報と、前記ファイルに対する前記ブロックデータのオフセット情報とを関連付けた管理情報を生成する、生成部を有し、
前記特定部は、前記ブロックデータに対応するブロックデータ識別情報を用いて、前記管理情報を参照して、ファイルを特定する。
【請求項６】
請求項４又は５に記載のストレージ制御装置であって、
共有化した前記ブロックデータと、共有化した前記ブロックデータが属する前記ファイルと、共有化した前記ブロックデータに対応する前記コンテンツアドレスとを関連付けた表示画像を、表示部に表示させるための表示情報を生成する、表示情報生成部を有する。
【請求項７】
（Ａ）ファイルを分割したブロックデータと、前記ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する、ステップと、
（Ｂ）前記コンテンツアドレスを関連付けて共有化した前記ブロックデータが属する前記ファイルを特定する、ステップと、
を有するストレージ制御方法。
【請求項８】
請求項７に記載のストレージ制御方法であって、
（Ｃ）前記ブロックデータを記憶する場合、前記ブロックデータを識別するブロックデータ識別情報と、ファイルを識別するファイル識別情報と、前記ファイルに対する前記ブロックデータのオフセット情報とを関連付けた管理情報を生成する、ステップを有し、
前記（Ｂ）のステップにおいて、前記ブロックデータに対応するブロックデータ識別情報を用いて、前記管理情報を参照して、ファイルを特定する。
【請求項９】
請求項７又は８に記載のストレージ制御方法であって、
（Ｄ）共有化した前記ブロックデータと、共有化した前記ブロックデータが属する前記ファイルと、共有化した前記ブロックデータに対応する前記コンテンツアドレスとを関連付けた表示画像を、表示部に表示させるための表示情報を生成する、ステップを有する。
【請求項１０】
コンピュータに、
（Ａ）ファイルを分割したブロックデータと、前記ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する、ステップと、
（Ｂ）前記コンテンツアドレスを関連付けて共有化した前記ブロックデータが属する前記ファイルを特定する、ステップと、
を実行させるストレージ制御プログラム。
【請求項１１】
請求項１０に記載のストレージ制御プログラムであって、
コンピュータに、
（Ｃ）前記ブロックデータを記憶する場合、前記ブロックデータを識別するブロックデータ識別情報と、ファイルを識別するファイル識別情報と、前記ファイルに対する前記ブロックデータのオフセット情報とを関連付けた管理情報を生成する、ステップを実行させ、
前記（Ｂ）のステップにおいて、前記ブロックデータに対応するブロックデータ識別情報を用いて、前記管理情報を参照し、ファイルを特定する。
【請求項１２】
請求項１０又は１１に記載のストレージ制御プログラムであって、
コンピュータに、
（Ｄ）共有化した前記ブロックデータと、共有化した前記ブロックデータが属する前記ファイルと、共有化した前記ブロックデータに対応する前記コンテンツアドレスとを関連付けた表示画像を、表示部に表示させるための表示情報を生成する、ステップを実行させる。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツアドレスを用いてストレージを制御するストレージシステム、ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラムに関する。
【背景技術】
【０００２】
ストレージシステムとして、重複するデータを共有化して記憶するＣＡＳ（Contents Address Storage）システムが知られている。ＣＡＳシステムは、ファイルを分割したブロックデータと、ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶媒体に記憶する。従って、ＣＡＳシステムでは、同じ内容のブロックデータには、同じコンテンツアドレスが関連付けられるため、同じ内容のブロックデータを重複して記憶媒体に記憶しなくてもよい。すなわち、コンテンツアドレスを参照すれば、当該コンテンツアドレスに関連付けられたブロックデータが記憶されている位置を特定できるため、ブロックデータを重複して記憶媒体に記憶しなくてもよくなる。
【０００３】
関連する技術として、特許文献１には、ブロックデータとコンテンツアドレスとをツリー構造に記憶するＣＡＳシステムが開示されている。そのＣＡＳシステムによれば、記憶容量の削減及び記憶処理時間の短縮ができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１９８５２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示されているＣＡＳシステムでは、同じ内容のブロックデータを共有化することはできるが、共有化したブロックデータが、どのファイルに属するブロックデータであるかを特定できない。
【０００６】
本発明の目的の一例は、共有化したブロックデータが属するファイルを特定するストレージシステム、ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の一側面におけるストレージシステムは、
ファイルを分割したブロックデータと、前記ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する、記憶部と、
前記コンテンツアドレスを関連付けて共有化した前記ブロックデータが属する前記ファイルを特定する、特定部と、
を有することを特徴とする。
【０００８】
また、上記目的を達成するため、本発明の一側面におけるストレージ制御装置は、
ファイルを分割したブロックデータと、前記ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて書き込みをする、ファイル書き込み部と、
前記コンテンツアドレスを関連付けて共有化した前記ブロックデータが属する前記ファイルを特定する、特定部と、
を有することを特徴とする。
【０００９】
また、上記目的を達成するため、本発明の一側面におけるストレージ制御方法は、
（Ａ）ファイルを分割したブロックデータと、前記ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する、ステップと、
（Ｂ）前記コンテンツアドレスを関連付けて共有化した前記ブロックデータが属する前記ファイルを特定する、ステップと、
を有することを特徴とする。
【００１０】
更に、上記目的を達成するため、本発明の一側面におけるストレージ制御プログラムは、
コンピュータに、
（Ａ）ファイルを分割したブロックデータと、前記ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する、ステップと、
（Ｂ）前記コンテンツアドレスを関連付けて共有化した前記ブロックデータが属する前記ファイルを特定する、ステップと、
を実行させることを特徴とする。
【発明の効果】
【００１１】
以上のように本発明によれば、共有化したブロックデータが属するファイルを特定することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、ストレージシステムの一例を示す図である。
【図２】図２は、ストレージシステムの構成を具体的に示す図である。
【図３】図３は、ファイル書き込みの動作を説明するための図である。
【図４】図４は、管理情報のデータ構造の一例を示す図である。
【図５】図５は、共有化したブロックデータの状態を示す図である。
【図６】図６は、ストレージ制御装置の動作の一例を示す図である。
【図７】。図７は、本発明の実施の形態におけるストレージ制御装置を実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【００１３】
（実施の形態）
以下、本発明の実施の形態について、図１から図７を参照しながら説明する。
【００１４】
［システム構成］
最初に、図１を用いて、本実施の形態におけるストレージシステムの構成について説明する。図１は、ストレージシステムの一例を示す図である。
【００１５】
図１に示すように、本実施の形態における、ストレージシステム１は、共有化したブロックデータが属するファイルを特定するための装置である。図１に示すように、ストレージシステム１は、記憶部２と特定部３とを有する。
【００１６】
このうち、記憶部２は、ファイルを分割したブロックデータと、ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する。特定部３は、コンテンツアドレスを関連付けて共有化したブロックデータが属するファイルを特定する。
【００１７】
このように、本実施の形態では、ブロックデータが属するファイルを特定できるので、共有化したブロックデータを用いて、共有化したブロックデータを有する複数のファイルを特定できる。
【００１８】
また、従来のＣＡＳシステムでは、ブロックデータの共有化による、記憶容量の削減が、どの程度の効果を発揮したのかを、利用者に伝えることが難しい。そこで、現状では、利用者が記憶容量の削減効果を確認することを要望する場合、利用者へのＣＡＳシステムの貸し出し、又は専用のツールを用いて計測をするなどして、利用者に記憶容量の削減効果を提示している。ところが、これらの方法で提示できるのは、ブロックデータを共有化する前（ブロックデータの重複排除前）の記憶媒体全体の記憶容量と、ブロックデータを共有化した後（ブロックデータの重複排除後）の記憶媒体全体の記憶容量との比較にとどまる。そのため、利用者はブロックデータの共有化前後で記憶容量が削減されたことを大まかに知る程度となる。言い換えれば、共有化したブロックデータごとの記憶容量の削減効果を、利用者に提示できない。そのため、記憶容量の削減効果を、利用者に直感的に伝え難い。
【００１９】
しかし、本実施の形態によれば、ブロックデータが属するファイルを特定できるので、複数のファイルに分散している、共有化したブロックデータごとに、記憶容量の削減効果を、利用者に提示できる。すなわち、記憶容量の削減効果を、利用者に直感的に伝えられる。
【００２０】
続いて、図２を用いて、本実施の形態におけるストレージシステム１の構成をより具体的に説明する。図２は、ストレージシステムの構成を具体的に示す図である。
【００２１】
図２に示すように、本実施の形態におけるストレージシステム１は、ストレージ制御装置１０と、情報処理装置２０、記憶部２、表示部３０とを有する。
【００２２】
ストレージ制御装置１０は、特定部３に加えて、後述するファイル書き込み部２１と、ファイル読み出し部２２と、生成部２３と、表示情報生成部２４とを有する。ストレージ制御装置１０は、情報処理装置２０からファイルを受信し、受信したファイルを記憶部２に書き込む。ストレージ制御装置１０は、記憶部２からファイルを読み出し、読み出したファイルを情報処理装置２０へ送信する。また、ストレージ制御装置１０は、記憶部２に記憶したファイルの記憶状態を示す表示画像を、表示部３０に表示するための表示情報を生成して、表示部３０へ出力する。
【００２３】
記憶部２は、ストレージ制御装置１０と通信をして、ファイルを記憶する。具体的には、記憶部２は、ファイルを分割したブロックデータと、ブロックデータに基づいて生成したコンテンツアドレスとを関連付けて記憶する。例えば、記憶部２は、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）などの記憶媒体を用いて構築される。
【００２４】
情報処理装置２０は、必要に応じて、ストレージ制御装置１０と通信をして、記憶部２へファイルを書き込み、又は、記憶部２からファイルを読み出す。情報処理装置２０は、例えば、一つ以上のサーバコンピュータから構築される情報処理装置などである。
【００２５】
表示部３０は、ストレージ制御装置１０と接続して用いる。表示部３０は、例えば、ＣＲＴ（Cathode Ray Tube）、液晶、有機ＥＬ（Electro Luminescence）などを用いたディスプレイ装置である。また、表示部３０は、プリンタなどの印刷装置でもよい。
【００２６】
次に、ストレージ制御装置１０について具体的に説明する。
【００２７】
ファイル書き込み部２１は、まず、記憶部２へのファイルの書き込み要求を、情報処理装置２０から受信する。続いて、ファイル書き込み部２１は、書き込み要求を受信した後、情報処理装置２０からファイルを受信する。続いて、ファイル書き込み部２１は、ファ
イルを受信した後、予め設定したファイルを分割するための基準に従い、受信したファイルを分割してブロックデータを生成し、ブロックデータを圧縮して記憶部２へ記憶する。
【００２８】
また、ファイル書き込み部２１は、ブロックデータを生成した後、ブロックデータの内容に基づいてコンテンツアドレスを生成して、ブロックデータとコンテンツアドレスとを関連付けて記憶部２へ記憶する。ファイルは、記憶部２へ記憶される際、ファイルを分割したブロックデータに対応するコンテンツアドレスを用いて表される。コンテンツアドレスは、例えば、ブロックデータが有する情報を用いて生成したハッシュ値を用いる。
【００２９】
ファイル書き込み部２１について、図３に示すコンテンツアドレスのツリー構造を用いて説明する。図３は、ファイル書き込み動作を説明するための図である。
【００３０】
図３に示すファイル「ｆｉｌｅ２」を書き込む場合について説明する。ファイル書き込み部２１は、情報処理装置２０からファイル「ｆｉｌｅ２」を受信した場合、ファイル「ｆｉｌｅ２」を分割してブロックデータ（図３に示す「ＢＤ２１」など）を生成する。続いて、ファイル書き込み部２１は、生成したブロックデータに基づいて、コンテンツアドレス（図３に示す「ＣＡ４１」など）を生成し、生成したブロックデータとコンテンツアドレスとを関連付けて記憶部２に記憶する。
【００３１】
次に、ファイル「ｆｉｌｅ３」を書き込む場合について説明する。ファイル書き込み部２１は、情報処理装置２０からファイル「ｆｉｌｅ３」を受信した場合、ファイル「ｆｉｌｅ３」を分割してブロックデータ（図３に示す「ＢＤ２１」「ＢＤ３２」など）を生成する。続いて、ファイル書き込み部２１は、生成したブロックデータに基づいて、コンテンツアドレス（図３に示す「ＣＡ４１」「ＣＡ５２」など）を生成し、生成したブロックデータとコンテンツアドレスとを関連付けて記憶する。
【００３２】
ただし、ブロックデータ「ＢＤ２１」は、コンテンツアドレス「ＣＡ４１」が関連付けられ、既にコンテンツアドレス「ＣＡ４１」が示す記憶領域に記憶されているので、ファイル書き込み部２１は、重複するブロックデータ「ＢＤ２１」を記憶部２に記憶しない。
【００３３】
このように、ブロックデータとコンテンツアドレスとを関連付けて、ブロックデータを共有化することで、重複するブロックデータを記憶部２に記憶しないようにできる。そのため、記憶部２の記憶容量を有効に活用することができる。
【００３４】
ファイル読み出し部２２は、ファイルを読み出す場合、まず、情報処理装置２０から、ファイルを記憶部２から読み出す要求を受信し、読み出す要求を受信した後、情報処理装置２０から読み出すファイルに関する、読み出すファイルの情報を受信する。続いて、ストレージ制御装置１０は、読み出すファイルの情報を受信した後、読み出すファイルの情報に基づいて、記憶部２に分割して記憶されている、読み出すファイルに対応するブロックデータを取集し、ファイルを統合して復元する。その後、ファイル読み出し部２２は、復元したファイルを、情報処理装置２０へ送信する。
【００３５】
生成部２３は、ブロックデータを記憶部２へ記憶する場合、ブロックデータを識別するブロックデータ識別情報と、ファイルを識別するファイル識別情報と、ファイルに対するブロックデータのオフセット情報とを関連付けた管理情報を生成する。なお、既に共有化されているブロックデータが、記憶部２に記憶されている場合、生成部２３は、管理情報のみを追加変更する。
【００３６】
図３、図４を用いて、生成部２３について具体的に説明する。図４は、管理情報のデータ構造の一例を示す図である。図４に示す管理情報４０は、ブロックデータを識別する「
ブロックデータ識別情報」と、ファイルを識別する「ファイル識別情報」と、ファイルに対するコンテンツアドレスの配置を示す「オフセット情報」とが関連付けられて記憶されている。管理情報４０は、例えば、記憶部２又はストレージ制御装置１０のいずれかに記憶されている。
【００３７】
「ブロックデータ識別情報」には、ブロックデータを示す「ＢＤ１１」「ＢＤ１２」「ＢＤ２１」「ＢＤ３２」が記憶されている。
【００３８】
「ファイル識別情報」には、例えば、ファイルを識別する情報として、ルートディレクトリから対象のファイルまでのパスを記憶する。図４の例では、ブロックデータ「ＢＤ１１」に対応する「／ｄｉｒ１／ｆｉｌｅ１」「／ｄｉｒ１／ｆｉｌｅ１」、ブロックデータ「ＢＤ１２」に対応する「／ｄｉｒ１／ｆｉｌｅ２」、ブロックデータ「ＢＤ２１」に対応する「／ｄｉｒ２／ｆｉｌｅ３」、ブロックデータ「ＢＤ３２」に対応する「／ｄｉｒ２／ｆｉｌｅ３」が記憶されている。
【００３９】
「オフセット情報」には、例えば、ファイルに対するコンテンツアドレスの配置を示すオフセット情報「０」「１」が記憶されている。オフセット情報「０」は、対象のコンテンツアドレスがファイルの先頭（一番目）に配置されていることを示している。また、オフセット情報「１」は、対象のコンテンツアドレスがファイルの二番目に配置されていることを示している。なお、対象のコンテンツアドレスがＮ番目に配置されている場合、オフセット情報は「Ｎ−１」とする。Ｎは３以上の正の整数である。
【００４０】
具体的には、生成部２３は、ファイル「ｆｉｌｅ２」に属するブロックデータ「ＢＤ２１」を記憶部２に書き込む場合、ブロックデータ「ＢＤ２１」を識別するブロックデータ識別情報「ＢＤ２１」と、ブロックデータ「ＢＤ２１」が属するファイルを識別するファイル識別情報「／ｄｉｒ１／ｆｉｌｅ２」と、ファイル「ｆｉｌｅ２」の先頭からのオフセットを示す情報「０」とを関連付けて管理情報４０に記憶する。
【００４１】
また、ファイル「ｆｉｌｅ３」に属するブロックデータ「ＢＤ２１」を記憶部２に書き込む場合、生成部２３は、ブロックデータ「ＢＤ２１」が属するファイル名「／ｄｉｒ２／ｆｉｌｅ３」と、ファイル「ｆｉｌｅ３」の先頭からのオフセット情報「０」とを関連付けて管理情報４０に記憶する。
【００４２】
このように、生成部２３は、ブロックデータを記憶部２へ記憶するごとに、管理情報を更新することで、データブロック側からファイルを逆引きできるようなる。その結果、共有化したブロックデータが属するファイルを特定することができる。
【００４３】
特定部３は、コンテンツアドレスを関連付けて共有化したブロックデータに対応する、ブロックデータ識別情報を用いて、管理情報４０を参照し、ブロックデータが属するファイルを特定する。
【００４４】
具体的には、特定部３は、図３、図４に示すツリー構造のような場合、ブロックデータ「ＢＤ２１」の識別情報を用いて、管理情報４０を参照し、ブロックデータ識別情報「ＢＤ２１」に対応する、ファイル識別情報「／ｄｉｒ１／ｆｉｌｅ２」とオフセット情報「０」とを選択する。また、特定部３は、「／ｄｉｒ２／ｆｉｌｅ３」とオフセット情報「０」とを選択する。
【００４５】
続いて、記憶容量の削減効果を利用者に提示する場合、特定部３は、表示情報生成部２４へ特定結果を出力する。具体的には、特定部３は、特定結果として、ブロックデータ識別情報「ＢＤ２１」と、ブロックデータ識別情報「ＢＤ２１」に関連するファイル識別情
報「／ｄｉｒ１／ｆｉｌｅ２」とオフセット情報「０」、及び、「／ｄｉｒ２／ｆｉｌｅ３」とオフセット情報「０」を、表示情報生成部２４へ出力する。
【００４６】
表示情報生成部２４は、共有化したブロックデータと、共有化したブロックデータが属するファイルと、共有化したブロックデータに対応するコンテンツアドレスとを関連付けた表示画像を、表示部３０に表示させるための表示情報を生成する。その後、表示情報生成部２４は、表示情報を表示部３０へ出力する。
【００４７】
図３、図４、図５を用いて具体的に説明する。図５は、共有化したブロックデータの状態を示す図である。表示情報生成部２４は、共有化したブロックデータ「ＢＤ２１」について、記憶容量の削減効果を利用者に提示する場合、特定部３から、ブロックデータ「ＢＤ２１」に対する特定結果を取得する。
【００４８】
続いて、表示情報生成部２４は、特定結果に基づいて、表示部３０に、図５に示したような表示画像１、表示画像２を表示させるための表示情報を生成する。例えば、図５に示す表示画像１は、ファイル「ｆｉｌｅ２」におけるブロックデータ「ＢＤ２１」に対する、圧縮前と圧縮後の状態、及びコンテンツアドレスを表示している。また、図５に示す表示画像２は、ファイル「ｆｉｌｅ３」におけるブロックデータ「ＢＤ２１」「ＢＤ３２」に対する、圧縮前と圧縮後の状態、及びコンテンツアドレスを表示している。
【００４９】
なお、表示部３０への表示は、図５に示すように、表示画像１と表示画像２とを一緒に表示させてもよいし、表示画像１又は表示画像２だけを表示させてもよい。また、コンテンツアドレスが関連付けられたブロックデータ全てに関して表示してもよいし、又は利用者が選択したブロックデータに関してのみ表示してもよいし、又は重複しているブロックデータに関してのみ表示をしてもよい。
【００５０】
また、図５に示すように、ブロックデータの圧縮率を図形の形状を変化させて表してもよい。また、重複の有無をブロックデータの色を変えて表してもよい。例えば、複数のファイルにおいて重複しているブロックデータは、ブロックデータに対応する図形の色を濃くする。
【００５１】
また、図５に示すように、ブロックデータに対応する図形の先頭位置を揃えて、圧縮効果を利用者に分かり易く表示してもよい。
【００５２】
更に、表示部３０に表示する表示画像は、図３に示したような、ツリー構造を示す表示画像としてもよい。特に、重複するブロックデータと、当該ブロックデータに対応するコンテンツアドレスと、当該コンテンツアドレスを有するファイルとの関係を表示画像に反映する。図３に示した例では、ファイル「ｆｉｌｅ２」のコンテンツアドレス「ＣＡ４１」及びファイル「ｆｉｌｅ３」のコンテンツアドレス「ＣＡ４１」が、ブロックデータ「ＢＤ２１」を参照していることを表示している。なお、図３において、メタデータを示す点描領域（「ｄｉｒ１」「ｄｉｒ２」）（「ｆｉｌｅ１」「ｆｉｌｅ２」）「ｆｉｌｅ３」は、ディレクトリ名、ファイル名、ファイルが書き込まれた日時などが記憶されている。
【００５３】
このように、ブロックデータが属する複数のファイルを特定することで、複数のファイルに分散している、共有化したブロックデータごとに、記憶容量の削減効果を、利用者に提示できる。すなわち、記憶容量の削減効果を、利用者に直感的に伝えられる。
【００５４】
［装置動作］
次に、本発明の実施の形態におけるストレージ制御装置１０の動作について図６を用い
て説明する。図６は、ストレージ制御装置の動作の一例を示す図である。以下の説明においては、適宜図２から図５を参酌する。また、本実施の形態では、ストレージ制御装置１０を動作させることにより、ストレージ制御方法が実施される。よって、本実施の形態におけるストレージ制御方法の説明は、以下のストレージ制御装置１０の動作説明に代える。
【００５５】
図６に示すように、最初に、ファイル書き込み部２１は、ブロックデータと、コンテンツアドレスとを関連付けて記憶部に書き込む（ステップＡ１）。また、生成部２３は、ブロックデータを記憶する場合、管理情報を生成する（ステップＡ２）。
【００５６】
更に、例えば、利用者に記憶容量の削減効果を利用者に提示する場合、特定部３は、既にコンテンツアドレスを関連付けて共有化したブロックデータが属するファイルを特定する（ステップＡ３）。続いて、表示情報生成部２４は、表示画像を、表示部３０に表示させるための表示情報を生成する（ステップＡ４）。
【００５７】
ステップＡ１において、ファイル書き込み部２１は、情報処理装置２０から、記憶部２へ書き込むファイルを受信した後、予め設定したファイルを分割するための基準に従い、受信したファイルを分割してブロックデータを生成し、圧縮して記憶部２へ記憶する。また、ファイル書き込み部２１は、ブロックデータを生成した後、ブロックデータの内容に基づいてコンテンツアドレスを生成して、ブロックデータとコンテンツアドレスとを関連付けて記憶部２へ記憶する。
【００５８】
ステップＡ２において、生成部２３は、ブロックデータを記憶部２へ記憶する場合、ブロックデータ識別情報と、ファイル識別情報と、ファイルに対するブロックデータのオフセット情報とを関連付けて管理情報を生成する。なお、既に共有化されているブロックデータが、記憶部２に記憶されている場合、生成部２３は、管理情報のみを追加変更する。
【００５９】
ステップＡ３において、特定部３は、コンテンツアドレスを関連付けて共有化したブロックデータに対応する、ブロックデータ識別情報を用いて、管理情報を参照し、ブロックデータが属するファイルを特定する。また、特定部３は、記憶容量の削減効果を利用者に提示する場合、表示情報生成部２４へ特定結果を出力する。
【００６０】
ステップＡ４において、表示情報生成部２４は、共有化したブロックデータと、共有化したブロックデータが属するファイルと、共有化したブロックデータに対応するコンテンツアドレスとを関連付けた表示画像を、表示部３０に表示させるための表示情報を生成し、表示部３０へ出力する。表示部３０へ表示する表示画像は、例えば、図３、図５などである。
【００６１】
［本実施の形態の効果］
以上のように本実施の形態によれば、記憶部２に記憶した、共有化したブロックデータを検出した場合、既にコンテンツアドレスを関連付けて共有化したブロックデータが属するファイルを特定できる。
【００６２】
また、本実施の形態によれば、ブロックデータが属する複数のファイルを特定できるので、複数のファイルに分散されている、共有化したブロックデータごとに、記憶容量の削減効果を、利用者に提示できる。すなわち、記憶容量の削減効果を、利用者に直感的に伝えられる。
【００６３】
［プログラム］
本発明の実施の形態におけるプログラムは、コンピュータに、図５に示すステップＡ１
からＡ４を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるストレージ制御装置１０とストレージ制御方法とを実現することができる。この場合、コンピュータのプロセッサは、ファイル書き込み部２１、ファイル読み出し部２２、生成部２３、特定部３、表示情報生成部２４として機能し、処理を行なう。
【００６４】
また、本実施の形態では、ファイル書き込み部２１、ファイル読み出し部２２、生成部２３、特定部３、表示情報生成部２４は、コンピュータに備えられたハードディスクなどの記憶装置に、これらを構成するデータファイルを格納することによって、又はこのデータファイルが格納された記録媒体をコンピュータと接続された読取装置に搭載することによって実現されている。
【００６５】
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、ファイル書き込み部２１、ファイル読み出し部２２、生成部２３、特定部３、表示情報生成部２４のいずれかとして機能してもよい。
【００６６】
また、本実施の形態におけるプログラムを実行するコンピュータとは別のコンピュータ上に構築されていてもよい。
【００６７】
［物理構成］
ここで、実施の形態におけるプログラムを実行することによって、ストレージ制御装置１０を実現するコンピュータについて図７を用いて説明する。図７は、本発明の実施の形態におけるストレージ制御装置を実現するコンピュータの一例を示すブロック図である。
【００６８】
図７に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。なお、コンピュータ１１０は、ＣＰＵ１１１に加えて、又はＣＰＵ１１１に代えて、ＧＰＵ（Graphics Processing Unit）、又はＦＰＧＡ（Field-Programmable Gate Array）を備えていてもよい。
【００６９】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであってもよい。
【００７０】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置があげられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【００７１】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００７２】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記録媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体があげられる。
【産業上の利用可能性】
【００７３】
以上のように本発明によれば、共有化したブロックデータが属するファイルを特定できる。本発明は、共有化したブロックデータが属するファイルの特定が必要な分野において有用である。
【符号の説明】
【００７４】
１  ストレージシステム
２  記憶部
３  特定部
１０  ストレージ制御装置
２０  情報処理装置
２１  ファイル書き込み部
２２  ファイル読み出し部
２３  生成部
２４  表示情報生成部
３０  表示部
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
2019160245.tif 000003
【図２】
2019160245.tif 000004
【図３】
2019160245.tif 000005
【図４】
2019160245.tif 000006
【図５】
2019160245.tif 000007
【図６】
2019160245.tif 000008
【図７】
2019160245.tif 000009