跳转到主要内容

什么是 Cube?

Cube 是一种分析型数据模型,映射到一个或多个 OLAP 数据库表。每个 Cube 定义:
  • Dimensions — 可查询字段,组织为嵌套层级(例如 Block.TimeTrade.Buy.Currency.MintAddress
  • Selectors — 顶层的快捷筛选参数(例如 tokenAddress),用于简化常见筛选模式
  • Metrics — Record 类型上可用的聚合函数(countsum 等)
  • Defaults — 自动应用的默认筛选与分页 limit
查询 Cube 时,activecube-rs 会将 GraphQL 查询编译为针对该 Cube 底层表的优化 SQL;表名遵循 {chain}_{table_name} 模式(例如 sol_dex_tradeseth_transfers)。

Cube 概览

25 个 Cube 分为三个 Chain Group。每个 Cube 属于某一数据仓库层级:
  • DWD(明细层)— 逐事件原始数据,粒度最高
  • DWM(聚合层)— 预计算汇总(例如按分钟)
  • DWS(汇总层)— 高度聚合的快照
  • DIM(维度层)— 参考 / 查找表
CubeChain Group层级用途
DEXTradesEVM, SolanaDWD逐笔 DEX swap 事件
DEXTradeByTokensEVM, SolanaDWD按代币索引的 DEX 成交(买/卖侧)
TransfersEVM, SolanaDWD代币转账事件
BalanceUpdatesEVM, SolanaDWD钱包余额变动事件
DEXPoolEventsEVM, SolanaDWD流动性添加/移除事件
TokenSupplyUpdatesEVM, SolanaDWD代币 mint/burn 事件
BlocksEVM, SolanaDWD区块级数据
TransactionsEVM, SolanaDWD交易级数据
TransactionBalancesEVM, SolanaDWD单笔交易内的余额变动
InstructionsSolanaDWDSolana instruction 数据
InstructionBalanceUpdatesSolanaDWDinstruction 级余额变动
RewardsSolanaDWD验证者 / staking 奖励
DEXOrdersSolanaDWDDEX 订单事件(限价单等)
EventsEVMDWD智能合约 event log
CallsEVMDWD内部 call trace
MinerRewardsEVMDWD矿工 / 验证者奖励
DEXPoolSlippagesEVMDWD池子滑点数据
UnclesEVMDWDUncle 区块数据
PairsTradingDWMOHLC K 线(跨链)
TokensTradingDWM按代币的成交统计(跨链)
DEXPoolsEVM, SolanaDWS含当前储备的池子快照
TokenHoldersEVM, SolanaDWS代币持有者余额
WalletTokenPnLEVM, SolanaDWS按钱包-代币的 PnL
PredictionTradesEVM (Polygon)DWD预测市场成交
PredictionManagementsEVM (Polygon)DWD预测市场管理事件
PredictionSettlementsEVM (Polygon)DWD预测市场结算

EVM + Solana 共享 Cube

以下 Cube 在 EVMSolana Chain Group 中均可用。
表: {chain}_dex_trades 默认 limit: 25(最大 10,000) 默认 filter: IsSuspect = false(默认排除 bot/MEV 成交) Selectors: tokenAddresswalletAddresspoolAddressdexProgramdate Metrics: countsumavgminmaxuniq关键字段:
DEXTradesRecord {
  Block { Time, Slot, Height }
  Transaction { Hash, FeeInNative }
  Trade {
    Buy { Currency { MintAddress }, Amount, PriceInUSD, Account { Owner } }
    Sell { Currency { MintAddress }, Amount, Account { Owner } }
    Dex { ProgramAddress, ProtocolName }
  }
  Pool { Address }
  IsSuspect
}
适用场景: 成交历史、钱包成交分析、DEX 成交量拆解、大额成交检测。
表: {chain}_dex_trades_enriched(UNION 子查询 — 每笔成交一侧一行) Selectors: tokenAddresssideTypepoolAddressdexProgramdate Metrics: countsumavgminmaxuniq关键字段:
DEXTradeByTokensRecord {
  Block { Time, Slot, Height }
  Transaction { Signature, Fee, FeeInUSD }
  Trade {
    Currency { MintAddress, Symbol, Name }
    Amount, AmountInUSD, PriceInUSD, PriceInNative
    Side { Type, Currency { MintAddress }, Amount }
    Account { Owner }
    Dex { ProgramAddress, ProtocolName }
    Market { PoolAddress }
  }
}
适用场景: 按代币查询成交(买卖两侧)、代币成交量分析、单代币高效筛选。
表: {chain}_transfers Selectors: tokenAddresssenderAddressreceiverAddressdate Metrics: countsumavguniq关键字段:
TransfersRecord {
  Block { Time, Slot }
  Transaction { Hash, Signer }
  Transfer {
    Currency { MintAddress }
    Sender { Address, TokenAccount }
    Receiver { Address, TokenAccount }
    Amount, AmountInUSD, PriceInUSD
  }
}
适用场景: 钱包转账历史、巨鲸监控、交易所充提追踪。
表: {chain}_balance_updates Selectors: ownerAddresstokenAddressdate Metrics: countsumavgminmaxuniq关键字段:
BalanceUpdatesRecord {
  Block { Time, Slot }
  Transaction { Hash }
  BalanceUpdate {
    Currency { MintAddress, Decimals }
    Account { Address, Owner }
    PreBalance, PostBalance
    PreBalanceInUSD, PostBalanceInUSD
  }
}
适用场景: 余额变动追踪、仓位监控、吸筹/派发识别。
表: {chain}_dex_pool_events_enriched Selectors: poolAddresstokenAddressdate Metrics: countsumavgmax关键字段:
DEXPoolEventsRecord {
  Block { Time }
  Transaction { Signature }
  Pool {
    Market { Address, BaseCurrency { ... }, QuoteCurrency { ... } }
    Dex { ProgramAddress, ProtocolName }
    Base { PostAmount, ChangeAmount, PriceInUSD }
    Quote { PostAmount, ChangeAmount }
    LiquidityInUSD
  }
}
适用场景: 流动性增减监控、池子 TVL 追踪、新池发现。
表: {chain}_token_supplies Selectors: tokenAddress关键字段:
TokenSupplyUpdatesRecord {
  Block { Time }
  TokenSupplyUpdate {
    Currency { MintAddress, Decimals }
    PostBalance, MarketCapInUSD, PriceInUSD, FDVInUSD, TotalSupply
  }
}
适用场景: mint/burn 事件追踪、供应变动告警、市值历史。
表: {chain}_blocks Selectors: date Metrics: countsumavgminmax关键字段:
BlocksRecord {
  Block {
    Time, Date, Height, Hash, ParentHash, TxCount
    # Solana-specific
    Slot, ParentSlot, RewardsCount
    # EVM-specific
    Number, Coinbase, GasLimit, GasUsed, BaseFee, Difficulty
  }
}
适用场景: 出块监控、gas 分析(EVM)、slot 追踪(Solana)。
表: {chain}_transactions Selectors: datetxHash/txSignaturefromAddresstoAddressfeePayersigner Metrics: countsumavgminmax关键字段:
TransactionsRecord {
  Block { Time, Slot, Height }
  Transaction {
    # Solana: Signature, Fee, FeePayer, Signer, Result { Success }
    # EVM: Hash, From, To, Value, Gas, GasPrice, Nonce, Type
  }
  Fee { ... }     # EVM EIP-1559 fee breakdown
  Receipt { ... } # EVM receipt fields
}
适用场景: 交易查询、gas/fee 分析、活跃度监控。
表: {chain}_transaction_balances Selectors: dateaddresscurrency Metrics: countsumavgminmax关键字段:
TransactionBalancesRecord {
  Block { Time }
  Transaction { Hash, Index }
  TokenBalance {
    Address, TokenAccount
    Currency { SmartContract, Symbol, Name, Decimals }
    PreBalance, PostBalance, Change
    PreBalanceInUSD, PostBalanceInUSD, ChangeInUSD
    UpdateType
  }
}
适用场景: 单笔交易对余额的影响分析、代币流向追踪。
该 Cube 不支持 dataset 切换(无 _realtime / _archive 等表变体)。

Solana 专属 Cube

以下 Cube 仅在 Solana Chain Group 中可用。
表: sol_instructions_enriched Selectors: dateprogramIdtxSignature Metrics: countuniq关键字段:
InstructionsRecord {
  Block { Time, Slot }
  Transaction { Signature }
  Instruction {
    Index, Depth, InternalSeqNumber
    Program { Address, Name, Method }
    Accounts       # Array of account addresses
    Data           # Raw instruction data
    CallPath, Logs
  }
}
适用场景: 程序交互分析、instruction 级调试、协议使用追踪。
表: sol_balance_updates_enriched Selectors: datetokenAddressownerAddressprogramId Metrics: countsumavgminmaxuniq关键字段:
InstructionBalanceUpdatesRecord {
  Block { Time, Slot }
  Transaction { Signature }
  Instruction { Index, Program { Address } }
  BalanceUpdate {
    Currency { MintAddress, Decimals }
    Account { Address, Owner }
    Amount, AmountInUSD
    PreBalance, PostBalance
  }
}
适用场景: instruction 级余额影响分析、程序手续费追踪。
该 Cube 不支持 dataset 切换。
表: sol_rewards Selectors: dateaddress Metrics: countsumavg关键字段:
RewardsRecord {
  Block { Time, Slot }
  Reward {
    Address          # Validator/staker address
    Amount           # Reward amount in SOL
    AmountInUSD      # Reward value in USD
    PostBalance      # Balance after reward
    RewardType       # Type: voting, staking, etc.
    Commission       # Validator commission
  }
}
适用场景: staking 奖励追踪、验证者表现、奖励历史。
表: sol_dex_orders Selectors: datemarketAddressorderTypeownerAddress Metrics: countsumavguniq关键字段:
DEXOrdersRecord {
  Block { Time, Slot }
  Transaction { Signature }
  OrderEvent {
    Type             # Order type (place, cancel, fill, etc.)
    Market { Address }
    Order { Id, BuySide, LimitPrice, Mint, Owner }
    Dex { ProgramAddress, ProtocolName }
  }
}
适用场景: 订单簿分析、限价单追踪、市场微观结构研究。

EVM 专属 Cube

以下 Cube 仅在 EVM Chain Group(ethbscpolygon)中可用。
表: {chain}_logs_enriched Selectors: datecontractAddresstxHashtopic0 Metrics: countuniq关键字段:
EventsRecord {
  Block { Time, Number }
  Transaction { Hash, From, To }
  Log {
    SmartContract    # Contract emitting the event
    Index            # Log index in transaction
    Signature { Name, Signature }
    Topics           # Event topics array
    Data             # ABI-encoded event data
  }
}
适用场景: 智能合约 event 监控、协议活动追踪、自定义 event 筛选。
表: {chain}_traces_enriched Selectors: datetxHashtoAddress Metrics: countsumuniq关键字段:
CallsRecord {
  Block { Time, Number }
  Transaction { Hash }
  Call {
    Index, Depth
    From, To
    Opcode          # CALL, DELEGATECALL, STATICCALL, CREATE, etc.
    Gas, GasUsed
    Input, Output
    Value           # ETH/BNB transferred
    Signature { Name, Signature }
  }
}
适用场景: 内部交易 trace、合约交互分析、MEV 检测。
表: {chain}_miner_rewards Selectors: dateminer Metrics: countsumavgminmax关键字段:
MinerRewardsRecord {
  Block { Time, Number, Hash }
  Reward {
    Miner
    TotalReward, TotalRewardInUSD
    BurntFees, DynamicReward, StaticReward
    TxFees, UncleReward
  }
}
适用场景: 验证者/矿工奖励分析、区块奖励趋势、MEV 收入追踪。
表: {chain}_dex_pool_slippages Selectors: datepoolAddress Metrics: countavgminmax关键字段:
DEXPoolSlippagesRecord {
  Block { Time }
  Price {
    Pool { SmartContract, CurrencyA { ... }, CurrencyB { ... } }
    AtoB, BtoA             # Current prices
    AtoBMin, AtoBMax       # Price range
    SlippageBasisPoints    # Slippage in basis points
    Dex { ProtocolName }
  }
}
适用场景: 滑点监控、池子深度分析、执行质量评估。
表: {chain}_uncles Selectors: dateminer Metrics: count关键字段:
UnclesRecord {
  Block { Time, Number }
  Uncle {
    Index, Hash, ParentHash
    Miner, Difficulty, Number
    GasLimit, GasUsed, Timestamp
  }
}
适用场景: Uncle 区块分析、网络健康监控(主要为 Ethereum PoW 历史数据)。

Trading Cube(跨链)

以下 Cube 属于 Trading Chain Group,在全部支持的链(solethbsc)上汇总数据,并包含用于筛选的 chain dimension。
表: 跨链物化视图({chain}_ohlc_mvSelectors: tokenAddresschaindate Metrics: countsumavgminmax关键字段:
PairsRecord {
  Token { Address }
  Market { Network }       # Chain identifier (sol, eth, bsc)
  Block { Time }
  Interval { Time }        # Minute-bucket timestamp
  Price {
    Ohlc { Open, High, Low, Close }
  }
  Volume { Usd, Native }
  Stats { TradeCount, BuyCount, SellCount }
}
适用场景: K 线图、价格历史、成交量分析、跨链价格对比。
表: 跨链物化视图({chain}_token_trade_stats_mvSelectors: tokenAddresschaindate Metrics: countsumavgminmax关键字段:
TokensRecord {
  Token { Address }
  Market { Network }           # Chain identifier
  Block { Time }
  Interval { Time }            # Minute-bucket timestamp
  Volume { Usd, BuyVolumeUSD, SellVolumeUSD, Base }
  Stats {
    TradeCount, BuyCount, SellCount
    UniqueBuyers, UniqueSellers
  }
}
适用场景: 买卖压力分析、独立交易者数量、成交量趋势、跨链代币对比。

汇总 Cube(DWS)

汇总 Cube 提供高度聚合、快照式数据,便于快速查询。
表: {chain}_dex_pools(DWS 层) Selectors: poolAddresstokenAtokenB Metrics: count关键字段:
DEXPoolsRecord {
  Pool {
    Address
    TokenAAddress, TokenBAddress
    ProgramAddress
    LiquidityUSD
    PriceAtoB, PriceBtoA
    LastUpdated
  }
}
适用场景: 池子发现、当前流动性排名、池子元数据查询。
该 Cube 不支持 dataset 切换或基于时间的筛选;表示池子状态的最新快照。
表: {chain}_token_holders Selectors: tokenAddress关键字段:
TokenHoldersRecord {
  Token { Address }
  Holder { Address }
  LatestBalance
  LatestBalanceUSD
  FirstSeen
  LastSeen
}
适用场景: 大户列表、持有者分布、巨鲸追踪。
该 Cube 不支持 dataset 切换。
表: {chain}_wallet_token_pnl Selectors: walletAddress关键字段:
WalletTokenPnLRecord {
  Wallet { Address }
  Token { Address }
  BuyVolumeUSDState, SellVolumeUSDState
  BuyCountState, SellCountState
  FirstTradeState, LastTradeState
}
适用场景: 按代币的钱包 PnL、交易表现排行榜、组合分析。
该 Cube 不支持 dataset 切换。

预测市场 Cube

以下 Cube 在 EVM Chain Group 中可用,主要用于 Polygon 上的预测市场协议。
表: {chain}_prediction_trades Selectors: dateconditionIdquestionIdmarketplace Metrics: countsumavgminmaxuniq关键字段:
PredictionTradesRecord {
  Block { Time }
  Transaction { Hash }
  Trade { Buyer, Seller, Amount, Price, Fee }
  Prediction {
    Condition { Id, Outcomes }
    Question { Id }
    Outcome, OutcomeToken
    Marketplace { ProtocolName }
    CollateralToken { SmartContract }
  }
}
适用场景: 预测市场成交历史、结果定价、marketplace 成交量。
预测市场 Cube 不支持 dataset 切换。
表: {chain}_prediction_managements Selectors: dateeventTypeconditionIdquestionId Metrics: countsumavgminmaxuniq关键字段:
PredictionManagementsRecord {
  Block { Time }
  Transaction { Hash }
  Management {
    EventType, Description, Group
    Prediction { Condition { ... }, Question { ... }, Marketplace { ... } }
  }
}
适用场景: 市场创建/结算追踪、condition 管理事件。
表: {chain}_prediction_settlements Selectors: dateeventTypeconditionIdholder Metrics: countsumavgminmaxuniq关键字段:
PredictionSettlementsRecord {
  Block { Time }
  Transaction { Hash }
  Settlement {
    EventType, Holder
    OutcomeTokenIds, Amounts
    Prediction { Condition { ... }, CollateralToken { ... }, Marketplace { ... } }
  }
}
适用场景: 结算追踪、派息分析、头寸赎回监控。

选择合适的 Cube

在满足需求的前提下,优先选择聚合度最高的 Cube。对时间序列与摘要类数据,DWM/DWS Cube 通常比 DWD Cube 快几个数量级。
需求推荐 Cube层级
单笔成交事件DEXTradesDWD
按代币的成交查询DEXTradeByTokensDWD
代币转账历史TransfersDWD
K 线 / 价格图PairsDWM
随时间变化的成交量TokensDWM
当前大户列表TokenHoldersDWS
钱包 PnL 拆解WalletTokenPnLDWS
池子当前状态DEXPoolsDWS
流动性事件DEXPoolEventsDWD
智能合约 event(EVM)EventsDWD
内部 trace(EVM)CallsDWD
Solana instructionInstructionsDWD
预测市场成交PredictionTradesDWD

Dataset 兼容性

并非所有 Cube 都支持 dataset 参数(realtime/archive/combined)。以下 Cube 无论 dataset 取何值,都会查询全表:
  • TokenHoldersWalletTokenPnLDEXPools(DWS 层 — 始终为最新快照)
  • TransactionBalances
  • PredictionTradesPredictionManagementsPredictionSettlements
详见 Dataset 与 Aggregates

下一步

Chain Groups

了解 EVM、Solana 与 Trading Chain Group。

筛选

使用 where 与 selector 快捷方式筛选。

指标与聚合

使用 count、sum、avg、min、max、uniq 聚合数据。