随着业务复杂化,MetricStore 在很多情况下实质承担了一部分 OLAP 分析任务(如多数据源组合查询、近 10 个指标的类多表 join 计算)。为充分发挥 CPU 多核、指令加速能力以及精细化资源控制,MetricStore 2.0 使用 C++ 开发新的 Prometheus 计算引擎,对计算流程和实现全面改造。
主要提升和特性:
- 流式并行计算:整个过程从网络传输→数据预处理→迭代计算在一个 Pipeline 中并行进行;流中每个 Task 采用并行模式;每次只解压一条时间线并复用内存;计算下推到并行解析侧;二元算子的子查询按并行度放到多个协程完成。
- 资源精细控制:每次查询全链路的内存申请量和计算量做分租户准确控制,存在单查询用量控制和总量控制两级,避免单一计算占用过多导致 OOM 或影响其他用户。
- PromQL 兼容性:Prometheus C++ 计算引擎与开源兼容度为 100%。
- 提供 PromQL 的 Query Explain 功能,把 Query 解析成树状结构帮助用户理解执行行为。
性能上,单 Shard 写入速度最大支持 130M/s(约 25 万行/s),是 1.0 的 3 倍;查询延迟全面领先 VictoriaMetrics,计算资源开销是 VM 的 50%,比 1.0 提升 3 倍以上。同时支持 PromQL、SQL、SPL 多种查询方式。




