跳转到主要内容

quantilePrometheusHistogram

引入版本:v25.10.0 使用线性插值计算直方图的分位数,并考虑每个直方图桶的累积值和上界。 为了得到插值后的值,所有传入的值都会合并到一个数组中,然后按照其对应桶的上界值进行排序。 随后会像 PromQL 的经典直方图 histogram_quantile() 函数那样进行分位数插值:找到分位数所在的桶后,使用该桶的下界和上界进行线性插值。 另请参见 语法
quantilePrometheusHistogram(level)(bucket_upper_bound, cumulative_bucket_value)
参数
  • level — 可选。分位水平。取值为 0 到 1 之间的常量浮点数。建议将 level 的值设在 [0.01, 0.99] 范围内。默认值:0.5。当 level=0.5 时,该函数计算的是中位数Float64
参数列表
  • bucket_upper_bound — 直方图各桶的上界。最大的桶其上界必须为 +InfFloat64
  • cumulative_bucket_value — 直方图各桶的累积值。这些值必须随着桶上界的增大而单调递增。(U)Int*Float64
返回值 返回指定分位水平的分位数。Float64 示例 使用示例
Query
SELECT quantilePrometheusHistogram(bucket_upper_bound, cumulative_bucket_value)
FROM VALUES('bucket_upper_bound Float64, cumulative_bucket_value UInt64', (0, 6), (0.5, 11), (1, 14), (inf, 19));
Response
┌─quantilePrometheusHistogram(bucket_upper_bound, cumulative_bucket_value)─┐
│                                                                     0.35 │
└──────────────────────────────────────────────────────────────────────────┘
另请参见
最后修改于 2026年6月10日