MST
星途 面试题库

面试题:ElasticSearch中均值聚合的基本使用场景

请描述在哪些实际业务场景中,你会优先考虑使用ElasticSearch的均值聚合功能?并举例说明如何在ElasticSearch中通过DSL语句实现简单的数值字段均值聚合。
11.6万 热度难度
数据库ElasticSearch

知识考点

AI 面试

面试题答案

一键面试

实际业务场景

  1. 电商平台价格分析:分析某类商品的平均价格,帮助商家了解市场定价水平,调整自身定价策略。例如,在电子产品分类下,分析各品牌手机的平均售价,以确定不同品牌的价格定位。
  2. 网站性能监控:统计一段时间内网站响应时间的平均值,用于评估网站整体性能。如统计每小时内页面加载的平均响应时间,判断网站是否处于高效运行状态。
  3. 学生成绩统计:在教育场景中,计算某个班级学生某门课程的平均成绩,评估班级整体学习水平。

DSL 语句实现数值字段均值聚合示例

假设我们有一个索引 students,其中包含文档,文档中有 score 数值字段,表示学生成绩。以下是获取所有学生成绩平均值的DSL语句:

{
    "aggs": {
        "avg_score": {
            "avg": {
                "field": "score"
            }
        }
    }
}

上述DSL语句在 aggs(聚合)部分定义了一个名为 avg_score 的聚合,使用 avg 聚合类型对 score 字段进行均值计算。