ES聚合查询主要又三种模式,分别是分桶聚合(Bucket aggregations)、指标聚合(Metrics aggregations)、管道聚合(Pipeline aggregations),三种模式处理的业务场景不同...,下面开始简要分析下.
1、分桶聚合(Bucket aggregations)
分桶聚合类似与关系型数据库的Group By查询,按照指定的条件,进行分组统计.下面用一张网络图(来自马士兵教育)来解释...这里第一步需要计算各个手机品牌价格的平均值,接着计算平均值中的最小值,这里就需要用到管道聚合.
4、实战演练
4.1、创建索引
进入kibna dev tools,输入以下代码创建索引
PUT food...", //一般情况下,带有keyword的类型的字段才能进行聚合查询,应为keyword类型,es会为其创建正排索引
"size": 20, //显示的桶的个数,常用于分页,
搜索结果如下...bucket_path,查找平均值最低的分桶的类型.
4.6 复杂的嵌套聚合查询
现在需要计算每个食物分类中,不同档次的食品中,价格最低的食物,代码如下:
GET food/_search
{
"size