(57)【特許請求の範囲】
【請求項１】
記憶装置であって、
記憶媒体と、
前記記憶媒体から、データ・ブロック以外の可変サイズのエンティティを保持するように構成される、データ・オブジェクトを読み取り、前記記憶媒体にデータを書き込むように適合される読み取り−書き込み機構と、
データ記憶媒体上のデータを体系付け、かつアクセスし、さらに当該記憶媒体上に記憶された各々のデータ・オブジェクトに関連した属性にもアクセスする記憶装置内のオブジェクト・ベース・ファイル・システム・インタフェースと、
前記読み取り−書き込み機構を介する前記記憶媒体へのアクセスを制御するように適合され、前記記憶媒体に保存される各データ・オブジェクト用の冗長データを関連する属性に従って生成し、前記データ・オブジェクト及び関連する冗長データを前記記憶媒体に保存するように適合される、前記オブジェクト・ベース・ファイル・システム・インタフェースに接続されたコントローラとを備える記憶装置。
【請求項２】
前記コントローラが、各データ・オブジェクトに冗長性アルゴリズムを適用して、関連する冗長データを生成するように適合される、請求項１に記載の記憶装置。
【請求項３】
前記コントローラが、
保存データ・オブジェクトが変更されるときに、前記保存データ・オブジェクトに対する変更を一時的に保存するように適合されるメモリを更に備え、前記コントローラが、前記保存データ・オブジェクトに対する変更に基づいて、関連する冗長データを生成するように適合される、請求項１に記載の記憶装置。
【請求項４】
特定のデータ・オブジェクトがアクセスされる毎に、前記コントローラが、前記特定のデータ・オブジェクト用の関連する冗長データにアクセスし、エラーが検出された場合、前記データ・オブジェクトを回復するために、前記コントローラが、前記アクセスされた冗長データを使用するように適合される、請求項１に記載の記憶装置。
【請求項５】
前記コントローラが、特定のオブジェクトの関連属性に従って、所望の保護レベルのために、前記特定のオブジェクト及びそのサブフィールドに異なる冗長性アルゴリズムを適用するように適合される、請求項１に記載のオブジェクト・ベース記憶装置。
【請求項６】
前記コントローラが、関連する属性に基づいて、複数の冗長性アルゴリズムから冗長性アルゴリズムを選択し、前記選択された冗長性アルゴリズムに従って、前記冗長データを生成するように適合される、請求項１に記載のオブジェクト・ベース記憶装置。
【請求項７】
記憶装置であって、
記憶媒体と、
データ・ブロック以外の可変サイズのエンティティを保持するよう構成される、各データ・オブジェクトの属性にアクセスし、前記アクセスされた属性から各データ・オブジェクトの内容についての情報を引き出すように適合され、前記引き出された情報に基づいて保存されるデータ・オブジェクト用に前記記憶媒体上に空間をアロケートするように適合される前記記憶装置内のオブジェクト・ベース・ファイル・システム・インタフェースと、
前記記憶媒体に結合され、前記記憶媒体からデータを読み取り、前記記憶媒体にデータを書き込むように適合される読み取り−書き込み機構と、
前記アクセスされた属性に基づいて、各データ・オブジェクト用の所望のエラー保護レベルを決定し、前記所望のエラー保護レベルに従って、前記記憶媒体に保存される各データ・オブジェクト用の冗長データを生成するように適合されるコントローラとを備える記憶装置。
【請求項８】
前記データ・オブジェクト及び関連する冗長データが、前記記憶媒体上で別々のエンティティとして保存される、請求項７に記載の記憶装置。
【請求項９】
前記データ・オブジェクト及び関連する冗長データが、１つのデータ構造内に保存される、請求項７に記載の記憶装置。
【請求項１０】
前記コントローラに結合され、複数の冗長性アルゴリズムを保存するように適合されるメモリを更に備え、
前記コントローラが、各々のオブジェクト毎に設定されたセキュリティ・ポリシーとデータ格納冗長性ポリシーを含む、所望のエラー保護レベルに基づいて、前記複数の冗長性アルゴリズムから冗長性アルゴリズムを選択し、前記選択された冗長性アルゴリズムを利用して、前記関連する冗長データを生成するように適合される、請求項７に記載の記憶装置。
【請求項１１】
前記コントローラが、所望の保護レベルに従って、データ・オブジェクト及びそれらのサブフィールドのために、異なるデータ保護レベルを有する異なる冗長性アルゴリズムを選択するように適合される、請求項１０に記載の記憶装置。
【請求項１２】
データ・オブジェクトがアクセスされる毎に、前記コントローラが、関連する冗長データにアクセスし、それを更新する、請求項７に記載の記憶装置。
【請求項１３】
前記記憶装置が、ＲＡＩＤ記憶装置を含み、前記関連するデータ・オブジェクト、属性及び、冗長データが、前記ＲＡＩＤ記憶装置の複数のディスクに保存される、請求項７に記載の記憶装置。
【請求項１４】
記憶装置に保存される、データ・ブロック以外の可変サイズのエンティティを保護するよう構成された、データ・オブジェクトに冗長保護を提供するための方法であって、
前記記憶装置内のオブジェクト・ベース・ファイル・システム・インタフェースが、オブジェクト・ベース記憶装置の記憶媒体に保存される各データ・オブジェクトの属性にアクセスするステップと、
前記データ・オブジェクトの前記アクセスされた属性に基づいた所望のエラー保護及び信頼性レベルに従って、前記データ・オブジェクトから冗長データを生成するステップと、
前記オブジェクト・ベース・ファイル・システム・インタフェースを使用して、前記記憶媒体上に前記データ・オブジェクト及び前記生成された冗長データ用の空間をアロケートするステップと、
前記記憶装置の読み取り−書き込み機構を使用して、前記データ・オブジェクト及び前記生成された冗長データを前記アロケートされた空間に書き込むステップとを含む方法。
【請求項１５】
前記データ・オブジェクトがアクセスされる毎に、前記冗長データにアクセスするステップを更に含む、請求項１４に記載の方法。
【請求項１６】
前記生成するステップの前に、
前記データ・オブジェクトの前記アクセスされた属性に基づいて、前記データ・オブジェクト用の所望の保護レベルを決定するステップと、
前記所望の保護レベルに基づいて、複数の冗長性アルゴリズムから冗長性アルゴリズムを選択するステップとを更に含む、請求項１４に記載の方法。
【請求項１７】
前記保存されたデータ・オブジェクトが後で検索及び修正される場合、
前記修正データ・オブジェクト用の修正冗長データを計算するステップと、
前記修正データ・オブジェクト及び前記修正冗長データを前記記憶媒体に保存するステップを更に含む、請求項１４に記載の方法。
【請求項１８】
前記生成するステップが、
前記データ・オブジェクトの属性に従って、所望のエラー保護及び信頼性のための選択された冗長性アルゴリズムを前記データ・オブジェクト及びそのサブ要素に適用するステップを含む、請求項１４に記載の方法。
【請求項１９】
前記データ・オブジェクト及び関連する冗長データが、別々のエンティティとして、又は１つのファイル構造として書き込まれる、請求項１４に記載の方法。
【請求項２０】
前記冗長データが、各データ・オブジェクトの、データ構造を再構成するためにデータ・ユニットを独立してアクセス可能に区分けする、論理オブジェクト境界に基づいて、保護レベルを提供する、請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、データ記憶装置に関し、より詳細には、記憶装置に保存されるデータの冗長保護のためのシステム及び方法に関する。
【背景技術】
【０００２】
ハード・ディスクに保存されるデータは、エラーによる損傷を受け易い。例えば、データ検索エラーは、データの検索を妨げるディスク媒体の傷から生じ得る。従来、（巡回冗長検査などの）オンディスク冗長性方式は、保護されるデータの論理構造についてのどのような知識も必要とせず、すべてのデータを等しく良好に保護する。そのような方式は一般に、セクタの内容や、セクタがどのように関係付けられ得るかに関わりなく、記憶媒体のセクタを保護することに関する。しかし、エンド・ユーザにとって、あるデータは、他のデータよりも重要であるかもしれない。更に、（ファイル・システム、メタデータなどの）データの論理構造全体を保護することが重要であり、さもないとエンド・ユーザにとっては、記憶装置のデータ内容全体が失われることもあり得る。ユーザ・ファイルの１つ又は複数のセクタの喪失は、深刻でないかもしれないが、メタデータのそれと同数のセクタの喪失は、全装置、ファイル・システム、又は相当な数のファイルの喪失の原因となり得る。
【０００３】
いくつかの従来のシステムは、独立ディスクの冗長アレイ（ＲＡＩＤ）を利用して、データを保護する。一般に、ＲＡＩＤシステムは、（ファイル、データベース、レコードなど）与えられたデータ・オブジェクトの境界又は内容に関わりなく、データを複数のディスク上に冗長に保存する。ディスクの１つのセクタが故障した場合、データは、別のディスクからの冗長データを使用して回復及び復元されることができ、それによって、すべてのデータを等しく保護する。しかし、そのようなシステムは一般に、第２の読み取り障害に対する保護には役立たない。例えば、ＲＡＩＤ保護ドライブが障害を起こし、サブシステムが新しいユニット上で喪失ドライブのデータを再構築するプロセス中に読み取りエラーに遭遇した場合、そのエラーは、ファイル・システム全体の喪失を引き起こし得る。個々のファイル又はファイルのいくつかのサブセットを読み取る又は回復するときの障害は許容し得ても、最重要オブジェクト又はファイル・システム全体の（メタデータなどの）最重要データの喪失は、破局的ともなり得る。そのような２次的読み取り障害は、相当なコスト及び性能上のペナルティを招くことなく、克服されることはできない。更に、ＲＡＩＤシステムは高価なものとなり得、コストに見合う効果が常に得られるとは限らない。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
したがって、記憶システム内の論理データ構造を保護するシステム及び技法が現在必要とされている。本発明の実施例は、これら及びその他の問題の解決策を提供し、従来技術にまさるその他の利点も提供する。
【課題を解決するための手段】
【０００５】
記憶装置は、記憶媒体と、読み取り−書き込み機構と、オブジェクト・ベース・ファイル・システム・インタフェースと、コントローラとを有する。読み取り−書き込み機構は、記憶媒体からデータを読み取り、記憶媒体にデータを書き込むように適合される。記憶装置内のオブジェクト・ベース・ファイル・システム・インタフェースは、記憶媒体上のデータをオブジェクトとして編成し、それにアクセスするように、また各データ・オブジェクトの属性にアクセスするように適合される。コントローラは、記憶媒体に保存される各データ・オブジェクト用の冗長データを関連する属性に従って生成するように、またデータ・オブジェクト及び関連する冗長データを記憶媒体に保存するように適合される。
【０００６】
一実施例では、コントローラは、データ・オブジェクト及び関連する冗長データを別々のファイル・エンティティとして記憶媒体に保存するように適合される。別の実施例では、コントローラは、データ・オブジェクト及び関連する冗長データを１つのオブジェクトとして保存するように適合される。従来のセクタ・ベース冗長方式が使用されない別の実施例では、コントローラは、保存データ・オブジェクトがアクセスされる毎に冗長データにアクセスし、エラーが発生した場合には冗長データを使用してデータ・オブジェクトを回復するように適合される。
【０００７】
別の実施例では、記憶装置に保存されるデータの冗長保護を提供する方法が提供される。オブジェクト・ベース記憶装置の記憶媒体に保存されるデータ・オブジェクトの属性が、オブジェクト・ベース・ファイル・システム・インタフェースを使用してアクセスされる。冗長データが、アクセスされた属性に基づいて、データ・オブジェクトから生成される。データ・オブジェクト及び生成された冗長データ用の空間が、オブジェクト・ベース・ファイル・システム・インタフェースを使用して、記憶媒体上にアロケートされる。データ・オブジェクト及び生成された冗長データは、記憶装置の読み取り−書き込み機構を使用して、記憶媒体上のアロケートされた空間に書き込まれる。
【０００８】
本発明の実施例を特徴付けるその他の特徴及び利点は、以下の詳細な説明を読み、添付の図面を検討することから明らかになるであろう。
【実施例】
【０００９】
図１は、本発明の実施例が役立つディスク・ドライブ１００の等角図である。ディスク・ドライブ１００は、基台１０２と上部カバー（図示されず）を有する筐体を含む。ディスク・ドライブ１００は更に、ディスク・クランプ１０８によってスピンドル・モータ（図示されず）に取り付けられたディスク・パック１０６を含む。ディスク・パック１０６は、中心軸１０９の周りを同速度で回転するように取り付けられた複数の個別ディスク１０７を含む。各ディスク面は、ディスク面との通信用にディスク・ドライブ１００に取り付けられた関連するディスク・ヘッド・スライダ１１０を有する。
【００１０】
図１に示される実施例では、スライダ１１０は、サスペンション１１２によって支持され、サスペンションは、駆動部１１６のトラック・アクセス・アーム１１４に取り付けられる。図１に示される駆動部は、回転可動コイル駆動部として知られるタイプのものであり、１１８で全体が示される音声コイル・モータ（ＶＣＭ）を含む。音声コイル・モータ１１８は、取り付けられたヘッド１１０と共に駆動部１１６を回転軸１２０の周りで回動させ、ディスク内径１２４とディスク外径１２６の間の正確な経路１２２沿って、ヘッド１１０を所望データ・トラックの上方に位置付ける。音声コイル・モータ１１８は、ヘッド１１０とインタフェース１０３を介するホスト・コンピュータ１０１とによって生成される信号に基づいて、サーボ電子機器１３０によって駆動される。ディスク・ドライブ１００は、例えば、ディスク・ドライブ１００の下面１３２に沿って配置され得る回路１３１内にコントローラ及び／又はカスタム・ロジックを含むこともできる。
【００１１】
図２Ａは、本発明の一実施例による従来の記憶システムの簡略ブロック図である。従来の記憶システム２００は、ブロック・インタフェース２０６によって記憶装置２０４に結合される（コンピュータなどの）ホスト装置２０２Ａを有する。ホスト装置２０２Ａは、（Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｗｉｎｄｏｗｓ（登録商標）、Ｌｉｎｕｘ、又はその他の任意のオペレーティング・システムなどの）オペレーティング・システム２０８と、１つ又は複数のアプリケーション２１０とを有する。一般に、オペレーティング・システム２０８は、システム・コール・インタフェース２１２と、ファイル・システム（ユーザ・コンポーネント）２１４と、ファイル・システム（記憶コンポーネント）２１６とを含む。記憶装置２０４は、ブロック入出力（Ｉ／Ｏ）マネージャ２１８と、読み取り／書き込み機構２２０と、記憶媒体２２２とを含む。
【００１２】
一般に、ホスト装置２０２Ａは、ユーザ・アプリケーション２１０に、データ・ファイル及びディレクトリなどの論理データ構造をファイル・システム（ユーザ・コンポーネント）２１４を使用して提供する役割と、これらのデータ構造にアクセスするためのインタフェースを提供するシステム・コール・インタフェース２１２を提供する役割とを担う。ファイル・システム（記憶コンポーネント）２１６は、データ構造を記憶装置２０４にマッピングする。記憶コンポーネント２１６は、データ構造をブロック・インタフェース２０６を介してブロック入出力（Ｉ／Ｏ）マネージャ２１８に書き込み、ブロック入出力（Ｉ／Ｏ）マネージャは、読み取り／書き込み機構２２０を使用して、データ構造を記憶媒体２２２に書き込む。
【００１３】
本発明は、オブジェクト・ベース記憶装置（ＯＳＤ：ｏｂｊｅｃｔ−ｂａｓｅｄ  ｓｔｏｒａｇｅ  ｄｅｖｉｃｅ）のオブジェクト・ベース・ファイル・システム・インタフェースを利用して、ＯＳＤに保存されたオブジェクトに冗長保護を適用することによる改良データ保護を提供する。ＯＳＤは、データをデータ・ブロックとしてではなくオブジェクトとして編成し、アクセスするオブジェクト・ベース・ファイル・システム・インタフェースを有する記憶装置である。本明細書で使用されるオブジェクトという用語は、データ及びメタデータを含む情報の単位のことを指す。オブジェクトは、属性と、データ内容がどのように解釈され、且つ／又は操作されるべきかを記述するメソッドとを含むこともできる。本明細書で使用される「ファイル」という用語は、同様の構造をしたデータ・レコードの組のことを指す。本明細書で使用される「データ構造」という用語は、ファイル又はオブジェクト内でのデータの論理順序のことを指す。本明細書で使用される「メタデータ」という用語は、ファイル又はオブジェクトに含まれるデータについての情報のことを指す。メタデータは、データの内容、品質、条件、及びその他の特性についての情報を含むことができる。メタデータは、エンド・ユーザによる情報リソースの識別、探索、及び検索を支援し得る、情報リソースを記述する構造化された記述的要素の組を含むこともできる。オブジェクトは、よく知られたアクセス用メソッド、データの特性を記述する属性、及び無権限アクセスを防止するセキュリティ・ポリシーを有する、記憶装置上のバイトの論理的集まりとすることができる。オブジェクトは、データ・ファイル、ファイル・システム、データベースなど、異なるタイプの内容を有することができる。典型的には固定サイズであるデータ・ブロックとは異なり、オブジェクトは、可変サイズであり、全データ構造、ファイル、データベース・テーブル、医学用画像、マルチメディア・データなど、様々なタイプのエンティティを保存するのに使用されることができる。
【００１４】
図２Ｂは、本発明の一実施例によるオブジェクト・ベース記憶システム２５０の簡略ブロック図である。オブジェクト・ベース記憶システム２５０は、ホスト装置２０２Ｂと、オブジェクト・インタフェース２５６によって通信可能に結合されるオブジェクト・ベース記憶装置（ＯＳＤ）２５４とを有する。
【００１５】
一般に、記憶システム２５０のホスト・システム２０２Ｂは、記憶システム２００のホスト・システム２０２Ａと同じである。ホスト・システム２０２は、コンピュータ、又はＯＳＤ２５４と対話するように適合された任意の装置とすることができる。ホスト装置２０２Ａと同様に、ホスト装置２０２Ｂは、オペレーティング・システム２０８と、１つ又は複数のアプリケーション２１０とを含む。オペレーティング・システム２０８は一般に、システム・コール・インタフェース２１２と、ファイル・システム（ユーザ・コンポーネント）２１４とを含む。オペレーティング・システム２０８は、ファイル・システム（記憶コンポーネント）２１６を含むこともできるが、記憶コンポーネント２１６は、その機能がＯＳＤ２５４に移されたので省略され得ることを示すために記憶システム２５０のホスト装置２０２Ｂ内に破線で示されている。
【００１６】
ＯＳＤ２５４は、オブジェクト・インタフェース２５６によってホスト装置２０２Ｂに結合される。ＯＳＤ２５４は、ブロックＩ／Ｏマネージャ２１８と、読み取り／書き込み機構２２０と、記憶媒体２２２とに加えて、オブジェクト・ベース・ファイル・システム・インタフェース２５８も含む。一般に、（図２Ａの）記憶システム２００と（図２Ｂの）オブジェクト・ベース記憶システム２５０の差異は、物理媒体よりも、むしろファイル・システム・インタフェース２５８にある。特に、ＯＳＤ２５４のオブジェクト・ベース・ファイル・システム・インタフェース２５８は、空間アロケーション並びに記憶媒体２２２上の使用中ブロック及び空きブロックの追跡をはじめとする空間管理機能を含む。したがって、空間管理機能は、記憶システム２００のオペレーティング・システム２０８内のファイル・システム（記憶コンポーネント）２１６と比較すると、ＯＳＤ２５４に移されている。
【００１７】
ＯＳＤ２５４は、固定サイズのデータ・ブロックではなく、可変サイズのオブジェクトを保存する。各オブジェクトに保存されるデータは一般に、オブジェクト・ベース記憶装置にはオペーク（ｏｐａｑｕｅ）であり、（図３Ｃのデータ構造３０２など）オブジェクトのデータ構造部に単純に保存される。各オブジェクト内に保存される属性は、オブジェクト・データの内容についての情報を含むオブジェクトの特性を記述する。属性は、ＯＳＤ２５４のオブジェクト・ベース・ファイル・システム・インタフェース２５８によってアクセスされ、読み取られることができる。例えば、サービス品質（ＱｏＳ）属性は、マルチメディア・オブジェクトの待ち時間及びスループットの要件を記述することができる。ＱｏＳ属性は、オブジェクトに関連するＱｏＳ要件を特定するためにオブジェクト・ベース・ファイル・システム・インタフェース２５８によってアクセスされることができ、その結果、オブジェクト・ベース・ファイル・システム２５８は、ＱｏＳ要件を満たすステップをとることができる。装置管理メタデータは、オブジェクトの物理記憶を管理する目的で記憶装置によって維持されるオブジェクトについての任意の追加情報を含む。保存オブジェクトは、オブジェクトを保存するのに必要なメタデータから記憶アプリケーションを抽象化するオブジェクト・ベース・ファイル・システム・インタフェース２５８を使用してアクセスされる。ＯＳＤ２５４は、メタデータにアクセスするので、保存オブジェクトの内容及び境界を知っており、この情報を使用して、ブロック・アロケーション、空間管理など、従来はホストのファイル・システムの一部であった低レベルの記憶機能を取り扱う。したがって、ＯＳＤ２５４は、記憶媒体２２２に保存されたオブジェクト（エンティティ）について、及びオブジェクトの部分が見つけられる記憶媒体２２２上の正確な場所について知っている。オブジェクトは動的に増大及び縮小することができるので、ＯＳＤ２５４は、（ＵＮＩＸ（登録商標）のインデックス・ノード、空きブロック・ビットマップなどのような）アロケーション及び空き空間メタデータ構造を維持する。ＯＳＤ２５４は、ＯＳＤ２５４内のファイル・システム（記憶コンポーネント）２５８を使用して、記憶媒体２２２に書き込まれたオブジェクト間の関係（パターン）を識別し、この情報を使用して、データをより良好に編成することができる。更に、ＯＳＤ２５４は、所望の保護レベルに基づいて、様々な冗長方式を使用して、オブジェクト及びそれらのサブフィールド（サブ要素）に対して異なるレベルの保護（冗長性）を用いてオブジェクトを扱うように適合される。例えば、異なる冗長性アルゴリズムが、メタデータ、重要なユーザ・データ、及びあまり重要でないユーザ・データなど、異なるタイプのデータに適用されることができる。より高いレベルの保護は、あまり重要でないユーザ・データではなく、メタデータ及び重要なユーザ・データに適用されることができる。これらの異なるレベルの保護は、従来の記憶装置で利用される（セクタ・ベースのリード・ソロモン符号化／復号化などの）従来の誤り訂正方式に加えて利用されることができる。例えば、ＯＳＤ２５４は、読み取り／書き込み機構２２０内にオプションの読み取り／書き込み冗長符号器／復号器２６０を含むことによって、オブジェクト及びそれらのサブフィールドに対する異なるレベルの保護に加えて、従来の誤り訂正方式を利用するように適合されることができる。
【００１８】
メタデータを記憶装置２５４にアンロードすることによって、今ではホスト装置２０２Ｂの記憶アプリケーションは、それらの構造をブロックの集まりではなく単一のオブジェクトとして保存することができる。記憶装置２５４は、オブジェクトを個別に扱うことができるので、オブジェクト毎にセキュリティ・ポリシー及びデータ記憶冗長性ポリシーを設定することが可能である。オブジェクト・インタフェース２５６は、ファイル・システムのものと同様である。オブジェクトは、生成又は削除され、読み取られ又は書き込まれることができる。オブジェクトは、（例えば、生成時間などの）オブジェクトについての静的情報、（最終アクセス時間などの）オブジェクトがアクセスされるたびに更新される動的情報、（ファイル名、グループなどの）アプリケーション固有情報、及び（ユーザ識別子などの）ユーザ情報などの特定の属性について問合せを受けることができる。属性は、ＯＳＤ２５４が記憶媒体上のデータをより良好に編成するのに使用し得る、予想読み取り／書き込み率、（シーケンシャル又はランダムなどの）あり得るアクセス・パターン、予想オブジェクト存続期間など、オブジェクトについての情報を含むこともできる。
【００１９】
ＯＳＤ２５４は、単一のディスク・ドライブ、記憶コントローラを有するディスク・ドライブのアレイ、フラッシュ・メモリ、又はその他の任意のタイプの記憶装置とすることができる。加えて、ＯＳＤ２５４は、ランダム・アクセス記憶装置であることを必要とせず、書き込み可能記憶装置であることすら必要としない。テープ・ドライブ及び様々な光媒体も、オブジェクトを保存することを目的とする記憶装置とすることができる。各場合で、ＯＳＤ２５４は、所望の保護レベルに基づいて、異なるオブジェクト及びそれらのサブフィールド（要素）に対して異なるレベルの冗長性を適用するように適合されることができる。
【００２０】
一実施例では、ＯＳＤベースの冗長方式は、（セクタ・ベースのリード・ソロモン符号化などの）セクタ・ベースの誤り保護に取って代わることができる。この場合、ＯＳＤ２５４は、例えば、オブジェクトがアクセスされるとき、オブジェクトに変更が施されるとき、及びオブジェクトが保存されるときは常に、オブジェクト用の冗長フィールドを生成するように適合されることができる。
【００２１】
ＯＳＤ２５４の上記の実施例は、オブジェクト・ベース・ファイル・システム・インタフェース２５８に関して説明されたが、このインタフェース２５８は、（示されたように）ホスト装置２０２Ｂと記憶装置２５４の間のインタフェースとすることができること、又はファイル・サーバ・インタフェースとすることができることを理解されたい。例えば、ＯＳＤ２５４は、ネットワーク上のスタンド・アロン装置として実施される場合、ネットワークから受け取られ又はアクセスされるＯＳＤ２５４上に保存されたオブジェクトに、冗長性／誤り訂正を提供するように適合される。
【００２２】
図３Ａは、本発明の一実施例による、記憶媒体に保存されたデータの簡略ブロック図を示している。一般に、データは、ファイル・システム又は媒体を管理するデータ編成方法によって記憶媒体に書き込まれる。大部分のシステムでは、データは、様々なデータ構造によって管理される。ユーザ・データは通常、オブジェクト、ファイル、又はデータベースに保存される。オブジェクトは、１つ又は複数のファイル、データベース、データベース・レコードなどを含むことができる。ディスクの空き空間は一般に、空きブロック・リスト、ファイル・アロケーション・テーブル（ＦＡＴ）などの非ファイル構造によって維持される。これらのタイプのデータ構造のすべて、及びその他のデータ編成が、本発明の実施例によってより信頼性が高められる候補となる。
【００２３】
データ・オブジェクト３００は、ｎ個の要素（又はサブフィールド）３１０から成るデータ構造３０２として編成されたデータを含む。一般に、データ構造３０２は、データ３０４と、オブジェクト属性３０６と、メタデータ３０８とを含む。データ構造３０２は、ｎ個の要素３１０に分割されることができ、各要素は別々に、記憶媒体から読み取り、記憶媒体に書き込むことができる。一実施例では、ｎ個の要素３１０は、オブジェクト属性３０６及びメタデータ３０８だけに相当する。別の実施例では、ｎ個の要素３１０は、メタデータ３０８だけに相当する。任意の番号（ｎ）の要素がデータ構造３０２を構成し得ることを示すために、要素は、３１０Ａ、３１０Ｂ、３１０Ｃ、乃至３１０Ｎとして示されている。
【００２４】
（図２ＢのＯＳＤ２５４などの）ＯＳＤは、データ構造３０２に付加的な保護を提供するために冗長方式を利用するように適合されることができる。例えば、ＯＳＤのコントローラは、データ・オブジェクトに関連する冗長データを生成し、冗長データ及びデータ・オブジェクトを記憶媒体に保存するように適合されることができる。一実施例では、冗長データは、保存オブジェクトに隣接する又は近くのアロケート済み記憶空間に保存されることができる。一代替実施例では、冗長データは、記憶媒体上の異なるセクタ又は別のロケーションに保存されることができ、そうすることで、保存オブジェクトの付近の記憶媒体が損傷を受けた場合でも、オブジェクトは、冗長データから回復されることができる。冗長データは好ましくは、データ・オブジェクトの内容に基づいており、読み取り障害が発生した場合にデータ構造を再構成するために使用されることができる。これは、（ＲＡＩＤシステムのような）完全なハード・ディスク・モジュール冗長性を必要とせずに喪失データの再構成を可能にする。ＲＡＩＤ記憶装置が存在しなくても、メタデータ又はデータ・ファイルは、読み取り障害の後であっても、読み取られることができる。本発明の実施例は、読み取り障害からデータを回復する手段を提供し、それによって、ファイル・システムの喪失を防止することによって、ＲＡＩＤサブシステムを増強するために使用されることもできる。例えば、セクタ・ベース及びＲＡＩＤタイプの冗長性に加えて、オブジェクト・ベースの冗長性を提供するために、冗長性アルゴリズムが、重要なユーザ・データ、ファイル・システム・オブジェクト、メタデータなどにＯＳＤによって適用されることができる。
【００２５】
図３Ｂは、本発明の一実施例による、冗長フィールドを計算するための論理パリティ演算の簡略ブロック図である。一般に、パリティ演算３１２は、ｎ個の要素３１０Ａ、３１０Ｂ、３１０Ｃ、乃至３１０Ｎのビット値から冗長フィールド３１４を計算するために使用されることができる。一実施例では、パリティ演算は、ビット値に演算を施して、冗長フィールド３１４の値を生成する、（ＸＯＲ要素３１２によって示されるような）排他的論理和演算である。
【００２６】
図３Ｃは、データ構造３０２及び関連する冗長フィールド３１４が別個のファイル・エンティティとして保存された記憶媒体３２０の一部の簡略ブロック図である。一実施例では、冗長フィールド３１４は、記憶媒体３２０上のデータ構造３０２とは異なるロケーションに保存される。冗長フィールド３１４及びデータ構造３０２は好ましくは、別個にアクセス可能な情報単位として保存される。記憶媒体３２０からデータ構造を読み取る際にエラーが発生した場合、冗長フィールド３１４は、ＯＳＤによってアクセスされ、データ構造３０２を再構成するために利用されることができる。一般に、ＯＳＤは、冗長フィールドを生成し、記憶媒体３２０上に空間をアロケートする際に、データ構造３０２の論理境界３３０に関する情報を利用するように適合される。
【００２７】
本発明の実施例は、保護又は性能を改善するため、異なるデータ構造に対して専用の冗長方式が適用されることも可能にする。例えば、最重要なメタデータは、より深刻な読み取りエラーからの回復を可能にする改良された（しかし恐らく低コストの）冗長方式を用いて保護されることができる。（個人用ビデオ・レコーダ・アプリケーションの場合のように）高信頼性よりも性能がより重要な場合、より高速の（しかし能力はより低い）冗長方式が、それらのデータ構造に使用されることができる。重要なユーザ・データは、あまり重要でないユーザ・データなどよりも高レベルの冗長方式を用いて保護されることができる。したがって、複数の冗長性アルゴリズムが、同じ記憶装置内の異なるデータ・オブジェクトで使用されることができ、複数の利用可能なアルゴリズムからの特定の冗長性アルゴリズムの選択は、属性情報を含むオブジェクトについての情報に基づくことができる。更に、異なる冗長性アルゴリズムが、所望のエラー保護レベルに従って、単一のデータ・オブジェクトのサブ要素又はサブフィールドに適用されることができる（例えば、選択された異なる冗長性アルゴリズムが、所望のエラー保護及び信頼性レベルに従って、データ・オブジェクトの個々のサブ要素又はサブフィールド毎に適用されることができる）。
【００２８】
図３Ｄは、本発明の一代替実施例による、記憶媒体３２０上でデータ３０３が冗長フィールド３１４によってインタリーブされた符号化データ構造３０２の簡略ブロック図である。一般に、ＯＳＤは、従来の読み取り／書き込み冗長符号化／復号化に取って代わるように適合されることができる。例えば、この実施例では、ＯＳＤは、符号化データ構造３０２を形成するために、データ３０３によって冗長フィールド３１４をインタリーブするように適合される。ｎ個のデータ要素３０３は、論理境界３３０が維持されるように、冗長フィールド３１４によってインタリーブされることができる。
【００２９】
図４は、本発明の一実施例による、データ・オブジェクトに関連する冗長データを生成するプロセスの簡略フローチャートである。ユーザは、データを生成し、ホスト・システム上のアプリケーションからデータをセーブする。データは、ディスク記憶媒体に保存するため、インタフェースを介して受け取られる（ステップ４００）。記憶装置のコントローラは、データ用の空間と、関連する冗長データ用の追加的空間とをアロケートする（ステップ４０２）。記憶装置内のコントローラは、所望の保護レベルに基づいて、複数の冗長性アルゴリズムから冗長性アルゴリズムを選択する（ステップ４０４）。例えば、コントローラは、保存されるオブジェクトの属性に含まれる情報に基づいて、冗長性アルゴリズムを選択することができる。一実施例では、操作者は、オブジェクトの属性内でエラー保護レベルを指定することができ、コントローラは、指定されたレベルを使用して、適切な冗長性アルゴリズムを選択することができる。コントローラは、選択された冗長性アルゴリズムに従い、受け取ったデータに基づいて冗長フィールドを構成する（ステップ４０６）。最後に、データ・オブジェクト及び関連する冗長フィールドは、別々の情報単位として記憶媒体に書き込まれる（ステップ４０８）。一般に、冗長フィールド（冗長データ）は、アプリケーションからアクセス可能ではなく、あるレベルの信頼性を提供するためにＯＳＤのコントローラによって使用されることを理解されたい。保存オブジェクトが損傷を受けた場合、ＯＳＤは、冗長データを使用して、アプリケーションによって使用される損傷オブジェクトを修復（回復）する。
【００３０】
本発明のシステム及び方法は、オブジェクトがアクセスされ、変更され、且つ／又は保存される毎に、選択された冗長性アルゴリズムを各オブジェクト（又はオブジェクトのサブ要素）に適用するように適合されることができることを理解されたい。例えば、データ構造に更新が施された場合、冗長データも更新され、書き込まれる。オプションとして、性能を高めるため、頻繁に更新される（メタデータなどの）データ構造用の冗長データは、メモリにロードされて更新され、頻繁にディスクに書き戻す必要をなくすことができる。更新された冗長データをディスクに書き込むため、アイドル・ディスク・サイクルが使用されることができる。冗長保護データで読み取りエラーが発生した場合、喪失データを再構成するために、冗長フィールドが利用されることができる。
【００３１】
ＯＳＤは、セクタ毎ではなく、論理オブジェクト境界に基づいた保護を提供するように適合される。ＯＳＤは、保存されたオブジェクトの境界を知っているので、例えば、異なる保護レベルを提供する利用可能な冗長方式の中から選択を行うため、オブジェクトについての情報ばかりでなく、境界情報も使用することができる。保護の品質は、（メタデータ、重要なユーザ・データ、あまり重要でないユーザ・データなど）何が保護されるのかに基づいて調整されることができる。冗長方式の選択、選択された冗長方式の適用、及び冗長情報を使用する損傷文書の回復は、ＯＳＤによって動的に処理される。本発明の実施例は、オブジェクトに関連する属性を利用して、オブジェクト用及び／又はサブ要素若しくはサブフィールド用のエラー保護レベルを決定する。ＯＳＤは、エラー保護をデータ・オブジェクトに関連する属性に基づいたものにするので、操作者又はユーザは、データ・オブジェクトの属性を介して、好ましい保護レベルを指定することができる。したがって、属性は、ユーザが各オブジェクト毎に保護レベル／品質の選好を指示し得る機構を提供する。一代替実施例では、冗長方式の適用は、ユーザからは全く透過的である。
【００３２】
図５は、本発明の一実施例による、データ構造の冗長記憶のためのシステム５００の簡略ブロック図である。システム５００は、インタフェース５０６を介してホスト・システム５０４に結合される記憶装置５０２を含む。記憶装置５０２は、オブジェクト・ベース・ファイル・システム・インタフェース５０８と、コントローラ５１０と、読み取り−書き込み機構５２４と、記憶媒体５２６とを含む。オブジェクト・ファイル・システム・インタフェース５０８は、空間マネージャ機能５２２などの低レベル記憶機能５２０を含むことができる。コントローラ５１０は、プロセッサ５１２と、カスタム・ロジック５１４と、メモリ５１６と、複数の冗長性ポリシー５１８と、オプションである複数の冗長性アルゴリズム５２８とを含むことができる。加えて、オブジェクト・ベース・ファイル・システム・インタフェース５０８は、コントローラ５１０と統合されることができる。
【００３３】
一般に、オブジェクト・ベース・ファイル・システム・インタフェース５０８は、空間マネージャ機能５２２を含む低レベル記憶機能５２０を抽象化する。特に、オブジェクト・ベース・ファイル・システム・インタフェース５０８は、メタデータを管理し、（アクセス要求スケジューリング、データ・レイアウトなどの）低レベル・データ記憶タスクを管理し、インタフェース５０６に接続されたホスト・システム５０４に単純なオブジェクト・ベースのデータ・アクセスを提供する。オブジェクト・ベース・ファイル・システム・インタフェース５０８は、非オペーク属性にアクセスし、受け取ったオブジェクトに関連するメタデータを生成する。したがって、オブジェクト・ベース・ファイル・システム・インタフェース５０８は、記憶媒体５２６に保存される内容を知っている。インタフェース５０６は、ネットワーク・インタフェース、又はアドバンスト・テクノロジ・アタッチメント（ＡＴＡ）若しくは小型コンピュータ・システム・インタフェース（ＳＣＳＩ）などの標準記憶装置インタフェースとすることができる。
【００３４】
一般に、オブジェクト・ベース・ファイル・システム・インタフェース５０８は、記憶媒体５２６に保存するためにデータを受け取る。インタフェース５０６を介して送られたデータ・オブジェクトは、オブジェクト・ベース・ファイル・システム・インタフェース５０８によって受け取られる。オブジェクト・ベース・ファイル・システム・インタフェース５０８は、各データ・オブジェクト用に記憶媒体５２６上に空間をアロケートし、アロケートされた空間及びデータ・オブジェクトの非オペーク属性に基づいて、各データ・オブジェクト用のメタデータを生成することができる。その後、メタデータは、コントローラ５１０に提供され、メモリ５１６に保存された複数の冗長性ポリシー５１８に従って処理されることができる。コントローラ５１０は、データ・オブジェクトに関連する冗長データを計算する。加えて、オブジェクト・ベース・ファイル・システム・インタフェース５０８は、冗長データ用に記憶媒体５２６上に追加的空間をアロケートし、その後、データ・オブジェクト及び関連する冗長データは、読み取り−書き込み機構５２４によって記憶媒体５２６に書き込まれる。
【００３５】
一般に、コントローラ５１０は、データ・オブジェクトの要素から冗長フィールドを生成する。低レベル記憶機能５２０、空間マネージャ機能５２２、及びオブジェクト・ベース・ファイル・システム・インタフェース５０８は、コントローラ５１０内に統合されることができ、又は特定の実施に応じて別個の要素とすることができる。代替として、そのような要素は、カスタム・ロジック５１４内に統合されることができる。
【００３６】
一実施例では、複数の冗長性アルゴリズム５２８は、メモリ５１６に保存されることができる。コントローラ５１０は、冗長性ポリシー５１８及び／又は保存されるデータ・オブジェクトの重要性判断に基づいて、複数の冗長性アルゴリズム５２８から冗長性アルゴリズムを選択するように適合されることができる。例えば、データ・オブジェクトが重要なユーザ・データ又はメタデータを含む場合、複数の冗長性アルゴリズムのうちのその他の冗長性アルゴリズムに比べてより高いデータ保護レベルを有する冗長性アルゴリズムが選択される。代替として、データ・オブジェクト及びそれらのサブフィールドは、異なる冗長性アルゴリズムを使用して処理されることができ、それによって、異なる保護レベルを有するデータ・オブジェクト冗長フィールド及びサブフィールド冗長フィールドを生成する。一般に、冗長性ポリシー５１８は、冗長記憶用にデータ・オブジェクトを処理する１組の手続きを定義することができ、それらの手続きは、冗長データ記憶及び検索用にコントローラ５１０によって使用されることができる。
【００３７】
図６は、本発明の一実施例による、読み取りエラーが発生した場合に冗長フィールド・データを使用して喪失データを回復するプロセスの簡略フローチャートである。読み取りエラーは、保存データ・オブジェクトの試行読み取りに基づいて検出される（ステップ６００）。コントローラは、記憶媒体上の冗長フィールドの、保存データ・オブジェクトに関連する冗長データにアクセスし、それを読み取る（ステップ６０２）。コントローラは、冗長データ及び回復アルゴリズムを使用して、喪失データ・オブジェクトを再構成する（ステップ６０４）。一般に、回復アルゴリズムは、冗長性アルゴリズムに依存する。
【００３８】
図７は、標準的なセクタ・ベースのエラー保護を含まないＯＳＤにデータ冗長性及び回復可能性を提供するための、本発明の一実施例によるＯＳＤ冗長方式の簡略フローチャートである。例えば、（コンピュータなどの）ホスト装置のアプリケーションから受け取ったアクセス要求に基づいて、コントローラは、記憶装置に保存されたオブジェクトにアクセスする（ステップ７００）。加えて、コントローラは、アクセスされたオブジェクトに関連する冗長データにもアクセスする（ステップ７０２）。アクセス又は読み取りエラーが発生した場合（又はエラーに遭遇した場合）、コントローラは、アクセスされた冗長データからデータ・オブジェクトを回復する（ステップ７０４）。読み取り又はアクセス・エラーに遭遇しなかった場合、コントローラは、冗長データを更新するように適合されることを理解されたい。例えば、アクセス日時についての情報及びオブジェクトに施された変更についての情報が、冗長データを修正するのに使用されることができ、修正冗長データは、記憶媒体に保存されることができる。一実施例では、コントローラは、記憶媒体上で既存冗長データを修正冗長データによって上書きするように適合される。別の実施例では、コントローラは、データ・オブジェクトが変更される毎及び／又は記憶媒体に書き込まれる毎に、記憶媒体上の異なるロケーションに新しい冗長オブジェクトを生成し、それによって、喪失データを回復するため、及び保存オブジェクトへの変更を追跡するために使用され得るバージョン管理及び冗長方式を確立する。オブジェクトの初期のバージョンは、要望通りに冗長データの個々のバージョンから再現されることができる。
【００３９】
保存データ・オブジェクト全体に関する回復及び冗長データの保存が説明されたが、本発明は、１つ又は複数の冗長性アルゴリズムを選択的にデータに適用するように適合されることができる。例えば、一実施例では、本発明は、非最重要（ユーザ）データを、第１のレベルの冗長性アルゴリズムを使用して、コントローラによって計算された関連する冗長データと一緒に記憶媒体に保存するように適合されることができる。コントローラは更に、（メタデータなどの）最重要データを、第２のレベルの冗長性アルゴリズムを使用して、関連する冗長データと一緒に記憶媒体に保存するように適合されることができる。この場合、第２のレベルの冗長性アルゴリズムは、第１のレベルの冗長性アルゴリズムよりも厳格なエラー検査及び回復方式を利用することができる。一代替実施例では、記憶装置は、すべてのデータに対して標準的なセクタ・ベースの冗長方式を利用し、メタデータ・オブジェクトだけにオブジェクト・ベースの冗長性アルゴリズムを適用するように適合されることができる。この場合、冗長データは、メタデータ・オブジェクトを回復するために利用されることができ、これによって、全ディスク又はファイル・システムの浪費を防止することができる。
【００４０】
本発明は、従来の記憶システムにまさるいくつかの利点を提供する。第１に、冗長方法は、論理レベル（オブジェクト・レベル）で適用され、冗長性をはるかに効率的なものにする。例えば、冗長方式は、ＲＡＩＤ装置によって提供されるような（セクタ内のすべてのデータなどの）所定の関係ではなく、個々のオブジェクトのような任意の量のデータを対象とすることができる。第２に、冗長方法は、冗長性に見合う効果が期待できるデータ構造だけに適用されることができる。言い換えると、記憶媒体に保存されたすべてのデータ・オブジェクト又はデータ構造が、冗長データによる保護を必要としているわけではない。第３に、必要な保護レベルに応じて、異なる冗長方法／レベルが、異なるデータ構造に適用されることができる。したがって、本発明の実施例は、データ構造及びユーザの必要に応じた性能又は信頼性に適応させ得るより洗練された保護機構を提供する。具体的には、記憶装置上のすべてのデータを等しく扱うのではなく、本発明は、メタデータ又は重要なユーザ・データには、その他のあまり重要でないオブジェクトよりも強力なエラー検査技法又は冗長方式を利用することができ、それによって、より重要なデータにはより優れた保護を提供する。
【００４１】
従来の冗長方式は、ランダム・データを前提にするが、本発明は、そのような前提を設ける必要はない。特に、本発明は、内容認識（ｃｏｎｔｅｎｔ−ａｗａｒｅ）装置なので、本発明のシステム及び方法は、データ構造上で内容認識冗長方式を使用することができる。そのような方式は、保存されたデータ型の知識を利用し、あるデータ型の非ランダム特徴を利用するために使用されることができる。本発明のシステム及び方法は、（メタデータなどの）最重要データ用に付加的な保護レベルを追加することによって、ＲＡＩＤ記憶システム並びにその他の回復システム及び方法の信頼性を増強するために使用されることもできる。ＲＡＩＤ記憶システムを、本明細書で説明された内容認識オブジェクト・ベース冗長フィールドによって補足することによって、本発明は、ＲＡＩＤセットの再構築中のエラーが、ファイル・システムの重要な部分を破壊することを防止する。最後に、本発明は、１つの読み取りエラーが原因で非ＲＡＩＤ保護ファイル・システムが損なわれることを防止する費用対効果の優れた手段を提供する。具体的には、実際のデータ構造に関連する冗長データを冗長フィールドに提供することによって、読み取りエラーは、冗長フィールドに保存された冗長データからデータ・オブジェクトを単純に再構成することによって克服されることができる。このようにして、非ＲＡＩＤ保護ファイル・システムは、従来のＲＡＩＤシステムの再構成／復元の利点を、追加コストを必要とせずに提供する。
【００４２】
本発明の様々な実施例の多くの特徴及び利点が、本発明の様々な実施例の構造及び機能の詳細と一緒に上記の説明において説明されたが、この開示は、説明的なものに過ぎず、添付の特許請求の範囲がそれで表現される、言葉の広い一般的な意味によって指示される本発明の原理の最大限の範囲内で、細部、特に部分の構造及び配置に関して、変更が施されることができることを理解されたい。例えば、特定の要素は、本発明の範囲及び主旨から逸脱することなく、実質的に同じ機能性を維持しながらも、データ構造冗長システムの特定の適用例に応じて変わることができる。加えて、本明細書で説明された好ましい実施例は、データ構造にデータ構造の内容に基づいて関連する冗長フィールドを追加するオブジェクト・ベース記憶装置システムに関するが、本発明の教示は、本発明の範囲及び主旨から逸脱することなく、従来のファイル・システムを含む記憶システムを始めとする任意のタイプの記憶システムにも適用され得ることは、当業者には理解されよう。
【図面の簡単な説明】
【００４３】
【図１】本発明の実施例が利用され得るディスク・ドライブの等角図である。
【図２Ａ】従来の記憶装置モデルの簡略ブロック図である。
【図２Ｂ】本発明の一実施例によるオブジェクト・ベース記憶装置モデルの簡略ブロック図である。
【図３Ａ】本発明の一実施例によるデータ・オブジェクトの簡略ブロック図である。
【図３Ｂ】本発明の一実施例による、冗長フィールドを生成するための論理アルゴリズムの簡略ブロック図である。
【図３Ｃ】本発明の一実施例による、図３Ｂのアルゴリズムによって生成された冗長フィールドが追加された図３Ａのデータ構造の簡略ブロック図である。
【図３Ｄ】本発明の一代替実施例による符号化データ構造の簡略ブロック図である。
【図４】本発明の一実施例による、冗長データを生成及び保存するプロセスの簡略フローチャートである。
【図５】本発明の一実施例による、データ構造の冗長記憶用に適合されたシステムの簡略ブロック図である。
【図６】本発明の一実施例による、冗長フィールド・データに基づいて保存データ・オブジェクトを回復するプロセスの簡略フローチャートである。
【図７】本発明の一代替実施例による、冗長フィールド・データに基づいて保存データ・オブジェクトを回復するプロセスの簡略フローチャートである。
【符号の説明】
【００４４】
１００  ディスク・ドライブ
１０１  ホスト・コンピュータ
１０２  基台
１０３  インタフェース
１０６  ディスク・パック
１０７  ディスク
１０８  ディスク・クランプ
１０９  中心軸
１１０  ディスク・ヘッド・スライダ
１１２  サスペンション
１１４  トラック・アクセス・アーム
１１６  駆動部
１１８  音声コイル・モータ
１２０  回転軸
１２２  経路
１２４  ディスク内径
１２６  ディスク外径
１３０  サーボ電子機器
１３１  回路
１３２  下面
２００  従来の記憶システム
２０２Ａ  ホスト装置
２０２Ｂ  ホスト装置
２０４  記憶装置
２０６  ブロック・インタフェース
２０８  オペレーティング・システム
２１０  アプリケーション
２１２  システム・コール・インタフェース
２１４  ファイル・システム（ユーザ・コンポーネント）
２１６  ファイル・システム（記憶コンポーネント）
２１８  ブロックＩ／Ｏマネージャ
２２０  読み取り／書き込み機構
２２２  記憶媒体
２５０  オブジェクト・ベース記憶システム
２５４  オブジェクト・ベース記憶装置
２５６  オブジェクト・インタフェース
２５８  オブジェクト・ベース・ファイル・システム・インタフェース
２６０  読み取り／書き込み冗長符号器／復号器
３００  データ・オブジェクト
３０２  データ構造
３０３  データ
３０４  データ
３０６  オブジェクト属性
３０８  メタデータ
３１０  要素（又はサブフィールド）
３１２  パリティ演算
３１４  冗長フィールド
３２０  記憶媒体
３３０  論理境界
５００  システム
５０２  記憶装置
５０４  ホスト・システム
５０６  インタフェース
５０８  オブジェクト・ベース・ファイル・システム・インタフェース
５１０  コントローラ
５１２  プロセッサ
５１４  カスタム・ロジック
５１６  メモリ
５１８  冗長性ポリシー
５２０  低レベル記憶機能
５２２  空間マネージャ機能
５２４  読み取り−書き込み機構
５２６  記憶媒体
５２８  冗長性アルゴリズム
【図１】
0004547357.tif 000002
【図２Ａ】
0004547357.tif 000003
【図２Ｂ】
0004547357.tif 000004
【図３Ａ】
0004547357.tif 000005
【図３Ｂ】
0004547357.tif 000006
【図３Ｃ】
0004547357.tif 000007
【図３Ｄ】
0004547357.tif 000008
【図４】
0004547357.tif 000009
【図５】
0004547357.tif 000010
【図６】
0004547357.tif 000011
【図７】
0004547357.tif 000012