ES实战-高级聚合

多桶型聚合

1.词条聚合--terms

2.范围聚合--range

3,直方图聚合--histogram/日期直方图

4.嵌套聚合

5.地理距离聚合
include(包含)exclude(不包含)

bash 复制代码
GET /get-together/_search?pretty
{
  "size": 0,
  "aggs": {
    "tags": {
      "terms": {
      "field": "tags.verbatim",
      "include": ".*search.*"
      }
    }
  }
}

range范围聚合统计

bash 复制代码
GET /get-together/_search
{
  "aggs": {
    "attendees_breakdown": {
      "range": {
        "script": {
          "source": "doc['attendees'].size()"
        },
        "ranges": [
          {"to": 4},
          {"from": 4,"to": 6},
          {"from": 6}
        ]
      }
    }
  }
}

histogram定义一个固定间距,es会自动构建范围.

bash 复制代码
#ES会构建从最小值开始的范围,并不断加入interval,
#直到包含最大值
GET /get-together/_search
{
  "aggs": {
    "attendees_histogram": {
      "histogram": {
        "script": {
          "source": "doc['attendees'].size()"
        },
        "interval": 1
      }
    }
  }
}

通过嵌套聚合获得结果分组

相关推荐
Dxy12393102164 小时前
Elasticsearch 8.13.4 条件修改 DSL 语句详解
大数据·elasticsearch·搜索引擎
扉间7985 小时前
合并后的项目 上传分支 取哪里的东西提交
大数据·chrome·elasticsearch
小龙6 小时前
[Git 报错解决]本地分支落后于远程分支(`non-fast-forward`)
大数据·git·elasticsearch·github
DKunYu9 小时前
2.分支管理
大数据·git·elasticsearch·搜索引擎·gitee
Elastic 中国社区官方博客10 小时前
使用 LangGraph 和 Elasticsearch 构建人机交互 Agents
大数据·人工智能·elasticsearch·搜索引擎·langchain·全文检索·人机交互
KANGBboy12 小时前
ES 索引切换及验证
大数据·elasticsearch
DKunYu13 小时前
3.远程操作
大数据·git·elasticsearch·搜索引擎·gitee
禾黍黎15 小时前
ElasticSearch+Logstash 对 数据库数据进行转换和检索
大数据·数据库·elasticsearch
青鱼入云15 小时前
详细介绍下Elasticsearch 布尔查询
大数据·elasticsearch·搜索引擎
神秘代码行者1 天前
Git Restore 命令教程
大数据·git·elasticsearch