https://www.spaceandtime.io/blog/smart-contract-indexing

スマート コントラクト インデックス作成のリリースを発表できることを嬉しく思います。これは、コントラクト アドレスを指定するだけで、独自のスマート コントラクト イベントから空間と時間の新しいカスタム テーブル セットを生成できる、ブロックチェーン インデックス作成サービスの新機能です。

それは何か、そしてなぜそれを構築したのか Space and Time を使用して構築すると、主要なチェーンから ZK インデックスを作成した包括的なブロックチェーン データにリアルタイムで自由にアクセスできます。 他のインデックス作成ソリューションと比較して、私たちが採用するアプローチは、より高速で、より成熟し、スケーラブルで、ZK 互換性があり、最も重要なことに、チェーン全体にインデックスを作成する機能があります。 私たちは (単なる単一サーバーの PostgreSQL インスタンスではなく) 大規模なデータ ウェアハウス クラスターを実行しているため、クラスターごとに数十テラバイトのデータを保持できます。 イーサリアムだけで年間約 2 TB の重要なデータが生成されますが、イーサリアムはデータ量の点で最も人気のあるチェーンの中で群を抜いて小さいです。

当社のインデックス作成サービスは、「コア」テーブルに保存されている両方のチェーンレベルのデータ (ウォレット、トランザクション、コントラクト、ブロック、トークン転送などのテーブル、チェーンのインデックス作成が完了した後のジェネシスブロックからの完全なチェーン状態) を提供します。 Aave、Uniswap、Opensea、dYdX、価格フィードなどのプロトコルからのプロトコル固有のセマンティック データセットも含まれます。 しかし、開発者が独自のスマート コントラクトによって発行されたイベントに関するデータにアクセスする必要がある場合があることも理解しており、データを取得するためにコア テーブルを並べ替える必要があるという複雑さを抽象化したいと考えました。

本日、SxT インデックス サービスへの追加機能であるスマート コントラクト インデックスを発表できることを嬉しく思います。 ユーザーはインデックス作成のためにスマート コントラクトのリストを送信できるようになり、Space and Time はそれらの特定のスマート コントラクトからのイベントを含むカスタム テーブルの新しいセットを作成します。 発行されたイベントを新しいテーブルに書き込み、クエリを実行したり、他のインデックス付きデータやオフチェーン データと結合したり、ZK が証明した 1 秒未満のテーブルを実行したりできます。 これにより、開発者は、チェーンレベルのデータ、プロトコル固有のデータ、オフチェーンデータ、および独自のスマートコントラクトイベントからのデータを、高速かつ手頃な価格の ZK で実証済みの方法で活用する、高度にカスタマイズされた、効率的で洗練されたアプリケーションを作成できます。

使い方 独自のスマート コントラクト イベントの取得 スマート コントラクトのインデックス作成は、Space and Time Studio でコントラクト アドレスを送信するだけで簡単です。

Studioにログインし、メインメニューの「スマートコントラクト」タブの下にある「チェーンからデータを取得」ボタンに移動します。 契約のチェーンを選択し、アドレスを入力します 最近のオンチェーン データによって生成されたテーブルを確認し、インデックス作成のために送信します。 それでおしまい! ABI を取得し、スマート コントラクト イベントごとにテーブルを自動的に生成し、それらのテーブルへの自動入力を開始します。

SxT ブロックチェーンのインデックス作成の仕組み 私たちは、各ブロックから各トランザクションに関連付けられたすべてのスマート コントラクト イベントを検証可能な方法で取得する、強力な Rust ベースのインデクサーを構築しました。 まず、チェーンごとに複数の RPC ノードをポーリングし、各 RPC ノードから受け取った内容が一貫していることを確認します。 次に、インデクサーは、ローカルにキャッシュされたスマート コントラクト ABI を介してデータをデコードします。 最後に、このデータはクエリが簡単なリレーショナル フォームに変換され、現在オンチェーンにあるものの正確なコピーであるデータ ウェアハウスにロードされます。 インデックス作成のためにスマート コントラクトを送信すると、発行されたイベントは、定義した新しいテーブルに個別に書き込まれます。 このプロセス全体はブロック時間内に行われます。

インデクサー サービスは単一の Rust ベースのバイナリであるため、Space and Time の分散化が進むにつれて、それにライト ノードを追加して、複数のインデクサー (バリデーター) が各チェーンに冗長的にインデックスを付け、インデックス付けされたデータのコミットメントを コンセンサスのためのトランザクションノード。 この計画されたアーキテクチャについてはホワイトペーパーで詳しく説明されていますが、概要は次のとおりです。トランザクション ノード層は BFT コンセンサスを担当します。 インデックス作成ノード (バリデーターと呼ばれる) は、RPC からの生のブロックチェーン データをデコードして変換し、後で ZK プルーフ検証に使用されるデータに対する暗号化コミットメントを構築します。 コミットメントとインデックス付けされたデータの両方がトランザクション ノードに送信され、各チェーンにインデックス付けを行った複数の冗長インデックス付けノードが与えられると、トランザクション ノードは合意に達します。

それが可能にするもの カスタマイズと柔軟性: Web3 開発者は、アプリケーションの機能にとって重要な特定のイベントを生成する独自のスマート コントラクトを扱うことがよくあります。 他のインデックス作成サービスは、これらの特殊なイベントを常にカバーしているとは限らず、開発者が完全に最適化された応答性の高い DAPP を作成する能力が制限されています。 Space and Time の拡張インデックス サービスは、オーダーメイドのイベントにインデックスを付ける柔軟性を提供することで、このギャップに対処します。 スケーラビリティ: 社内でのブロックチェーン データの処理と処理は、リソースを大量に消費する可能性があり、重要なインフラストラクチャと技術的専門知識が必要です。 このデータのインデックス作成を Space and Time にアウトソーシングすることで、開発者はアプリケーションをより効率的に拡張できます。 データ アクセシビリティの向上: ブロックチェーン データへのアクセスとクエリは複雑で時間がかかる場合があります。 このサービスはプロセスを簡素化し、開発者が洞察を抽出してブロックチェーン データをアプリケーションに統合することを容易にする、構造化されたクエリ可能なテーブルを提供します。

Mirror文章信息

Mirror原文:查看原文

作者地址:0x5A34C7b9f2d634895FC66fe27CE05624bC3A5B1a

内容类型:application/json

应用名称:MirrorXYZ

内容摘要:XRewemNdAMM95R9BGx6yiL2GQVz_ZeYoQkabZV7HSSM

原始内容摘要:kBxUtev7dG0f4kxL-2unsKkK-4yCP6uaCexpIo1I34A

区块高度:1406497

发布时间:2024-04-18 06:09:00