JP2016505935A - 分散オブジェクトストレージエコシステムにおけるコンテンツとメタデータの分離 - Google Patents

分散オブジェクトストレージエコシステムにおけるコンテンツとメタデータの分離 Download PDF

Info

Publication number
JP2016505935A
JP2016505935A JP2015545026A JP2015545026A JP2016505935A JP 2016505935 A JP2016505935 A JP 2016505935A JP 2015545026 A JP2015545026 A JP 2015545026A JP 2015545026 A JP2015545026 A JP 2015545026A JP 2016505935 A JP2016505935 A JP 2016505935A
Authority
JP
Japan
Prior art keywords
metadata
content data
storage
storage system
policy
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.)
Granted
Application number
JP2015545026A
Other languages
English (en)
Other versions
JP6009097B2 (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 Data System Corp
Original Assignee
Hitachi Data System Corp
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 Data System Corp filed Critical Hitachi Data System Corp
Publication of JP2016505935A publication Critical patent/JP2016505935A/ja
Application granted granted Critical
Publication of JP6009097B2 publication Critical patent/JP6009097B2/ja
Active 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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/18File system types
    • G06F16/182Distributed file systems
    • G06F16/184Distributed file systems implemented as replicated file system
    • G06F16/1844Management specifically adapted to replicated file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

ストレージシステムは、コントローラと、メモリと、各オブジェクトがコンテンツデータとシステムメタデータを含むメタデータとを有する1つ以上のオブジェクトと、ストレージシステムから外部ストレージへの1つ以上のオブジェクトのコンテンツデータ及びメタデータの書き込みを管理するポリシーと、を備え、ポリシーは、所与のオブジェクトのコンテンツデータとメタデータを分離するための設定可能な基準と、オブジェクトのコンテンツデータとメタデータが分離される場合にストレージシステムと外部ストレージとの間に分離した状態でコンテンツデータとメタデータの保存場所を決定するための規則と、を含み、設定可能な基準は、オブジェクトのメタデータの属性に基づくものであり、コントローラは、オブジェクトに対してポリシーを実行するとともに、分離されたオブジェクトのコンテンツデータとメタデータの保存場所を決定するために規則を適用するように機能する。【選択図】図6

Description

本発明は、広くは、ストレージシステムに関し、より具体的には、分散オブジェクトストレージエコシステムにおける保存用のコンテンツとメタデータの分離に関するものである。
非構造化・非可変デジタルコンテンツの増加に伴って、関連デジタルコンテンツの管理および検索は、ますます難しくなりつつある。関連コンテンツを見つけるためには、デジタルコンテンツ自体よりも、デジタルコンテンツに関するデータ(すなわち、メタデータ)が重要となっている。分散環境における従来のオブジェクトストレージシステム(分散オブジェクトストレージエコシステム)では、障害復旧とローカル参照をともに実現するために、デジタルコンテンツとメタデータの両方が一緒に複数の場所に保存される。これは、複製技術を利用して、コピーがリモートサイトに分散されることを確保することにより達成される。従来のシステムのもう1つの欠点は、データとメタデータの両方に同じ保存規則を適用していることである。例えば、あるオブジェクトが、低レイテンシ・ストレージシステムにおいてN個のコピーに保存される場合、一部の場所/用途ではデータ部分は全く必要ない可能性があるにもかかわらず、N個すべてのコピーに、データとメタデータの両方が格納される。
企業は、多くの独立したオフィスと、さらにはデータセンタを備えて、より地理的に分散されるようになりつつあるので、すべてのデジタルコンテンツについてローカル参照を提供するために必要となる複製トポロジはより複雑となり、デジタルコンテンツのためのストレージ所要量は、必要なローカル参照の数を乗じた量となる。主要な目的が、メタデータのみについてローカル参照を有することである場合、これは、メタデータのデジタルコンテンツが必要以上に複数の場所に保存されることを意味する。また、データ複製は、非常に時間のかかる手続きでもあって、データとメタデータの両方の複製により、かなりの時間遅延と、複製バックログ、及び不要な帯域幅消費が発生する。
本発明の例示的な実施形態により、インテリジェント・オブジェクトを提供し、これは、ユーザ定義可能な規則及びその知能を利用することで、分散オブジェクトストレージシステムにおいて、どのオブジェクトは、非可変デジタルコンテンツとメタデータのコピーを保持するべきであるかを特定し、さらに、環境全体にわたり、デジタルコンテンツへのアクセス可能性、データ保護、及び障害復旧機能を依然として維持しつつ、メタデータのみを格納すべきであるのはどれであるかを特定する。メタデータのみをホストしているオブジェクトストレージシステムで、デジタルコンテンツが必要である場合は、ローカルコピーが常に利用可能であるかのように、他のオブジェクトストレージシステムから取得されることになる。このソリューションによれば、リモートロケーションでは、より小容量のオブジェクトストレージシステムをホストすることができ、これにより、メタデータのみを保存する一方で、中央データセンタでホストされたより大規模なオブジェクトストレージシステムに保存されたデジタルコンテンツとメタデータのセットへのフルアクセスを提供する。このソリューションにより、データアクセスは同じままで、より良い容量利用が提供される。コンテンツ取得は、リモートロケーションまたは中央データセンタのいずれかを介して実施することができるものの、中央データセンタにデジタルコンテンツを保存したのであれば、リモートロケーションは、やはりコンテンツのメタデータのみのビューを保持するだけである。留意すべきことは、本発明では、メタデータオンリーの構成が可能となる場所を限定していないということである。それは、コンテンツがインジェストされたシステム上、またはそれに複製されたコンテンツを有し得る他の何らかのシステム上とすることができる。本発明により、エコシステム内のいずれかの場所に少なくとも1つのコピーがあることが確保される。
オブジェクトストレージシステムにおいてデジタルコンテンツの管理ライフサイクルをメタデータから分離する方法を、非複製環境で使用することもできる。メタデータは、オブジェクトストレージシステムにより管理されるストレージに、アクティブに常駐されたままとなる一方で、デジタルコンテンツまたはコンテンツの追加コピーは、ストレージ階層化ポリシーに基づいて、他のネットワークストレージデバイスに保存することができる。デジタルコンテンツは、オブジェクトストレージシステムに保存されているか、または別のネットワークストレージシステムに保存されているかに関わりなく、そのオブジェクト(複数の場合もある)のメタデータを格納しているいかなるオブジェクトストレージシステムにより、依然として管理されるとともに、そのオブジェクトを、常駐している場合には該システム自体から取得するか、または他のネットワークストレージデバイスから取得するか、いずれかよるアクセスが可能である。
この機構により、オブジェクトストレージシステムのデータ保護レベル、効率的な更新、オブジェクトのシステムメタデータ及びカスタムメタデータのインデキシングを供与するインテリジェントなコンテンツ階層を作成するとともに、ネットワークストレージデバイスに移動させるデータの圧縮及び暗号化オプションを提供する。
本発明の一態様によれば、ストレージシステムは、コントローラと、メモリと、各オブジェクトがコンテンツデータとシステムメタデータを含むメタデータとを有する1つ以上のオブジェクトと、ストレージシステムから外部ストレージへの1つ以上のオブジェクトのコンテンツデータ及びメタデータの書き込みを管理するポリシーと、を備える。ポリシーは、所与のオブジェクトのコンテンツデータとメタデータを分離するための設定可能な基準と、オブジェクトのコンテンツデータとメタデータが分離される場合にストレージシステムと外部ストレージとの間に分離した状態でコンテンツデータとメタデータの保存場所を決定するための規則と、を含む。設定可能な基準は、そのオブジェクトのメタデータの属性に基づくものである。コントローラは、ストレージシステムの1つ以上のオブジェクトに対してポリシーを実行するように機能し、それは、設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトのメタデータを評価することと、分離オブジェクトとしてコンテンツデータとメタデータが分離される場合に、その分離オブジェクトのコンテンツデータとメタデータの保存場所を決定するために規則を適用することと、を含む。
一部の実施形態では、設定可能な基準は、オブジェクトのシステムメタデータの属性に基づくものである。ポリシーを実行することは、設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトのシステムメタデータを評価することを含む。コントローラは、分離した状態で書き込まれる候補オブジェクトとしてのオブジェクトをストレージシステムから特定するとともに、特定されたオブジェクトに対してポリシーを実行するために、スケジュール可能なサービスを定期的に実行するように機能する。
具体的な実施形態では、コントローラは、ポリシーの規則によってコンテンツデータの保存場所が外部ストレージであると決定された場合には、そのオブジェクトが外部ストレージに書き込まれたことを確認するとともに、コンテンツデータが外部ストレージに保存されたことを確認し、両方が確認された場合に、そのコンテンツデータをストレージシステムから削除するとともに、その外部ストレージがオブジェクトのコンテンツデータの書き込まれた場所であることをストレージシステムに記録し、また、ポリシーの規則によってコンテンツデータの保存場所がストレージシステムであると決定された場合には、そのオブジェクトがメタデータのみとして外部ストレージに書き込まれるべきであることを確認するとともに、オブジェクトのコンテンツデータがストレージシステムに保存されたことを確認し、両方が確認された場合に、そのオブジェクトのメタデータを外部ストレージに書き込むとともに、ストレージシステムにおけるオブジェクトのコンテンツデータの場所を指すポインタを外部ストレージへ送信する、ように機能する。
一部の実施形態では、ポリシーの規則によってコンテンツデータの保存場所が外部ストレージであると決定された場合に、コントローラは、ポリシーの規則で規定された第1の既定時間量であって、ゼロ以上である第1の既定時間量の後に、そのコンテンツデータをストレージシステムから削除し、また、そのコンテンツデータを外部ストレージから取得した後には、ポリシーの規則で規定された第2の既定時間量であって、ゼロ以上である第2の既定時間量の間、取得したコンテンツデータをストレージシステムに保持する、ように機能する。
具体的な実施形態では、外部ストレージは、他のストレージシステムに配置される。本ストレージシステム及びこの他のストレージシステムは、複製環境においてストレージシステム間でオブジェクトを複製する目的で相互にネットワーク接続された複数のストレージシステムの一部である。
本発明の他の態様は、ストレージシステム間でのオブジェクトの書き込みを管理するための装置に関し、この場合、各オブジェクトは、コンテンツデータとシステムメタデータを含むメタデータとを有する。装置は、コントローラとメモリとを備える。コントローラは、ソースストレージシステムからターゲットストレージシステムへの1つ以上のオブジェクトのコンテンツデータ及びメタデータの書き込みを管理するポリシーを、そのソースストレージシステムの1つ以上のオブジェクトに対して実行するように機能し、ポリシーは、所与のオブジェクトのコンテンツデータとメタデータを分離するための設定可能な基準と、オブジェクトのコンテンツデータとメタデータが分離される場合にソースストレージシステムとターゲットストレージシステムとの間に分離した状態でコンテンツデータとメタデータの保存場所を決定するための規則と、を含み、設定可能な基準は、そのオブジェクトのメタデータの属性に基づくものであり、また、1つ以上のオブジェクトに対してポリシーを実行することは、設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトのメタデータを評価することと、分離オブジェクトとしてコンテンツデータとメタデータが分離される場合に、その分離オブジェクトのコンテンツデータとメタデータの保存場所を決定するために規則を適用することと、を含む。
本発明の他の態様は、オブジェクトの書き込みを管理する方法に関し、この場合、各オブジェクトは、コンテンツデータとシステムメタデータを含むメタデータとを有する。本方法は、ストレージシステムから外部ストレージへの1つ以上のオブジェクトのコンテンツデータ及びメタデータの書き込みを管理するポリシーを、そのストレージシステムの1つ以上のオブジェクトに対して実行することを含み、ポリシーは、所与のオブジェクトのコンテンツデータとメタデータを分離するための設定可能な基準と、オブジェクトのコンテンツデータとメタデータが分離される場合にストレージシステムと外部ストレージとの間に分離した状態でコンテンツデータとメタデータの保存場所を決定するための規則と、を含み、設定可能な基準は、そのオブジェクトのメタデータの属性に基づくものであり、また、1つ以上のオブジェクトに対してポリシーを実行することは、設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトのメタデータを評価することと、分離オブジェクトとしてコンテンツデータとメタデータが分離される場合に、その分離オブジェクトのコンテンツデータとメタデータの保存場所を決定するために規則を適用することと、を含む。
本発明のこれらおよび他の特徴ならびに効果は、以下の具体的な実施形態についての詳細な説明を参照することで、当業者に明らかになるであろう。
本発明の方法および装置を適用することができる固定コンテンツストレージアーカイブの簡略ブロック図である。
独立ノードの冗長アレイの簡略図であり、それぞれノードは、対称であって、アーカイブクラスタアプリケーションをサポートしている。
所与のノードで実行されるアーカイブクラスタアプリケーションの各種コンポーネントの上位図である。
クラスタの所与のノードにおけるメタデータ管理システムのコンポーネントの一例を示している。
複製トポロジにおけるソースシステム上のオブジェクトに対して、メタデータオンリー機能によるユースケース1で定義された階層化サービスプロセスを示すフロー図の一例を示している。
メタデータのみをローカルに保存し、固定デジタルコンテンツを外部ボリュームに保存する外部階層化のための階層化サービスプロセスを示すフロー図の一例を示している。
階層化サービスを実施するための装置の一例を示している。
本発明の以下の詳細な説明では、開示の一部を形成する添付の図面に参照がなされ、および本発明が実施されることができる例示的な実施形態を例証としてかつ限定でなく示す。図において、同様な数字がいくつかの図の全体にわたって実質的に類似したコンポーネントを記述する。更に、後述するようにかつ図面内に図示するように、詳細な説明により種々の例示的な実施形態を提供するが、本発明は、本願明細書に図と共に説明される実施形態に限定されるものではなく、当業者に周知のような、または周知となるような他の実施形態に拡張することができる。「一実施形態」、「この実施形態」、または「これらの実施形態」への明細書における参照は、実施形態と関連して記述される特定の特徴、構造または特性が本発明の少なくとも1つの実施形態内に含まれることを意味し、および、明細書内の種々の場所におけるこれらの句の出現が、必ずしも全て同じ実施形態を参照するというわけではない。加えて、以下の詳細な説明において、数多くの具体的な詳細が本発明の徹底的な理解を提供するために記載される。しかしながら、これらの具体的な詳細が、本発明を実践するために全てが必要であるというわけではないことは、当業者に明白である。他の状況では、本発明を不必要に不明瞭にしないために、周知の構造、材料、回路、プロセスおよびインタフェースは詳述せず、および/またはブロック図形式で例示され得る。
また、以下の詳細な説明の一部は、コンピュータにおける演算アルゴリズムおよび記号表現によって提示される。これらのアルゴリズム的記述および記号表現は、データ処理技術の当業者によってそれらの革新の本質を最も効果的に他の当業者に伝えるために使用される手段である。アルゴリズムは、所望の終了状態または結果に至る一連の規定されたステップである。本発明において、実施されるステップは、具体的な結果を達成するための具体的な数量の物理操作を必要とする。通常、必ずしもではないが、これらの数量は、記憶され、伝達され、組み合わせられ、比較され、その他の操作されることが可能な電気もしくは磁気信号または命令の形式をとる。これらの信号をビット、値、要素、シンボル、文字、用語、数、命令、などとして参照することは、主に一般的に使用されているという理由で、折に触れて都合がいいと立証されている。しかしながら、これらおよび類似の用語の全てが適切な物理量と関連しているべきであり、かつこれらの数量に適用される単に都合がいいラベルであるだけであることが念頭に置かれるべきである。とりわけ別の方法で述べられない限り、以下の説明から明白に認識されることは、記述の全体にわたって、「処理」、「計算」、「算出」、「判定」、「表示」などのような用語を利用する考察は、コンピュータシステムのレジスタおよびメモリ内で物理(電子)数量として表されるデータを、コンピュータシステムのメモリまたはレジスタまたは他の情報記憶、送信もしくはディスプレイ装置内で物理量として同じように表される他のデータに、操作してかつ変換するコンピュータシステムまたは他の情報処理装置のアクションおよびプロセスを含み得るということである。
本発明は、さらに、本明細書に記載のオペレーションを実行するための装置に関する。この装置は、所要の目的のために専用に構築することができ、または1つ以上のコンピュータプログラムにより選択的にアクティブ化または再構成される1つ以上の汎用コンピュータを備えることができる。かかるコンピュータプログラムは、限定するものではないが、光ディスク、磁気ディスク、読み取り専用メモリ、ランダムアクセスメモリ、ソリッドステートデバイス及びドライブ、または電子情報を保存するのに適した他の任意のタイプの媒体など、非一時的媒体を含むコンピュータ可読記憶媒体に保存することができる。本明細書で提示するアルゴリズムならびに表示は、本来、特定のコンピュータまたは他の装置に関連したものではない。種々の汎用システムを、本明細書に記載の教示によるプログラム及びモジュールと共に用いることができ、または所望の方法ステップを実行するために、より特化した装置を構築するほうが適当であることが実証される場合がある。また、本発明は、いずれかの特定のプログラミング言語に準拠して説明されるものではない。当然のことながら、本明細書に記載の発明の教示を実施するために、様々なプログラミング言語を用いることができる。プログラミング言語(複数の場合もある)による命令は、例えば中央処理装置(CPU)、プロセッサ、またはコントローラである1つ以上の処理装置で実行することができる。
本発明の例示的な実施形態により、より詳細は後述するように、分散オブジェクトストレージエコシステムにおいて保存用にコンテンツとメタデータを分離するための装置、方法、及びコンピュータプログラムを提供する。
I.固定コンテンツ分散データストレージ
従来のテープおよび光学ストレージ・ソリューションに取って代わるかまたはそれを補う、高可用性かつ高信頼性の永続的な「固定コンテンツ」のアーカイブストレージに対する必要性が高まっている。「固定コンテンツ」という用語は、一般に、参照または他の目的のために変更なく保持されると予想される任意のタイプのデジタル情報を指す。このような固定コンテンツの例として、数ある中でも、電子メール、文書、診断画像、チェック画像、音声録音、フィルムおよびビデオなどが挙げられる。従来の独立ノード冗長アレイ(RAIN:Redundant Array of Independent Nodes)ストレージ方式は、このような固定コンテンツ情報資産の保存用の大規模なオンラインアーカイブを作成するために選択されるアーキテクチャとして出現した。RAINアーキテクチャは、ノードを必要に応じてクラスタに加えたり外したりすることを可能とすることによって、1つ以上のノードの障害からストレージクラスタを遮断する。複数ノード上にデータを複製することによって、RAIN型アーカイブはノード障害または削除を自動的に補償することができる。一般に、RAINシステムは、多くは、閉システム内の同一のコンポーネントから設計されたハードウェア装置として供給される。
図1は、そのようなスケーラブルなディスクベースのアーカイブストレージ管理システムの一例を示している。それらのノードは、異なるハードウェアを備えることができ、その場合、「異種」とみなすことができる。ストレージエリアネットワーク(SAN)におけるように、各ノードは、一般に、実際の物理ストレージディスクまたは仮想ストレージディスクとすることができる1つ以上のストレージディスクへのアクセスを有する。各ノードでサポートされるアーカイブクラスタアプリケーション(さらに、オプションとして、そのアプリケーションが実行される基礎となるオペレーティングシステム)は、同じであるか、または略同じとすることができる。各ノード上のソフトウェアスタック(オペレーティングシステムを含み得る)は対称であるが、一方、ハードウェアは異種とすることができる。図1に示すようなシステムを使用して、企業は、とりわけ文書、電子メール、衛星画像、診断画像、チェック画像、音声録音、ビデオなど、多くの異なるタイプの固定コンテンツ情報用のパーマネントストレージを作成することができる。当然のことながら、これらのタイプは単なる例示にすぎない。独立サーバまたはいわゆるストレージノード上でデータを複製することにより、高レベルの信頼性が達成される。好ましくは、各ノードは、そのピアと対称である。従って、好ましくは所与のノードはいずれも全ての機能を実行することができるので、いずれか1つのノードの障害がアーカイブの可用性に及ぼす影響はほとんどない。
本出願と同一の所有者による米国特許第7155466号に記載されているように、RAINベースのアーカイブシステムにおいて、デジタル資産を収集、保存、管理、及び検索する各ノード上で実行される分散ソフトウェアアプリケーションを導入することが知られている。図2は、そのようなシステムを示している。個々のアーカイブの物理的境界は、クラスタ(またはシステム)と呼ばれる。典型的には、クラスタは単一の装置ではなく、装置の集まりである。装置は、同種または異種のものとすることができる。典型的な装置は、Linuxなどのオペレーティングシステムが作動するコンピュータまたはマシンである。汎用ハードウェアでホストされるLinuxベースのシステムのクラスタにより、数台のストレージノードサーバから、数千テラバイトのデータを保存する多数のノードまでの、スケーラブルなアーカイブが提供される。このアーキテクチャにより、組織の増大するアーカイブ要求に常にストレージ容量を合わせ得ることが確保される。
上述のようなストレージシステムでは、一般に、アーカイブが装置障害から常に保護されるように、データはクラスタ全体にランダムに分散される。ディスクまたはノードが故障すると、クラスタは、そのクラスタ内の同データの複製を保持している他のノードに自動的にフェイルオーバする。このアプローチは、データ保護の観点からは十分に機能するが、クラスタについて計算された平均データ損失時間(MTDL:Mean Time to Data Loss)は、要求に応えるほどには高くない場合がある。具体的には、MTDLは、一般に、アーカイブがデータを損失するまでの算出された時間を表す。デジタルアーカイブでは、いかなるデータ損失も望ましくはないが、ハードウェアコンポーネント及びソフトウェアコンポーネントの性質上、その発生の可能性は(わずかではあるが)常にある。オブジェクト及びそれらのコピーがアーカイブクラスタ内にランダムに分散されていることから、例えば、あるノード内の(ミラーコピーが保存されている)あるディスクが予想外に故障すると、オブジェクトの必要なコピーが利用できない場合があることにより、MTDLは、結局は要求よりも低くなり得る。
本発明が実施される例示的なクラスタは、図2に示すように、好ましくは、以下の大別カテゴリのコンポーネントを含む:ノード202、一対のネットワークスイッチ204、電力配分装置(PDU)206、及び無停電電源装置(UPS)208。ノード202は、典型的には1つ以上の汎用サーバを備え、CPU、適切なランダムアクセスメモリ(RAM)、1つ以上のハードドライブ(例えば、標準IDE/SATA、SCSIなど)、及び2つ以上のネットワークインタフェースカード(NIC)を収容している。典型的なノードは、2.4GHzチップ、512MB RAM、及び6つの200GBハードドライブを備えた2Uラックマウントユニットである。ただし、これに限定されない。ネットワークスイッチ204は、典型的には、ノード間のピアツーピア通信を可能にする内部スイッチ205と、各ノードへの追加クラスタアクセスを可能にする外部スイッチ207と、を備える。各スイッチは、クラスタ内の全てのあり得るノードを扱うのに十分なポートが必要である。この目的で、イーサネットまたはGigEスイッチを使用することができる。PDU 206は、全てのノード及びスイッチへの通電のために使用され、また、全てのノードおよびスイッチを保護するUPS208が使用される。限定するものではないが、クラスタは、一般に、公衆インターネット、企業イントラネット、または他の広域もしくはローカルエリアネットワークのようなネットワークに接続可能である。例示的な一実施形態では、クラスタは企業環境において実現される。それには、例えばサイトの企業ドメインネームシステム(DNS)ネームサーバを通してナビゲートすることより、到達できる。この場合、例えば、クラスタのドメインは、既存のドメインの新規のサブドメインとすることができる。典型的な実現形態では、サブドメインは、企業DNSサーバにおいて、そのクラスタ自体のネームサーバにデリゲートされる。エンドユーザは、一般的なインタフェースまたはアクセスツールを用いてクラスタにアクセスする。この場合、例えば、クラスタへのアクセスは、任意のIPベースのプロトコル(HTTP、FTP、NFS、AFS、SMB、Webサービスなど)で、API(アプリケーションプログラムインタフェース)を介して、または他の周知もしくは後に開発されるアクセス方式、サービス、プログラム、もしくはツールで、実施することができる。
クライアントアプリケーションは、標準的UNIXファイルプロトコルまたはHTTP APIなどの1つ以上のタイプの外部ゲートウェイを介してクラスタにアクセスする。アーカイブは、好ましくは、任意の標準UNIXファイルプロトコル向きファシリティの下に任意選択的に配置することができる仮想ファイルシステムを通して、公開される。これらには、NFS、FTP、SMB/CIFSなどが含まれる。
一実施形態において、アーカイブクラスタアプリケーションは、クラスタとして(例えばイーサネットで)相互にネットワーク接続された独立ノードからなる冗長アレイ(H−RAIN)上で動作する。それらのノードのハードウェアは、異種のものとすることができる。しかしながら、最大限の信頼性を得るためには、各ノードは、以下で図3に示すように、いくつかのランタイムコンポーネントを含む分散アプリケーションのインスタンス300(同じインスタンスまたは略同じインスタンスとすることができる)を実行することが好ましい。このように、ハードウェアは異種のものであってもよいが、ノード上のソフトウェアスタックは、(少なくとも本発明に関連する限りにおいて)同じものである。これらのソフトウェアコンポーネントは、ゲートウェイプロトコル層302、アクセス層304、ファイルトランザクション/管理層306、及びコアコンポーネント層308を構成している。「層」という呼称は説明のためのものであって、当業者であれば理解できるように、それらの機能を他の有意義な方法で特徴付けてもよい。これらの層(またはその中のコンポーネント)の1つ以上を、統合することができ、またはその逆も可能である。一部のコンポーネントを、層間で共有することができる。
ゲートウェイプロトコル層302内のゲートウェイプロトコルは、既存のアプリケーションへの透過性を提供する。具体的には、ゲートウェイは、NFS 310及びSMB/CIFS 312のようなネイティブファイルサービスを提供するとともに、カスタムアプリケーションを構築するためのWebサービスAPIを提供する。さらに、HTTPサポート314を提供する。アクセス層304は、アーカイブへのアクセスを提供する。具体的には、本発明によれば、固定コンテンツファイルシステム(FCFS)316がネイティブファイルシステムをエミュレートすることで、アーカイブオブジェクトへのフルアクセスを提供する。FCFSは、アーカイブコンテンツがまるで通常のファイルであるかのように、それらへの直接アクセスをアプリケーションに与える。好ましくは、アーカイブされたコンテンツは、そのオリジナルフォーマットでレンダリングされ、メタデータはファイルとして公開される。FCFS 316は、ディレクトリおよびパーミッションの通常のビューと、ルーチンファイルレベルコールとを提供し、これにより、管理者は、自身が熟知している方法で固定コンテンツデータをプロビジョニングすることができる。ファイルアクセスコールは、好ましくは、ユーザ空間デーモンによりインタセプトされて、(層308の)適切なコアコンポーネントにルーティングされ、このコアコンポーネントは、呼出し側アプリケーションに対して適切なビューを動的に生成する。FCFSコールは、好ましくは、自律的なアーカイブ管理を容易にするためにアーカイブポリシーによって制約される。従って、一例では、管理者またはアプリケーションは、保存期間(所与のポリシー)がまだ有効であるアーカイブオブジェクトを削除することはできない。
アクセス層304は、さらに、Webユーザインタフェース(UI)318及びSNMPゲートウェイ320を含むことが好ましい。Webユーザインタフェース318は、好ましくは、ファイルトランザクション/管理層306の管理エンジン322への対話型アクセスを提供する管理コンソールとして実現される。管理コンソール318は、好ましくは、パスワード保護されたWebベースのGUIであって、アーカイブオブジェクト及び個々のノードを含むアーカイブの動的ビューを提供するものである。SNMPゲートウェイ320は、管理エンジン322への容易なアクセスをストレージ管理アプリケーションに提供して、それらがクラスタアクティビティを安全に監視および制御することを可能とする。管理エンジンは、システムイベント及びポリシーイベントを含むクラスタアクティビティを監視する。さらに、ファイルトランザクション/管理層306は、要求マネージャプロセス324を含む。要求マネージャ324は、(アクセス層304を通した)外界からの全ての要求、ならびにコアコンポーネント層308のポリシーマネージャ326からの内部要求をオーケストレートする。
コアコンポーネントには、ポリシーマネージャ326に加えて、さらに、メタデータマネージャ328、及びストレージマネージャ330の1つ以上のインスタンスが含まれる。メタデータマネージャ328は、好ましくは、各ノード上にインストールされる。クラスタ内のメタデータマネージャは、共同で分散データベースとして機能して、全てのアーカイブオブジェクトを管理する。所与のノードにおいて、メタデータマネージャ328は、アーカイブオブジェクトのサブセットを管理し、その場合、好ましくは、各オブジェクトは、外部ファイル(「EF」、保存用のアーカイブに加えられたデータ)と、アーカイブデータが物理的に配置された内部ファイル(それぞれ「IF」)のセットとの間でマッピングする。同じメタデータマネージャ328が、さらに、他のノードから複製されたアーカイブオブジェクトのセットも管理する。従って、すべての外部ファイルの現在の状態を、いくつかのノード上の複数のメタデータマネージャで常に利用することができる。ノード障害の場合には、他のノード上のメタデータマネージャが、障害ノードでそれまで管理されていたデータへのアクセスを引き続き提供する。ストレージマネージャ330は、分散アプリケーションの他の全てのコンポーネントで利用できるファイルシステム層を提供する。これにより、好ましくは、データオブジェクトは、ノードのローカルファイルシステムに保存される。所与のノードにおける各ドライブは、好ましくは、それに専用のストレージマネージャを有する。これにより、そのノードは、ドライブを個別に削除することが可能となり、スループットを最適化することができる。ストレージマネージャ330は、さらに、システム情報、データの完全性チェックを提供するとともに、ローカル構造をトラバースすることを可能とする。
同じく図3に示すように、クラスタは、通信ミドルウェア層332及びDNSマネージャ334を介して、内部通信および外部通信を管理する。インフラストラクチャ332は、アーカイブコンポーネント間の通信を可能にする効率的かつ高信頼性のメッセージベースのミドルウェア層である。例示的な一実施形態では、この層は、マルチキャスト通信及びポイントツーポイント通信をサポートする。DNSマネージャ334は、全てのノードを企業サーバに接続する分散ネームサービスを実行する。好ましくは、DNSマネージャは(単独で、またはDNSサービスと共に)、全てのノード間に要求の負荷を分散することで、最大限のクラスタスループット及び可用性を確保する。
例示的な一実施形態では、アプリケーションインスタンスは、Linuxなどの基本オペレーティングシステム336上で実行される。通信ミドルウェアは、任意の適当な分散通信機構である。他のコンポーネントには、固定コンテンツファイルシステム(FCFS)316のために使用できるFUSE(Filesystem in USErspace)を含むことができる。NFSゲートウェイ310は、標準nfsd LinuxカーネルNFSドライバによって実現することができる。各ノードのデータベースは、オブジェクトリレーショナルデータベース管理システム(ORDBMS)によって実現することができる。ノードは、Java HTTPサーバ/サーブレットコンテナであるJettyなどのWebサーバを含むことができる。当然のことながら、上記の機構は単なる例示にすぎない。
所与のノードのストレージマネージャ330は、物理ストレージデバイスを管理することを担う。好ましくは、各ストレージマネージャインスタンスは1つのルートディレクトリを担当し、そこに、その配置アルゴリズムに従って全てのファイルが配置される。1つのノードで複数のストレージマネージャインスタンスを同時に実行することができ、それぞれは、通常、システムにおける異なる物理ディスクを表す。ストレージマネージャは、システムの他の部分から使用されるドライブ及びインタフェース技術を要約する。ストレージマネージャインスタンスは、ファイルの書き込みを依頼されると、担当することになる表現のフルパス及びファイル名を生成する。典型的な一実施形態では、ストレージマネージャに保存される各オブジェクトは、保存されるべき生データとして受け取られ、そしてそれを保存する際に、ストレージマネージャにより、それ自身のメタデータが、種々のタイプの情報を追跡するためにファイルに追加される。例として、このメタデータには、EF長(バイトで表された外部ファイルの長さ)、IFセグメントサイズ(内部ファイルの当該部分のサイズ)、EF保護表示(EF保護モード)、IF保護ロール(当該内部ファイルの表現)、EF作成タイムスタンプ(外部ファイルのタイムスタンプ)、シグネチャ(シグネチャタイプを含む、書き込み(PUT)時の内部ファイルのシグネチャ)、及びEFファイル名(外部ファイルのファイル名)が含まれる。内部ファイルデータと共にこの追加メタデータを保存することにより、追加的な保護レベルが提供される。具体的には、スキャベンジングによって、内部ファイルに保存されたメタデータから、データベース内に外部ファイルレコードを作成することができる。他のポリシーにより、内部ファイルに対して内部ファイルハッシュを検証することで、内部ファイルに損傷がないことを確認することができる。
内部ファイルは、アーカイブオブジェクトにおけるオリジナル「ファイル」の一部を表すデータの「チャンク」とすることができ、それらを、ストライピング及び保護ブロックを実現するように、いくつかの異なるノードに配置することができる。ただし、このように外部ファイルをより小さいチャンク単位に分割することは必要条件ではなく、代替案では、内部ファイルは、外部ファイルの完全コピーとすることができる。一般に、メタデータマネージャには、各アーカイブオブジェクトに対して1つの外部ファイルエントリが存在し、それぞれの外部ファイルエントリに対して多くの内部ファイルエントリが存在し得る。一般に、内部ファイルレイアウトは、そのシステムに依存する。特定の実現形態において、ディスク上のそのデータの実際の物理フォーマットは、一連の可変長レコードに格納される。
要求マネージャ324は、システム内の他のコンポーネントと対話することによって、アーカイブアクションを実施するのに必要な一連のオペレーションを実行することを担う。要求マネージャは、種々のタイプの多くの同時アクションをサポートし、失敗したトランザクションがあればそれをロールバックすることができ、また、実行に長時間を要し得るトランザクションをサポートする。要求マネージャは、さらに、アーカイブにおいて読み出し/書き込みオペレーションが適切に処理されることを確保するとともに、全ての要求が常に既知の状態にあることを保証する。さらに、それは、所与のクライアント要求に応えるために、複数の読み出し/書き込みオペレーションをノード間で調整するためのトランザクション制御を提供する。加えて、要求マネージャは、最近使用されたファイルのメタデータマネージャエントリをキャッシュするとともに、セッションならびにデータブロックのバッファリングを提供する。
クラスタの主要な役割は、無制限の数のファイルを高信頼度でディスクに保存することである。所与のノードが、何らかの理由で到達不可能であるか、それ以外にも利用できない場合があると、その意味で「信頼性に欠ける」ものと評価されることがある。このように低信頼性の可能性があるノードの集まりの協働によって、高信頼性かつ高可用性のストレージを形成する。一般に、保存する必要のある情報には、ファイル自体と、ファイルに関するメタデータという2つのタイプがある。固定コンテンツ分散データストレージについての更なる詳細は、参照により本明細書に組み込まれる米国特許出願公開第2007/0189153号及び米国特許第7657581号に記載されている。
II.メタデータ管理
メタデータ管理システムは、システムメタデータなどの所定のメタデータを編成し、それへのアクセスを提供することを担う。このシステムメタデータは、アーカイブに配置されるファイルに関する情報を含むとともに、構成情報、管理UIに表示される情報、メトリクス、回復不能なポリシー違反に関する情報などを含む。詳細には例示していないが、さらに他のタイプのメタデータ(例えば、アーカイブされたファイルに関連付けられたユーザメタデータ)も、以下で説明するメタデータ管理システムを用いて管理することができる。
クラスタの典型的な一実施形態では、メタデータ管理システムは、(単なる例示にすぎない)以下のオブジェクトタイプのうちの1つ以上を含み得るメタデータオブジェクトのセットに対して永続性を提供する。
ExternalFile:アーカイブのユーザによって知覚されるファイル。
InternalFile:ストレージマネージャによって保存されたファイル。典型的には、外部ファイルと内部ファイルとの間に1対多の関係があり得る。
ConfigObject:クラスタを構成するために使用される名前/値ペア。
AdminLogEntry:管理UIに表示されるメッセージ。
MetricsObject:ある時点におけるアーカイブの何らかの測度(例えば、ファイル数)を表すタイムスタンプ付きのキー/値ペア。
PolicyState:何らかのポリシー違反。
各メタデータオブジェクトは、好ましくは変更されない固有の名前を有し得る。メタデータオブジェクトは、リージョンに編成されている。各リージョンは、正式なリージョンコピーと、「許容障害」(TPOF:Tolerable Points Of Failure)数のバックアップリージョンコピー(ゼロ個以上からなるセット)と、を含む。ゼロ個のコピーの場合、メタデータ管理システムは、スケーラブルであるが、高可用性ではない可能性がある。リージョンは、1つ以上のオブジェクト属性(例えば、完全修飾パス名などのオブジェクト名、またはその一部)をハッシュ化して、そのハッシュ値から所定数のビットを抽出することにより、選択される。これらのビットは、リージョン番号を構成する。選択されるビットは、下位ビット、上位ビット、中位ビット、または個々のビットの任意の組み合わせとすることができる。典型的な一実施形態では、所定のビットは、ハッシュ値の下位ビットである。オブジェクトの属性またはいくつかの属性は、任意の適当なハッシュ関数を用いてハッシュ化することができる。これらには、限定するものではないが、java.lang.string.hashCodeのようなJavaベースのハッシュ関数などが含まれる。好ましくは、リージョン番号を構成するビット数は、本明細書においてregionMapLevelと呼ばれる構成パラメータにより制御される。この構成パラメータが、例えば6に設定されると、その結果、2=64のリージョンが得られる。当然のことながら、さらに多くのリージョン数も許容され、リージョン数は、名前空間パーティション構成を用いて自動的に調整することができる。
各リージョンは、重複して保存することができる。上述のように、リージョンには、1つの正式コピーと、ゼロ個以上のバックアップコピーがある。前述のように、バックアップコピーの数は、メタデータTPOF構成パラメータによって制御される。好ましくは、ノードあたりの正式リージョンコピー数のバランスをとるとともに、ノードあたりのリージョンコピー総数のバランスをとるように、リージョンコピーは、クラスタの全てのノード間に分散される。
メタデータ管理システムは、各ノードで作動するデータベースにメタデータオブジェクトを保存する。このデータベースは、リージョンマップをサポートするために用いられる。典型的なデータベースは、オープンソースとして入手可能なPostgreSQLを用いて実現される。好ましくは、リージョンコピーごとにスキーマがあり、各スキーマには、メタデータオブジェクトのタイプごとにテーブルがある。スキーマは、簡単には、テーブル、インデックス、プロシージャ、及びその他のデータベースオブジェクトを所有し得る名前空間である。各リージョンは、好ましくは、それに専用のスキーマを有する。各スキーマは、各メタデータオブジェクトに対して1つのテーブルからなる、テーブルの完全なセットを有する。これらのテーブルのうちの1つにおける1つの行が、1つのメタデータオブジェクトに対応する。
本明細書で使用する場合の名前空間とは、クラスタの論理パーティションであって、基本的に、少なくとも1つの規定されたアプリケーションに固有のオブジェクトの集まりとしての役割を果たす。それぞれの名前空間は、他の名前空間に対してプライベートなファイルシステムを有する。また、1つの名前空間にアクセスすると、別の名前空間へのユーザアクセスは認められない。ノードからなるクラスタ/システムは、物理的なアーカイブインスタンスである。テナントは、名前空間(複数の場合もある)及び場合によっては他のサブテナントをグループ化したものである。最上位テナント(TLT:Top−Level Tenant)は、親テナントを持たないテナント、例えば企業である。サブテナントは、その親が別のテナントであるテナントであり、例えば企業の財務部である。デフォルトのテナントは、デフォルトの名前空間のみを含む最上位テナントである。各クラスタ/システムは、物理的なアーカイブインスタンスである。その全体が参照により本明細書に組み込まれる米国特許出願公開第2011/0106802号を参照する。
図4に示すように、各ノード400は、プロセスまたはコンポーネントのセットを有し、すなわち、1つ以上のリージョンマネージャ(RGM)402a〜nと、メタデータマネージャ(MM)404と、少なくとも1つのメタデータマネージャクライアント(MMC)406と、1つ以上のスキーマ410a〜nを含むデータベース408と、を有する。RGM(複数の場合もある)、MM、及びMMCコンポーネントは、Java仮想マシンのような仮想マシン412で実行される。リージョンコピーごとに1つのRGMがある。従って、正式リージョンコピー用のRGM、各バックアップリージョンコピー用のRGM、及びそれぞれの不完全リージョンコピー用のRGMがある。さらに、RGM 402ごとに、そのRGMを管理するデータベーススキーマ410がある。データベースは、さらにリージョンマップ405を格納している。各ノードは、好ましくは、同期方式により強制される要件を備えた、リージョンマップの同じグローバルビューを有する。リージョンマネージャRGM 402は、(場合によって、正式、バックアップ、または不完全のものである)リージョンコピーに対するオペレーション、ならびにメタデータマネージャクライアント406及び他のリージョンマネージャ402により出された要求の実行を担う。要求は、図3に示す通信ミドルウェアまたは他のメッセージング層などの任意の適当な手段を通して所定のRGMに供給される。リージョンマネージャは、例えばデータベースへの接続を提供することによって、そのRGMが管理しているスキーマで動作するように構成された、それらの要求を実行する実行環境を提供する。各リージョンマネージャは、そのデータをデータベース408に保存する。メタデータマネージャ404は、そのノードにおけるメタデータ管理を担う最上位コンポーネントである。それは、リージョンマネージャ(RGM)の作成及び破棄と、RGMが必要とするリソースである例えばクラスタ構成情報及びデータベース接続プールの編成を担う。好ましくは、(所定のノードにおける)所定のメタデータマネージャが、リーダーとしての役目を果たして、(ノードのセットまたはサブセットのうちの)どのメタデータマネージャがどのリージョンコピーを担当するのかを決定することを担う。ブリーアルゴリズムまたはその変形などのリーダー選出アルゴリズムを用いて、メタデータマネージャリーダーを選出することができる。ノードごとに複数のMMを作動させることは可能であるが、好ましくは、各ノードは、単一のメタデータマネージャを有する。(後述するように)名前空間パーティション構成によって、リージョン所有権が確立されると、これにより、各メタデータマネージャは、その1つ以上のリージョンマネージャからなるセットの調整を担う。システムコンポーネント(例えば、管理エンジン、ポリシーマネージャなど)は、メタデータマネージャクライアントを通して、メタデータマネージャMMと対話する。MMCは、(リージョンマップを用いて)所与の要求を実行するためのRGMを見つけること、選択されたRGMに要求を発行すること、及び選択されたRGMが(例えば、そのノードが故障したことにより)利用できない場合に要求を再試行すること、を担う。後者の場合は、そのノードで新たなリージョンマップを受け取ると、再試行要求は成功することになる。
上述のように、リージョンマップは、各リージョンの各コピーを担当するノードを特定している。仮想マシン412(及び、その中の各RGM、MM、MMCコンポーネント)は、リージョンマップ405へのアクセスを有し、さらに図4には、JVMにコピーされた後のリージョンマップのコピー420を示している。リージョンマップは、このように、所与のノードにおいてJVMとデータベースの両方で利用できる。この例示的な実施形態では、各メタデータオブジェクトは、ハッシュ化されることで0x0〜0x3fffffffの間に含まれる整数すなわち30ビットの値が生成される属性(例えば名前)を有する。これらの値は、(例えば、範囲の上限に1を加えたときに)オーバーフロー問題を引き起こす心配なく符号付き32ビット整数で表すことができる。30ビットによって、大規模なクラスタの場合であっても十分な約10億個までのリージョンが可能である。各リージョンは、ハッシュ値のセットを表し、全てのリージョンからなるセットによって、すべての可能なハッシュ値を網羅する。各リージョン用として異なるビット位置があり、それらの異なるビット位置は、固定順序であることが好ましい。これにより、各リージョンは、好ましくはハッシュ値のRegionLevelMapビットを抽出することにより導出される番号によって、識別される。64個のリージョンを可能とするように、構成パラメータが6に設定されている場合、その結果得られるハッシュ値は、0x0〜0x3fの番号となる。
前述のように、リージョンコピーは、「正式」、「バックアップ」、「不完全」という3つの状態のいずれかにある。リージョンコピーが正式のものである場合は、そのリージョンへの全ての要求はこのコピーに送られ、また、リージョンごとに1つの正式コピーがある。リージョンコピーがバックアップである場合、このコピーは、(正式リージョンマネージャプロセスから)バックアップ要求を受け取る。リージョンコピーは、メタデータはロードされているが、そのコピーが(典型的には、他のバックアップコピーに関して)まだ同期されない場合には、不完全である。不完全なリージョンコピーは、同期が完了するまでは、他の状態に進む資格がなく、同期が完了した時点で、そのコピーはバックアップコピーとなる。各リージョンは、1つの正式コピーと、(メタデータTPOF構成パラメータによって設定される)所定の数のバックアップコピーまたは不完全コピーと、を有する。
バックアップリージョンコピーは、正式リージョンコピーとそのTPOFバックアップコピーとの間で所定のプロトコル(または「コントラクト」)を実施することにより、正式リージョンコピーとの同期が維持される。このプロトコルについて以下で説明する。
簡単な背景として、更新要求をMMCで受け取ると、MMCは、正式リージョンコピーの場所を見つけるためにローカルリージョンマップをルックアップする。MMCは、更新要求を、正式リージョンコピーに関連付けられたRGMに送り、そしてこれが、それを完遂する。さらに、更新は、(正式リージョンコピーに関連付けられたRGMによって)TPOFバックアップコピーの各々のRGMにも送られる。ただし、正式RGMは、成功を表明するために、バックアップリージョンコピーに関連付けられた各RGMが更新を完遂するのを待つ必要はなく、むしろ、バックアップリージョンコピーに関連付けられたRGMは、更新を受け取ると、直ちに確認応答を(正式RGMに)返すか、または返すことを試みる。バックアップ要求が受け取られたときに、それが実行される前に、この確認応答が発行される。何の障害も発生しない場合には、正式RGMは、確認応答をすべて受け取るとMMCに通知し、そしてこれが、呼び出し元に成功を返す。一方、特定の障害イベントが発生した場合、影響を受けたRGMが(バックアップであるか、正式のものであるかに関わらず)、それ自身を(さらに、場合によっては、影響を受けるノードを)サービスから削除することがプロトコルによって確保され、MMリーダーによって新たなリージョンマップが発行される。好ましくは、RGMは、JVMを停止させることにより、自身をサービスから削除するが、任意の適当な方法を用いることができる。新たなマップは、失われたリージョンコピーに代わるものを規定する。このように、各バックアップリージョンコピーは、正式リージョンコピーのための「ホットスタンバイ」であり、従って、(正式RGMの障害か、またはロードバランシングのためなど、いずれかの理由で)もし必要なときには正式なものに昇格する資格を有する。
更新プロセスが失敗し得るいくつかの状況がある。それは、例えば、正式リージョンマネージャが(確認応答を待っているときに)バックアップマネージャプロセスが停止したことを示す例外が発生する場合があり、またはバックアップマネージャプロセスが確認応答を発行したにもかかわらずローカルに更新要求の処理に失敗する場合があり、またはバックアップリージョンマネージャプロセスが確認応答を発行している間に正式リージョンマネージャプロセスが停止したことを示す例外が発生する場合などがある。上述のように、あるバックアップRGMが、更新を処理できない場合には、自身をサービスから削除する。また、バックアップRGMまたは正式RGMのいずれかが停止したときには、新たなリージョンマップが発行される。
メタデータ管理システムは、リージョンのコピーの同期を維持する。正式リージョンコピーにおいてオブジェクトに対して実施される更新は、バックアップリージョンコピーにおいて再現される。更新が正式RGMによって完遂されると、同じ更新が全てのバックアップリージョンコピーに適用される。それらで障害が(ノードレベルであるか、リージョンマネージャレベルなどであるかに関わらず)発生すれば、メタデータ管理システムによって、障害が発生したノードにおけるリージョンコピーの再割当てが行われることが確保され、これにより、残りのリージョンコピーの完全性が保証される。正式RGMを含むノードが故障する場合、バックアップRGMは、(現在実行中の更新の有無に関わらず)同期しているか、または更新が中断されたことのみによって同期していないか、いずれかである。後者の場合、再同期させることは容易である。バックアップリージョンは、正式リージョンとの同期が維持されているので、(バックアップから正式なものに)昇格させることは即時的である。
また、ノード障害によって、バックアップリージョンを失う可能性もある。バックアップリージョンは、他のいずれかのノードに、新たに不完全なリージョンを作成することによって復元される。不完全なリージョンが作成されたら、直ちに更新の記録を開始するとともに、正式リージョンからのデータのコピーを開始する。コピーが完了したら、蓄積された更新を適用することで、最新状態のバックアップを得る。そして新たなバックアップリージョンは、自身が最新状態であることをMMリーダーに通知し、これにより、MMリーダーは、そのリージョンの(不完全からバックアップへの)昇格を含むマップを送信する。
なお、リージョンの数はノードの数に対応している必要はないということに留意すべきである。より一般的には、リージョンの数は、独立ノードのアレイにおけるノード数に相関してない。メタデータ管理についての更なる詳細は、米国特許第7657581号に記載されている。
III.コンテンツとメタデータが分離されたインテリジェントなコンテンツ階層化
静的デジタルコンテンツ(すなわち、固定コンテンツデータ)とそのメタデータの管理ライフサイクルを分離する方法は、このインテリジェントなコンテンツ階層化の機能の核となる部分である。本方法により、分散ストレージシステムは、静的デジタルコンテンツをそのメタデータと共に格納するべき個々のストレージシステムはどれであるか、また、デジタルコンテンツのメタデータのみを格納するべき個々のストレージシステムはどれであるかを、インテリジェントに決定することが可能となる。
この実現形態の2つの主要な要素がある。第一に、システムのユーザは、静的デジタルコンテンツ及びそのメタデータの保存場所に関連したオブジェクトの挙動を管理する規則のセットを作成する機能を与えられる。この機能は、「サービスプラン」またはポリシーを作成して、それにオブジェクトの集まりを割り当てることにより、提供される。第二に、スケジュール可能なサービス(例えば、ストレージ階層化サービス)を定期的に実行することで、候補オブジェクトを特定し、構成されたサービスプランを選択された候補の集まりに対して実行し、ユーザにより定義された規則を適用する。
サービスプランまたはポリシーにおいて、オブジェクトのメタデータからコンテンツを分離するための設定可能な基準は、そのオブジェクトのメタデータの、より具体的には特定の実施形態においてシステムメタデータの、何らかの属性に基づくものである。システムメタデータは、作成日付、サイズ、コピー数、それは複製されているかどうか、など、そのオブジェクトに関するコア情報である。基準の例としては、そのオブジェクトが他のシステムに複製されているかどうか、所与のコンテンツプラットフォームシステム内にそのオブジェクトの別のコピーがあるかどうか、そのコンテンツに所定の時間アクセスがなかったこと、などが含まれる。従って、ポリシーは、複製されるオブジェクトのシステムメタデータの属性に少なくとも部分的に基づいて設定することができる。候補オブジェクトに対してポリシーを実行するために、ストレージ階層化サービスは、設定可能な基準に基づいて、その候補オブジェクトのシステムメタデータを評価する。
この実現形態の利用には、システムにおいて使用されるデータとメタデータのライフサイクルを分離するためにサービスプランを用いる2つの主なユースケース、すなわち、(1)複数のストレージシステムを含む複製環境と、(2)外部ストレージボリュームを備えた単独のストレージシステムと、がある。
III.A 複製環境
複製環境では、複数のシステムを利用してデータ保護を提供する目的で、複数のシステムを備えることができる。複製環境は、データコンテンツのソースシステムとターゲットシステムとを含む。簡単な複製トポロジでは、ソースは1つであるが、ターゲットシステムは複数の可能性がある。より完全な、連鎖した複製トポロジでは、どれがソースであり、どれがターゲットであるかは、トポロジにおけるコンテキストに依存する。例えば、システムが直列に構成されている3システム連鎖トポロジでは、連鎖の終点のシステムは、連鎖の中間のシステムを、そのソースとみなす。また、連鎖の中間のシステムは、連鎖の始めのシステムを、そのソースとみなす。
複製環境における本発明の1つの目的は、(a)データストレージにおける冗長を最小限に抑えるため、及び(b)不要なデータ転送を最小限に抑えるための、オブジェクトの静的デジタルコンテンツ部分とメタデータ部分のインテリジェントなライフサイクル管理である。ソースシステムまたはターゲットシステム(複数の場合もある)のいずれかにおいて、サービスプランを定義することで、以下の挙動を規定することができる:(a)取得から時間量T1の経過後はメタデータのみを保持する、(b)読み出しの際に、オブジェクトをリハイドレートして、時間量T2の間、保持する。
オブジェクトが要求されたときに、ユーザによるオブジェクトの読み出し要求に対してサービス提供することは、以下のことを含む。
1.ユーザがオブジェクトのメタデータ部分のみを要求している場合は、リモートシステムにアクセスすることなく、それをローカルに取得して、ユーザに提供する。
2.ローカルに有していないシステム上にあるオブジェクトの固定デジタルコンテンツが要求されている場合は、そのデジタルコンテンツを、ソースまたはターゲットから透過的に取得して、ユーザに返す。
3.値T2(例えば、リハイドレートの際に、T2日間、保持する)が定義されており、これが0より大きい場合、デジタルデータコンテンツを有していなかったシステムは、このコンテンツを、時間量T2の間、ローカルに保存する。これにより、ユーザは、時間T2が経過するまでは、この静的デジタルコンテンツをローカルに取得することが可能となる。時間T2の経過後に発生するサービス実行によって、ローカルな静的デジタルコンテンツは削除される。リモートコンテンツは、全く変更する必要はない。
以下は、異なる複製トポロジ・コンテキストの場合の2つのユースケースである。
ユースケース1では、複製トポロジにおけるソースシステム上のオブジェクトに対して、メタデータオンリー機能を有するサービスプランが定義される。オブジェクトの取得から時間T1が経過した後の最初のサービス実行において、階層化サービスは、
1.複製トポロジにおいてターゲットシステムにそのオブジェクトが複製されていることを確認する。
2.ターゲットシステムにおいて、オブジェクトのデータ部分が安全に保存されているとともに、メタデータオンリーとしてターゲットシステムに保存されるように要求されていないことを確認する。
3.両方の条件を満たしている場合に、オブジェクトのデータ部分を削除用にマークするとともに、ターゲットシステムにおけるデータ部分の位置をソースシステムに記録する。
サービスプランの完了後には、ソースシステムは、ローカルに保存されたメタデータのみを有し、複製システムにはデータ部分とメタデータが保存されている。
図5は、複製トポロジにおけるソースシステム上のオブジェクトに対して、メタデータオンリー機能によるユースケース1で定義された階層化サービスプロセスを示すフロー図の一例を示している。階層化基準を満たしているソースオブジェクトを、読み込みのために階層化サービスによって開く(ステップ502)ことにより、プロセスは開始する。ステップ504で、階層化サービスは、そのオブジェクトが複製トポロジ内に存在するかどうか判断する。NOである場合は、プロセスは中止して、オブジェクトを閉じる(ステップ506)。YESである場合は、ステップ508で、そのオブジェクトを現在所有している複製トポロジにおけるクラスタのUUID(Universally Unique IDentifier:ユニバーサルユニーク識別子)を用いて、開いたスタブIF(Internal File:内部ファイル)ポインタを追加し、さらにプルーニング(枝刈り)追跡のためのフラグを追加する。ステップ510で、スタブIFをフラッシュして、システムメタデータ及びカスタムメタデータをソースオブジェクトから転送する。ステップ512で、そのデータを有しているクラスタのUUIDへのポインタ、プルーニング情報を有するフラグ、システムメタデータ、及びカスタムメタデータを格納しているスタブIFを閉じる。ステップ514で、ソースオブジェクトを閉じて、削除用にマークし、そして階層化サービスによって削除する。
ユースケース2では、複製トポロジにおけるターゲットシステム上のオブジェクトに対して、メタデータオンリー機能を有するサービスプランが定義される。ソースシステム上の複製キューにおけるオブジェクトの処理中に、複製サービスは、
1.そのオブジェクトは、ターゲットシステムにおいてメタデータオンリーの候補となるかどうか判断する。
2.ソースシステムにおいて、オブジェクトのデータ部分が安全に保存されているとともに、メタデータオンリーとするように要求されていないことを確認する。
3.両方の条件を満たしている場合には、完全なデータを複製するのではなく、オブジェクトのメタデータ部分のみを、ソースシステム上のデータ部分の位置へのポインタと共に、ターゲットシステムに送る。
サービスプランの完了後には、ターゲットシステムは、ローカルに保存されたメタデータのみを有する。データ部分は、ソースシステムに保存されている。
III.B 外部ストレージボリュームを備えた単独のストレージシステム
典型的なストレージシステムは、そのシステムの内部にのみ、ストレージボリュームを包含および管理している。本発明によれば、一次ストレージシステムのコンテキストで利用できるストレージにも、他のネットワーク技術(例えば、NFS)を通して公開されるストレージボリュームが含まれる。外部ストレージボリューム上で、いつ、どの場所にコンテンツを保存すべきかを決定するための、ポリシー及びプロセスを構築する必要がある。
外部ストレージボリュームを備えた単独のストレージシステムのコンテキストでは、オブジェクトの静的デジタルコンテンツ部分とメタデータ部分のインテリジェントなライフサイクル管理を用いることにより、(a)低レイテンシ/高コストの内部データストレージの利用を最適化し、(b)コンテンツプラットフォーム(例えば、HCP)管理下のまま、外部媒体へのデータ保存を可能とする。サービスプランによって、以下の挙動を規定することができる:(a)取得から時間T1の経過後は、静的デジタルコンテンツの1コピーを外部ストレージプールに移す、(b)読み出しの際に、静的デジタルコンテンツをリハイドレートして、時間T2が経過するまではローカルに保持する。サービスプラン定義には、以下の設定が含まれる。
1.ネットワークプロトコル仕様を規定する保存用の外部ボリューム定義(例えば、NFSサーバにより提供されるNFS共有)。
2.コンテンツが外部ボリュームに保存されなければならなくなるまでの時間量T1。
3.外部ストレージに書き込まれる際のデータのオプション圧縮。
4.外部ストレージに書き込まれる際のデータのオプション暗号化。
階層化サービスが、サービスプラン定義に基づいて、あるオブジェクトが外部ストレージに書き込まれる候補であると判断する場合、その処理には、以下のことが含まれる。
1.そのオブジェクトが、(必要な場合に)複製され、(必要な場合に)インデキシングされていることを確認する。
2.外部ボリュームに送るデータを、圧縮が要求されている場合は、圧縮する。
3.外部ボリュームに送るデータを、暗号化が要求されている場合は、暗号化する。
4.オブジェクトの静的デジタルコンテンツを外部ボリュームに移す。
5.オブジェクトの静的デジタルコンテンツ部分のローカルコピーを削除用にマークするとともに、外部ボリューム上のデータ部分の位置を記録する。
この実行後には、ソースシステムは、ローカルに保存されたメタデータのみを有する。固定デジタルコンテンツ部分は外部ボリュームに保存されている。
外部ボリュームに保存されているオブジェクトに対するユーザによる読み出し要求に対してサービス提供することは、以下のことを含む。
1.ユーザがオブジェクトのメタデータ部分のみを要求している場合は、外部ボリュームにアクセスすることなく、それをローカルに取得して、ユーザに返す。
2.システムがローカルに有していないオブジェクトの静的デジタルコンテンツ部分が要求されている場合は、そのデジタルコンテンツを、外部ボリュームから透過的に取得し、圧縮解除、暗号化解除して、ユーザに提示する。
3.リハイドレート時間の値T2が定義されており、それが0より大きい場合、システムは、そのコンテンツを、時間量T2の間、ローカルに保存する。これにより、ユーザは、経過時間T2の間は、このデータコンテンツをローカルに取得することが可能となる。経過時間T2の後に発生するサービス実行によって、ローカルな静的デジタルコンテンツ部分は削除される。外部ボリュームに保存されているリモートコンテンツは、全く変更する必要はない。
図6は、メタデータのみをローカルに保存し、固定デジタルコンテンツを外部ボリュームに保存する外部階層化のための階層化サービスプロセスを示すフロー図の一例を示している。階層化基準を満たしているソースオブジェクトを、読み込みのために階層化サービスによって開く(ステップ602)ことにより、プロセスは開始する。ステップ604で、スタブIFを作成する。ステップ606で、外部のデータIFの位置を用いて、開いたスタブIFにポインタを追加する。さらに、外部ストレージ階層において、外部ターゲット上に外部IFを作成する(ステップ622)。データを、開いた外部IFデータペイロードに転送し、オプションとして、暗号化または圧縮する(ステップ624)。オリジナルオブジェクトのデータ部分を格納している外部IFをフラッシュして、閉じる(ステップ626)。
次に、ステップ608で、スタブIFをフラッシュして、システムメタデータ及びカスタムメタデータをソースオブジェクトから転送する。ステップ610で、外部IFへのポインタ、圧縮または暗号化されている場合のフラグ、暗号化キーに関する情報、システムメタデータ、及びカスタムメタデータを格納しているスタブIFを閉じる。ステップ612で、ソースオブジェクトを閉じて、削除用にマークし、そして階層化サービスによって削除する。
コンテンツとメタデータを分離した、このインテリジェントなコンテンツ階層化機構によって、オブジェクトストレージシステムのデータ保護レベル、効率的な更新、オブジェクトのシステムメタデータ及びカスタムメタデータのインデキシングを供与するインテリジェントなコンテンツ階層を作成するとともに、ネットワークストレージデバイスに移動させるデータの圧縮及び暗号化オプション提供する。
図7は、階層化サービスを実施するための装置の一例を示している。装置700は、オブジェクト(破線で示す712)が保存されるオブジェクトシステム(破線で示す710)の一部、またはオブジェクト722を保存するための(オブジェクトシステム及び外部ストレージを含む)システム720から分離した管理コンピュータの一部、または上述のような独立ノード冗長アレイ(図1〜4を参照)のシステムの一部、などであり得る。装置700は、プロセッサまたはコントローラ702と、メモリ704とを備え、オブジェクトに対して階層化サービスオペレーションを実行するように機能する。
ユーザエクスペリエンス
これらのコンテンツ階層化機能を実現したシステムにおけるユーザエクスペリエンスは変更しない。ユーザは、システムにおいてオブジェクトを保存し、すべての熟知しているオブジェクトパラメータ(オブジェクトの寿命期間、オブジェクトの所望のコピー数など)を定義する。その後、オブジェクトの寿命期間の間は、それをユーザが利用できる状態が継続する。オブジェクトの追加プロパティを、システム管理者が定義することができる。それらのプロパティには、2つの項目、すなわちオブジェクトのデータ部分のストレージ階層、またはトポロジ内の他のシステム上にデータ部分を保存する許可、が含まれる。
ケース1:複製環境におけるデータ共有を伴うメタデータオンリー・オブジェクト
データ保存/検索システムは、様々な複製トポロジを有する環境で頻繁に使用される。この実現形態により、オブジェクトのデータ部分についてユーザが要求するデータ保護レベル(DPL)が、関与するシステムごとではなく複製トポロジ全体において維持されることが可能となる。これによって、各システムで同じデータの利用可能性及び安全性が提供される一方で、複製トポロジ全体ではストレージ使用量が大幅に節約される。
オブジェクトのライフサイクルは、従来通りに開始する。ユーザは、システムでデータを保存し、必要かつ多用されるメタデータをいずれも作成する。システムは、そのオブジェクト用に定義された規則に従って複製するためのキューに、オブジェクトを入れる。オブジェクトは、どの部分が複製リンク先で必要とされるのかに関する新たな知識を有しているので、その部分のみが複製に送られることになる。複製システムが、保存ポリシーにおいてメタデータオンリーとして規定されている場合は、オブジェクトのメタデータ部分のみが送られることになる。これによって、帯域幅と、ターゲットシステムのストレージ容量が共に節約される可能性がある。複製システムのユーザは、オブジェクトのデータ部分とメタデータ部分の両方へのフルアクセスを有するが、メタデータは複製にローカルに保存されることになっており、データは複製リンクを介してアクセス可能にされることになっている。多くの場合、利用にはメタデータで十分であるため、追加的なデータ転送を行うことなく、ユーザ要求が満たされる。
ケース2:ストレージ階層がNFS共有として定義される
オブジェクトのライフサイクルは、システムでオブジェクトが保存されたときに開始する。次に、ユーザは、ユーザにより必要かつ常用される何らかのメタデータを作成することができる。ユーザはメタデータのみに関心があるので、メタデータが作成された後には、オブジェクトデータは冗長となる。
システム管理者により、オブジェクトのデータ部分をNFS共有に移行させることが許可されると、システムは、データ部分を、コンテンツプラットフォーム(例えば、HCP)の低レイテンシ・ハードウェアから、より高レイテンシかつより安価なNFS共有に移す。これによって、ユーザエクスペリエンスまたはデータの保護及び安全性に影響を及ぼすことなく、高価かつ貴重なストレージのより良い利用が可能となる。ユーザは、引き続き、同じ速度でのオブジェクトメタデータへのアクセスを有する。ユーザがオブジェクトのデータ部分を要求する場合、システムは、それを取得して、わずかな遅延を伴って要求に対してサービス提供するが、ただし、そのプロセスは、ユーザに対して完全に透過的である。同じデータ保護レベル(DPL)及びデータ完全性が、オブジェクトのライフサイクル全体にわたって維持される。
当然のことながら、図1及び4に示すシステム構成は、本発明を実施することができるコンテンツプラットフォームまたは複製オブジェクトストレージシステムを含むシステムの単なる例示であり、本発明は特定のハードウェア構成に限定されない。本発明を実施するコンピュータ及びストレージシステムは、さらに、周知のI/Oデバイス(例えば、CD及びDVDドライブ、フロッピーディスクドライブ、ハードドライブなど)を備えることもでき、これらにより、上記発明の実施に使用されるモジュール、プログラム、及びデータ構造を保存し、読み出すことができる。これらのモジュール、プログラム、及びデータ構造は、コンピュータ可読媒体上に符号化することができる。例えば、本発明のデータ構造は、発明で使用するプログラムが常駐する1つ以上のコンピュータ可読媒体とは独立のコンピュータ可読媒体に保存することができる。システムのコンポーネントは、例えば通信ネットワークであるデジタルデータ通信の任意の形式または媒体によって、相互接続することができる。通信ネットワークの例として、ローカルエリアネットワーク、例えばインターネットである広域ネットワーク、無線ネットワーク、ストレージエリアネットワークなどが含まれる。
本明細書では、発明についての完全な理解を与えるため、説明の目的で様々な詳細について記載している。しかしながら、本発明を実施するために、これら特定の詳細のすべてが必要とされるわけではないことは、当業者には明らかであろう。また、本発明は、通常はフローチャート、フロー図、構造図、またはブロック図として表されるプロセスとして記述できるということに留意すべきである。フローチャートでは、オペレーションが逐次プロセスとして記述され得るが、それらのオペレーションの多くは、並列または同時に実行することができる。さらに、オペレーションの順序は並べ替えることができる。
当該技術分野で知られているように、上記オペレーションは、ハードウェア、ソフトウェア、またはソフトウェアとハードウェアの何らかの組み合わせによって実行することができる。本発明の実施形態のいくつかの態様は、回路及び論理デバイス(ハードウェア)を用いて実装することができる一方、他の態様は、機械可読媒体(ソフトウェア)に格納された命令を用いて実装することができ、それらの命令は、プロセッサで実行される場合、本発明の実施形態を実施する方法をプロセッサに実行させるものである。また、本発明のいくつかの実施形態は、ハードウェアのみで実行することができる一方、他の実施形態は、ソフトウェアのみで実行することができる。さらに、記載された種々の機能は、単一のユニットで実行することができ、または、あらゆる方法で多くのコンポーネントに分散させることができる。ソフトウェアで実行する場合、本方法は、コンピュータ可読媒体に格納された命令に基づいて、汎用コンピュータなどのプロセッサで実行することができる。命令は、所望であれば圧縮および/または暗号化形式で媒体に保存することができる。
上記のことから、本発明は、オブジェクトの非構造化コンテンツ及びそのメタデータ用の構造を構築する青写真を定義するため、ならびに効率的なインデキシング及び検索を容易にするための、コンテンツクラスと呼ばれる機構を提供する方法、装置、及びコンピュータ可読媒体に格納されたプログラムを提供するものであることは明らかであろう。また、本明細書では具体的な実施形態を例示及び記載しているが、当業者であれば理解できるように、同じ目的を達成すると予測される任意の構成を、開示された特定の実施形態の代用とすることができる。本開示は、本発明のあらゆる改良または変形を包括するものであり、また、当然のことながら、以下の請求項において使用される用語は、本明細書に開示の特定の実施形態に発明を限定するものと解釈されるべきではない。むしろ、本発明の範囲は、かかる請求項によって権利が認められる均等物の全範囲と共に、確立されたクレーム解釈論に従って解釈されるべき以下の請求項によって、完全に決定されるべきである。

Claims (15)

  1. ストレージシステムであって、
    コントローラと、
    メモリと、
    1つ以上のオブジェクトであって、各オブジェクトは、コンテンツデータとシステムメタデータを含むメタデータとを有する、オブジェクトと、
    前記ストレージシステムから外部ストレージへの前記1つ以上のオブジェクトの前記コンテンツデータ及び前記メタデータの書き込みを管理するポリシーであって、所与のオブジェクトの前記コンテンツデータと前記メタデータを分離するために設定可能な基準、および、前記オブジェクトのコンテンツデータとメタデータが分離される場合に前記ストレージシステムと前記外部ストレージとの間に分離した状態で前記コンテンツデータと前記メタデータの保存場所を決定するための規則を含むポリシーと、を備え、
    前記設定可能な基準は、前記オブジェクトの前記メタデータの属性に基づくものであり、
    前記コントローラは、前記ストレージシステムの前記1つ以上のオブジェクトに対して前記ポリシーを実行するように機能し、前記ポリシーを実行することは、前記設定可能な基準に基づき分離した状態で書き込まれるための候補オブジェクトとして各オブジェクトの前記メタデータを評価すること、および、分離オブジェクトとして前記コンテンツデータと前記メタデータが分離される場合に、前記分離オブジェクトの前記コンテンツデータと前記メタデータの保存場所を決定するために前記規則を適用することを含む、ことを特徴とするストレージシステム。
  2. 前記設定可能な基準は、前記オブジェクトの前記システムメタデータの属性に基づいており、
    前記ポリシーを実行することは、前記設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトの前記システムメタデータを評価することを含むことを特徴とする、請求項1に記載のストレージシステム。
  3. 前記コントローラは、分離した状態で書き込まれる候補オブジェクトとしてオブジェクトを前記ストレージシステムから特定するとともに、特定された前記オブジェクトに対して前記ポリシーを実行するために、スケジュール可能なサービスを定期的に実行するように機能することを特徴とする、請求項1に記載のストレージシステム。
  4. 前記コントローラは、
    前記ポリシーの前記規則によって前記コンテンツデータの前記保存場所が前記外部ストレージであると決定された場合には、前記オブジェクトが前記外部ストレージに書き込まれたことを確認するとともに、前記コンテンツデータが前記外部ストレージに保存されたことを確認し、両方が確認された場合に、前記コンテンツデータを前記ストレージシステムから削除するとともに、前記外部ストレージが前記オブジェクトのコンテンツデータの書き込まれた場所であることを前記ストレージシステムに記録し、
    前記ポリシーの前記規則によって前記コンテンツデータの保存場所が前記ストレージシステムであると決定された場合には、前記オブジェクトがメタデータのみとして前記外部ストレージに書き込まれるべきであることを確認するとともに、前記オブジェクトの前記コンテンツデータが前記ストレージシステムに保存されたことを確認し、両方が確認された場合に、前記オブジェクトの前記メタデータを前記外部ストレージに書き込むとともに、前記ストレージシステムにおける前記オブジェクトの前記コンテンツデータの場所を指すポインタを前記外部ストレージへ送信する、ように機能することを特徴とする、請求項1に記載のストレージシステム。
  5. 前記ポリシーの前記規則によって前記コンテンツデータの前記保存場所が前記外部ストレージであると決定された場合に、前記コントローラは、
    前記ポリシーの前記規則で規定された第1の既定時間量であって、ゼロ以上である第1の既定時間量の後に、前記コンテンツデータを前記ストレージシステムから削除し、
    前記コンテンツデータを前記外部ストレージから取得した後に、前記ポリシーの前記規則で規定された第2の既定時間量であって、ゼロ以上である第2の既定時間量の間、取得した前記コンテンツデータを前記ストレージシステムに保持する、ように機能することを特徴とする、請求項4に記載のストレージシステム。
  6. 前記外部ストレージは、他のストレージシステムに配置されており、
    前記ストレージシステム及び前記他のストレージシステムは、複製環境における前記ストレージシステム間でオブジェクトを複製する目的で相互にネットワーク接続された複数のストレージシステムの一部であることを特徴とする、請求項1に記載のストレージシステム。
  7. ストレージシステム間でのオブジェクトの書き込みを管理するための装置であって、各オブジェクトは、コンテンツデータとシステムメタデータを含むメタデータとを有し、前記装置は、コントローラとメモリとを備え、前記コントローラは、
    ソースストレージシステムからターゲットストレージシステムへの1つ以上のオブジェクトのコンテンツデータ及びメタデータの書き込みを管理するポリシーを、前記っソースストレージシステムの前記1つ以上のオブジェクトに対して実行するように機能し、前記ポリシーは、所与のオブジェクトの前記コンテンツデータと前記メタデータを分離するための設定可能な基準と、前記オブジェクトの前記コンテンツデータと前記メタデータが分離される場合に前記ソースストレージシステムと前記ターゲットストレージシステムとの間に分離した状態で前記コンテンツデータと前記メタデータの保存場所を決定するための規則と、を含み、
    前記設定可能な基準は、前記オブジェクトの前記メタデータの属性に基づくものであり、
    前記1つ以上のオブジェクトに対して前記ポリシーを実行することは、前記設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトの前記メタデータを評価すること、および、分離オブジェクトとして前記コンテンツデータと前記メタデータが分離される場合に、前記分離オブジェクトの前記コンテンツデータと前記メタデータの保存場所を決定するために前記規則を適用することと、を含むことを特徴とする、装置。
  8. 前記設定可能な基準は、前記オブジェクトのシステムメタデータの属性に基づくものであり、
    前記ポリシーを実行することは、前記設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトの前記システムメタデータを評価することを含むことを特徴とする、請求項7に記載の装置。
  9. 前記コントローラは、分離した状態で書き込まれる候補オブジェクトとしてオブジェクトを特定するとともに、特定された前記オブジェクトに対して前記ポリシーを実行するために、スケジュール可能なサービスを定期的に実行するように機能することを特徴とする、請求項7に記載の装置。
  10. 前記コントローラは、
    前記ポリシーの前記規則によって前記コンテンツデータの前記保存場所が前記ターゲットストレージシステムであると決定された場合には、前記オブジェクトが前記ターゲットストレージシステムに書き込まれたことを確認するとともに、前記コンテンツデータが前記ターゲットストレージシステムに保存されたことを確認し、両方が確認された場合に、前記コンテンツデータを前記ソースストレージシステムから削除するとともに、前記ターゲットストレージシステムが前記オブジェクトの前記コンテンツデータの書き込まれた場所であることを前記ソースストレージシステムに記録し、
    前記ポリシーの前記規則によって前記コンテンツデータの前記保存場所が前記ソースストレージシステムであると決定された場合には、前記オブジェクトがメタデータのみとして前記ターゲットストレージシステムに書き込まれるべきであることを確認するとともに、前記オブジェクトの前記コンテンツデータが前記ソースストレージシステムに保存されたことを確認し、両方が確認された場合に、前記オブジェクトの前記メタデータを前記ターゲットストレージシステムに書き込むとともに、前記ソースストレージシステムにおける前記オブジェクトの前記コンテンツデータの場所を指すポインタを前記ターゲットストレージシステムへ送信する、ように機能することを特徴とする、請求項7に記載の装置。
  11. 前記ポリシーの前記規則によって前記コンテンツデータの前記保存場所が前記ターゲットストレージシステムであると決定された場合に、前記コントローラは、
    前記ポリシーの前記規則で規定された第1の既定時間量であって、ゼロ以上である第1の既定時間量の後に、前記コンテンツデータを前記ソースストレージシステムから削除し、
    前記コンテンツデータを前記ターゲットストレージシステムから取得した後に、前記ポリシーの前記規則で規定された第2の既定時間量であって、ゼロ以上である第2の既定時間量の間、取得した前記コンテンツデータを前記ソースストレージシステムに保持する、ように機能することを特徴とする、請求項10に記載の装置。
  12. オブジェクトの書き込みを管理する方法であって、各オブジェクトは、コンテンツデータとシステムメタデータを含むメタデータとを有し、前記方法は、
    ストレージシステムから外部ストレージへの1つ以上のオブジェクトの前記コンテンツデータ及び前記メタデータの書き込みを管理するポリシーを、前記ストレージシステムの前記1つ以上のオブジェクトに対して実行することを含み、前記ポリシーは、所与のオブジェクトの前記コンテンツデータと前記メタデータを分離するための設定可能な基準と、前記オブジェクトの前記コンテンツデータと前記メタデータが分離される場合に前記ストレージシステムと前記外部ストレージとの間に分離した状態で前記コンテンツデータと前記メタデータの保存場所を決定するための規則と、を含み、
    前記設定可能な基準は、前記オブジェクトの前記メタデータの属性に基づくものであり、
    前記1つ以上のオブジェクトに対して前記ポリシーを実行することは、前記設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトの前記メタデータを評価することと、分離オブジェクトとして前記コンテンツデータと前記メタデータが分離される場合に、前記分離オブジェクトの前記コンテンツデータと前記メタデータの保存場所を決定するために前記規則を適用することと、を含む、方法。
  13. 分離した状態で書き込まれる候補オブジェクトとしてオブジェクトを前記ストレージシステムから特定するとともに、特定された前記オブジェクトに対して前記ポリシーを実行するために、スケジュール可能なサービスを定期的に実行することをさらに含み、
    前記設定可能な基準は、前記オブジェクトの前記システムメタデータの属性に基づくものであり、
    前記ポリシーを実行することは、前記設定可能な基準に基づき分離した状態で書き込まれる候補オブジェクトとして各オブジェクトの前記システムメタデータを評価することを含むことを特徴とする、請求項12に記載の方法。
  14. 前記ポリシーの前記規則によって前記コンテンツデータの前記保存場所が前記外部ストレージであると決定された場合には、前記オブジェクトが前記外部ストレージに書き込まれたことを確認するとともに、前記コンテンツデータが前記外部ストレージに保存されたことを確認し、両方が確認された場合に、前記コンテンツデータを前記ストレージシステムから削除するとともに、前記外部ストレージが前記オブジェクトの前記コンテンツデータの書き込まれた場所であることを前記ストレージシステムに記録することと、
    前記ポリシーの前記規則によって該コンテンツデータの前記保存場所が前記ストレージシステムであると決定された場合には、前記オブジェクトがメタデータのみとして前記外部ストレージに書き込まれるべきであることを確認するとともに、前記オブジェクトの前記コンテンツデータが前記ストレージシステムに保存されたことを確認し、両方が確認された場合に、前記オブジェクトの前記メタデータを前記外部ストレージに書き込むとともに、前記ストレージシステムにおける前記オブジェクトの前記コンテンツデータの場所を指すポインタを前記外部ストレージへ送信することと、をさらに含むことを特徴とする、請求項12に記載の方法。
  15. 前記ポリシーの前記規則によって前記コンテンツデータの前記保存場所が前記外部ストレージであると決定された場合に、前記方法は、
    前記ポリシーの前記規則で規定された第1の既定時間量であって、ゼロ以上である第1の既定時間量の後に、前記コンテンツデータを前記ストレージシステムから削除することと、
    前記コンテンツデータを前記外部ストレージから取得した後に、前記ポリシーの前記規則で規定された第2の既定時間量であって、ゼロ以上である第2の既定時間量の間、取得した前記コンテンツデータを前記ストレージシステムに保持することと、をさらに含むことを特徴とする、請求項14に記載の方法。
JP2015545026A 2013-02-27 2013-02-27 分散オブジェクトストレージエコシステムにおけるコンテンツとメタデータの分離 Active JP6009097B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/027870 WO2014133497A1 (en) 2013-02-27 2013-02-27 Decoupled content and metadata in a distributed object storage ecosystem

Publications (2)

Publication Number Publication Date
JP2016505935A true JP2016505935A (ja) 2016-02-25
JP6009097B2 JP6009097B2 (ja) 2016-10-19

Family

ID=51428622

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015545026A Active JP6009097B2 (ja) 2013-02-27 2013-02-27 分散オブジェクトストレージエコシステムにおけるコンテンツとメタデータの分離

Country Status (5)

Country Link
US (1) US10671635B2 (ja)
EP (1) EP2962218B1 (ja)
JP (1) JP6009097B2 (ja)
CN (1) CN104813321B (ja)
WO (1) WO2014133497A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017505938A (ja) * 2014-06-25 2017-02-23 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd マルチメディア情報を管理する方法、装置、及び無人航空機
JP7351057B2 (ja) 2018-07-31 2023-09-27 マーベル ワールド トレード リミテッド メタデータ演算制御を有するストレージアグリゲータコントローラ

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015183301A1 (en) * 2014-05-30 2015-12-03 Hitachi Data Systems Corporation Metadata favored replication in active topologies
GB2529670A (en) * 2014-08-28 2016-03-02 Ibm Storage system
GB2529669B8 (en) 2014-08-28 2017-03-15 Ibm Storage system
US10997129B1 (en) * 2014-09-16 2021-05-04 EMC IP Holding Company LLC Data set virtual neighborhood characterization, provisioning and access
US20160267172A1 (en) * 2015-03-09 2016-09-15 DonRiver, Inc. Constraint free model
US10318491B1 (en) 2015-03-31 2019-06-11 EMC IP Holding Company LLC Object metadata query with distributed processing systems
US11016946B1 (en) * 2015-03-31 2021-05-25 EMC IP Holding Company LLC Method and apparatus for processing object metadata
US9912752B1 (en) * 2015-06-29 2018-03-06 Amazon Technologies, Inc. Retention-based data management in a network-based data store
US10387384B1 (en) * 2015-09-30 2019-08-20 EMC IP Holding Company LLC Method and system for semantic metadata compression in a two-tier storage system using copy-on-write
US10628391B1 (en) * 2015-09-30 2020-04-21 EMC IP Holding Company LLC Method and system for reducing metadata overhead in a two-tier storage architecture
US10324919B2 (en) 2015-10-05 2019-06-18 Red Hat, Inc. Custom object paths for object storage management
US9880762B1 (en) 2015-12-30 2018-01-30 EMC IP Holding Company LLC Compressing metadata blocks prior to writing the metadata blocks out to secondary storage
CN106951425A (zh) * 2016-01-07 2017-07-14 阿里巴巴集团控股有限公司 一种映射方法和设备
US10356158B2 (en) * 2016-05-16 2019-07-16 Carbonite, Inc. Systems and methods for aggregation of cloud storage
US11100107B2 (en) 2016-05-16 2021-08-24 Carbonite, Inc. Systems and methods for secure file management via an aggregation of cloud storage services
US10116629B2 (en) 2016-05-16 2018-10-30 Carbonite, Inc. Systems and methods for obfuscation of data via an aggregation of cloud storage services
US10701377B2 (en) * 2016-09-14 2020-06-30 Amazon Technologies, Inc. Media storage
WO2018226228A1 (en) * 2017-06-08 2018-12-13 Hitachi Data Systems Corporation Deduplicating distributed erasure coded objects
US10642809B2 (en) 2017-06-26 2020-05-05 International Business Machines Corporation Import, export, and copy management for tiered object storage
US10339073B2 (en) 2017-06-29 2019-07-02 Keysight Technologies, Inc. Systems and methods for reducing write latency
US20190044809A1 (en) * 2017-08-30 2019-02-07 Intel Corporation Technologies for managing a flexible host interface of a network interface controller
US10884985B2 (en) * 2018-01-02 2021-01-05 International Business Machines Corporation Role mutable file system
US11144513B1 (en) * 2018-02-09 2021-10-12 Amazon Technologies, Inc. Policy based management for key-value pairs
US10691367B2 (en) 2018-10-30 2020-06-23 International Business Machines Corporation Dynamic policy prioritization and translation of business rules into actions against storage volumes
US11514024B2 (en) 2019-01-31 2022-11-29 Rubrik, Inc. Systems and methods for shard consistency in a clustered database
US10997130B2 (en) * 2019-01-31 2021-05-04 Rubrik, Inc. Systems and methods for node consistency in a clustered database
US11016952B2 (en) 2019-01-31 2021-05-25 Rubrik, Inc. Systems and methods to process a topology change in a clustered database
US11397653B2 (en) 2019-05-29 2022-07-26 Intel Corporation Technologies for fast recovery of distributed storage systems on disaggregated storage
CN111382011B (zh) * 2020-02-28 2022-11-29 苏州浪潮智能科技有限公司 一种文件数据存取方法、装置和计算机可读存储介质
CN113452730B (zh) * 2020-03-25 2022-04-29 阿里巴巴集团控股有限公司 对象读取管理方法、装置、电子设备及计算机存储介质
KR20230072886A (ko) * 2021-11-18 2023-05-25 에스케이하이닉스 주식회사 저장 장치의 데이터 입출력 성능을 개선하는 장치 및 방법
US11606432B1 (en) * 2022-02-15 2023-03-14 Accenture Global Solutions Limited Cloud distributed hybrid data storage and normalization
WO2023201052A1 (en) * 2022-04-15 2023-10-19 Cisco Technology, Inc. Asynchronous metadata replication and migration between compute sites
CN116383669B (zh) * 2023-03-18 2024-04-16 宝钢工程技术集团有限公司 一种数据贯通的工厂对象位号标识生成方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006338461A (ja) * 2005-06-03 2006-12-14 Hitachi Ltd 電子的なファイルの記憶を制御するシステム及び方法
US20090204649A1 (en) * 2007-11-12 2009-08-13 Attune Systems, Inc. File Deduplication Using Storage Tiers

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2004286660B2 (en) 2003-10-27 2011-06-16 Hitachi Vantara, LLC Policy-based management of a redundant array of independent nodes
GB0414291D0 (en) * 2004-06-25 2004-07-28 Ibm Methods, apparatus and computer programs for data replication
US7657581B2 (en) 2004-07-29 2010-02-02 Archivas, Inc. Metadata management for fixed content distributed data storage
US7428621B1 (en) * 2005-01-12 2008-09-23 Emc Corporation Methods and apparatus for storing a reflection on a storage system
US8365306B2 (en) * 2005-05-25 2013-01-29 Oracle International Corporation Platform and service for management and multi-channel delivery of multi-types of contents
US9305011B2 (en) 2005-07-27 2016-04-05 Hitachi Data Systems Corporation Method for improving mean time to data loss (MTDL) in a fixed content distributed data storage
US7870353B2 (en) 2005-08-15 2011-01-11 International Business Machines Corporation Copying storage units and related metadata to storage
US8938591B2 (en) 2005-09-30 2015-01-20 Cleversafe, Inc. Dispersed storage processing unit and methods with data aggregation for use in a dispersed storage system
US7716180B2 (en) * 2005-12-29 2010-05-11 Amazon Technologies, Inc. Distributed storage system with web services client interface
US20070294310A1 (en) 2006-06-06 2007-12-20 Hitachi, Ltd. Method and apparatus for storing and recovering fixed content
US8533155B2 (en) * 2009-10-30 2013-09-10 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform, with replication
US8782047B2 (en) 2009-10-30 2014-07-15 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform using namespaces
US7899850B2 (en) * 2008-02-22 2011-03-01 Bycast, Inc. Relational objects for the optimized management of fixed-content storage systems
US7953945B2 (en) * 2008-03-27 2011-05-31 International Business Machines Corporation System and method for providing a backup/restore interface for third party HSM clients
US20100205154A1 (en) * 2009-02-08 2010-08-12 Gregory Beliczynski System and Method for Storing and Retrieving Deleted Files
US20110055494A1 (en) * 2009-08-25 2011-03-03 Yahoo! Inc. Method for distributed direct object access storage
KR101638436B1 (ko) 2010-12-10 2016-07-12 한국전자통신연구원 클라우드 스토리지 및 그의 관리 방법
US9325709B2 (en) * 2012-12-21 2016-04-26 Dropbox, Inc. System and method for importing and merging content items from different sources

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006338461A (ja) * 2005-06-03 2006-12-14 Hitachi Ltd 電子的なファイルの記憶を制御するシステム及び方法
US20090204649A1 (en) * 2007-11-12 2009-08-13 Attune Systems, Inc. File Deduplication Using Storage Tiers

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017505938A (ja) * 2014-06-25 2017-02-23 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd マルチメディア情報を管理する方法、装置、及び無人航空機
US10977133B2 (en) 2014-06-25 2021-04-13 SZ DJI Technology Co., Ltd. Multimedia file repair methods and apparatus
JP7351057B2 (ja) 2018-07-31 2023-09-27 マーベル ワールド トレード リミテッド メタデータ演算制御を有するストレージアグリゲータコントローラ

Also Published As

Publication number Publication date
WO2014133497A1 (en) 2014-09-04
CN104813321A (zh) 2015-07-29
US10671635B2 (en) 2020-06-02
EP2962218A4 (en) 2016-10-05
US20150293984A1 (en) 2015-10-15
EP2962218A1 (en) 2016-01-06
CN104813321B (zh) 2018-02-06
JP6009097B2 (ja) 2016-10-19
EP2962218B1 (en) 2021-04-07

Similar Documents

Publication Publication Date Title
JP6009097B2 (ja) 分散オブジェクトストレージエコシステムにおけるコンテンツとメタデータの分離
US9898514B2 (en) System and method for aggregating query results in a fault-tolerant database management system
US10489412B2 (en) Highly available search index with storage node addition and removal
JP6448555B2 (ja) オブジェクトストレージインデキシングシステムのためのコンテンツクラス
US10425480B2 (en) Service plan tiering, protection, and rehydration strategies
JP5918243B2 (ja) 分散型データベースにおいてインテグリティを管理するためのシステム及び方法
US9575975B2 (en) Cluster-wide unique ID for object access control lists
JP5210176B2 (ja) 複数のノードを有するストレージ・システムの保護管理方法
US8515915B2 (en) System and method for enhancing availability of a distributed object storage system during a partial database outage
US10216775B2 (en) Content selection for storage tiering
JP2013545162A5 (ja)
US10572466B2 (en) Multiple collections of user-defined metadata for self-describing objects
JP2013544386A5 (ja)
US8621270B2 (en) System and method for transparent recovery of damaged or unavailable objects in a replicated object storage system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160721

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: 20160906

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160913

R150 Certificate of patent or registration of utility model

Ref document number: 6009097

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250