[Cross Value Chain]Cross Value Chain のWhitePaperを読み解いていくシリーズ(6)
原文:https://crosstech.gitbook.io/whitepaper/dacs-node-architecture-and-sustainable-generation-manager
今回は、DACSというCrossValueChain(CVC)のなかではコアとなっているストレージの技術についてお話をしていきます。少しボリュームが多いのですが、大枠で以下のことを解説しております。
DACSはブロックチェーンと分散ファイルシステムを統合し、NFTコンテンツを長期に安全に保存できるアーキテクチャ。
DACSノードはCVCネットワークのストレージ容量を提供し、ストレージ容量に応じて報酬を得る。
SGMはデータの永続性を保証するために、一定期間ごとにデータを新しいDACSノードに複製する。
FASTDは特定のコンテンツを優先的に配信する仕組み。DTSはデータ転送の効率を高める技術。
このアーキテクチャにより、大量のNFTコンテンツを長期間安全かつ効率的に保存できる。
日本語訳+解説
DACSノードアーキテクチャと持続可能な生成マネージャー
この章では、DACSノードアーキテクチャと持続可能な生成マネージャー(SGM)の提案を紹介し、CVC上でのストレージの可用性を維持します。また、システムアーキテクチャとその実装、およびパラメータも紹介されます。
CVCのペイロード内には、格納されたデータのハッシュ値が入力されます。そのため、ハッシュ値とNFTコンテンツを併せて格納できるレイヤー1のブロックチェーンが必要です。現時点では、IPFSファイルシステムストレージノードと独自のブロックチェーンを使用しています。提案されたシステムアーキテクチャは、大量のNFTコンテンツを長期かつ安全に保存することを可能にします。
分散型自治コンテンツストレージ(DACS)
分散型自治コンテンツストレージ(DACS)は、分散ファイルシステムをブロックチェーンに統合するアーキテクチャです。DACSは、IPFSや他のハッシュベースのファイルシステムをネットワーク上の複数のノードにリンクさせることで、持続可能なコンテンツの保存を実現します。各DACSノードは、ユーザーのNFTコンテンツまたはそのペイロードを複数のCVCブロックにトランザクションとして入力することができます。ユーザーはこれらのノードにNFTコンテンツを保存し、NFTデータを失うことなく保持します。
DACSノードのネットワーク設計と条件
DACSノードはストレージデバイスをCVCに接続し、CVCネットワークの維持に貢献します。DACSノードは、CVC上の必要なストレージスペースのみを追加し、不要なものを追加しないように設計されており、マイニングプロセスを安定させます。DACSノードの販売は、現在のトランザクション量とストレージ需要に基づいて計算され、必要に応じて対応するDACSノードのウェブサイトで定期的に販売されます。DACSノードはストレージの運用権を取得し、追加のXCRステーキングを受け入れることができます。ステーキングの量は、DACSノードの物理的なストレージの量に比例します。
DACSノードの運用条件:
DACSノードのストレージ機能は、所有者の責任の下で運用されます。ただし、フェーズ1では、CVCネットワークが安定し、十分に分散化するまで、CROSSTECHはクラウドマイニング形式で分散型自治コンテンツストレージ(DACS)マイニングプールおよびDACSノードの物理ストレージスペースのメンテナンスを運営します。DACSノードの数が十分に分散化し、フェーズ2以上に入ると、各DACSノードはDACSノードの運用要件を満たすことで、独自の物理ストレージを運用および管理することができます。
DACSノードの所有者になるには、ストレージと担保としてのXCRが必要です。XCRの担保は、DACSノードのネットワークの障害の重大度に応じて差し引かれます。 XCRの担保は契約期間の終了時にDACSノードに返還されますが、DACSノードが引き続き運用される場合は担保として残る場合があります。
DACSノードの所有者は、そのストレージスペースの割合と1日あたりの総ストレージスペースに対する難易度の乗算に基づいて、毎日の報酬を受け取ります。計算式は以下の通りです:
Figure 4 shows how the rewards are distributed.
数式の説明:
こちらの数式は、ユーザーに与えられる報酬を計算するためのものです。
UR (User reward) はユーザーの報酬を示しています。
UC (user storage capacity) はユーザーのストレージ容量を示しています。
ΣAGC/UC この部分は、利用可能な全体のストレージ容量 (ΣAGC) をユーザーのストレージ容量 (UC) で割った値です。これは、ユーザーのストレージ容量が全体に対してどれだけの比率を占めているかを示しています。
D (Difficulty) は難易度を示しており、24時間平均のストレージ容量と1日に発行されるコインの数の積を、30日間のストレージ容量の平均で割った値となっています。
Sustainable Generation Manager (SGM)
Sustainable Generation Manager(SGM)は、CVCに保存されたデータが永続的に続くようにするために開発された技術であり、ストレージデバイスの寿命やその他のリスクによるデータの損失を防ぎます。SGMはまた、不要な暗号化および分散化されたデータによるデータ容量の増加を避けることで、データの過度な分散化を排除します。
DACS単体では、個々のストレージデバイスがデータを永久に100年または200年保存することを保証することはできません。そのため、システムレベルで維持する必要があります。 SGMは各ストレージのタイムスタンプを保持し参照し、データまたはNFTとその内容を他のDACSノードに複製します。デフォルトのストレージ有効期限は、データが保存された日の終わりから180日ごとです。ストレージの寿命が切れると、DACSノードは新しいDACSノードに複製および復元されます。
第1世代ノードはその後期限切れとなり、その上のすべてのデータが削除されます。削除後、ノードは新しいコンテンツのストレージスペースとして再利用される可能性があります。SGMは、第1世代DACSノードのデータを第2世代の空きスペースに複製します。複製が完了すると、第1世代のストレージスペースは新しいコンテンツのストレージスペースとして解放されます。
SGMパラメータ
まず、データはストレージノードに保存され、最後の更新日のデータがメインのブロックチェーンネットに保存されます。180日以上経過した場合、SGMは最も近いネットワーク距離(ノードホップ数)で新しいストレージノードを検索し、対象のストレージノードを選択します。対象のノードは、180日以上経過したストレージノードのデータをP2P接続で保存します。主なパラメータは以下の通りです:
ストレージノードの最終更新日
各ストレージノードの更新日時のタイムスタンプの測定
最も近いPOPSによる新しいストレージノード候補の検索
コピーコマンドによるデータの複製
以下の表は、条件付きパラメータのリストを示しています:
SGMバラターク: SGMはストレージノードの最後の更新日やストレージノードの日付の計測方法など、特定の機能とパラメータを持っています。これらのパラメータは、ノードの検索やデータの重複性を制御するためのものです。特に、日付のパラメータは1日、1週間、1ヶ月、3ヶ月、6ヶ月、12ヶ月というように様々な期間で設定されています。
SGMの主な機能と目的:
SGMは、新しいストレージノードの候補を最も近いノードによって検索する機能を持っています。これは、1ホップ、2ホップ、3ホップという3つの異なる距離で行うことができます。
重複した日付のパラメータは、1日、1週間、1ヶ月、3ヶ月、6ヶ月、12ヶ月として設定されています。これは、データの重複性を制御するためのものであり、一定期間後に同じデータが再度アップロードされることを防ぐためのものと思われます。
背景情報: SGMはストレージの成長を管理するためのシステムで、特定のアルゴリズムやパラメータに基づいて機能します。このシステムは、ストレージノードの更新、NFTデータのストレージ、そしてその他の関連するタスクを行うために使用されます。
この表は、SGMの具体的な機能や役割、使用される主要なパラメータを示しています。
FunctionParametersDate of the last update of the storage node.YearMonthDateMeasure of each storage node date with timestamp.YearMonthDateSearch the new candidate of the new storage node by nearest pops.1 hop2 hops3 hopsDuplication date parameters are set as from 1days to 365 days.1 day1 week1 month3 months6 months12 months
図2はSGMのデータレプリケーションのプロセスフローチャートを示しています:SGMエージェントは常にすべてのストレージノードを監視し、NFTデータの新しい領域の次の候補となるストレージノードを選択します。 180日後(デフォルト値)の古いストレージは、そのデータを新しいストレージに移動し、新しいデータに使用されます。物理的な損傷により容量が減少したストレージも、サイズごとに利用されることがあります。 したがって、これらの古いストレージもアクティブなノードとして維持され、ストレージノードの所有者はDACSノードが保持するストレージスペースのPoSとしてマイニング報酬を受け取ります。
SGM (Storage Growth Management) のプロセスフローチャート:
SGMエージェントは、すべてのストレージノードを監視し、NFTデータの新しいリージョンの次の候補を選択します。
180日(デフォルト値)後、古いストレージは新しいストレージにデータを移動します。物理的なダメージにより容量を失ったストレージも、サイズごとに利用できます。
これにより、古いストレージもアクティブなノードとして維持され、ストレージノードの所有者はPoSとしてのマイニング報酬を保持します。
FASTD (Fast Track Contents Delivery Manager) の説明:
FASTDは、DACSノードとコンテンツを迅速に提供するためのマネージャーです。
実際の使用が高まると、特定のNFTコンテンツの配信が増加します。FASTDはこの増加を管理し、必要に応じて新しいDACSノードにデータを複製します。これにより、CPUオーバーヘッドとネットワークトラフィックが最小限に抑えられます。
このシーケンス図は、データの複製と提供のプロセスを視覚的に示しており、特にDACSノードの選択、データの複製、古いDACSノードデータの削除といった主要なステップを強調しています。
Figure 5
Fast Track Contents Delivery Manager (FASTD)
FAST Track Contents Delivery Managerは、DACSノード上でコンテンツを優先的にキャッシュし、指定されたキャッシュ領域で低遅延でアクセス可能なシステムです。
たとえば、一部の金融NFTコンテンツは低遅延でのアクセスが必要です。FASTDを使用することで、コンテンツのオーガナイザーはこれらのコンテンツをFASTDトラックとして選択することができます。また、DTSの使用により、CPUキャッシュストレージスペースを大幅に拡張することも可能です。
DTS (Direct Transfer to Storage)は、コンピュータの記憶システムに関連する技術の1つであり、効率的なデータ転送とストレージの処理を目的としています。上記の図では、DTSのメリットを示すために、DTSを使用した場合と使用しない場合のパフォーマンスの比較が示されています。
メモリとストレージの関係:
図の上部では、CPUからの距離に基づいて、様々なコンピュータの記憶部分のパフォーマンスが示されています。レジスタからネットワークまでの各部分は、CPUからの距離が長くなるにつれてパフォーマンスが低下します。
DTS Cacheは、Local MemoryとStorageの間に配置されており、効率的なデータの転送とアクセスを可能にします。
ベンチマークの比較:
画像の中央部分にある「Bonnie benchmark」とは、Linux OS上でディスクI/Oのパフォーマンスを計測するツールのことを指します。
このベンチマークの結果を見ると、DTSを使用した場合の読み書きの速度が、使用しない場合と比較して大幅に向上していることがわかります。
その他の情報:
CPUやOSの詳細、DTSのセットアップに関する情報も提供されています。
総じて、DTSはコンピュータのデータ転送とストレージの効率を向上させる技術として有効であることが示されています。
DTSは、ハードウェアの装置になるのでソフトウェアだけの改善ではないので、将来的にはDACSノードにハードウェアとして組み込まれるのかなぁとは想像できます。