メインコンテンツへスキップ
ChainStream GraphQLは、マルチチェーンオンチェーンデータ(Solana、Ethereum、BSC、Polygon)を単一のGraphQLエンドポイントで提供するOLAP分析APIです。必要なフィールドだけをクエリし、データをリアルタイムに集計し、スキーマをインタラクティブに探索できます。すべて高性能OLAPデータベースで動作しています。

ChainStream GraphQLとは

ChainStream GraphQLは、オンチェーン分析データのための宣言型クエリインターフェースを提供します。固定されたレスポンス形式を持つ多数のRESTエンドポイントを呼び出す代わりに、必要なデータ、フィルタリング方法、集計方法を正確に指定する単一のGraphQLクエリを記述できます。 このサービスはactivecube-rs上に構築されており、Cube定義からGraphQLスキーマを動的に生成します。各Cubeは分析データモデル(例:DEXトレード、トークントランスファー、OHLCローソク足)を表します。クエリは最適化されたSQLにコンパイルされ、高性能OLAPデータベースに対して実行されます。

GraphQL vs REST Data API

GraphQL APIREST Data API
クエリスタイル宣言型 — 形状、フィルタ、集計を自分で定義命令型 — 事前定義されたパラメータを持つ固定エンドポイント
フィールド選択クライアントが必要なフィールドだけを選択サーバーが固定のレスポンススキーマを返す
集計クエリごとにcountsumavgminmaxが組み込み事前定義された集計エンドポイントのみ
エンドポイントすべてのデータモデルに対して単一のエンドポイントリソースごとに1つのエンドポイント
ページネーションクエリ引数内のlimit + offsetクエリパラメータのlimit + offset / カーソル
最適な用途分析、ダッシュボード、柔軟な探索シンプルな検索、リアルタイム価格、ウォレット残高
レイテンシレイテンシよりもスループットに最適化単一リソースの低レイテンシ読み取りに最適化
トレードの集計、時間範囲にわたるPnLの計算、カスタムダッシュボードの構築など、柔軟な分析クエリが必要な場合はGraphQLを使用してください。現在のトークン価格やウォレット残高など、高速でシンプルな検索が必要な場合はREST APIを使用してください。

主な利点

単一エンドポイント

1つのURLで4チェーンにわたる25のデータCubeを提供。エンドポイントの乱立なし — クエリを変えるだけです。

クライアント側フィールド選択

必要なカラムだけをリクエスト。オーバーフェッチもアンダーフェッチもなし — 帯域幅制約のあるクライアントに最適です。

組み込み集計

countsumavgminmaxをクエリ内で直接計算。後処理は不要です。

対応チェーン

Network IDブロックチェーンチェーングループカバレッジ
ethEthereumEVM完全なDEX、トランスファー、残高更新、イベント、トレース、トークン統計
bscBNB Chain (BSC)EVM完全なDEX、トランスファー、残高更新、イベント、トレース、トークン統計
polygonPolygonEVM完全なDEX、トランスファー、残高更新、予測市場
solSolanaSolana完全なDEX、トランスファー、インストラクション、トークンホルダー、OHLC、PnL
クエリは3つのチェーングループに整理されています:EVMnetwork引数が必要)、SolanaTrading(クロスチェーンOHLCとトークン統計)。詳細はチェーングループをご覧ください。

利用可能なデータキューブ

3つのチェーングループにわたる25のCubeが利用可能で、それぞれが独自の分析モデルを表しています:
  • DEXTrades — 個別のDEXスワップイベント(売買金額、価格、DEXプロトコル情報を含む)
  • DEXTradeByTokens — 効率的なトークン単位のクエリ用にトークンでインデックス化されたDEXトレード
  • DEXOrders — リミットオーダーを含むDEXオーダーイベント (Solanaのみ)
  • DEXPoolEvents — DEXプールの流動性追加/削除イベント
  • DEXPools — 現在のリザーブとメタデータを含むDEXプールスナップショット
  • DEXPoolSlippages — プールスリッページデータ (EVMのみ)
  • TokenSupplyUpdates — トークンサプライに影響するミントとバーンイベント
  • Transfers — 送信者、受信者、金額、USD値を含むトークントランスファーイベント
  • BalanceUpdates — トークンごとのウォレット残高変更イベント
  • TokenHolders — トークンの現在のホルダーリストと分布
  • WalletTokenPnL — ウォレット-トークンペアごとのPnL
  • Pairs — 設定可能な時間間隔でのOHLCローソク足データ(旧OHLCとして参照)
  • Tokens — トークンごとの集計トレード統計:出来高、トレード数、ユニークトレーダー数(旧TokenTradeStatsとして参照)
  • Blocks — ブロックレベルデータ(タイムスタンプ、高さ、マイナー/バリデータ)
  • Transactions — トランザクションレベルデータ(ハッシュ、ステータス、ガス/手数料)
  • TransactionBalances — トランザクションごとの残高変更
  • Events — スマートコントラクトイベントログ (EVMのみ)
  • Calls — 内部コールトレース (EVMのみ)
  • Instructions — インストラクションレベルデータ (Solanaのみ)
  • InstructionBalanceUpdates — インストラクションレベルの残高変更 (Solanaのみ)
  • Rewards — バリデータ/ステーキングリワード (Solanaのみ)
  • MinerRewards — マイナー/バリデータリワード (EVMのみ)
  • Uncles — アンクルブロックデータ (EVMのみ)
  • PredictionTrades — 予測市場トレードイベント (EVM — Polygon)
  • PredictionManagements — 予測市場管理イベント (EVM — Polygon)
  • PredictionSettlements — 予測市場決済イベント (EVM — Polygon)

主要クエリパラメータ

標準的なフィルタリングとページネーションに加えて、ChainStream GraphQLはチェーングループレベルで2つの強力なパラメータをサポートしています:
パラメータ説明
datasetrealtimearchivecombined(デフォルト)データソーススコープを制御 — 最新データのみ、履歴データ、または全範囲
aggregatesyesnoonlyより高速な分析クエリのために事前集計テーブルを使用するかどうかを制御
詳細な使用方法と例についてはデータセットとアグリゲートをご覧ください。

アーキテクチャ

すべてのリクエストは認証とレート制限のためにAPISIXゲートウェイを通過します。chainstream-graphqlサービスはGraphQLクエリをOLAP分析データベースに対して実行される最適化されたSQLにコンパイルします。

次のステップ

エンドポイントと認証

エンドポイントURL、認証ヘッダーの設定、リクエスト/レスポンス形式の理解。

最初のクエリ

IDEまたはcURLからステップバイステップで最初のGraphQLクエリを実行。

GraphQL IDE

自動補完、クエリテンプレート、コードエクスポートを備えたインタラクティブなGraphQL IDEを探索。