イレイジャー コーディングとは

イレイジャー コーディングは、オブジェクト データを格納するためにStorageGRIDで使用される2つ目の方法です。イレイジャー コーディング コピーを作成するように設定されたILMルールにオブジェクトが一致した場合、StorageGRIDはオブジェクト データを複数のデータ フラグメントに分割し、追加のパリティ フラグメントを計算して、各フラグメントを別々のストレージ ノードに格納します。オブジェクトがアクセスされた場合、格納されたフラグメントを使用してそのオブジェクトが再アセンブルされます。データ フラグメントまたはパリティ フラグメントが破損したり失われたりしても、イレイジャー コーディング アルゴリズムが残りのデータ フラグメントとパリティ フラグメントを使用してフラグメントを再作成します。

次の例は、オブジェクトのデータに対するイレイジャー コーディング アルゴリズムの使用方法を示しています。この例のILMルールでは6+3のイレイジャー コーディング スキームを使用します。各オブジェクトは6つの等しいデータ フラグメントに分割され、3つのパリティ フラグメントがオブジェクト データから計算されます。ノードやサイトの障害時にもデータが保護されるよう、9つの各フラグメントは複数のサイトの別々のノードに格納されます。


6+3のイレイジャー コーディングの例

6+3イレイジャー コーディング スキームでは、少なくとも9個のストレージ ノード(3個のサイトそれぞれにストレージ ノードを3個配置)が必要です。9個のうちのいずれか6個のフラグメント(データまたはパリティ)が使用可能であれば、オブジェクトを読み出すことができます。最大3つのフラグメントが失われても、オブジェクト データが失われることはありません。データセンター サイト全体で障害が発生した場合でも、他のすべてのフラグメントに引き続きアクセスできれば、オブジェクトの読み出しまたは修復が可能です。


3個のノードに障害が発生した場合の6+3のイレイジャー コーディングの例

4個以上のストレージ ノードが失われると、オブジェクトを読み出せなくなります。


4個のノードに障害が発生した場合の6+3のイレイジャー コーディングの例