百分位聚合
百分位是指数据中处于或低于某个特定阈值的数据所占的百分比。
percentile 指标是一个多值指标聚合,它允许您发现数据中的异常值或了解数据的分布情况。
与 cardinality 指标类似,percentile 指标也是近似的。
以下示例计算与 taxful_total_price 字段相关的百分位:
GET opensearch_dashboards_sample_data_ecommerce/_search
{
"size": 0,
"aggs": {
"percentile_taxful_total_price": {
"percentiles": {
"field": "taxful_total_price"
}
}
}
}
示例响应
...
"aggregations" : {
"percentile_taxful_total_price" : {
"values" : {
"1.0" : 21.984375,
"5.0" : 27.984375,
"25.0" : 44.96875,
"50.0" : 64.22061688311689,
"75.0" : 93.0,
"95.0" : 156.0,
"99.0" : 222.0
}
}
}
}
您可以使用可选的 tdigest.compression 字段来控制近似程度。较大的值表示近似百分位的数据结构更精确,但会使用更多的堆空间。默认值为 100。
例如,使用以下请求将 compression 设置为 200:
GET opensearch_dashboards_sample_data_ecommerce/_search
{
"size": 0,
"aggs": {
"percentile_taxful_total_price": {
"percentiles": {
"field": "taxful_total_price",
"tdigest": {
"compression": 200
}
}
}
}
}