10.Elasticsearch应用(十)

Elasticsearch应用(十)

1.为什么需要聚合操作

聚合可以让我们极其方便的实现对数据的统计、分析、运算,例如:

  • 什么品牌的手机最受欢迎?
  • 这些手机的平均价格、最高价格、最低价格?
  • 这些手机每月的销售情况如何?

2.什么是聚合

聚合(aggregations)可以实现对文档数据的统计,分析,运算,在做聚合的时候往往是与文档过滤一起用的,一般不会对整个索引库进行聚合操作

3.聚合语法

在这里插入图片描述

4.聚合分类

  1. 桶聚合(Bucket): 用来对文档做分组,类似于MySQL的group by
    • TermAggregation: 按照文档字段值分组
    • Date Histogram: 按照日期阶梯分组,例如一周为一组,或者一月为一组
    • 注意:
      • 分词字段不行,必须是不能分词的字段
      • 默认情况下,Bucket聚合会统计Bucket内的文档数量,记为_count,并且按照_count降序排序
      • 默认情况下,Bucket聚合是对索引库的所有文档做聚合,我们可以限定要聚合的文档范围,只要添加query条件即可
  2. 度量聚合(Metric): 用以计算一些值,比如:最大值,最小值,平均值等
    • Avg: 求平均值
    • Max: 求最大值
    • Min: 求最小值
    • Stats: 同时求max,min,avg,sum等
  3. 管道聚合(pipeline): 其他聚合的结果为基础做聚合
  4. Matrix: 支持对多个字段的操作并提供一个结果矩阵

5.度量聚合

介绍

—些数学运算,可以对文档字段进行统计分析,类比MySQL中的 min(),max(),sum() 操作

相关推荐

  1. Elasticsearch(10) match的使用

    2024-01-26 08:48:04       39 阅读
  2. Elasticsearch 认证模拟题 - 10

    2024-01-26 08:48:04       31 阅读
  3. elasticsearch高级应用

    2024-01-26 08:48:04       52 阅读
  4. SpringBoot整合ElasticSearch应用

    2024-01-26 08:48:04       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-26 08:48:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-26 08:48:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-26 08:48:04       87 阅读
  4. Python语言-面向对象

    2024-01-26 08:48:04       96 阅读

热门阅读

  1. Linux内核--文件系统(三)文件系统原理架构介绍

    2024-01-26 08:48:04       55 阅读
  2. ELK实战

    2024-01-26 08:48:04       53 阅读
  3. uniapp一些常用api

    2024-01-26 08:48:04       55 阅读
  4. uniapp 用web-view嵌套网页地址并传参

    2024-01-26 08:48:04       50 阅读
  5. 【GPU驱动开发】-Mesa ST和GLSL编译器衔接交互分析

    2024-01-26 08:48:04       46 阅读
  6. BERT-文本分类&NER

    2024-01-26 08:48:04       60 阅读
  7. 低代码开发业务在AIGC时代的应用

    2024-01-26 08:48:04       59 阅读
  8. 第十一章认识Ajax(二)

    2024-01-26 08:48:04       46 阅读
  9. 智慧零售的趋势:零售业的未来

    2024-01-26 08:48:04       49 阅读