You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写PromQL查询获取M1与M2指标的最大值时间序列?

PromQL实现每个时间点max(M1, M2)的查询

由于M1和M2的标签集不一致(M2多了L4标签),直接使用max()无法跨序列比较,需要先对齐标签再聚合:

核心查询语句

max by (L1, L2, L3) (
  M1
  or
  max by (L1, L2, L3) (M2)
)

逻辑说明

  1. 标签对齐:通过max by (L1, L2, L3)(M2)去除M2的L4标签,让它的标签维度和M1完全一致,确保两个序列能在相同的标签分组下匹配。
  2. 合并与取最大值:用or合并M1和处理后的M2序列,再通过max by (L1, L2, L3)在每个时间点、每个标签分组内取两者的最大值,生成目标序列N。

注:如果同一组(L1,L2,L3)对应多个不同L4的M2数据,max by (L1, L2, L3)(M2)会先取该分组下M2的最大值,再和M1比较;若每组(L1,L2,L3)仅对应唯一L4的M2数据,该操作仅去除多余标签,不改变M2的数值。

内容的提问来源于stack exchange,提问作者Amy_Josh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 22:15:39