JP5595701B2 - ファイル管理方法及びストレージシステム - Google Patents

ファイル管理方法及びストレージシステム Download PDF

Info

Publication number
JP5595701B2
JP5595701B2 JP2009214007A JP2009214007A JP5595701B2 JP 5595701 B2 JP5595701 B2 JP 5595701B2 JP 2009214007 A JP2009214007 A JP 2009214007A JP 2009214007 A JP2009214007 A JP 2009214007A JP 5595701 B2 JP5595701 B2 JP 5595701B2
Authority
JP
Japan
Prior art keywords
file
server
fragment
data string
fragment data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009214007A
Other languages
English (en)
Other versions
JP2011065314A (ja
Inventor
伸光 高岡
正明 岩嵜
隆喜 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2009214007A priority Critical patent/JP5595701B2/ja
Priority to US12/622,963 priority patent/US8112463B2/en
Publication of JP2011065314A publication Critical patent/JP2011065314A/ja
Priority to US13/348,292 priority patent/US8307019B2/en
Application granted granted Critical
Publication of JP5595701B2 publication Critical patent/JP5595701B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments
    • G06F16/1752De-duplication implemented within the file system, e.g. based on file segments based on file chunks

Description

本発明は、分散ファイルシステムにおいて、データが重複して格納されている場合に、重複するデータを削除する方法に関する。
複数のデータ格納サーバにファイルを分散して格納する分散ファイルシステムの技術が開発されている。分散ファイルシステムを適用したストレージシステムでは、記憶容量を備えたデータ格納サーバをストレージシステムに追加することができる。これにより、記憶容量やI/O性能の不足を容易に解消できる。
分散ファイルシステムの一例として、IETF(Internet Engineering Task Force)によるNFS (Network File System)バージョン4.1が挙げられる。NFSバージョン4.1は、分散ファイルシステムの一つであるpNFS(Parallel NFS)の仕様を含む。pNFSでは、ストレージシステムは、全てのファイルのメタデータを集中管理するメタデータサーバと、ファイルの内容を断片化し分散して格納する複数のストレージサーバから構成される。ストレージシステムのクライアントとなる計算機は、ファイルにアクセスする場合、まずメタデータサーバより所望のファイルがどのストレージサーバに分散配置されているかの情報を得て、次にその情報に基づいて適切なストレージサーバへアクセスする。
また、重複データ排除技術がある。例えば、特許文献1は、ファイルの長期保存に適した重複データ排除技術を開示している。特許文献1に開示されているストレージシステムは、複数のデータ格納ノードからなる。このストレージシステムへファイルを格納すると、ファイルは断片に分割され複数のノードに分散して格納される。各ノードには格納するファイルの断片のハッシュ値の範囲が予め定義されている。もし、ファイルの断片から算出したハッシュ値と同じハッシュ値を持つファイルの断片がすでにノードに格納されている場合は、ノードはその断片を格納しない。これにより、同じ内容のファイルを幾つも格納することがないため、重複データの排除が可能となる。
米国2001/0037323号公報
非構造化データ(ファイルデータ)の増大により、ストレージ調達コストの増大やバックアップ等の運用管理コストの増大が企業内情報システムにおける課題となっている。
分散ファイルシステムでは、記憶容量やI/O性能の不足をノードの追加により解消できるものの、ノードを追加すると上記コストが増加する。
分散ファイルシステムと重複データ排除技術を組み合せることにより、スケーラブルかつ空間効率のよいストレージシステムを構成でき、上記コストの低減が期待できる。しかし、特許文献1の技術は、pNFSのような分散ファイルシステムへの適用に適さない。
特許文献1が開示するストレージシステムでは、もし格納されたファイルの断片への変更が行われた場合、そのファイルの断片のハッシュ値が変わるため、ファイルの断片を適切なノードへ再配置する必要がある。従って、クライアントがストレージサーバに格納されたファイルの断片へ直接データを書き込むことができるpNFSのような分散ファイルシステムに対して、特許文献1の技術を適用すると、ファイルへデータを書き込む度にファイルの断片のハッシュ値を計算し直す必要があり、また、データの再配置を行う必要があるため、ストレージシステムの負荷が増大し性能が低下する。
上記課題を解決するために、本発明のストレージシステムは、第一の記憶領域を有する、第一のファイルサーバと、第一のファイルサーバに接続され、第二の記憶領域を有する、第二のファイルサーバと、第一のファイルサーバおよび前記第二のファイルサーバに接続される1以上の計算機と、を有する。また、計算機は、一のファイルに格納されるデータ列を、第一の断片データ列を含む1以上の断片データ列へ分割し、第一のファイルサーバは、前記第一の断片データ列を格納する第一の断片ファイルを、前記第一の記憶領域に格納し、計算機は、第二のファイルに格納されるデータ列を、第二の断片データ列を含む1以上の断片データ列へ分割し、第二のファイルサーバは、第二の断片データ列を格納する第二の断片ファイルを第二の記憶領域に格納し、第一のファイルサーバは、第一の断片データ列が、前記第二の断片データ列と一致するならば、前記第一の断片データ列を削除し、前記第一の断片ファイルを、前記第二の断片データ列を指示するスタブへ変更する。
分散ファイルシステムにおいて、負荷の少ない重複データ排除方法を提供する。
計算機システムの概要を説明する図である。 メタデータサーバ1の一例を説明する図である。 ストレージサーバ管理テーブル121の一例を説明する図である。 レイアウトテーブル122の一例を説明する図である。 分散ファイル属性テーブル123の一例を説明する図である。 類似グループテーブル124の一例を説明する図である。 ストレージサーバ2の構成を説明する図である。 ファイルシステム26の一例を説明する図である。 類似グループ作成処理の一例を説明するフローチャートである。 重複排除処理の一例を説明するフローチャートである。 ファイル断片排除サーバ間合意処理の一例を説明するフローチャートである。 ファイル断片排除サーバ間合意処理の一例を説明するフローチャートである。 ファイル断片排除処理の一例を説明するフローチャートである。 ファイルリード処理の一例を説明するフローチャートである。 ファイルライト処理の一例を説明するフローチャートである。 計算機システムの概要を説明する図である。
本発明の実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている諸要素およびその組み合せの全てが発明の解決手段に必須であるとは限らない。
まず、本発明の一実施形態に係る計算機システムの概要を説明する。
<図1:概要>
図1は、本発明の第一の実施形態に係る計算機システムの概要を説明する図である。
図1の計算機システムは、メタデータサーバ1および複数のストレージサーバ2aないし2lからなるストレージシステム10と、ストレージシステムに対してデータの読み書きを行う計算機3、および、これらを接続するLAN4を含む。
フォールトトレランスのために、メタデータサーバ1は複数あってもよい。この場合、メタデータサーバ1のメモリに格納される様々な情報は、複数のメタデータサーバ1の間で共有される。情報の共有の手段は、共有ディスクを用いる方法や、分散コミットアルゴリズム、コンセンサスアルゴリズムを応用する方法が考えられる。
また、計算機3は複数あってもよい。
メタデータサーバ1、ストレージサーバ2、計算機3は、それぞれLAN4を介して通信する。通信には、ネットワークプロトコルとしてIP(Internet Protocol)を利用する。サーバ1、ストレージサーバ2、計算機3にはIPアドレスが設定されており、通信相手の宛先を示す情報として利用される。
なお、以降、ストレージサーバ2a〜2lのいずれかのストレージサーバを代表するストレージサーバを、指示番号2で示す。
計算機3は、ストレージストレージシステム10に格納された所望のファイル (以降、ストレージシステム10に分散して格納されるファイルを分散ファイルと呼ぶ)にアクセスする場合、まず、メタデータサーバ1に対して所望の分散ファイルがどのストレージサーバ2に分散して格納されているかの情報を得る。次に、得られた情報に基づいて、適切なストレージサーバ2にアクセスし、所望の分散ファイルの所望のアドレスにアクセスする。
分散ファイルは、固定の大きさ(例えば16キロバイト)に分割され(以降、分散ファイルを分割したデータ列をファイル断片と呼ぶ)、ストレージサーバ2に格納される。また、各分散ファイルには一意な分散ファイル識別番号が設定されている。破線囲み500は、分散ファイル識別番号が110である分散ファイル(以降、単に分散ファイル110のように表記する)が、ストレージサーバ2a、ストレージサーバ2b、ストレージサーバ2cに分割されて格納されている様子を示している。ストレージサーバ2a、ストレージサーバ2b、ストレージサーバ2cは、分散ファイル110のファイル断片54a、54b、54cをそれぞれ格納している。破線囲み501〜503も同様に、それぞれ分散ファイル220、330、440が分割されて格納されている様子を示している。
分散ファイルのファイル断片がどのようにストレージサーバ2に格納されているかの情報を、以降レイアウトと呼ぶ。レイアウトはメタデータサーバ1のメモリに格納したレイアウトテーブル122に記録する。また、各分散ファイルの更新時刻等の属性情報は、メタデータサーバ1の分散ファイル属性テーブル123に格納する。
各分散ファイルのレイアウトは、ストレージサーバ2がラウンドロビン方式や各ストレージサーバ2の空き容量等に基づき決定する。
計算機3が分散ファイルを初めて格納する場合は、まずストレージサーバ2よりレイアウトを得て、レイアウトに基づき分散ファイルをファイル断片へ分割し、各ファイル断片をレイアウトに従って適切なストレージサーバ2へ格納する。
以下では、重複排除処理の流れを説明する。
メタデータサーバ1は、分散ファイル属性テーブル123を参照し、一定期間更新されていない分散ファイルを抽出し、これらの分散ファイルで類似性が認められる分散ファイルを類似グループとして類似グループテーブル124へ登録する。この処理は、メタデータサーバ1が定期的に行ってもよいし、メタデータサーバ1の負荷(CPU利用率)が低下している間に行ってもよい。図1では、分散ファイル110、220、330、440が類似グループ1241として登録されている様子を示している。
類似グループ1241のように、既定数(例えば4)の分散ファイルを含むグループが形成されたことを契機として、メタデータサーバ1は、これらの分散ファイルを分散して格納しているストレージサーバ2に対して、分散ファイルの重複排除処理の実行を指示する。
メタデータサーバ1は、まず類似グループ1241に含まれる分散ファイル110、220、330、440の先頭のファイル断片を格納しているストレージサーバ2a、2d、2g、2jに対して、これらの分散ファイルの重複排除処理を指示する。この指示を受けたストレージサーバ2a、2d、2g、2jは、それぞれが格納しているファイル断片511、512、513、514について、そのハッシュ値を算出し、相互にハッシュ値を比較し、ハッシュ値が同じであるストレージサーバを同一断片グループとする。図1では、ハッシュ値の比較の結果、ファイル断片511〜514のハッシュ値が同じであるため、一つの同一断片グループ510が形成されたことを示している。
次に、ポリシーに従って同一断片グループのファイル断片が格納されるストレージサーバの一つが選択される。そして、選択されたストレージサーバに格納されているファイル断片を残して、他のストレージサーバのファイル断片は削除される。図1では、同一断片グループ510のストレージサーバ2aのファイル断片を残し(図では網掛けで示している)、残りのストレージサーバ2d、2g、2jのファイル断片を排除する様子を示している。
次に、ストレージサーバ2a、2d、2g、2jは、それぞれ次のファイル断片を格納しているストレージサーバ2b、2e、2h、2kに、同様に重複排除処理の実行を指示する。ストレージサーバ2b、2e、2h、2kは、上記と同様の処理を行い、各分散ファイルの2番目のファイル断片について重複排除処理を行う。図1では、同一断片グループ520と530が形成され、ストレージサーバ2eとストレージサーバ2hのファイル断片が残ることを示している。
このように、重複データ排除の対象とする分散ファイルを適切な方法で特定し、次いで各ストレージサーバ2が協調して分散ファイルの重複データ排除を再配置することなく行うことにより、分散ファイルシステムであっても処理負荷の少ない重複データ排除を実現できる。また、重複データの検出は各ストレージサーバ2が協調して行うことにより、負荷の特定のサーバへの集中を回避できる。
<図2:メタデータサーバ>
図2は、本発明の第一の実施形態に係るメタデータサーバ1の一例を説明する図である。
メタデータサーバ1は、プロセッサ11と、メモリ12と、ネットワークインタフェース13と、記憶装置14を有する。これらはバス15により相互に接続される。
プロセッサ11は、メモリ12に格納されたプログラムやデータを用いて各種処理を実行する。
ネットワークインタフェース13は、LAN4を介して計算機3およびストレージサーバ2とのデータの入出力を制御する。
記憶装置14は、メタデータサーバ1で実行されるプログラムや、プログラムに使用されるデータを格納する。
メモリ12には、ストレージサーバ管理テーブル121と、レイアウトテーブル122と、分散ファイル属性テーブル123と、類似グループテーブル124と、重複排除ポリシー125の各種データが格納される。また、メモリ12には、メタデータ要求処理プログラム126と、類似分散ファイル抽出プログラム127と、ストレージサーバ制御プログラム128と、オペレーティングシステム129の各種プログラムが格納される。これらのプログラムがプロセッサ11によって実行されることにより、メタデータサーバ1はメタデータ要求処理部、類似分散ファイル抽出部、ストレージサーバ制御部、オペレーティングシステム処理部が形成される。以降、プログラムと処理部とを区別することなく説明する。
<図3:ストレージサーバ管理テーブル>
図3は、本発明の第一の実施形態に係るストレージサーバ管理テーブル121の一例を説明する図である。
ストレージサーバ管理テーブル121は、ストレージサーバ識別情報フィールド1211と、IPアドレスフィールド1212を有するレコードを格納する。各レコードは、それぞれストレージサーバ2a〜2lに対応しており、それぞれ対応するストレージサーバ2に関する情報を格納する。
各レコードのストレージサーバ識別情報フィールド1212には、対応するストレージサーバ2の識別情報が格納される。ストレージサーバ2の識別情報とは、各ストレージサーバ2に割り当てられた一意な名称である。本実施形態では、各ストレージサーバ2を一文字のアルファベットにより識別する。例えば、ストレージサーバ2aの識別情報を「A」とする。
各レコードのIPアドレスフィールド1212には、対応するストレージサーバ2に設定されたIPアドレスが格納される。各ストレージサーバ2には複数のIPアドレスを設定してもよい。
ストレージサーバ管理テーブルの一例として、図3では、ストレージサーバ管理テーブル121の第一のレコードにはストレージサーバ2aに関する情報が格納されており、ストレージサーバ2aの識別情報が「A」であり、そのIPアドレスが10.0.0.1と10.0.1.1であることを示している。
<図4:レイアウトテーブル>
図4は、本発明の第一の実施形態に係るレイアウトテーブル122の一例を説明する図である。
レイアウトテーブル122は、分散ファイル識別番号フィールド1221、ファイル断片番号フィールド1222、ストレージサーバフィールド1223、ファイル断片識別情報フィールド1224を有するレコードを格納する。
レイアウトテーブル122の各レコードは、それぞれストレージシステム10に格納される分散ファイルのファイル断片に対応しており、それぞれ対応するファイル断片に関する情報を格納する。
各レコードの分散ファイル識別番号フィールド1221とファイル断片番号フィールド1222には、対応するファイル断片の分散ファイル識別番号と、ファイル断片の当該ファイルにおける順序をそれぞれ格納する。分散ファイル識別番号とは、各分散ファイルに一意に割り当てられた整数値である。本実施形態では、各分散ファイルをこの分散ファイル識別番号により識別する。
各レコードのストレージサーバフィールド1223には、対応するファイル断片が格納されているストレージサーバ2の識別情報を格納する。
各レコードのファイル断片識別情報フィールド1224には、対応するファイル断片が格納されている、ストレージサーバ2のローカルファイルの識別番号を格納する。ローカルファイルとは、各ストレージサーバ2が備えるファイルシステム26に格納されるファイルのことを言う。ファイルシステムに格納されたローカルファイルは、ファイルシステム内で一意な識別番号により識別される。
例えば、図4では、第一レコードから第三レコードには、分散ファイル識別番号が110である分散ファイルのファイル断片に関する情報を格納している。分散ファイル110は3個のファイル断片からなる。レイアウトテーブル122の第一レコード〜第三レコードに各ファイル断片の情報が格納される。第一レコードを参照すると、分散ファイル110の第一のファイル断片は、ストレージサーバ2a(識別情報A)のローカルファイル1100に格納されている。同様に、分散ファイル110の第二のファイル断片は、ストレージサーバ2b(識別情報B)のローカルファイル1200、分散ファイル110の第三のファイル断片は、ストレージサーバ2c(識別情報C)のローカルファイル1300にそれぞれ格納されていることを示している。
<図5:ファイル属性テーブル>
図5は、本発明の第一の実施形態に係る分散ファイル属性テーブル123の一例を説明する図である。
分散ファイル属性テーブル123は、分散ファイル識別番号フィールド1231、パス名フィールド1232、最終更新時刻フィールド1233、ファイルサイズフィールド1234、属性フィールド1235、サマリーハッシュフィールド1236を有するレコードを格納する。
各レコードは、ストレージシステム10に格納される各分散ファイルに対応し、対応する分散ファイルの属性情報を格納する。
各レコードの分散ファイル識別番号フィールド1231には、対応する分散ファイルの分散ファイル識別番号を格納する。
各レコードのパス名フィールド1232は、対応する分散ファイルのパス名を格納する。パス名は、計算機3がストレージシステム10に格納された分散ファイルを、ディレクトリ構造で識別するために用いられる。
各レコードの最終更新時刻フィールド1233には、対応する分散ファイルの最終更新時刻が格納される。計算機3は、分散ファイルに対して更新(データの書き込み)を行った場合、このフィールドを更新するようにメタデータサーバ1へ要求する。要求を受けたメタデータサーバ1のメタデータ要求処理プログラム126が、要求された分散ファイルに対応する最終更新時刻フィールド1223を更新する。
各レコードのファイルサイズフィールド1234には、対応する分散ファイルのサイズが格納される。
各レコードの属性フィールド1235には、対応する分散ファイルのその他の属性が格納される。その他の属性とは、例えば分散ファイルを所有するユーザ、分散ファイルを所有するユーザのグループ、分散ファイルのアクセス権、分散ファイルに最後にアクセスした時刻、分散ファイルの属性を更新した時刻やその他のフラグおよび付加情報等である。
各レコードのサマリーハッシュフィールド1236には、対応する分散ファイルのサマリーハッシュ値が格納される。サマリーハッシュ値とは、対応する分散ファイルの特定のファイル断片と特定の属性から算出されるハッシュ値である。本実施形態では、一例として、以下のようにサマリーハッシュ値を求める。
H(Σi∈Q Si + size)
ここで、Qは、分散ファイルのファイル断片の番号の集合、Hは任意のバイト列を取って32ビットのハッシュ値を出力するハッシュ関数、Siは分散ファイルのi番目のファイル断片のバイト列、sizeは分散ファイルのサイズをバイト列で表わしたデータである。また上記の二項演算+はバイト列を連結することを意味し、Σi∈Q Siは、全てのSiに二項演算+を適用し、連結することを意味する。
ファイル断片の番号の集合Qは、ファイル断片の数に応じて予め定義されているものとする。
図5を参照すると、例えば、分散ファイル属性テーブル123の第一のレコードには分散ファイル110に関する情報が格納されており、分散ファイル110のパス名は/dir01/file01、最終更新時刻は2009/07/02 10:01、ファイルサイズは3,414,336、サマリーハッシュ値が00f00001(十六進表記の整数)であることを示している。属性フィールド1235については記載を省略している。
<図6:類似グループテーブル>
図6は、本発明の第一の実施形態に係る類似グループテーブル124の一例を説明する図である。
類似グループテーブル124には、グループ識別情報フィールド1241、分散ファイル識別番号フィールド1242、グループ特徴情報フィールド1243、タイプフィールド1244の各フィールドを有するレコードを格納する。各レコードは、それぞれ類似グループに対応し、類似グループの情報を格納する。
各レコードのグループ識別情報フィールド1241には、対応する類似グループの識別情報が格納される。類似グループの識別情報は、本実施形態では類似グループに一意に割り当てられた整数である。
各レコードの分散ファイル識別番号フィールド1242には、対応する類似グループに含まれる分散ファイルの分散ファイル識別番号が格納される。
各レコードのグループ特徴情報フィールド1243には、対応する類似グループに含まれる分散ファイルの特徴の情報が格納される。分散ファイルの特徴とは、例えばサマリーハッシュ値、ファイルサイズ、その他の属性やこれらの組み合せから算出される値である。
各レコードのタイプフィールド1244には、対応する類似グループのグループ特徴情報フィールド1243に格納される情報の種類が格納される。
例えば、図6では、類似グループテーブル124の第一レコードには、グループ識別情報が1の類似グループに関する情報を格納している。グループ識別情報が1の類似グループは、分散ファイル110、220、330を含んでおり、その共通した特徴は、サマリーハッシュ値が00f00001(十六進表記)であることを示す。
<図7:ストレージサーバ>
図7は、本発明の第一の実施形態に係るストレージサーバ2の構成を説明する図である。
ストレージサーバ2は、プロセッサ21と、メモリ22と、ネットワークインタフェース23と、記憶装置24を有する。これらは、バス25により接続されている。
プロセッサ21は、メモリ22に格納されたプログラムやデータを用いて各種処理を実行する。
ネットワークインタフェース23は、LAN4を介して計算機3およびメタデータサーバ1とのデータの入出力を制御する。
記憶装置24には、ファイルシステム26が構成されており、ストレージサーバ2で実行されるプログラムや、プログラムが使用するデータが格納される。
メモリ22は、サーバ識別情報221を格納する。ストレージサーバ2a〜2lのサーバ識別情報221には、それぞれストレージサーバ2a〜2lの識別情報(A〜L)が格納される。
また、メモリ22は、重複排除処理プログラム222と、ネットワークデータI/O処理プログラム223と、ローカルファイルシステムプログラム224と、オペレーティングシステム225を格納する。
<図8:ファイルシステムの構造>
図8は、本発明の第一の実施形態に係るファイルシステム26の一例を説明する図である。図8は、例として、ストレージサーバ2aのファイルシステム26の構造と格納されるデータを示している。各ストレージサーバ2のファイルシステム26の構造は同じである。
ファイルシステム26aは、記憶装置24aに構築された、ローカルファイルを格納するための特定の領域である。ファイルシステム26aには複数のローカルファイルを格納できる。ローカルファイルは、データを入れるための論理的な伸縮する容器と見ることができる。例えば、ローカルファイルに10メガバイトのデータを格納すれば、ローカルファイルは10メガバイトの容量を持つ容器となり、データを消去すれば0バイトの容量を持つ容器となる。
ローカルファイルにはメタデータと呼ばれる様々な属性データを設定できる。ローカルファイルを容器と見るならば、メタデータは容器に付けられたタグと見ることができる。
ローカルファイルとは異なり、ファイルシステム26aの容量は一定である。このため、あるローカルファイルの容量を縮小(格納されているデータのサイズを縮小)すれば、ファイルシステム26aの空き容量はその分増加する。
ファイルシステム26aは、メタデータブロック260とデータブロック250からなる。メタデータブロック260には、ファイルシステム26に格納されるローカルファイルのメタデータが格納される。データブロック250にはローカルファイルのデータの内容が格納される
図8では、ストレージサーバ2aのファイルシステム26に格納されているローカルファイルの内、3個のローカルファイル(識別番号1100、2100、3100)を図示している。以下、識別番号が1100のローカルファイルを、単にローカルファイル1100のように表記する。
メタデータブロック260には、ローカルファイル1100、2100、3100にそれぞれ対応するメタデータ261、262、263が格納されている。各メタデータ261、262、263は、それぞれサイズフィールド2611、2621、2631、ファイルタイプフィールド2612、2622、2632、ファイルデータブロックフィールド2613、2623、2633を有する。他に、各メタデータには、ローカルファイルの属性等の情報を格納するフィールドを含んでもよい。
本実施形態では、ローカルファイルには、「データファイル」、「ローカルスタブ」、「リモートスタブ」の3種類がある。データファイルは、ストレージシステム10に格納される分散ファイルのファイル断片を格納する。ローカルスタブとリモートスタブは、ファイル断片を格納せず、他のローカルファイルへの参照情報(例えば、ローカルファイルのファイルシステム26における識別番号)を格納する。ローカルスタブは、同じストレージサーバ2に格納されているデータファイルを参照する情報を有する。リモートスタブは、異なるストレージサーバ2に格納されているローカルファイルを参照する情報を有する。
計算機3がストレージサーバ2に格納されているローカルスタブに対してリード要求を行った場合、ストレージサーバ2はローカルスタブが参照するローカルファイルからデータを取得して応答する。また、計算機3がストレージサーバ2に格納されているリモートスタブに対してリード要求を行った場合、ストレージサーバ2はリモートスタブが参照する別のストレージサーバ2およびそのローカルファイルの識別番号を計算機3に応答する。計算機3は、応答に含まれる参照先のストレージサーバ2に再度アクセスし、所望のデータを得る。
図4で説明したように、ローカルファイル1100は、分散ファイル110の第一のファイル断片を格納している。メタデータ261のファイルタイプフィールド2612には、ローカルファイル1100がデータファイルであることを示す情報が格納されている。分散ファイル110の第一のファイル断片は、ファイルデータブロックフィールド2613に格納された、(記憶装置24上の)論理ブロックアドレス11000により指示される記憶領域266に格納されている。
ローカルファイル2100は、ストレージシステム10に格納された何れかの分散ファイルのファイル断片を参照する情報を有する、ローカルスタブである。ファイルデータブロックフィールド2623に格納された論理ブロックアドレス21000が指示する記憶領域267には、このローカルスタブが参照しているローカルファイル4100の情報を格納している。また、このローカルスタブが別のストレージサーバ2のリモートスタブから参照されている場合は、参照しているストレージサーバ2とリモートスタブの識別情報 (図では「B」および「7000」)が格納される。
ローカルファイル3100は、ストレージシステム10に格納された何れかの分散ファイルのファイル断片を参照する情報を有する、リモートスタブである。ファイルデータブロックフィールド2633に格納された論理ブロックアドレス31000が指示する記憶領域268には、このリモートスタブが参照しているストレージサーバ2(図では「C」)と、参照先ストレージサーバにおけるローカルファイル識別情報(図では「8000」)を格納する。
<図9:グループ化処理>
図9は、本発明の第一の実施形態に係る類似グループ作成処理の一例を説明するフローチャートである。
類似グループ作成処理は、メタデータサーバ1の類似分散ファイル抽出プログラム127によって、定期的に(例えば毎日4:00に)実行される。類似グループ作成処理は、ステップs1000から開始される。以下、類似分散ファイル抽出プログラム127が実行する処理の説明である。
ステップs1010において、レイアウトテーブル122に格納されている分散ファイルを一つ選択する。
ステップs1020において、この分散ファイルが重複排除処理の対象とすべき分散ファイルかどうかを調べる。具体的には、選択した分散ファイルの最終更新時刻を分散ファイル属性テーブル123の最終更新時刻フィールド1233を参照して取得し、一定期間(例えば1週間)更新されていないならば対象とする。
ステップs1030において、選択した分散ファイルが重複排除処理の対象となる分散ファイルならば、その特徴情報を作成する。具体的には、分散ファイルのサマリーハッシュ値を作成して特徴情報とするか、より単純には分散ファイルのファイルサイズを特徴情報とする。あるいは、その他の情報を用いて算出してもよい。作成したサマリーハッシュ値は、分散ファイル属性テーブル123の対応するレコードのサマリーハッシュフィールド1236に格納されてもよい。
分散ファイルの特徴情報は、メタデータサーバ1が算出するようにしてもよいし、メタデータサーバ1より要求を受けたストレージサーバ2が算出し、メタデータサーバ1へ提供するようにしてもよい。
ステップs1040において、類似グループテーブル124より、作成した特徴情報に対応するレコードを選択し、そのレコードの分散ファイル識別番号フィールド1242に対象の分散ファイルの識別番号を登録する。この結果、当該レコードの分散ファイル識別番号フィールド1242に登録されるファイル数が既定数(例えば4)となった場合は、ステップs1050において次のステップs1060へ進み、そうでなければ、ステップs1070へ進む。もし対応するレコードが類似グループテーブル124に格納されていなければ、新たなレコードを作成する。
分散ファイル440を対象として処理し、そのサマリーハッシュ値が00f00001となり、分散ファイル440がグループ識別情報1のレコードの分散ファイル識別番号フィールド1242に登録されたものとする。この結果、当該レコードの分散ファイル識別番号フィールドに登録されるファイル数は4となるため、次のステップs1060へ進む。
ステップs1060において、前記当該レコードの分散ファイル識別番号フィールド1242に含まれる分散ファイルを分割して格納するストレージサーバ2(以降、このストレージサーバ2のグループをストレージサーバグループと呼ぶ)に対して、当該分散ファイルの重複排除処理の実行を指示する。ストレージサーバ2に対して指示するためのIPアドレスは、ストレージサーバ管理テーブル121を参照して取得する。
本実施形態では、メタデータサーバ1は各分散ファイルの先頭のファイル断片を持つストレージサーバ2に対して重複排除処理を指示し、二番目以降のファイル断片を持つストレージサーバ2には前のファイル断片を持つストレージサーバから指示が伝達される。
メタデータサーバ1からの指示には、以下の(1)〜(3)の情報を含む。
(1)類似グループと、類似グループに含まれる分散ファイルの識別情報
(2)上記(1)の各分散ファイルのレイアウト
(3)重複排除ポリシー125に格納されている情報
重複排除ポリシー125には、分散ファイルの重複排除を実行する場合に、ファイル断片を消去するストレージサーバ2を選択する方針に関する情報が格納される。この方針とは、例えば、最もファイルシステム利用率(容量利用率)の少ないストレージサーバ2のファイル断片を残し、他のストレージサーバ2のファイル断片を削除する、等である。また、ストレージサーバ2のCPU利用率が少ないストレージサーバ2のファイル断片を残すというポリシーであってもよい。
重複排除ポリシー125は、図示しない管理サーバ等から、ストレージシステム10の管理者が登録する。
ステップs1070において、レイアウトテーブルに登録された全ての分散ファイルを処理済みであればステップs1080に進み処理を終了する。そうでなければ、s1010へ戻り別の分散ファイルを選択し、同様に処理する。
<図10:重複排除処理>
図10は、本発明の第一の実施形態に係る重複排除処理の一例を説明するフローチャートである。重複排除処理は、各ストレージサーバ2が、メタデータサーバ1または前のストレージサーバ2からの重複排除処理実行の指示を受け、重複排除処理プログラム222によって実行される。以下、重複排除処理プログラム222の処理の流れである。
重複排除処理は、ステップs2000より開始する。まず、メタデータサーバ1より指示を受けるストレージサーバ2は、先頭のファイル断片を処理の対象とする。各分散ファイルの二番目以降のファイル断片が格納されるストレージサーバ2は、前のファイル断片が格納されるストレージサーバより、処理すべきファイル断片の番号をパラメータとして受け取る。
ステップs2010において、重複排除処理の対象となるファイル断片に対応したローカルファイルの内容からハッシュ値を計算する。ハッシュ値の算出には、SHA512アルゴリズムのように、出力のビット数が十分に大きく、衝突が発生しにくいアルゴリズムを用いる。さらに衝突を避けるために、2個以上の異なるアルゴリズムを用いて二つのハッシュ値を算出し、連結してローカルファイルのハッシュ値としてもよい。
ステップs2020において、類似グループに含まれる分散ファイルを持つストレージサーバ2間で、排除するファイル断片と、排除しないファイル断片を合意する。(ファイル断片排除サーバ間合意処理の詳細については、図11及び12を用いて説明する)。もし、合意が形成された場合は、ステップs2030の分岐において、ステップs2040に進み、ファイル断片に対する処理(ファイル断片排除処理)を行ってステップs2050へ進む。そうでなければ、ステップs2050へ進む。
ステップs2050において、次のファイル断片が格納されるストレージサーバ2に対して、重複排除処理の実行を指示する。指示には、自ストレージサーバ2が処理したファイル断片の次のファイル断片の番号を、処理すべきファイル断片の番号として含む。ファイル断片排除処理の詳細については、図13を用いて説明する。
<図11、図12:ファイル断片排除サーバ合意処理>
図11及び図12は、本発明の第一の実施形態に係るファイル断片排除サーバ間合意処理の一例を説明するフローチャートである。
ファイル断片排除サーバ間合意処理は、各ストレージサーバ2の重複排除処理プログラム222が実行する。
ファイル断片排除サーバ間合意処理は、ステップs3000から開始する。
ステップs3010において、自ストレージサーバ2がコーディネータかどうかを判定する。コーディネータとは、ストレージサーバグループに属するストレージサーバ2の内、ファイル断片を排除する方針を算出し、他のストレージサーバ2へ伝達する役目を持つストレージサーバである。本実施形態では、ストレージサーバグループに属するストレージサーバ2の内、識別情報が最も若いストレージサーバがコーディネータとなる。コーディネータの場合、ステップs3020へ進む。そうでなければ、図12のステップs3120へ進む。
ステップs3020において、ストレージサーバグループに属する他のストレージサーバより、ステップs2010で算出したハッシュ値と、ストレージサーバの負荷情報を受信する。負荷情報とは、ストレージサーバのCPU負荷、ファイルシステム26の使用率、メモリ使用率、およびこれらの時間毎の推移等である。重複排除ポリシー125により選択される。例えば、本実施形態では、重複排除のポリシーとして、負荷情報のうちファイルシステム26の利用率を採用する。この場合、ファイルシステム26の利用率を均等化することができる。ストレージサーバ2のCPU利用率やメモリ使用率を負荷情報とする場合、ストレージサーバ2の負荷を均等化できる。
ステップs3030において、もし、既定の時間(例えば1分)以内に全てのサーバからハッシュ値が得られれば、ステップs3040へ進む。そうでなければ、ステップS3100へ進み、処理を終了する。
ステップs3040において、ストレージサーバグループに属するストレージサーバの内、同じハッシュ値を送信したストレージサーバを同一断片グループとする。もし、全てのストレージサーバが同じハッシュ値を送信した場合は、4つのストレージサーバを含む1つの同一断片グループが形成される。逆に、全てのストレージサーバが異なるハッシュ値を送信した場合は、それぞれ1つのストレージサーバを含む4つの同一断片グループが形成される。
ステップs3050において、2以上のストレージサーバを含む同一断片グループについて、その負荷情報および重複排除ポリシーを参照し、ファイル断片を排除するストレージサーバ2と、ファイル断片を排除しないストレージサーバ2を決定する。以降、ファイル断片を排除しないストレージサーバ2を、その同一断片グループの代表サーバと呼び、代表サーバでないストレージサーバ2を従属サーバと呼ぶ。
例えば、重複排除ポリシーとしてファイルシステム使用率の平準化が設定されている場合、同一断片グループに属するストレージサーバ2の内、ファイルシステム26の利用率が最も低いストレージサーバ2を代表サーバとして選択する。
ステップs3060において、ステップs3040で算出した同一断片グループ、およびステップs3050で算出した代表サーバを、他のストレージサーバグループに属する他のストレージサーバ2へ送信し、応答を待つ。
ステップs3070において、もし全てのサーバが、同一断片グループと代表サーバを受け入れる応答を返した場合、ファイル断片の排除を実行することを決定する (ステッップs3080)。そうでなければ、ファイル断片の排除を実行しないことを決定する(ステップs3100)。
ステップs3090において、ストレージサーバグループに属するすべてのストレージサーバ2に、前項の決定内容を送信し、処理を終了する(ステップs3110)。
ストレージサーバ2がコーディネータではない場合(ステップs3010)、図12のステップs3120からの処理を実行する。
ステップs3120において、図10ステップs2010で算出したハッシュ値と自ストレージサーバの負荷情報を、コーディネータへ送信する。
ステップs3130において、コーディネータより同一断片グループと代表サーバを受信する。もし、コーディネータからの応答が既定の時間(例えば1分)ない場合や、コーディネータが重複排除処理の中止を応答した場合は、ステップs3190に進み、ファイル断片の排除を実行しないことを決定して処理を終了する。そうでない場合は、ステップs3150へ進む。
ステップs3150において、コーディネータから送信された同一断片グループと代表サーバに対して、同意することを送信する。
ステップs3160において、コーディネータよりファイル断片排除処理の実行または中止の決定を受信する。
ステップs3170において、コーディネータよりファイル断片の排除の実行が送信された場合、ステップs3180へ進みファイル断片の排除の実行を決定して処理を終了する。そうでない場合、ファイル断片の排除を実行しないことを決定して処理を終了する。
<図13:ファイル断片排除処理>
図13は、本発明の第一の実施形態に係るファイル断片排除処理の一例を説明するフローチャートである。
図10において説明したように、ファイル断片排除サーバ間合意処理において、全てのサーバがファイル断片排除の実行を決定した場合に、本処理はステップs2040より呼び出される。
ファイル断片排除処理は、ステップs4000より開始する。ファイル断片排除処理は、ストレージサーバ2の重複排除処理プログラム222が実行する。
ステップs4010において、自ストレージサーバが代表サーバであるかどうかを判定する。自ストレージサーバが代表サーバであるかどうかは、ファイル断片排除サーバ合意処理(図11)のステップs3060より、コーディネータから通知される。もし代表サーバであればステップs4070へ進み、そうでなければステップs4020へ進む。
ステップs4070において、対象のファイル断片を格納したローカルファイルについて、そのローカルファイルを参照するローカルスタブを作成する。ローカルスタブは、従属サーバの数と同数作成される。各ローカルスタブには、対応する従属サーバの識別情報がそれぞれ格納される。
ステップs4080において、ステップs4070で作成したローカルスタブの識別情報を各従属サーバへ送信する。
ステップs4090において、各従属サーバよりリモートスタブの識別情報を受信する。
ステップs4100において、ステップs4090で受信したリモートスタブの識別情報を、ステップs4070で作成した各従属サーバに対応するローカルスタブに記録する。
従属サーバならば、ステップs4020からの処理を実行する。
ステップs4020において、代表サーバよりローカルスタブの情報を受信する。
ステップs4030において、排除の対象となるローカルファイルを、一次的にファイルシステムの空き領域へ退避する。
ステップs4040において、排除の対象となるローカルファイルをリモートスタブへ変更する。具体的には、排除の対象となるローカルファイルのファイタイプ(図8参照)をリモートスタブへ変更し、ローカルファイルのファイルデータには、代表サーバの識別情報と、代表サーバから受信したローカルスタブの識別情報が記録される。
ステップs4045において、リモートスタブの識別情報を代表サーバへ送信する。
ステップs4050において、ステップs4030で退避したローカルファイルを削除し、処理を終了する。
<図14:リード処理>
図14は、本発明の第一の実施形態に係るファイルリード処理の一例を説明するフローチャートである。
計算機3は、ストレージシステム10に格納された分散ファイルからデータを読み出す場合、まずメタデータサーバ1より所望の分散ファイルのレイアウトを取得する。次に、計算機3は、レイアウトに従ってデータが格納されたストレージサーバ2を特定し、当該のストレージサーバ2に対して、ファイル断片を格納するローカルファイルを読み出す要求を行う。
ストレージサーバ2は、計算機3からのローカルファイルのデータ読み出し要求を受け、ステップs5000からの処理を開始する。
ステップs5010において、要求されたローカルファイルがリモートスタブかどうかを判定する。もしリモートスタブであれば、計算機3に対して、ファイル断片を別のストレージサーバ2から読み出すべきであることを応答し、リモートスタブに記録された代表サーバの識別情報と、代表サーバにおけるローカルスタブの識別情報を応答する(ステップs5070)。この応答を計算機3が受けると、計算機3は応答に基づいて適切なストレージサーバ2へ再度要求を発行する。
ステップs5020において、要求されたローカルファイルがローカルスタブかどうかを判定する。もしローカルスタブであれば、ローカルスタブが参照するローカルファイルよりデータを読み出す(ステップs5060)。そうでなければ、当該のローカルファイルよりデータを読み出す(ステップs5030)。
ステップs5040において、読み出したデータを計算機3へ応答し、処理を終了する(ステップs5050)。
<図15:ライト処理>
図15は、本発明の第一の実施形態に係るファイルライト処理の一例を説明するフローチャートである。
計算機3は、ストレージシステム10に格納された分散ファイルにデータを書き込む場合、まずメタデータサーバ1より所望の分散ファイルのレイアウトを取得する。次に、計算機3は、レイアウトに従ってデータが格納されたストレージサーバ2を特定し、当該のストレージサーバ2に対して、ファイル断片を格納するローカルファイルへデータを書き込む要求を行う。
ストレージサーバ2は、計算機3からのローカルファイルへのデータ書き込み要求を受け、ステップs6000からの処理を開始する。
ステップs6010において、計算機3よりデータの書き込み先として要求されたローカルファイルがリモートスタブかどうかを判定する。もしリモートスタブであれば、このリモートスタブをデータファイルへ復元し、復元したデータファイルへデータを書き込むステップs6100からの処理を行う。
ステップs6100において、リモートスタブの参照先の代表サーバから、リモートスタブが参照しているファイルデータを読み出す。図12のステップs4040で説明したように、リモートスタブは、代表サーバのローカルスタブを参照している。このため、従属サーバから代表サーバへの要求は、ローカルスタブからのデータの読み出しと同様に処理する。
ステップs6110において、メタデータのファイルタイプフィールドをリモートスタブからデータファイルへ変更し、代表サーバより読み出したデータをデータファイルへ書き込む。
ステップs6120において、計算機3から書き込みを要求されたデータを、データファイルへ書き込む。
ステップs6130において、代表サーバに対して、リモートスタブが参照していた代表サーバ上のローカルスタブを削除するように要求する。代表サーバは、要求されたローカルスタブを削除する。
ステップs6140において、計算機3に対してデータの書き込みが完了したことを応答し、処理を終了する。
一方、ステップs6010において、要求を受けたローカルファイルがリモートスタブでない場合、ステップs6020において、計算機3よりデータの書き込み先として要求されたローカルファイルがローカルスタブかどうかを判定する。もしローカルスタブであれば、このローカルスタブを参照している従属サーバに対して、リモートスタブの復元を要求する。ローカルスタブを参照している従属サーバは、ローカルスタブのファイルデータとして記録されている(図8)。この要求を受け、従属サーバは、代表サーバからローカルスタブが参照しているローカルファイルのデータを読み出し、メタデータのファイルタイプフィールドをリモートスタブからデータファイルへ変更し、読み出したデータを当該データファイルへ書き込む。
ステップs6090において、計算機3に対して、ファイル断片を別のストレージサーバ2へ書き込むべきであることを応答し、ローカルスタブに記録された従属サーバの識別情報と、従属サーバにおけるデータファイルの識別情報を応答する。この応答を計算機3が受けると、計算機3は応答に基づいて適切なストレージサーバ2へ再度要求を発行する。
ステップs6095において、要求を受けたローカルスタブを削除し、処理を終了する。
一方、ステップs6020において、要求を受けたローカルファイルがローカルスタブではない場合(データファイルの場合)、ステップs6030からの処理を実行する。
ステップs6030において、データファイルを別のデータファイルへ複製し、元のデータファイルを参照するローカルスタブを、複製したデータファイルを参照するように変更する。ただし、データファイルを参照するローカルスタブが存在しなければ、この処理を行わない。データファイルを参照するローカルスタブの識別情報は、データファイルの属性情報として記録しておくことができる。
ステップs6050において、データファイル(複製ではない)に対して、計算機3から要求されたデータを書き込む。
ステップs6060において、計算機3に対してデータ書き込み完了を応答して処理を終了する。
本発明の第二の実施形態を、図面を用いて説明する。
<図16:第二の実施形態>
図16は、本発明の第二の実施形態に係る計算機システムの概要を説明する図である。
第二の実施形態では、第一の実施形態にゲートウェイサーバ5を追加している。
ゲートウェイサーバ5は、メタデータサーバ1や計算機3と同様の計算機であり、LAN4に接続されている。
ゲートウェイサーバ5は、そのメモリに共有ファイルシステムサーバプログラム54と、アクセス要求変換プログラム55と、分散ファイルシステムクライアントプログラム56を格納している。これらの各プログラムは、ゲートウェイサーバ5のプロセッサにより実行される。
共有ファイルシステムサーバプログラム3は、計算機3からストレージシステム10に格納された分散ファイルに対するアクセス要求を受け付ける。このアクセス要求は、アクセス要求変換プログラム55によりストレージシステム10の分散ファイルシステムに対するアクセス要求へ変換され、分散ファイルシステムクライアントプログラム56が第一の実施形態で説明した方法で、ストレージシステム10の分散ファイルにアクセスする。
ゲートウェイサーバ5はさらに、そのメモリに類似グループテーブル51と、重複排除ポリシー52と、類似ファイル抽出プログラム53を備える。
類似グループテーブル51は、第一の実施形態における類似グループテーブルl24と同じ構成のデータである。第二の実施形態では、メタデータサーバ1は類似グループテーブル124を持たない。
重複排除ポリシー52は、第一の実施形態における重複排除ポリシー125と同じ構成のデータである。第二の実施形態では、メタデータサーバ1は重複排除ポリシー125を持たない。
類似ファイル抽出プログラム53は、第一の実施形態における類似分散ファイル抽出プログラムと同じ働きをするプログラムである。第二の実施形態では、メタデータサーバ1は類似分散ファイル抽出プログラム127を備えない。
第二の実施形態では、類似ファイルグループ化処理を、メタデータサーバ1に代わりゲートウェイサーバ5の類似ファイル抽出プログラム53が実施する。
類似ファイル抽出プログラム53は、図9で示した類似ファイルグループ化処理とほぼ同様の処理を行うが、以下の点が異なる。
(1)ステップs1010および、ステップs1020において、類似ファイル抽出プログラム53は、メタデータサーバ1より、レイアウトテーブル122および分散ファイル属性テーブル123に格納されている分散ファイルのレイアウトと属性を取得する。
(2)ステップs1040において、類似ファイル抽出プログラム53は、類似グループの情報を類似グループテーブル51へ格納する。
ゲートウェイサーバ5が類似ファイルの抽出処理を行うことで、計算機3から頻繁にアクセスされるメタデータサーバ1の負荷を低減することが可能である。
<他の実施形態>
以上、本発明を実施形態に基づいて説明したが、本発明は上述した実施の形態に限られず、他の様々な態様に適用可能である。
<L2を使う>
例えば、上記実施形態では、LAN4を介した通信で用いるネットワークプロトコルとしてIPを利用したが、本発明はこれに限られず、例えばイーサネット(登録商標)プロトコル等のデータリンクプロトコルを利用してもよい。これにより、IPアドレスの消費を低減できる。
<複数のLANを使う>
また、上記実施形態では、一つのLAN4のみを通信用ネットワークとしたが、本発明はこれに限られず、例えば複数のLAN4を用いてもよい。これにより、通信用ネットワークを高信頼化できる。
<データの比較を行う>
また、上記実施形態では、ローカルファイルの同一性の検査のために十分に大きな値域のハッシュ関数を用いたが、本発明はこれに限られず、例えば、ローリングハッシュを用いてローカルファイルを少量ずつ比較するようにし、さらに負荷を低減するようにしてもよい。また、ローカルファイルのデータ本体を比較することを否定するものではない。
<パリティのアップデートを行う>
また、上記実施形態では、分散ファイルを障害から保護する機能を持たないが、本発明はこれに限られず、例えば、分散ファイルごとにそのパリティデータを持つローカルファイルを備えさせ、分散ファイルのファイル断片を更新した場合には、パリティデータを併せて更新するようにし、分散ファイルを保護するようにしてもよい。分散ファイルのいずれかのファイル断片がローカルスタブまたはリモートスタブを含む場合であっても、これらの更新に併せてパリティデータを更新するようにしてもよい。
<排除ポリシー>
また、上記実施形態では、重複排除ポリシーとして、各ストレージサーバのファイルシステム利用率の平準化を設定した場合を示したが、本発明はこれに限られず、例えば、以下のような重複排除ポリシーを設定してもよい。
(1)各ストレージサーバ2のCPU利用率やメモリ利用率を平準化する。すなわち、CPU利用率やメモリ利用率の高いストレージサーバ2からは、優先的にローカルファイルを排除する。これにより、ストレージサーバ2のCPU負荷の平準化が可能である。
(2)各ストレージサーバ2が備える記憶装置24の種類に応じてファイルを蓄積する。例えば、記憶装置24が高価かつ高性能なSAS(Serial Attached SCSI)ディスクならば優先的にローカルファイルを排除する。更新頻度の低いファイルを排除することで、高性能な記憶装置をより更新頻度の高いファイルの格納に利用でき、ストレージシステム10全体の性能向上を図れる。
<メタデータストレージでもよい>
また、上記実施形態では、メタデータサーバ1とストレージサーバ2を異なるサーバとしたが、本発明はこれに限られず、メタデータサーバ1がストレージサーバ2の機能を備え、ストレージサーバ2を兼ねるようにしてもよい。これにより、装置数を低減できる。
<並列処理する>
また、上記実施形態では、メタデータサーバ1は、分散ファイルの先頭のファイル断片を持つストレージサーバ2に対して重複排除を指示し、2番目以降のファイル断片を持つストレージサーバ2は、前のファイル断片を持つストレージサーバ2から重複排除指示が伝達されるようにしたが、本発明はこれに限られず、メタデータサーバ1が、2番目以降のファイル断片を持つストレージサーバ2に対しても重複排除の実行を指示するようにしてもよい。重複排除を並列処理することで、重複排除処理の時間を短縮できる。
1 メタデータサーバ
2 ストレージサーバ
3 計算機
4 LAN
10 ストレージシステム

Claims (16)

  1. 第一の記憶領域を有する、第一のファイルサーバと、
    第一のファイルサーバに接続され、第二の記憶領域を有する、1以上の第二のファイルサーバと、
    前記第一のファイルサーバおよび前記第二のファイルサーバに接続される1以上の計算機と、
    前記第一のファイルサーバ、前記1以上の第二のファイルサーバ及び前記以上の計算機に接続されるメタデータサーバと、
    を有するストレージシステムにより実現されるファイル管理方法であって、
    前記計算機は、第一のファイルに格納されるデータ列を、第一の断片データ列を含む1以上の断片データ列へ分割し、
    前記第一のファイルサーバは、前記第一の断片データ列を格納する第一の断片ファイルを、前記第一の記憶領域に格納し、
    前記計算機は、第二のファイルに格納されるデータ列を、第二の断片データ列を含む1以上の断片データ列へ分割し、
    前記1以上の第二のファイルサーバは、前記第二の断片データ列を格納する第二の断片ファイルを前記第二の記憶領域に格納し、
    前記メタデータサーバは、一定期間更新されていないファイルの特徴情報に一致する複数のファイルで構成される類似グループに含まれるファイルの数が、既定数となった場合に、前記類似グループに含まれる前記複数のファイルのレイアウトを含む重複排除処理の実行指示を、前記類似グループに含まれるファイルを分割して格納する複数のファイルサーバに送信し、
    前記第一のファイルサーバは、
    前記類似グループに含まれるファイルを分割して格納する前記複数のファイルサーバのうちの任意の1のファイルサーバであり、
    前記重複排除処理の実行指示を受信し、
    前記第一の断片データ列から第一の特徴情報を算出し、
    前記1以上の第二のファイルサーバは
    前記類似グループに含まれるファイルを分割して格納する前記複数のファイルサーバのうちの、第一のファイルサーバを除くファイルサーバであり、
    前記重複排除処理の実行指示を受信し、
    記複数のファイルのレイアウトから前記第一のファイルを格納する前記第一のファイルサーバを、コーディネータの役割をになうファイルサーバであると特定し、
    前記第二の断片データ列から第二特徴情報を算出し、
    前記第二の特徴情報を前記第一のファイルサーバへ送信し、
    前記第一のファイルサーバは、
    前記1以上の第二のファイルサーバから1以上の第二の特徴情報を受信し、
    前記第一のファイルサーバ及び前記1以上の第二のファイルサーバのうち、前記第一の特徴情報と前記1以上の第二の特徴情報と一致する特徴情報を有する2以上のファイルサーバをグループ化し、グループ化された2以上のファイルサーバから、前記第一または第二の断片データ列のうち削除対象の断片データ列以外の断片データ列を有するファイルサーバである代表サーバを決定し、
    前記代表サーバの識別情報を前記代表サーバ以外の前記第二のファイルサーバへ送信し、
    前記第一のファイルサーバは、
    自身が前記代表サーバ以外のファイルサーバならば、前記第一の断片データ列を削除し、
    前記第一の断片ファイルを、前記代表サーバが有する第二の断片データ列を指示するスタブへ変更し、
    二のファイルサーバは、
    自身が前記代表サーバ以外のファイルサーバならば、前記第二の断片データ列を削除し、
    前記第二の断片ファイルを、前記代表サーバが有する第一又は第二の断片データ列を指示するスタブへ変更することを特徴とする
    ファイル管理方法。
  2. 請求項1に記載のファイル管理方法であって、
    前記第一のファイルサーバは、前記第一の断片ファイルを格納する第一の記憶領域に、第一のファイルシステムを構成し、
    前記1以上の第二のファイルサーバは、前記第二の断片ファイルを格納する第二の記憶領域に、第二のファイルシステムを構成し、
    前記第一のファイルサーバは、前記第二のファイルシステムの容量利用率を前記1以上の第二のファイルサーバから取得し、
    前記第一のファイルサーバは、前記第一のファイルシステム及び一以上の第二のファイルシステムの容量利用率に応じて、前記容量利用率が最も少ないファイルシステム以外のファイルシステムが有する第一又は第二の断片データ列を前記削除対象の断片データ列として決定することを特徴とする
    ファイル管理方法。
  3. 請求項1に記載のファイル管理方法であって、
    前記第一のファイルサーバは、第一のプロセッサを有し、
    前記1以上の第二のファイルサーバは、第二のプロセッサを有し、
    前記第一のファイルサーバは、前記第二のプロセッサの利用率を前記1以上の第二のファイルサーバから取得し、
    前記第一のファイルサーバは、前記第一及び第二のプロセッサの利用率に応じて、前記プロセッサの利用率が少ないファイルサーバ以外のファイルサーバが有する第一又は第二の断片データ列を前記削除対象の断片データ列として決定することを特徴とする
    ファイル管理方法。
  4. 請求項2又は3に記載のファイル管理方法であって、
    前記第一の断片データ列が、削除対象の断片データ列として削除された場合、
    前記第一のファイルサーバは、前記計算機より前記スタブに対してデータの読み出し要求を受けた場合には、前記計算機に対して、前記第二の断片データ列が格納されている、前記1以上の第二のファイルサーバの識別情報を応答することを特徴とする
    ファイル管理方法。
  5. 請求項4に記載のファイル管理方法であって、
    前記第一のファイルサーバは、計算機より前記スタブに対してデータの書き込み要求を受けた場合には、前記スタブを第三の断片ファイルへ変更し、前記第二の断片データ列の複製を前記第三の断片ファイルへ格納し、前記第三の断片ファイルに、前記計算機より書き込みを要求された前記データを格納することを特徴とする
    ファイル管理方法。
  6. 請求項5に記載のファイル管理方法であって、
    前記1以上の第二のファイルサーバは、計算機より前記第二の断片ファイルに対してデータの書き込み要求を受けた場合には、前記第二の断片ファイルを第四の断片ファイルへ複製し、前記第二の断片ファイルに前記計算機より書き込みを要求された前記データを格納することを特徴とする
    ファイル管理方法。
  7. 請求項6に記載のファイル管理方法であって、
    前記第一のファイルと前記第二のファイルは、前記1以上の断片データ列の内、特定の1以上の断片データ列から算出されるハッシュ値が同一であることを特徴とする
    ファイル管理方法。
  8. 請求項7に記載のファイル管理方法であって、
    前記第一のファイルと前記第二のファイルは、サイズが同一であることを特徴とする
    ファイル管理方法。
  9. 第一の記憶領域を有する、第一のファイルサーバと、
    第一のファイルサーバに接続され、第二の記憶領域を有する、1以上の第二のファイルサーバと、
    前記第一のファイルサーバおよび前記1以上の第二のファイルサーバに接続される1以上の計算機と、
    前記第一のファイルサーバ、前記1以上の第二のファイルサーバ及び前記以上の計算機に接続されるメタデータサーバと、
    を有するストレージシステムにおいて、
    前記計算機は、第一のファイルに格納されるデータ列を、第一の断片データ列を含む1以上の断片データ列へ分割し、
    前記第一のファイルサーバは、前記第一の断片データ列を格納する第一の断片ファイルを、前記第一の記憶領域に格納し、
    前記計算機は、第二のファイルに格納されるデータ列を、第二の断片データ列を含む1以上の断片データ列へ分割し、
    前記1以上の第二のファイルサーバは、前記第二の断片データ列を格納する第二の断片ファイルを前記第二の記憶領域に格納し、
    前記メタデータサーバは、一定期間更新されていないファイルの特徴情報に一致する複数のファイルで構成される類似グループに含まれるファイルの数が、既定数となった場合に、前記類似グループに含まれる前記複数のファイルのレイアウトを含む重複排除処理の実行指示を、前記類似グループに含まれるファイルを分割して格納する複数のファイルサーバに送信し、
    前記第一のファイルサーバは、
    前記類似グループに含まれるファイルを分割して格納する前記複数のファイルサーバのうちの任意の1のファイルサーバであり、
    前記重複排除処理の実行指示を受信し、
    前記第一の断片データ列から第一の特徴情報を算出し、
    前記1以上の第二のファイルサーバは
    前記類似グループに含まれるファイルを分割して格納する前記複数のファイルサーバのうちの、第一のファイルサーバを除くファイルサーバであり、
    前記重複排除処理の実行指示を受信し、
    記複数のファイルのレイアウトから前記第一のファイルを格納する前記第一のファイルサーバを、コーディネータの役割をになうファイルサーバであると特定し、
    前記第二の断片データ列から第二特徴情報を算出し、
    前記第二の特徴情報を前記第一のファイルサーバへ送信し、
    前記第一のファイルサーバは、
    前記1以上の第二のファイルサーバから1以上の第二の特徴情報を受信し、
    前記第一のファイルサーバ及び前記1以上の第二のファイルサーバのうち、前記第一の特徴情報と前記1以上の第二の特徴情報と一致する特徴情報を有する2以上のファイルサーバをグループ化し、グループ化された2以上のファイルサーバから、前記第一または第二の断片データ列のうち削除対象の断片データ列以外の断片データ列を有するファイルサーバである代表サーバを決定し、
    前記代表サーバの識別情報を前記代表サーバ以外の前記第二のファイルサーバへ送信し、
    前記第一のファイルサーバは、
    自身が前記代表サーバ以外のファイルサーバならば、前記第一の断片データ列を削除し、
    前記第一の断片ファイルを、前記代表サーバが有する第二の断片データ列を指示するスタブへ変更し、
    二のファイルサーバは、
    自身が前記代表サーバ以外のファイルサーバならば、前記第二の断片データ列を削除し、
    前記第二の断片ファイルを、前記代表サーバが有する第一又は第二の断片データ列を指示するスタブへ変更することを特徴とする
    ストレージシステム。
  10. 請求項9に記載のストレージシステムであって、
    前記第一のファイルサーバは、前記第一の断片ファイルを格納する第一の記憶領域に、第一のファイルシステムを構成し、
    前記1以上の第二のファイルサーバは、前記第二の断片ファイルを格納する第二の記憶領域に、第二のファイルシステム構成し、
    前記第一のファイルサーバは、前記第二のファイルシステムの容量利用率を前記1以上の第二のファイルサーバから取得し、
    前記第一のファイルサーバは、前記第一のファイルシステム及び一以上の第二のファイルシステムの容量利用率に応じて、前記容量利用率が最も少ないファイルシステム以外のファイルシステムが有する第一又は第二の断片データ列を前記削除対象の断片データ列として決定することを特徴とする
    ストレージシステム。
  11. 請求項9に記載のストレージシステムであって、
    前記第一のファイルサーバは、第一のプロセッサを有し、
    前記1以上の第二のファイルサーバは、第二のプロセッサを有し、
    前記第一のファイルサーバは、前記第二のプロセッサの利用率を前記1以上の第二のファイルサーバから取得し、
    前記第一のファイルサーバは、前記第一及び第二のプロセッサの利用率に応じて、前記プロセッサの利用率が少ないファイルサーバ以外のファイルサーバが有する第一又は第二の断片データ列を前記削除対象の断片データ列として決定することを特徴とする
    ストレージシステム。
  12. 請求項10又は11に記載のストレージシステムであって、
    前記第一の断片データ列が、削除対象断片データ列として削除された場合、
    前記第一のファイルサーバは、前記計算機より前記スタブに対してデータの読み出し要求を受けた場合には、前記計算機に対して、前記第二の断片データ列が格納されている、前記1以上の第二のファイルサーバの識別情報を応答することを特徴とする
    ストレージシステム。
  13. 請求項12に記載のストレージシステムであって、
    前記第一のファイルサーバは、計算機より前記スタブに対してデータの書き込み要求を受けた場合には、前記スタブを第三の断片ファイルへ変更し、前記第二の断片データ列の複製を前記第三の断片ファイルへ格納し、前記第三の断片ファイルに、前記計算機より書き込みを要求された前記データを格納することを特徴とする
    ストレージシステム。
  14. 請求項13に記載のストレージシステムであって、
    前記1以上の第二のファイルサーバは、計算機より前記第二の断片ファイルに対してデータの書き込み要求を受けた場合には、前記第二の断片ファイルを第四の断片ファイルへ複製し、前記第二の断片ファイルに前記計算機より書き込みを要求された前記データを格納することを特徴とする
    ストレージシステム。
  15. 請求項14に記載のストレージシステムであって、
    前記第一のファイルと前記第二のファイルは、前記1以上の断片データ列の内、特定の1以上の断片データ列から算出されるハッシュ値が同一であることを特徴とする
    ストレージシステム。
  16. 請求項15に記載のストレージシステムであって、
    前記第一のファイルと前記第二のファイルは、サイズが同一であることを特徴とする
    ストレージシステム。
JP2009214007A 2009-09-16 2009-09-16 ファイル管理方法及びストレージシステム Expired - Fee Related JP5595701B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009214007A JP5595701B2 (ja) 2009-09-16 2009-09-16 ファイル管理方法及びストレージシステム
US12/622,963 US8112463B2 (en) 2009-09-16 2009-11-20 File management method and storage system
US13/348,292 US8307019B2 (en) 2009-09-16 2012-01-11 File management method and storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009214007A JP5595701B2 (ja) 2009-09-16 2009-09-16 ファイル管理方法及びストレージシステム

Publications (2)

Publication Number Publication Date
JP2011065314A JP2011065314A (ja) 2011-03-31
JP5595701B2 true JP5595701B2 (ja) 2014-09-24

Family

ID=43731541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009214007A Expired - Fee Related JP5595701B2 (ja) 2009-09-16 2009-09-16 ファイル管理方法及びストレージシステム

Country Status (2)

Country Link
US (2) US8112463B2 (ja)
JP (1) JP5595701B2 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9135268B2 (en) * 2009-12-30 2015-09-15 Symantec Corporation Locating the latest version of replicated data files
US8443231B2 (en) 2010-04-12 2013-05-14 Symantec Corporation Updating a list of quorum disks
US8244992B2 (en) * 2010-05-24 2012-08-14 Spackman Stephen P Policy based data retrieval performance for deduplicated data
US9489133B2 (en) 2011-11-30 2016-11-08 International Business Machines Corporation Optimizing migration/copy of de-duplicated data
US20130218847A1 (en) 2012-02-16 2013-08-22 Hitachi, Ltd., File server apparatus, information system, and method for controlling file server apparatus
JP5929326B2 (ja) * 2012-03-02 2016-06-01 日本電気株式会社 ストレージシステム
US20130232124A1 (en) * 2012-03-05 2013-09-05 Blaine D. Gaither Deduplicating a file system
JPWO2013145222A1 (ja) * 2012-03-29 2015-08-03 富士通株式会社 情報処理装置およびデータ保存処理プログラム
US8776236B2 (en) * 2012-04-11 2014-07-08 Northrop Grumman Systems Corporation System and method for providing storage device-based advanced persistent threat (APT) protection
US9064106B2 (en) * 2012-04-25 2015-06-23 Hitachi, Ltd. Method and apparatus to keep consistency of ACLs among a meta data server and data servers
US9177028B2 (en) 2012-04-30 2015-11-03 International Business Machines Corporation Deduplicating storage with enhanced frequent-block detection
US9659060B2 (en) 2012-04-30 2017-05-23 International Business Machines Corporation Enhancing performance-cost ratio of a primary storage adaptive data reduction system
US8898121B2 (en) 2012-05-29 2014-11-25 International Business Machines Corporation Merging entries in a deduplication index
WO2013187901A2 (en) * 2012-06-14 2013-12-19 Empire Technology Development Llc Data deduplication management
US9092446B2 (en) * 2012-11-29 2015-07-28 Hitachi, Ltd. Storage system and file management method
GB2509504A (en) 2013-01-04 2014-07-09 Ibm Accessing de-duplicated data files stored across networked servers
US8938417B2 (en) 2013-02-22 2015-01-20 International Business Machines Corporation Integrity checking and selective deduplication based on network parameters
US10191934B2 (en) 2013-05-13 2019-01-29 Hitachi, Ltd. De-duplication system and method thereof
US9600201B2 (en) 2014-03-27 2017-03-21 Hitachi, Ltd. Storage system and method for deduplicating data
WO2016095152A1 (en) * 2014-12-18 2016-06-23 Nokia Technologies Oy De-duplication of encrypted data
US20160224993A1 (en) * 2015-02-03 2016-08-04 Bank Of America Corporation System for determining relationships between entities
TWI557673B (zh) * 2015-05-06 2016-11-11 張勃鈞 將具有相同運動目的之人連結的方法及其互動網路平台
JP6113816B1 (ja) * 2015-11-18 2017-04-12 株式会社東芝 情報処理システム、情報処理装置、及びプログラム
CN105335530B (zh) * 2015-12-11 2018-10-19 上海爱数信息技术股份有限公司 一种提升大数据块重复数据删除性能的方法
WO2017149592A1 (ja) * 2016-02-29 2017-09-08 株式会社日立製作所 ストレージ装置
US10725970B2 (en) * 2017-10-05 2020-07-28 Spectra Logic Corporation Block storage device with optional deduplication
WO2020026036A1 (en) 2018-07-31 2020-02-06 Marvell World Trade Ltd. Metadata generation at the storage edge
CN109726212A (zh) * 2018-12-29 2019-05-07 杭州宏杉科技股份有限公司 数据存储系统及方法
KR20210026143A (ko) 2019-08-29 2021-03-10 삼성전자주식회사 파일 시스템에 저장된 파일 또는 디렉토리의 크기를 획득하기 위한 전자 장치 및 방법
KR20230079633A (ko) * 2021-11-29 2023-06-07 성균관대학교산학협력단 파일 단편화 제거 방법 및 그 장치
CN116107979B (zh) * 2023-04-14 2023-06-27 大熊集团有限公司 一种数据分布式读取方法及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5493671A (en) * 1993-06-04 1996-02-20 Marcam Corporation Method and apparatus for conversion of database data into a different format on a field by field basis using a table of conversion procedures
JPH10301818A (ja) * 1997-04-28 1998-11-13 Matsushita Electric Ind Co Ltd ファイルシステム及びその管理方法
JP2000207370A (ja) * 1999-01-20 2000-07-28 Matsushita Electric Ind Co Ltd 分散ファイル管理装置及び分散ファイル管理システム
US6704730B2 (en) * 2000-02-18 2004-03-09 Avamar Technologies, Inc. Hash file system and method for use in a commonality factoring system
JP2005165729A (ja) * 2003-12-03 2005-06-23 Mitsukawa Yoshikazu 情報管理システムと、情報管理システムに用いる情報管理装置および記憶装置
JP4671738B2 (ja) * 2005-04-01 2011-04-20 株式会社日立製作所 ストレージシステム及び記憶領域割当て方法
US7506005B2 (en) * 2005-07-14 2009-03-17 Microsoft Corporation Moving data from file on storage volume to alternate location to free space
JP4749266B2 (ja) * 2006-07-27 2011-08-17 株式会社日立製作所 情報資源の重複を省いたバックアップ制御装置及び方法
US8214517B2 (en) * 2006-12-01 2012-07-03 Nec Laboratories America, Inc. Methods and systems for quick and efficient data management and/or processing
JP2008225740A (ja) * 2007-03-12 2008-09-25 Konica Minolta Holdings Inc 情報処理装置および情報処理方法
JP2009080671A (ja) * 2007-09-26 2009-04-16 Hitachi Ltd 計算機システム、管理計算機、及びファイル管理方法
US8140746B2 (en) * 2007-12-14 2012-03-20 Spansion Llc Intelligent memory data management

Also Published As

Publication number Publication date
US20110066666A1 (en) 2011-03-17
JP2011065314A (ja) 2011-03-31
US8307019B2 (en) 2012-11-06
US8112463B2 (en) 2012-02-07
US20120110045A1 (en) 2012-05-03

Similar Documents

Publication Publication Date Title
JP5595701B2 (ja) ファイル管理方法及びストレージシステム
US10853274B2 (en) Primary data storage system with data tiering
US10891054B2 (en) Primary data storage system with quality of service
US20200019516A1 (en) Primary Data Storage System with Staged Deduplication
US9043287B2 (en) Deduplication in an extent-based architecture
US20230013281A1 (en) Storage space optimization in a system with varying data redundancy schemes
US10146786B2 (en) Managing deduplication in a data storage system using a Bloomier filter data dictionary
US9842114B2 (en) Peer to peer network write deduplication
JP5320557B2 (ja) ストレージシステム
US20130290248A1 (en) File storage system and file cloning method
US8661055B2 (en) File server system and storage control method
US10929042B2 (en) Data storage system, process, and computer program for de-duplication of distributed data in a scalable cluster system
US20180074903A1 (en) Processing access requests in a dispersed storage network
WO2015118865A1 (ja) 情報処理装置、情報処理システム及びデータアクセス方法
US20210248107A1 (en) Kv storage device and method of using kv storage device to provide file system
US9015124B2 (en) Replication system and method of rebuilding replication configuration
US11947419B2 (en) Storage device with data deduplication, operation method of storage device, and operation method of storage server
WO2021187194A1 (ja) 分散処理システム、分散処理システムの制御方法、及び、分散処理システムの制御装置
WO2021142768A1 (zh) 一种文件系统的克隆方法及装置
KR101589122B1 (ko) 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서의 장애 복구 방법 및 시스템
WO2015198371A1 (ja) ストレージシステム及び記憶制御方法
WO2014109053A1 (ja) ファイルサーバ、ストレージ装置及びデータ管理方法
JP6683160B2 (ja) ストレージシステム、および通信方法
JP2019008418A (ja) データ転送装置およびデータ転送方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130702

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20130807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130828

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140207

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140708

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140806

R150 Certificate of patent or registration of utility model

Ref document number: 5595701

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees