跳轉到主要內容
ChainStream 為每條 EVM 鏈釋出的 Kafka topic 權威列表。topic 命名使用 {chain} 字首——按你要消費的網路替換為 ethbscbasepolygonoptimismarbitrumavalanchezksync 端到端的連線細節、SASL 憑證與 SDK 示例見 接入方式 → Kafka Streams → EVM Streams。權威的 Protobuf 定義見 github.com/chainstream-io/streaming_protobuf/evm

分割槽

所有 EVM topic 按以下其中之一分割槽:
  • 代幣地址(bytes20)—— 用於代幣中心的 topic(tokensdex.tradesdex.poolscandlestickstoken-pricestoken-suppliestoken-market-capstrade-statstoken-holdings
  • 賬戶地址(bytes20)—— 用於賬戶中心的 topic(balancesv1.transfers.proto
同一地址的事件按區塊順序落到同一分割槽——可以按分割槽水平擴充套件消費者。

Topic 矩陣

{chain}eth | bsc | base | polygon | optimism | arbitrum | avalanche | zksync(鏈可用性矩陣見 EVM Streams)。

DEX 成交

TopicProto 訊息Schema 檔案描述
{chain}.dex.tradesTradeEventsevm/trade_event.proto確認後即刻下發的原始 DEX 成交
{chain}.dex.trades.processedTradeEventsevm/trade_event.proto同一批事件附帶 USD / 原生幣價格、可疑標記與去重

代幣

TopicProto 訊息Schema 檔案描述
{chain}.tokensTokenEventsevm/token_event.proto代幣生命週期事件(建立、更新、遷移)
{chain}.tokens.createdTokenEventsevm/token_event.proto僅代幣建立事件的過濾流
{chain}.tokens.processedTokenEventsevm/token_event.proto補充描述、圖片、社交連結後的代幣

代幣級統計

TopicProto 訊息Schema 檔案描述
{chain}.token-pricesTokenPriceEventevm/token_price_event.proto聚合的價格更新(USD + 原生幣)
{chain}.token-suppliesTokenSupplyEventevm/token_supply_event.proto流通供給 + 總供給變化
{chain}.token-supplies.processedTokenSupplyEventevm/token_supply_event.proto含小數點歸一化 + USD 數值的供給資料
{chain}.token-market-caps.processedTokenMarketCapEventevm/token_market_cap_event.proto市值(流通量 × 價格)
{chain}.token-holdingsTokenHoldingEventevm/token_holding_event.proto持幣人數、Top-N 集中度
{chain}.trade-statsTradeStatEventevm/trade_stat_event.proto成交筆數、成交量、買家 / 賣家數

餘額

TopicProto 訊息Schema 檔案描述
{chain}.balancesBalanceEventsevm/balance_event.proto每個賬戶的原始餘額變化事件
{chain}.balances.processedBalanceEventsevm/balance_event.proto帶 USD + 原生幣價值的餘額事件

DEX 池

TopicProto 訊息Schema 檔案描述
{chain}.dex.poolsDexPoolEventsevm/dex_pool_event.proto池建立 / 更新 / sync 事件
{chain}.dex.pools.processedDexPoolEventsevm/dex_pool_event.proto附帶 USD + 原生幣流動性、費率檔的池事件

轉賬

TopicProto 訊息Schema 檔案描述
{chain}.v1.transfers.protoTransfersMessageevm/transfers_message.proto所有代幣 + 原生幣轉賬(ERC-20 / ERC-721 / ERC-1155 / 原生)
{chain}.v1.transfers.processed.protoTransfersMessageevm/transfers_message.proto附帶出塊時價格 + USD 數值的轉賬

K 線

TopicProto 訊息Schema 檔案描述
{chain}.candlesticksCandlestickEventscandlestick.proto多解析度預聚合的 OHLC

消費者示例

from confluent_kafka import Consumer
from streaming_protobuf.evm.trade_event_pb2 import TradeEvents

consumer = Consumer({
    "bootstrap.servers": "kafka.chainstream.io:9093",
    "security.protocol": "SASL_SSL",
    "sasl.mechanism": "SCRAM-SHA-512",
    "sasl.username": "<your-username>",
    "sasl.password": "<your-password>",
    "group.id": "my-consumer",
    "auto.offset.reset": "latest",
})
consumer.subscribe(["eth.dex.trades.processed"])

while True:
    msg = consumer.poll(1.0)
    if msg is None or msg.error():
        continue
    events = TradeEvents.FromString(msg.value())
    for trade in events.Trades:
        print(trade)
JavaScript 與 Go 等效示例見 EVM Streams 指南

下一步

Solana Kafka Topics

Solana 的 topic 列表

Tron Kafka Topics

Tron 的 topic 列表

Kafka Streams 總覽

連線、鑑權、分割槽模型

EVM Streams 指南

欄位定義與消費者示例