ArweaveにおけるData Availabilityを理解する [Community Labs]

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1926720/675bebbf-2cd5-4d7a-b538-f8745d7fd07f.png)

:::note info
本記事は下記の翻訳となります。
[『Understanding Data Availability on Arweave』](https://www.communitylabs.com/blog/understand![uploading...0]()
ing-data-availability-on-arweave)（by Community Labs）
:::

データアベイラビリティ（DA）とは、ブロックで参照されるすべてのデータがネットワーク参加者にとって実際に利用可能であることを保証することを指します。ブロックは、トランザクションデータやステートなどの重要な情報を含む基本的なデータ構造です。完全なデータアベイラビリティがなければ、ノードはネットワークのステートを完全に検証することができず、セキュリティ上の問題や潜在的な攻撃につながる可能性があります。

![](https://cdn.prod.website-files.com/66c607043f775347e75460f6/672b9309f77f1bec3512eb7d_672b91e479e635aeb5917370_Blog%2520Graphic%25201920x1080.png)

## データアベイラビリティ委員会

データアベイラビリティ委員会（Data Availability Committees: DACs）は、特にスケーリングソリューションにおけるデータ管理とアベイラビリティに焦点を当てています。これは Arweave Network や AO には**適用されず**、スケーラビリティの問題が存在する L2 に適用されます。

例えば、Optimisticチェーンは、オフチェーンデータストレージの管理に DACs を使用します。AO に関しては、Arweave Network はストレージとデータアベイラビリティの両方を担当します。Arweave Network が DA として機能する場合でも、これは Validium ではありません。Validium は ZK-rollups を使用してトランザクションの整合性を強制するスケーリングソリューションです（[Ethereum の場合](https://ethereum.org/en/developers/docs/scaling/validium/)）。

## Arweave Network の DA アプローチ

### Wildfire

Wildfire は、ピアランキングシステムを通じてデータアベイラビリティを最適化する、Arweave Network の適応型対話インセンティブエージェント（Adaptive Interacting Incentive Agents: AIIA）ゲームの実装です。

ノードは以下の2つの主要な要因に基づいてピアをランク付けします：

1. 新しいトランザクション/ブロックの共有における寛容さ

2. 情報リクエストへの応答性

これはどのように高いデータアベイラビリティを維持するのでしょうか？ノードはピアのリストを保持し、データ共有速度に基づいてスコアを付けます。高スコアのピアは最初にメッセージを受け取り（並行して）、低スコアのピアは2番目に受け取ります（一つずつ）。リストは定期的にクリーンアップされ、パフォーマンスの低いピアは削除されますが、新しいピアには自身を証明するための猶予期間が与えられます。

![](https://cdn.prod.website-files.com/66c607043f775347e75460f6/672b95b82c10fd69e92e8d4f_672b95a7cf77bbd0eacfd567_wildfire.gif)

### Succinct Proofs of Random Access

Succinct Proofs of Random Access (SPoRA) は、Arweave Network 内でデータが効率的に保存され、取得されることを確実にするメカニズムです。計算能力だけに焦点を当てるのではなく、SPoRA は最も速くデータにアクセスして取得できるマイナーに報酬を与えます。マイナーがデータをより速く効率的に保存および取得できるほど、より多くの報酬を獲得できます。

このアプローチは以前のシステムよりもエネルギー消費が少なく、マイナーが単に計算リソースをプールするのではなく、実際に優れたデータストレージシステムを維持することを奨励します。

### Blockshadows

Blockshadows は完全なトランザクションの代わりにトランザクション ID を含み、ノードがすでにメンプールにトランザクションを持っている場合にブロックを再構築することを可能にします。

ブロックが正式に提案されるとき、そのトランザクションデータの一部はすでにネットワーク全体に配布されています。これにより、トランザクションはネットワーク全体に広がるのとほぼ同じ速さでブロックに含まれることになります。

ここでは、データアベイラビリティを効果的に2つのフェーズに分けています：

1. トランザクションのブロック前配布

2. すでに配布されたデータへの参照（ID）を使用したブロック提案

![](https://cdn.prod.website-files.com/66c607043f775347e75460f6/672b9309f77f1bec3512eb75_672b9287e704b08ca4a61299_Blog%2520Graphic%25201920x1080%2520(1).png)

## AO と Arweave Network

AO におけるメッセージとプロセスログは Arweave Network に保存され、永続的なデータアベイラビリティを確保します。Scheduler Unit (SU) は、メッセージデータが Arweave Network にアップロードされ、永続的に利用可能になることを確実にする必要があります。プロトコルの Holographic State メカニズムは、インタラクションのログが Arweave Network に記録されアクセス可能であることに依存しており、これにより計算結果のコンセンサスを必要とせずにステートを導き出すことができます。

DACs に依存する Layer 2 ソリューションとは異なり、AO は Arweave Network の確立されたインフラストラクチャをストレージとデータアベイラビリティの両方に活用し、分散型計算プラットフォームの堅固な基盤を構築しています。

---

---

:::note info
【Arweave Japan とは】
Arweave Japan は Arweave / AO の日本語ビルダーエコシステム構築を目的とした分散型組織です。

【​Arweave / AO とは？】
​Arweave は無制限にスケール可能な分散型ストレージであり、AO は Arweave 上に構築された無制限にスケール可能な分散型スーパーコンピュータです。Arweave と AO を使って既存のブロックチェーンでは実現不可能であった実用的なプロダクトが開発できます。

イーサリアム L1 のリステーキングによってセキュリティが担保され、TVL はローンチ数ヶ月で 1000 億円近くまで上がり、今後数兆円規模の市場が期待されます。完全フェアローンチされた AO のトークン設計によって、この流動性は AO 上のプロジェクトが活用することができ、ビットコインと同じ半減スケジュールでミントされる AO トークンは開発者やプロジェクトが受け取れる仕組みとなっています。

​Web2 を置き換えるレベルで実用的なプロジェクトが構築できる唯一無二の分散型プロトコル AO で開発することはグローバルの第一線で活躍する非常に大きなチャンスとなっています。

【Social Links】

- [Website](https://arweave.jp)
- [X(Twitter)](https://twitter.com/arweavejp)
- [Discord Community](https://discord.com/invite/bB4N7fAMmp)
- [Github](https://github.com/arweavejp)

【Blog】

- [Zenn Publication](https://dev.to/arweavejp)
- [Note Magazine](https://note.com/kyohei_nft/m/m35c7443e98d0/)
- [dev[.]to](https://dev.to/arweavejp)

![1080x360.jpeg](https://images.lumacdn.com/cdn-cgi/image/format=auto,fit=cover,dpr=2,quality=75,width=1500/editor-images/wj/43c64e53-3361-44d5-a05c-155e4fbf3188)

:::