PolymarketClickHouse Workshops

04 实时聚合 · 讲师

讲清增量 MV 的行为和中间价的语义。

Your computer
macOS terminal: Run workshop commands in Terminal using zsh or bash.

时间安排

20 分钟。

讲解脚本

  • MV 处理的是插入的数据块;它不会在每次刷新仪表板时重新扫描历史数据。
  • State 函数存储部分聚合状态;对应的 Merge 函数将其最终化。
  • OHLC 只基于报价中间价。把订单级变动价格和最新成交价混在一起,会让图表变得毫无意义。
  • 采集器在数据行进入 MV 之前就完成了去重;事后使用 ReplacingMergeTree 并不能撤销聚合 层面的重复计数。

常见故障

  • 聚合结果为空:确认原始中间价数据行存在,并且 MV 是在数据写入之前创建的。
  • MV 创建得太晚:创建之后重启 fixture 模式,或者只接受新写入的数据行。
  • 最新分钟太旧:先检查采集器健康状态,再去调试 SQL。

重置

若要在不删除原始数据的前提下获得一份全新的聚合,重建目标表和 MV,然后让新事件把它填满。 不要执行 OPTIMIZE TABLE FINAL。

本页内容

ZH