分散型 LF ストレージはオープン ライセンスに移行されました

分散型の複製されたキー/値データ ストアである LF 1.1.0 が利用可能になりました。このプロジェクトは、ZeroTier によって開発されています。ZeroTier は、異なるプロバイダーにあるホストと仮想マシンを 2 つの仮想ローカル ネットワーク内で結合し、その参加者が P2.0P モードでデータを交換できるようにする仮想イーサネット スイッチを開発しています。プロジェクトのコードはC言語で書かれています。新しいリリースは、無料の MPL XNUMX ライセンス (Mozilla Public License) への移行で注目に値します。

以前は、LF コードは BSL (ビジネス ソース ライセンス) に基づいて利用可能でしたが、特定のカテゴリのユーザーに対する差別のため無料ではありませんでした。 BSL ライセンスは、Open Core モデルの代替として MySQL の共同創設者によって提案されました。 BSL の本質は、高度な機能のコードが最初は変更可能であることですが、追加の条件が満たされた場合に限り、しばらくの間は無料で使用できます。この条件を回避するには商用ライセンスの購入が必要です。

LF は完全に分散化されたシステムであり、任意の数のノード上に単一のデータ ストアをキーと値の形式でデプロイできます。データはすべてのノード間で同期が維持され、すべての変更はすべてのノード間で完全にレプリケートされます。 LF 内のすべてのノードは互いに等しい。ストレージの操作を調整する個別のノードが存在しないため、単一障害点を取り除くことができ、各ノードにデータの完全なコピーが存在するため、個々のノードに障害が発生したり切断された場合の情報の損失がなくなります。

新しいノードをネットワークに接続するために、個別の権限を取得する必要はありません。誰でも自分のノードを起動できます。 LF のデータ モデルは有向非巡回グラフ (DAG) を中心に構築されており、これにより同期が簡素化され、さまざまな競合解決とセキュリティ戦略が可能になります。分散ハッシュ テーブル (DHT) システムとは異なり、IF アーキテクチャは当初、ノードの常時可用性が保証されない信頼性の低いネットワークで使用するように設計されています。 LF の適用分野の中で、最も存続可能なストレージ システムの作成について言及しています。このストレージ システムには、めったに変更されない比較的少量の重要なデータが保存されます。たとえば、LF はキー ストア、証明書、ID パラメーター、構成ファイル、ハッシュ、ドメイン名に適しています。

過負荷や悪用から保護するために、共有ストレージへの書き込み操作の強度に制限が適用され、作業証明に基づいて実装されます。データを保存できるようにするには、ストレージ ネットワークの参加者が特定の手順を完了する必要があります。このタスクは簡単に検証できますが、計算には多大なリソースが必要です (ブロックチェーンと CRDT に基づいたシステムの拡張を組織するのと同様)。計算された値は、競合を解決するときの標識としても使用されます。

代わりに、ネットワーク上で認証局を起動して参加者に暗号証明書を発行し、作業の確認なしでレコードを追加する権利を与え、競合の解決を優先することができます。デフォルトでは、ストレージは参加者の接続に制限なく利用できますが、オプションで、証明書システムに基づいて、ネットワークの所有者によって認証されたノードのみが参加者となることができる、フェンスで囲まれたプライベート ストレージを作成できます。

LFの主な特徴:

  • 独自のストレージを簡単に導入し、既存のパブリック ストレージ ネットワークに接続できます。
  • 単一障害点がなく、全員がストレージの保守に参加できます。
  • すべてのデータへの高速アクセスと、ネットワーク接続が中断された後でもノード上に残っているデータへのアクセス機能。
  • さまざまな競合解決メカニズム (ローカル ヒューリスティック、完了した作業に基づく重み、他のノードの信頼レベルを考慮した重み、証明書) を組み合わせることができるユニバーサル セキュリティ モデル。
  • データをクエリするための柔軟な API。複数のネストされたキーまたは値の範囲を指定できます。複数の値を 1 つのキーにバインドする機能。
  • すべてのデータはキーを含めて暗号化された形式で保存され、検証されます。このシステムは、信頼できないノード上の機密データの保管を整理するために使用できます。キーが不明なレコードは総当たりで決定できません (キーがわからないと、それに関連付けられたデータを取得することは不可能です)。

制限には、小さく、めったに変更されないデータの保存に焦点を当てていること、ロックがなくデータの一貫性が保証されていないこと、CPU、メモリ、ディスク容量、帯域幅に対する高い要件、時間の経過とともにストレージ サイズが継続的に増加していることなどが挙げられます。

出所: オープンネット.ru

コメントを追加します