フランスのスタートアップ企業は、会計士スタイルの消失訂正符号により、スケールアウト ファイラー向けの最高のソフトウェア テクノロジーを持っていると考えています。
Rozo Systemsは、マルチペタバイト規模のファイルストレージに対応するソフトウェア定義のスケールアウトNASストレージ「RozoFS」を開発しています。同社は、IsilonやQumulo、そしてNASヘッドを備えたオブジェクトストレージサプライヤーとの競合を目指しています。
RozoFSはLinuxベースのx86サーバー上で動作します。その中核を成すのは、比類のないパフォーマンスを誇ると言われる消失訂正符号化アルゴリズム「Mojette変換」です。同社は、このアルゴリズムにより、膨大なデータを保持する分散ストレージシステムに典型的に伴って発生する速度低下、耐障害性の低さ、そして追加コストを解消できると主張しています。
Mojette変換消失訂正符号化
モジェット数学変換は、1994 年以来、フランスのナントにある研究所 (IRCCyN) で研究されてきました。「モジェット」という言葉は、昔、子供たちに数を数えることを教えるために使われていたインゲン豆の一種を指し、現在でも「bean-counter」という言葉が使われているほどです。
法的な話から少し離れると、Mojette変換*消失訂正符号化は数字のグリッドという概念から始まることがわかります。この概念を理解するために、4x4のグリッドを想像してみましょう。行に沿って直線を描き、列に沿って上下に直線を描き、グリッドセルを左右に斜めに描くことができます。下の図1にこれを示します。
Mojette グリッドと投影のアイデア。
線はグリッドの外側に延長されています。各線では、交差するグリッドセルの値を加算または減算し、線の末尾に書き込むことができます。図1では、値b19はセルp1、p6、p11、p16の値の合計です。b22からb16までの値の線は、ソースグリッドを特定の次元(右下から左上への斜め方向)に沿って投影したもののようなものです。
グリッド値は投影された値に変換されていると見ることができます。
図2は、グリッドセルを直交座標(例えば左下のセル0,0)で識別した4つの投影図を示しています。図3は、投影方向を青、赤、緑、黒の色で示しています。
ソース データ グリッドの読み取り時に元のデータが何らかの理由で失われた場合、投影された値を使用して、欠落したセルの値を再構築できます。欠落したセルと交差する 2 つ以上の投影を使用して、その値を再計算できます。
パフォーマンス
Mojette変換消失訂正符号化は、加算と減算の演算のみを使用するため、他の形式の消失訂正符号化よりも高速であると言われています。また、他の形式の消失訂正符号化よりもコードに必要な記憶容量が少なく、より経済的です。
Mojette は、リード・ソロモン、コーシー「グッド」、Intel の ISA-L などの他の形式の消失訂正符号化よりも効率的であると言われています。
Mojette コーディングと Intel ISA-L の比較。**
Mojette デコードを Intel ISA-L および memcpy と比較しました。
製品
RozoFSの基本的な仕組みは、NFSおよびSMBアクセスプロトコルを備えたスケールアウトNASをサーバーやアプリケーションに提供するというものです。実際には、メタデータサーバーのプールとデータサーバーのプールがあり、これらのサーバーはクラスター内のノードとして機能します。サーバーノードは通常、8コアCPU、32GB以上のメモリ、最大80TBのローカルデータストレージを備えています。このシステムは複数のNASヘッドを備え、ハードウェアロックインのない真のソフトウェア定義ストレージです。
基本的なRozoFSシステムレイアウト
RozoFSではデータ複製が不要で、消失訂正符号によりデータ整合性チェックと自己修復が可能です。Rozoクラスタにサーバーを追加するだけで、サービスやサービス品質を中断することなく、数百ペタバイト規模まで拡張可能です。
このソフトウェアは Posix 準拠であり、同社は並列 NFS をサポートする必要はないと考えています。