主要知识点
- histogram的理解及用法
histogram:他的作用是把一些连续的数据划分为一定的区间范围,使用连续的数据离散化,然后这这样离散化的数据就可以做聚合分析操作,操作过程类似于terms,接收一个field,按照这个field的值划分区间,然后根据区间进行bucket分组操作。histogram的语法如下:
"histogram":{
"field": "price",
"interval": 2000
},
interval:2000,划分范围,0~2000(包括0,不包括2000),2000~4000,4000~6000等等。
语法:
GET /tvs/sales/_search
{
"size": 0,
"aggs": {
"price": {
"histogram": {
"field": "price",
"interval": 2000
},
"aggs": {
"max_price": {
"max": {
"field": "price"
}
}
}
}
}
}
执行结果如下:
aggregations": {
"price": {
"buckets": [
{
"key": 0,
"doc_count": 3,
"max_price": {
"value": 1500
}
},
{
"key": 2000,
"doc_count": 4,
"max_price": {
"value": 3000
}
},
可以看出:在0-2000这个区间内有3条数据,最大的price为1500,在2000-4000内有4条数据,最大的是3000元。