サブストリーム

Reading time: 2 min

Substreams ロゴ

Substreams is a powerful blockchain indexing technology developed for The Graph Network. It enables developers to write Rust modules, compose data streams alongside the community, and provide extremely high-performance indexing due to parallelization in a streaming-first approach.

With Substreams, developers can quickly extract data from different blockchains (Ethereum, BNB, Solana, ect.) and send it to various locations of their choice, such as a Postgres database, a Mongo database, or a Subgraph. Additionally, Substreams packages enable developers to specify which data they want to extract from the blockchain.

サブストリームの4つのステップ

このセクションへのリンク
  1. **ブロックチェーンのデータに適用したい変換を定義したRustプログラムを記述します。**例えば、以下のRust関数はイーサリアムのブロックから関連情報(番号、ハッシュ、親ハッシュ)を抽出します。
fn get_my_block(blk: Block) -> Result<MyBlock, substreams::errors::Error> {
let header = blk.header.as_ref().unwrap();
Ok(MyBlock {
number: blk.number,
hash: Hex::encode(&blk.hash),
parent_hash: Hex::encode(&header.parent_hash),
})
}
  1. CLIコマンドを1つ実行するだけで、RustプログラムをWASMモジュールにまとめることができます。

  2. WASMコンテナは実行のためにSubstreamsエンドポイントに送られます。 SubstreamsプロバイダはWASMコンテナにブロックチェーンデータを送り、変換が適用されます。

  3. You select a sink, a place where you want to send the transformed data (a Postgres database or a Subgraph, for example).

Substreams ドキュメンテーション

このセクションへのリンク

サブストリームの公式ドキュメントは現在、StreamingFastチームによってStreamingFastウェブサイトで管理されています。

To learn about the latest version of Substreams CLI, which enables developers to bootstrap a Substreams project without any code, please check Substreams Codegen.

  • In order to develop and deploy a Substreams, you must install the Substreams CLI.
  • Then, run your first Substreams by following the Quickstart Tutorial.
ページを編集

GraphQL 検証移行ガイド
Introduction
ページを編集