0xjs@ゴールデンファイナンス
超並列コンピュータAOのローンチを予告してから2週間後、北京時間2024年2月28日未明、分散型ストレージプロジェクトArweaveはAO公開テストネットワークを正式にリリースしました。
ティーザーから公式発表まで、ArweaveトークンARの価格は1倍以上に上昇しました。
<
Arweaveチームによると、Arweaveは2020年初頭に、Arweaveデータストレージプラットフォームが拡張性の高いブロックチェーンネットワークを支えることができるというアイデアを持っていました。2023年、トークンを使ってコンテンツの所有権を表す計画に取り組んでいるときに、そのようなトークンの市場をサポートするには拡張性の高いネットワークが必要であることに気づき、その後、黙々と開発を始めました。
Arweaveの創設者であるウィリアムズ氏は、AOが構築した超並列コンピュータは、任意の数のスレッドを同時に並列実行する能力を持ち、信じられないほどスケーラブルだと述べた。
つまり、もともと分散型ストレージを手がけていたArweaveは、コンピューティングとスマートコントラクト市場に参入する。イーサのようなパブリックチェーンとはまったく異なるアーキテクチャとアプローチを取っているにもかかわらず、実際にはパブリックチェーン市場に参入し、競合している。
Arweaveの創設者であるウィリアムズ氏は、AOはイーサに対抗できると確信していると述べた。では、AOとは一体何なのでしょうか?また、創業者がイーサと競争する自信を持つ理由は何なのでしょうか?
AOとは
AOの公式文書によると、AOコンピュータは参加者指向(アクター指向)のマシンで、そのコア・データ・プロトコルに準拠するノードのネットワークから生まれ、Arweaveネットワーク上で動作します。プロトコルとその機能、技術的な詳細について簡単に説明する。
AOコンピュータは、単一の統一されたコンピューティング環境(単一システムイメージ、複数のネットワーク、分散データベース、または複数のサーバーへの共通インターフェースを使用する分散コンピューティングのモデル)です。しかし、ユーザーにとっては1つのシステムである)、分散ネットワーク内の異種ノードのセット上でホストされます。AOは、任意の数の並列プロセスが常駐し、オープンなメッセージングレイヤーを通じて調整できる環境を提供することを目的としている。このメッセージング標準は、Webサイトが別々のサーバーで実行されながら、ハイパーリンクによってまとまりのある統一されたエクスペリエンスになるのと同じように、マシンの独立したプロセスを「ネットワーク」に接続します。
既存の分散型コンピューティングシステムとは異なり、AOは、ネットワーク自体の検証可能性を維持しながら(したがって信頼を最小限に抑えながら)、プロトコルで強制されるサイズや形式の制限なしに計算操作をサポートすることができます。加えて、AOの分散型およびモジュール型のアーキテクチャにより、既存のスマートコントラクトプラットフォームはネットワークに簡単に「プラグイン」することができ、他のどのプロセスからもメッセージを送受信できる単一のプロセスとして機能します。
AOは、コンピューティング環境のすべてのユーザーに一連の選択を強制するのではなく、モジュール式に構築されています。aoは、ユーザーが自分のニーズに最も適した仮想マシン、分散型ソートトレードオフ、メッセージングセキュリティ保証、支払いオプションを選択できるようにしています。そしてモジュール化された環境は、最終的に同じフォーマットを共有するすべてのメッセージをArweaveの分散データレイヤーに収めることで統一される。このモジュール性により、非常に幅広いワークロードに対応する統一されたコンピューティング環境が構築され、各プロセスは容易にメッセージを転送し、共同作業を行うことができる。
AOの中核的な目標は、実際の規模の制限なしに、信頼とコラボレーションのない計算サービスを可能にすることです。これは、スマートコントラクトアプリケーション(コード以外を信頼する必要のないサービス)と従来のコンピューティング環境(Amazon EC2など)の利点を組み合わせることで、以前は不可能だったアプリケーションの新しい設計空間を提供します。
スケーラビリティがあるため、開発者がAOを使用する自然な方法は、ネットワーク内で独自のコマンドライン( aos)プロセスを起動し、コマンドを発行し始めることです。この開発者の体験は、開発者がクラウドホスト上に新しいサーバーインスタンスを作成し、SSH経由で接続するのと似ているが、このコマンドラインプロセスがスマートコントラクトの特性を持っている点が異なる。このコマンドラインプロセスは、特定のデータセンターや物理的な場所に存在せず、その計算は完全に信頼されていない。各ユーザーはメッセージを送信し、他のすべてのプロセスやプロシージャーと対話することができる。その結果、グローバルな「シングル・システム・イメージ」、つまり世界中に分散し、あらゆる規模で動作する単一の統一されたコンピュータが、すべてのユーザー間で共有されることになります。
エンドユーザーや開発者の視点から見ると、AOはシンプルです。 これらのプロセスは、特定のサーバー上でホストされているわけでも、個人やグループの管理下にあるわけでもありません。その代わり、これらのプロセスは、一度開始されると、証明可能な中立的な方法で永続的にサービスを提供するために暗号的に委任することができます。これにより、長期にわたってユーザーの権利を保証することができます。
AOの中核機能
既存の分散コンピューティングシステムと比較して、AOプロトコルには次のような特徴があります:
任意の数のプロセス(「コントラクト」)の実行
:AOでは、アプリケーションは任意の数のプロセス(「コントラクト」)を実行できます。strong>:AOでは、アプリケーションは任意の数の通信プロセスによって構築されます。オリジナルのActorモデル(Carl Hewitt, 1973)とErlangにインスパイアされたAOでは、プロセスがお互いにメモリを共有することはできませんが、ネイティブのメッセージパッシング標準を介して連携することはできます。各プロセスは、互いに干渉することなく、利用可能なコンピューティングリソースの全速力で実行することができる。メッセージングに焦点を当てることで、AOは従来のスマートコントラクトよりも、従来のWeb2/分散システム環境に近いスケーリングメカニズムを実装することができます。
インプロセスでの無制限のリソース利用:SmartWeaveとLazyLedger(後にCelestiaと改名)のオリジナルバージョンのレイテンシー評価アーキテクチャを基に、AOネットワークのノードは、プロセスの状態に関する合意遷移に到達するために計算を実行する必要はまったくありません。状態は、Arweaveがホストするプロセスメッセージログによって「ホログラフィックに」暗示される。計算コストはユーザーに委譲され、ユーザーは自分の状態を計算するか、好きなノードに計算を依頼することができる。
ネイティブな無制限ハードドライブへのアクセス:AOプロセスは、どんなサイズのデータでもシームレスにメモリに直接ロードし、実行し、ネットワークに書き戻すことができます。このセットアップにより、典型的なリソースの制約がなくなり、完全な並列実行が可能になるため、従来のスマート・コントラクト・プラットフォームの制限を超えて、アプリケーション開発の可能性が大きく広がります。その結果、機械学習タスクや高度に計算された自律知能など、大量のデータ処理や計算リソースを必要とする複雑なアプリケーションへの道が開かれます。
コントラクトの自動起動:従来のスマートコントラクト環境(Ether、Solana、Polygonなど)では、コントラクトはユーザートランザクションからの要求に応じて「起動」し、計算を実行します。aoは、コントラクトがスケジュールされた "cron "インタラクションを行えるようにすることで、この制限を取り除きます。この制限は、コントラクトがスケジュールされた "cron "インタラクションを持つことを許可することによって取り除かれ、このインタラクションは自動的にコントラクトを起動し、設定された間隔で計算を実行する。適切な頻度で計算の評価をトリガーするために、どのようなユーザーでも、あるいはプロセス自身でも、ノードにお金を払ってプロセスを "購読 "することができます。
拡張をサポートするモジュラーアーキテクチャ:aoのコアアーキテクチャはオープンデータプロトコルであり、誰でも実装を構築することができます。シーケンサーからメッセージパッシングリレー、さらにはシステムの仮想マシンに至るまで、すべてを自由に交換し、拡張することができる。この柔軟性により、Arweaveエコシステム内の既存のスマートコントラクトシステム(Warp、Ever、Memなど)がaoユニファイドネットワークにプラグインでき、ユニファイドネットワークからメッセージを送受信できるようになる。また、これらすべてのスマートコントラクトシステムが、Arweave上でより首尾一貫したコンピューティング体験を提供するために、同じインフラとツールの一部を共有できるようになります。
AO基本アーキテクチャ
プロセス:ネットワークの計算単位。プロセスは、Arweave に保存されたインタラクション・メッセージのログと、初期化データ・アイテムによって表現されます。プロセスは、初期化時に必要な計算環境(仮想マシン、スケジューラ、メモリ要件、必要な拡張)を定義する。プロセスはこのようにコンセンサスレベルで表現されるが、プロセスを実行できる状態を計算し、要件を満たす計算ユニットによって選択できることも意味する。プロセスは、ユーザーのウォレットからメッセージを受け取るだけでなく、メッセージングユニットを通じて他のプロセスからのメッセージを転送する。プロセス開発者は、これらのメッセージの信頼性を判断する方法を自由に選択できます。
メッセージ: プロセスとの各インタラクションはメッセージで表現されます。メッセージの中核はANS-104準拠のデータ項目です。AOメッセージのセマンティクスは、UDPパケットとTCPパケットの中間のようなものです。メッセージは一度だけ配送されることが保証されていますが、メッセージユニットによって転送されなかったり、受信者が実際に処理しなかったりすると、配送は行われません。もしメッセージがメッセージユニットによって転送されることがなければ--あるいは受信者がそれを実際に処理することがなければ--、その配送は起こらない。
Scheduler Units (SUs):プロセスに送られるメッセージにスロット番号を割り当て、データがArweaveにアップロードされることを保証する責任を持ちます。スケジューラユニットは、プロセスに送られるメッセージに、アトミックにインクリメントされる1つのスロット番号を割り当てる責任を持つ。一旦割り当てられたら、スケジューラはデータがArweaveにアップロードされ、他の人が永久にアクセスできるようにする必要がある。分散型、集中型、あるいはユーザーホスト型など、さまざまな方法で実現できます。
Compute Units (Compute Units, CU): コンピュートユニットは、ユーザーやメッセージユニットがAOのプロセスの状態を計算するために使用できるノードです。SUはプロセスから受け取ったメッセージをソートする義務があるが、CUはプロセスの状態を計算する必要はない。これにより、CUがプロセスの状態を解決するサービスを提供し、価格、プロセスの計算要件、その他のパラメータを考慮して互いに競争する、ピアツーピアの計算市場が形成される。状態の計算が完了すると、CUは特定のメッセージ解決の出力(ログ、アウトボックス、および他のプロセスを起動するリクエスト)の署名された証明を呼び出し元に返します。
Communication Units (Messenger Units, MU): クランクプロセスに基づいてAOネットワークを介してメッセージを渡すノードの一種で、CUにメッセージを渡し、出力を計算するように調整します。の結果を得ることができる。基本的に、MUはシステムを通してメッセージを送ると、それを処理のために適切なSUに送り、次にCUと調整して相互作用の出力を計算し、生成された送信トレイメッセージに対して再帰的にプロセスを繰り返す。このプロセスは、処理するメッセージがなくなるまで続く。
結論
AOの立ち上げは、Arweaveがストレージプラットフォームからコンピューティングプラットフォームに転じたことを示すものでした。AOが従来のブロックチェーンとはまったく異なるアーキテクチャとアプローチを取っているにもかかわらず、AOはすでにイーサなど多くのスマートコントラクトのパブリックチェーンと競争できる立場にあります。
AOは非常にスケーラブルであると主張しており、もう一つの「イーサ・キラー」であることに疑いの余地はありません。
AOは今後、暗号市場に何をもたらすのでしょうか?
AOは現在ベータ版であり、今後どのように進化していくかは未知数です。