別のブロックの高さで開始するには?

... 2022-8-15 Less than 1 minute

# 別のブロックの高さで開始するには?

# ビデオのガイド

# はじめに

デフォルトでは、すべてのスタータープロジェクトはジェネシスブロックからブロックチェーンの同期を開始します。 つまり、ブロック1から。 大きなブロックチェーンの場合、完全に同期するのに通常数日または数週間がかかる可能性があります。

SubQueryノードの同期をゼロ以外の高さから開始するには、project.yamlファイルを変更し、startBlockキーを変更するだけでよい。

以下は project.yaml ファイルで、開始ブロックが 1,000,000 に設定されています。

specVersion: 0.0.1
description: ""
repository: ""
schema: ./schema.graphql
network:
  endpoint: wss://polkadot.api.onfinality.io/public-ws
  dictionary: https://api.subquery.network/sq/subquery/dictionary-polkadot
dataSources:
  - name: main
    kind: substrate/Runtime
    startBlock: 1000000
    mapping:
      handlers:
        - handler: handleBlock
          kind: substrate/BlockHandler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# ゼロから始まらない理由は?

主な理由は、ブロックチェーンを同期させる時間を短縮できることです。 つまり、最後の3ヶ月間の取引にしか興味がない場合、その最後の3ヶ月分しか同期しないので待ち時間が少なく、より早く開発を開始できます。

# ゼロからスタートしないことの欠点は何?

最も明らかな欠点は、ブロックチェーン上の持っていないブロックのデータをクエリできないことです。

# 現在のブロックチェーンの高さを把握する方法とは?

Polkadotネットワークをご利用の場合は、https://polkascan.io/ (opens new window) にアクセスしてネットワークを選択し、「Finalised Block」の数値を見ます。

# リビルドやコード生成をする必要があるかどうか?

いいえ。 本質的に設定ファイルであるproject.yamlファイルを変更するため、typescriptコードをリビルドまたはコード生成する必要はありません。

Last update: August 15, 2022 23:43