ElasticSearch之聚合aggs

写在前面

本文看下es的聚合相关内容。

1:什么是聚合

即,数据的统计分析。如sum,count,avg,min,max,分组等。

2:支持哪些聚合类型

2.1:bucket aggregation

对满足特定条件的文旦进行分组。如:

2.1:metric aggregation

数学运算。如:

2.3:pipeline aggregation

对聚合的结果进行再一次的聚合。

2.4:matrix aggregation

对多个字段操作并提供一个结果矩阵???嘛意思???

3:实战

测试数据参考这里 。但如果你是按照专栏顺序看的,我想你本地已经有这些数据了。

3.1:bucket aggregation

按照飞行目的地分组:

json 复制代码
GET kibana_sample_data_flights/_search
{
  "size": 0,
  "aggs": {
    "飞行目的地分组": {
      "terms": {
        "field": "DestCountry"
      }
    }
  }
}

3.2:metric aggregation

按照飞行目的地分组后,对分组的数据取最大最小和平均值。

json 复制代码
GET kibana_sample_data_flights/_search
{
    "size": 0,
    "aggs": {
        "飞行目的地分组": {
            "terms": {
                "field": "DestCountry"
            },
            "aggs": {
                "票价平均值": {
                    "avg": {
                        "field": "AvgTicketPrice"
                    }
                },
                "票价最大值": {
                    "max": {
                        "field": "AvgTicketPrice"
                    }
                },
                "票价最小值": {
                    "min": {
                        "field": "AvgTicketPrice"
                    }
                }
            }
        }
    }
}

按照飞行目的地分组后,通过stats取每个分组的统计信息(会列出min,max,avg等常用统计信息),并且对每个分组再按照天气做一次分组,并取前5条数据:

json 复制代码
GET kibana_sample_data_flights/_search
{
    "size": 0,
    "aggs": {
        "飞行目的地分组": {
            "terms": {
                "field": "DestCountry"
            },
            "aggs": {
                "组内统计信息": {
                    "stats": {
                        "field": "AvgTicketPrice"
                    }
                },
                "weatherrr": {
                    "terms": {
                        "field": "DestWeather",
                        "size": 5
                    }
                }
            }
        }
    }
}

TODO 待补充!!!

写在后面

参考文章列表

相关推荐
Elastic 中国社区官方博客2 小时前
Kubernetes 可观测性:用于更安全 EKS 故障排查的 MCP 专家 agents
大数据·elasticsearch·搜索引擎·云原生·容器·kubernetes·全文检索
诸葛李3 小时前
openUBMC集成构建
大数据·elasticsearch·搜索引擎
liyunlong-java3 小时前
Elasticsearch 8.5.3 + IK 分词器 + Kibana 8.5.3 一键安装
大数据·elasticsearch·jenkins
海兰4 小时前
在 Grafana 中驾驭 ES|QL:Elasticsearch 管道查询实战指南
大数据·elasticsearch·grafana
陌陌卡上20 小时前
在多渠道的现在,如何把自己的各方订阅接成个人中转?
工具·聚合·中转
Elasticsearch1 天前
如何使用 OpenTelemetry 和 Elastic APM 追踪 MCP 服务器工具调用
elasticsearch
Elastic 中国社区官方博客1 天前
Elastic 开源社区行为准则
大数据·elasticsearch·搜索引擎·信息可视化·全文检索
逸Y 仙X1 天前
文章二十九:ElasticSearch分桶聚合
android·大数据·elasticsearch·搜索引擎·全文检索
Highcharts.js1 天前
Highcharts React 5.0 正式版:支持 ES 模块化、组件更精简、开发体验全面升级
前端·javascript·react.js·elasticsearch·前端框架·highcharts
Elastic 中国社区官方博客1 天前
通过项目标签和路由,在 Elasticsearch Serverless 中实现更快的跨项目搜索
大数据·elasticsearch·搜索引擎·云原生·serverless·全文检索