説明

ストレージシステム

【課題】ストレージシステムにおいて、ノードのキャッシュの効率化を図ること。
【解決手段】本発明のストレージシステムは、コンテンツアドレスを用いて重複排除処理を行う複数の記憶処理装置を備え、ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えると共に、予め設定された自装置が管理する特定のファイルを構成する分割データの格納位置を表すコンテンツアドレスを他の記憶処理装置に送信して、当該コンテンツアドレスにて特定される分割データの他の記憶処理装置におけるキャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得したキャッシュメモリ状況情報に基づいて、特定のファイルを管理する記憶処理装置を選択するオーナノード選択部を備えた、という構成を取る。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージシステムにかかり、特に、重複記憶排除機能を有するストレージシステムに関する。
【背景技術】
【0002】
通常、ファイルサーバは、アクセス速度の遅いハードディスクドライブに対するアクセスを減少させるため、データをメモリ上にキャッシュしている。そして、ハードディスクドライブなどの不揮発性ストレージの容量は年々拡大を続けているが、キャッシュとして利用されるメモリの容量が追いついていなかった。しかし、近年になり、より大容量のSSDが普及したことで、このSSDをキャッシュとして利用するストレージが現れてきた。このため、大容量のキャッシュを扱うにあたり、そのキャッシュをいかに効率的に利用するかが1つの課題となっている。
【0003】
例えば、分散ノード型のネットワークストレージでは、負荷を分散することに重きを置いており、キャッシュ領域の効率化にまで十分な検討がされていなかった。今後、分散ノード型ストレージにおけるノード数が拡大していった場合、ノードを跨ったキャッシュの効率化は重要になってくると考えられる。
【0004】
上述した分散ノード型のネットワークストレージの一例として、近年では、特許文献1に開示された、同一内容のデータを重複して記憶しないよう制御する重複排除システムがある。このような重複排除システムは、物理的な格納位置を仮想化したコンテンツアドレスストレージ(CAS)装置を構成しており、重複排除技術によりハードディスクドライブに同じデータを持たないように制御すると共に、複数のノードから任意のファイルにアクセスが可能なよう制御している。このとき、重複排除ファイルシステムでは、同じデータを複数保持しないことでハードディスクドライブを効率的に使用しており、メモリ上のキャッシュについても、1つのノード内では同じデータを複数保持しないよう制御している。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2010−79886号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、コンテンツアドレスストレージシステムでは、ファイルをどのノードで処理するかについてはクライアントからのアクセス次第であり、システム全体における負荷分散による効率化はなされていなかった。一方で、複数のノードに処理を分散させることによって、図1に示すように、同じキャッシュデータが複数のノードに存在するという無駄が増加する、という問題あった。
【0007】
このため、本発明の目的は、上述した課題である、複数のノード装置を備えたストレージシステムにおいて、特定のノード装置の負荷の増加を抑制しつつ、キャッシュの無駄を抑制する、ことにある。
【課題を解決するための手段】
【0008】
上記目的を達成すべく、本発明の一形態であるストレージシステムは、
複数のストレージ装置と、
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データの前記ストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて前記複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行う複数の記憶処理装置と、を備え、
前記記憶処理装置は、
ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えると共に、
予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の前記記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する前記記憶処理装置を選択するオーナノード選択部を備えた、
という構成を取る。
【0009】
また、本発明の他の形態である記憶処理装置は、
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データのストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行う記憶処理装置であって、
ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えると共に、
予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する記憶処理装置を選択するオーナノード選択部を備えた、
という構成を取る。
【0010】
また、本発明の他の形態であるプログラムは、
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データのストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行い、ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えた記憶処理装置に、
予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する記憶処理装置を選択するオーナノード選択部、を実現させるためのプログラムである。
【0011】
また、本発明の他の形態である情報処理方法は、
複数のストレージ装置と、
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データの前記ストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて前記複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行い、ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えた複数の記憶処理装置と、を備えたストレージシステムによる情報処理方法であって、
前記記憶処理装置が、予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の前記記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する前記記憶処理装置を選択する、
という構成を取る。
【発明の効果】
【0012】
本発明は、以上のように構成されることにより、複数のノード装置を備えたストレージシステムにおいて、特定のノード装置の負荷の増加を抑制しつつ、キャッシュの効率的な利用を図ることができる。
【図面の簡単な説明】
【0013】
【図1】ストレージシステムを構成するアクセラレータノード内で処理されるデータの様子を示す図である。
【図2】ストレージシステムを構成するアクセラレータノード内で処理されるデータの様子を示す図である。
【図3】ストレージシステムを構成するアクセラレータノードの構成を示す機能ブロック図である。
【図4】図3に開示したオーナ制御機能部の動作を説明する図である。
【図5】図3に開示したオーナ制御機能部の動作を説明する図である。
【図6】図3に開示したオーナ制御機能部の動作を説明する図である。
【図7】図3に開示したオーナ制御機能部の動作の他の例を説明する図である。
【図8】本発明の付記1におけるストレージシステムの構成を示す機能ブロック図である。
【発明を実施するための形態】
【0014】
本発明の第1の実施形態を、図1乃至図7を参照して説明する。図1乃至図3は、ストレージシステムの構成を説明するための図であり、図4乃至図7は、動作を説明するための図である。
【0015】
図1に、本実施形態におけるストレージシステムの全体構成を示す。この図に示すように、ストレージシステムは、ファイルの書き込みや読み出しを要求するNFSクライアント302に接続されたロードバランサ301と、ファイルの記憶処理や読み出し処理を行う記憶処理装置である複数のノード303(ノードA,ノードB)と、ファイルを記憶する複数のストレージ装置からなる大容量不揮発ストレージ306と、を備えている。
【0016】
なお、本実施形態では、ストレージシステムとして、ネットワークストレージシステム(Network File System:NFS)を一例に挙げて説明するが、ストレージシステムは、NFSに限定されない。
【0017】
上記ロードバランサ301(振り分け装置)は、NFSクライアント302からのファイルの書き込みや読み出しなど当該ファイルに対する処理要求を、そのファイルのファイル識別子(FH)を元に、任意のノード303に振り分けて転送する。このとき、ロードバランサ301には、ファイル毎に当該ファイルを管理するノードを指定したFH/宛先テーブル(管理指定テーブル)が記憶されており、このFH/宛先テーブルに従って、処理要求にかかるファイルを指定されたノードに転送する。但し、処理要求にかかるファイルが新規ファイルである場合には、各ノード303の負荷や当該各ノード303に接続されたネットワーク帯域などを参照して決定されたノードに転送する。
【0018】
そして、上記ロードバランサ301は、後述するように、ノード303からファイルを管理するノードの指定を変更する旨のFH/宛先テーブルの更新要求があった場合には、かかる更新要求に応じてFH/宛先テーブルの内容を更新する。
【0019】
なお、本実施形態では、処理要求にかかるファイルの転送先を制御する装置として、ロードバランサを一例に挙げて説明するが、かかる制御を行う装置は他の装置であってもよい。例えば、ノード303のうちのいずれかがロードバランサとして機能してもよい。
【0020】
上記各ノード303は、NFSサーバ機能部304と重複排除FS305とを備えており、ロードバランサ301から転送されたNFSクライアント302からのファイルの記憶要求に応じて、当該ファイルを大容量不揮発ストレージ306に重複排除を行って記憶する機能を有する。なお、図では、ノード303を2つのみ図示しているが、実際にはさらに多くのノード303が装備されている。但し、ノード303の数は複数であればよく、上記数に限定されない。
【0021】
そして、重複排除FS305による重複排除処理は、具体的には、まず、記憶対象となるファイルを所定容量の分割データに分割する。そして、分割データの内容に応じて設定される固有のコンテンツアドレスによって大容量不揮発ストレージ306における格納位置を特定し、その格納位置に分割データをさらに分散すると共に冗長化して格納する。なお、データを大容量不揮発ストレージ306に格納する際における分散や冗長化の処理については、既存技術であるため、詳細な説明を省略する。
【0022】
このとき、上記コンテンツアドレスは、分割データのデータ内容に固有であるため、この分割データと同一内容の他の分割データを格納する場合には、既に記憶されている分割データのコンテンツアドレスを他の分割データとして参照することで、当該他の分割データを記憶する必要が無くなる。そして、この他の分割データを読み出すときには、上記コンテンツアドレスを参照して、その参照先に記憶されているデータを読み出すことで、同一内容のデータを読み出すことができる。このようにして、重複排除FS305では、ファイルの重複記憶を排除した重複排除処理を実現している。
【0023】
なお、ファイルのデータは、ファイルと、当該ファイルを分割した各分割データの各コンテンツアドレスと、が関連付けられたCA情報309で管理されている。例えば、CA情報309は、図2に示すように、ファイルから当該ファイルを構成する各分割データのコンテンツアドレス(CAリンク:CA1等)を辿る順方向のリンクと、コンテンツアドレスからファイルを辿る逆方向のリンクを有している。そして、CA情報309は、各ノードに、自ノードにて管理するファイルのCA情報309が記憶されている。なお、コンテンツアドレスは、各ノードで共通である。
【0024】
また、各ノード303は、当該各ノード303がファイルの処理に利用するデータをキャッシュしておくキャッシュメモリ307をそれぞれ装備している。そして、各ノード303は、同じノード内では同じデータをキャッシュメモリに持たず、重複排除するようキャッシュ情報管理部にて制御している。
【0025】
また、各ノード303は、オーナ制御機能部313を備えており、当該オーナ制御記憶部313は、特定のファイルを管理するノードを指定する情報、つまり、ファイルをどのノードで処理するか、という情報を記憶したオーナ情報314を有する。なお、オーナ情報314は、上述したようにロードバランサ301に記憶されているFH/宛先テーブルと同様の情報である。さらに、オーナ制御機能部313は、特定のファイルを管理するノードを変更する処理を実行すべく、図3に示すように、非重複データ数算出部315と、オーナノード選択部306と、オーナ移動部317と、を備えている。これら各部315,316,317の構成及び動作について、以下詳述する。
【0026】
ここで、上記オーナ制御機能部313が有する上記非重複データ数算出部315、オーナノード選択部316、オーナ移動部317は、以下の(1)〜(3)の3つの動作を起点として動作する。但し、上記各部315〜317が動作する条件は、以下の場合に限定されない。
【0027】
(1)NFSの処理
NFSクライアント302からWRITE要求が来て、そのファイルを管理するノードの当該ファイルに対するキャッシュが更新されると、オーナ制御機能部313が動作して、オーナノードつまりそのファイルを処理すべきノードの選択を行う。さらに必要に応じてオーナの移動を行い、以降はロードバランサ301が適切なノードにNFSを転送する。
【0028】
(2)キャッシュの追い出し
キャッシュの空き領域がなくなり古いキャッシュがメモリ上から追い出されると、それまでのノード内のキャッシュにおける重複データの数が変化している可能性がある。そのためオーナノードの再選択を行う。つまり、追い出されたキャッシュのコンテンツアドレスを確認し、そのコンテンツアドレスからリンクされた全てのファイルをリストする。リストされた全てのファイルに対して「非重複データ数の算出」、「オーナノードの選択」、「オーナの移動」を行う。
【0029】
(3)タイマ
時間が経つとネットワーク帯域が変化している可能性がある。そのため、高負荷時にオーナの移動を諦めたファイルに対して、定期的にオーナノードの再選択を行う。定期的なオーナノードの再選択では全てのファイルに対して行う。オーナノードの再選択を行っている間は負荷が上がる可能性がある。そのため、予め期間(例えば、深夜2時など)を設けておき、期間内に終わらないファイルは再選択を諦める。ただし、どこまでオーナノードの再選択を行ったか覚えておき、次回は続きから行う。
【0030】
次に、一つの例として、NFSのWRITE処理を起点としたオーナ制御機能部313の動作を説明する。なお、READ処理やキャッシュの追い出し、タイマを起点とした場合にも、以下で説明する「非重複データ数の算出」、「オーナノード選択部」と「オーナ移動部」における処理は変わらない。
【0031】
1.まず、NFSクライアント302がファイルの書き込みを行う際、ロードバランサ301に対してWRITE要求を送信する。
2.ロードバランサは自身が持つFH/宛先テーブルから、適切なノード303を選択しWRITE要求を転送する。
3.WRITE要求を転送されたノード303では、通常の書き込み処理を行う。
4.WRITEによりファイルデータがある程度溜まった場合には、以下に示す非重複データ数算出部315による「非重複データ数の算出」を行う。
【0032】
「非重複データ数の算出」(図4)
S1.上述したCA情報309のうち、ファイルを構成する各分割データの各コンテンツアドレスが記憶されたファイル情報テーブル401から、WRITE要求されたファイルが参照するコンテンツアドレス群であるCAリストを取得する。なお、ファイル情報テーブル401は、図2に示すように、ファイルとコンテンツアドレスとを関連付けた情報を記憶している。
S2.CAリストを構成する各コンテンツアドレスについて、自ノード内での参照数402を確認する。
【0033】
S3.コンテンツアドレスの参照数が「1」の場合、非重複データ変数404をインクリメントして、その値を「1」増加させる。
S4.コンテンツアドレスの参照数が「2」以上の場合には、上述したCA情報309のうちコンテンツアドレスからファイルへのリスト403を辿り、参照数が「2」以上であるコンテンツアドレスを参照しているファイルが「1つ」か「2つ以上」存在するかを確認する。
S5.コンテンツアドレスを参照しているファイルが「1つ」だけの場合、非重複データ変数404をインクリメントして、その値を「1」増加させる。
【0034】
そして、WRITE要求にかかるファイルの全てのコンテンツアドレスに対して確認が終わったら、次に、オーナノード選択部316による「オーナノードの選択」を行う。
【0035】
「オーナノードの選択」(図5)
S11.上述したように非重複データ数算出部315でカウントした非重複データ変数501の値が、予め設定された閾値を超えているか確認し、閾値を超えていなければ処理を終了する。
S12.非重複データ数変数501が閾値を超えている場合は、ネットワークの帯域502の使用率を確認する。
S13.自ノード303が記憶しており、当該自ノード303が管理するファイルのコンテンツアドレス群であるCAリストを、他の全てのノードにブロードキャストで転送する。例えば、図2のノードA(303)で、当該ノードAが管理する「ファイル3」が対象ファイルである場合には、この「ファイル3」を構成する分割データのコンテンツアドレスCA8,CA9を他のノードに転送する。そして、他のノードに対して、当該他のノードのキャッシュメモリに転送するコンテンツアドレスに対応するデータの格納状況(キャッシュメモリ状況情報)を問い合わせて要求する。
【0036】
S14.CAリストを受け取った他のノードのオーナ制御機能部は、CAリストに含まれるコンテンツアドレスと同一のコンテンツアドレスが、当該他のノードのキャッシュメモリにいくつ存在するか、を調べる。つまり、CAリストに含まれるコンテンツアドレスと同一のコンテンツアドレスの存在を調べることで、CAリストを送信したノードと受け取ったノードとの各キャッシュメモリに、同一の分割データが記憶されている数を調べる。そして、他のノードは、重複データ数とその時のネットワーク帯域の使用率を確認し、CAリストを送信してきたノードに返信する。
S15.他のノードから重複データ数とネットワーク帯域を受けたノードは、他のノードのキャッシュメモリに重複する分割データが多く保有されているファイルについては、当該ファイルを管理するノードの移動を行う。例えば、特定のファイルの分割データが最も多くキャッシュメモリに保有されている他のノードを選択して、当該他のノードが特定のファイルを管理するよう変更する。このとき、ネットワークの帯域が所定値以上空いていることが望ましい。その後、オーナ移動部317にて、実際にファイルを管理するノードの変更処理を行う。
【0037】
「オーナの移動」(図6)
S21.上述したように、あるファイルを管理するノードの変更があると、まず、自ノード内に記憶されているファイルと管理ノードとの関係を表すオーナ情報601を更新する。
S22.そして、あるファイルの管理ノードであるオーナが変わったことを、他のノードに通知する。具体的には、自ノードが管理していたファイルとコンテンツアドレスとの対応関係を表すCA情報309であるファイル情報を、管理の移動先となる選択された他のノードに送信して記憶させる(図2の下部に図示する矢印参照)。
【0038】
S23.上述したようにあるファイルを管理するノードとして選択されたノードと、当該ファイルと、を関連付けたロードバランサ301上のFH/宛先テーブル602を更新する。
S24.自ノード内に既に蓄えているキャッシュ603をフラッシュする。つまり、キャッシュ603内のデータを削除する。
S25.自ノードと相手ノードのキャッシュの空き領域サイズを比較し、相手ノードの空き領域サイズが同等もしくは小さければ、キャッシュを均等に保つために一方向の移動だけではなく反対方向への移動(交換)も行う。つまり、管理の移動先となる他のノードのキャッシュに記憶されているファイルの管理を、自ノードに移動させる。具体的には、他のノードで管理していたファイルとコンテンツアドレスとの対応関係を表すファイル情報を他のノードから自ノードに移動して当該自ノードに記憶し、これに対応して、そのファイルを管理するノードを指定するオーナ情報やFH/宛先テーブルを更新する。
【0039】
以降は、ロードバランサ301が、処理要求にかかるファイルを、FH/宛先テーブルを参照して、指定されたノードに転送する。
【0040】
以上により、本実施形態におけるストレージシステムによると、ストレージに対するデータ処理を行う各ノードにて、キャッシュメモリに格納されるデータの重複を抑制でき、キャッシュメモリの効率的な使用を図ることができる。従って、より多くのデータがキャッシュに載るため、NFSアクセスの高速化を図ることができる。特に、複数のクライアントが同時に複数のファイルを読み書きするときや、1つのファイルによってキャッシュを使い切ることはないが、複数のファイルによってキャッシュを使い切る場合(例:キャッシュが4GByteで、ファイルサイズが100MByteなど)に有効である。
【0041】
また、分散ノード型のストレージシステムでは、ノードの増設に比例してキャッシュのサイズも増えるが、上述した本発明におけるストレージシステムでは、増えたキャッシュを有効に利用し、ノード数に比例したスループットが確保できるため、システム設計が容易になる。
【0042】
ここで、上記では、コンテンツアドレスを用いて、どのノードでファイルを処理するか、を決めているが、ファイルに関する他の情報を補助的に用いて当該ファイルを処理するノードを決定してもよい。例えば、予めファイル名などのメタデータを基に、ノードを決定することで、負荷は小さくなる。
【0043】
以下、上述したコンテンツアドレスを使用した方法と併せて、メタデータを使用したオーナノードの選択方法を、図7を参照して説明する。なお、メタデータの情報は、WRITE時には知りえない場合があるため、WRITE時だけではなく、CREATE(ファイルの作成)やLOOKUP(ファイルの検索)の際にも、以下に示す事前設定によるオーナノードの選択を行う。
【0044】
「事前設定によるオーナノードの選択」(図7)
S31.予め設定された設定情報701から条件式を取得する。
S32.キャッシュ702からパス名の情報を取得する。パス名がキャッシュされていない場合には終了する。
S33.パス名と条件式を比較して、合致した場合は、条件に設定されているノードに「オーナの移動」を行う。例えば、条件式が「kernel-2.6.18-*.x86_64.rpm」である場合、「*」を任意の文字列と解釈し、「kernel-2.6.18-release1.x86_64.rpm」は合致する、「kernel-2.6.18-release2.ia64.rpm」は合致しない、と判断する。
【0045】
また、上記では、ロードバランサによってファイルごとに処理するノードを振り分けるとしているが、分散ファイルシステムを構成するノードがロードバランサの役割を担っても良い。つまり、図3において、ノードAがFH/宛先テーブルを持ち、必要に応じてノードBにNFSクライアントからの要求を転送する形態も可能とする。また、特定のノードを介さなくても、ARPなどのネットワーク制御を用いてクライアントが直接ノードにアクセスする形態も可能とする。
【0046】
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明におけるストレージシステムの構成の概略を、図8を参照して説明する。但し、本発明は、以下の構成に限定されない。
【0047】
(付記1)
複数のストレージ装置10と、
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データの前記ストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて前記複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行う複数の記憶処理装置20と、を備え、
前記記憶処理装置20は、
ファイルに対する所定の処理を行う際に利用するキャッシュメモリ21を備えると共に、
予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の前記記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する前記記憶処理装置を選択するオーナノード選択部22を備えた、
ストレージシステム。
【0048】
(付記2)
付記1に記載のストレージシステムであって、
前記記憶処理装置が有する前記オーナノード選択部は、前記他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、自装置が管理する特定のファイルを構成する前記分割データが前記他の記憶処理装置のキャッシュメモリに最も多く含まれている前記他の記憶処理装置を、前記特定のファイルを管理する記憶処理装置として選択する、
ストレージシステム。
【0049】
(付記3)
付記1又は2に記載のストレージシステムであって、
前記記憶処理装置は、
自装置が管理する特定のファイルを構成する前記分割データと当該分割データの前記コンテンツアドレスとの対応を表すファイル情報テーブルを記憶すると共に、
前記オーナノード選択部にて前記特定のファイルを管理する記憶処理装置として選択された前記他の記憶処理装置に、前記特定のファイルの前記ファイル情報テーブルを送信して記憶させるオーナ移動部を備えた、
ストレージシステム。
【0050】
(付記4)
付記3に記載のストレージシステムであって、
前記記憶処理装置が有する前記オーナ移動部は、自装置の前記キャッシュメモリ内のデータを消去する、
ストレージシステム。
【0051】
(付記5)
付記3又は4に記載のストレージシステムであって、
前記記憶処理装置が管理する特定のファイルを指定する管理指定テーブルを記憶し、当該管理指定テーブルに基づいて特定のファイルの処理要求を当該特定のファイルが指定された前記記憶処理装置に振り分ける振り分け装置を備え、
前記記憶処理装置が有する前記オーナ移動部は、前記オーナノード選択部にて選択された前記他の記憶処理装置が前記特定のファイルを管理するよう前記管理指定テーブルを更新する、
ストレージシステム。
【0052】
(付記6)
付記3乃至5のいずれかに記載のストレージシステムであって、
前記記憶処理装置が有する前記オーナ移動部は、自装置が管理していた前記特定のファイルの前記ファイル情報テーブルを送信した前記他の記憶処理装置から、当該他の記憶処理装置が管理する特定のファイルを自装置が管理するよう当該特定のファイルの前記ファイル情報テーブルを受け取って記憶する、
ストレージシステム。
【0053】
(付記7)
付記6に記載のストレージシステムであって、
前記記憶処理装置が有する前記オーナ移動部は、自装置が管理していた前記特定のファイルの前記ファイル情報テーブルを送信した前記他の記憶処理装置が装備した前記キャッシュメモリの空き容量が、自装置が装備した前記キャッシュメモリの空き容量以下である場合に、前記他の記憶処理装置から当該他の記憶処理装置が管理する特定のファイルを自装置が管理するよう当該特定のファイルの前記ファイル情報テーブルを受け取って記憶する、
ストレージシステム。
【0054】
(付記8)
付記1乃至7のいずれかに記載のストレージシステムであって、
前記記憶処理装置は、自装置が管理する前記特定のファイルを構成する前記分割データの前記コンテンツアドレスの参照数が「1」である当該コンテンツアドレスの数をカウントする非重複データ数算出部を備え、
前記記憶処理装置が有する前記オーナノード選択部は、前記非重複データ数算出部にてカウントした値が予め設定された閾値を超えた場合に、自装置が管理する特定のファイルを構成する前記分割データの前記コンテンツアドレスを前記他の記憶処理装置に送信して前記キャッシュメモリ状況情報を要求する、
ストレージシステム。
【0055】
(付記9)
付記8に記載のストレージシステムであって、
前記記憶処理装置が有する前記非重複データ数算出部は、自装置が管理する前記特定のファイルを構成する前記分割データの前記コンテンツアドレスの参照数が「1」である当該コンテンツアドレスに加えて、前記コンテンツアドレスの参照数が「2」以上であるが参照するファイルの数が「1」である前記コンテンツアドレスの数をカウントする、
ストレージシステム。
【0056】
(付記10)
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データのストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行う記憶処理装置であって、
ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えると共に、
予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する記憶処理装置を選択するオーナノード選択部を備えた、
記憶処理装置。
【0057】
(付記11)
付記10に記載の記憶処理装置であって、
前記オーナノード選択部は、前記他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、自装置が管理する特定のファイルを構成する前記分割データが前記他の記憶処理装置のキャッシュメモリに最も多く含まれている前記他の記憶処理装置を、前記特定のファイルを管理する記憶処理装置として選択する、
記憶処理装置。
【0058】
(付記12)
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データのストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行い、ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えた記憶処理装置に、
予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する記憶処理装置を選択するオーナノード選択部、を実現させるためのプログラム。
【0059】
(付記13)
付記12に記載のプログラムであって、
前記オーナノード選択部は、前記他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、自装置が管理する特定のファイルを構成する前記分割データが前記他の記憶処理装置のキャッシュメモリに最も多く含まれている前記他の記憶処理装置を、前記特定のファイルを管理する記憶処理装置として選択する、
プログラム。
【0060】
(付記14)
複数のストレージ装置と、
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データの前記ストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて前記複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行い、ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えた複数の記憶処理装置と、を備えたストレージシステムによる情報処理方法であって、
前記記憶処理装置が、予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の前記記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する前記記憶処理装置を選択する、
情報処理方法。
【0061】
(付記15)
付記14に記載の情報処理方法であって、
前記記憶処理装置が、前記他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、自装置が管理する特定のファイルを構成する前記分割データが前記他の記憶処理装置のキャッシュメモリに最も多く含まれている前記他の記憶処理装置を、前記特定のファイルを管理する記憶処理装置として選択する、
情報処理方法。
【符号の説明】
【0062】
301 ロードバランサ
302 NFSクライアント
303 ノード
304 NFSサーバ機能部
305 重複排除FS
306 大容量不揮発ストレージ
307 キャッシュ
309 CA情報
310 設定情報
311 ネットワーク帯域情報
312 タイマ装置
313 オーナ制御機能部
314 オーナ情報
315 非重複データ数算出部
316 オーナノード選択部
317 オーナ移動部
10 ストレージ装置
20 記憶処理装置
21 キャッシュメモリ
22 オーナノード選択部


【特許請求の範囲】
【請求項1】
複数のストレージ装置と、
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データの前記ストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて前記複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行う複数の記憶処理装置と、を備え、
前記記憶処理装置は、
ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えると共に、
予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の前記記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する前記記憶処理装置を選択するオーナノード選択部を備えた、
ストレージシステム。
【請求項2】
請求項1に記載のストレージシステムであって、
前記記憶処理装置が有する前記オーナノード選択部は、前記他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、自装置が管理する特定のファイルを構成する前記分割データが前記他の記憶処理装置のキャッシュメモリに最も多く含まれている前記他の記憶処理装置を、前記特定のファイルを管理する記憶処理装置として選択する、
ストレージシステム。
【請求項3】
請求項1又は2に記載のストレージシステムであって、
前記記憶処理装置は、
自装置が管理する特定のファイルを構成する前記分割データと当該分割データの前記コンテンツアドレスとの対応を表すファイル情報テーブルを記憶すると共に、
前記オーナノード選択部にて前記特定のファイルを管理する記憶処理装置として選択された前記他の記憶処理装置に、前記特定のファイルの前記ファイル情報テーブルを送信して記憶させるオーナ移動部を備えた、
ストレージシステム。
【請求項4】
請求項3に記載のストレージシステムであって、
前記記憶処理装置が有する前記オーナ移動部は、自装置の前記キャッシュメモリ内のデータを消去する、
ストレージシステム。
【請求項5】
請求項3又は4に記載のストレージシステムであって、
前記記憶処理装置が管理する特定のファイルを指定する管理指定テーブルを記憶し、当該管理指定テーブルに基づいて特定のファイルの処理要求を当該特定のファイルが指定された前記記憶処理装置に振り分ける振り分け装置を備え、
前記記憶処理装置が有する前記オーナ移動部は、前記オーナノード選択部にて選択された前記他の記憶処理装置が前記特定のファイルを管理するよう前記管理指定テーブルを更新する、
ストレージシステム。
【請求項6】
請求項3乃至5のいずれかに記載のストレージシステムであって、
前記記憶処理装置が有する前記オーナ移動部は、自装置が管理していた前記特定のファイルの前記ファイル情報テーブルを送信した前記他の記憶処理装置から、当該他の記憶処理装置が管理する特定のファイルを自装置が管理するよう当該特定のファイルの前記ファイル情報テーブルを受け取って記憶する、
ストレージシステム。
【請求項7】
請求項6に記載のストレージシステムであって、
前記記憶処理装置が有する前記オーナ移動部は、自装置が管理していた前記特定のファイルの前記ファイル情報テーブルを送信した前記他の記憶処理装置が装備した前記キャッシュメモリの空き容量が、自装置が装備した前記キャッシュメモリの空き容量以下である場合に、前記他の記憶処理装置から当該他の記憶処理装置が管理する特定のファイルを自装置が管理するよう当該特定のファイルの前記ファイル情報テーブルを受け取って記憶する、
ストレージシステム。
【請求項8】
請求項1乃至7のいずれかに記載のストレージシステムであって、
前記記憶処理装置は、自装置が管理する前記特定のファイルを構成する前記分割データの前記コンテンツアドレスの参照数が「1」である当該コンテンツアドレスの数をカウントする非重複データ数算出部を備え、
前記記憶処理装置が有する前記オーナノード選択部は、前記非重複データ数算出部にてカウントした値が予め設定された閾値を超えた場合に、自装置が管理する特定のファイルを構成する前記分割データの前記コンテンツアドレスを前記他の記憶処理装置に送信して前記キャッシュメモリ状況情報を要求する、
ストレージシステム。
【請求項9】
請求項8に記載のストレージシステムであって、
前記記憶処理装置が有する前記非重複データ数算出部は、自装置が管理する前記特定のファイルを構成する前記分割データの前記コンテンツアドレスの参照数が「1」である当該コンテンツアドレスに加えて、前記コンテンツアドレスの参照数が「2」以上であるが参照するファイルの数が「1」である前記コンテンツアドレスの数をカウントする、
ストレージシステム。
【請求項10】
複数のストレージ装置と、
ファイルを分割した各分割データを、当該分割データのデータ内容に固有であり当該分割データの前記ストレージ装置に対する格納位置を特定するコンテンツアドレスを用いて前記複数のストレージ装置に分散して記憶すると共に、前記ストレージ装置に既に記憶されている分割データと同一内容である他の分割データを格納する際に前記既に記憶されている分割データの前記コンテンツアドレスを前記他の分割データとして参照させる重複排除処理を行い、ファイルに対する所定の処理を行う際に利用するキャッシュメモリを備えた複数の記憶処理装置と、を備えたストレージシステムによる情報処理方法であって、
前記記憶処理装置が、予め設定された自装置が管理する特定のファイルを構成する前記分割データの格納位置を表す前記コンテンツアドレスを他の前記記憶処理装置に送信して、当該コンテンツアドレスにて特定される前記分割データの前記他の記憶処理装置における前記キャッシュメモリに対する格納状況を表すキャッシュメモリ状況情報を当該他の記憶処理装置に要求し、当該他の記憶処理装置から取得した前記キャッシュメモリ状況情報に基づいて、前記特定のファイルを管理する前記記憶処理装置を選択する、
情報処理方法。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−190099(P2012−190099A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−51099(P2011−51099)
【出願日】平成23年3月9日(2011.3.9)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】