ELK Elasticsearch 笔记(四)信息统计分析与搜索提示

本文详细介绍了Elasticsearch的Aggregations功能,包括buckets和metrics的统计概念,以及各种聚合类型如最值、求和、均值、Tarms、Range、Histogram和Date_histogram等。此外,还探讨了搜索提示功能,增强了用户的搜索体验,并提供了官方文档链接及示例数据操作。
摘要由CSDN通过智能技术生成

Aggregations

 aggregations可以看做是对查询结构的二次汇总,比如先查询出某个时间段的HTTP请求,然后统计每天的数据。在aggregations中会用到“桶”(buckets)的概念。所谓的“桶”,是满足某个条件的文档集合,他和关系型数据库中的sql语句中的group by 子句的作用相似(但又不一样)。另外,metrics(测度)是为摸个桶中的文档计算得到的统计信息,类似于sql中的count()、max()等。可见,aggregations聚合是有一个或多个buckets、零个或者多喝metrics组合而成的统计结果。每个文档中的值会被计算来决定它们是否匹配了某些buckets的条件,如匹配成功,那么该文档会被植入该buckets中。

  1. 最值、求和、均值统计
    GET /pms/_search?pretty
    {
      "query": {
        "match_all": {}
      },
      "aggs": {
        "min_size":{ // agg名称
          "min": {
            "field": "price"
          }
        },
        "max_size":{ // agg名称
          "max": {
            "field": "price"
          }
        },
        "avg_val":{ // agg名称
          "avg": {
            "field": "price"
          }
        }
      }
    }

    返回的结果: 

  2. Stats Aggregation 及 Extended Stats Aggregations
    GET /pms/_search?pretty
    {
      "query": {
        "match_all": {}
      },
      "aggs": {
        "multi_stats_size":{ // agg名称 自定义
          "stats": {
            "field": "price"
          }
        },
        "extended_stats_of_size":{ // agg名称 自定义
          "extended_stats": {
            "field": "price"
          }
        }
      }
    }

    返回结果 : 

  3. Tarms Aggregations   用于对指定字段的内容进行分布统计
    // group by brandName
    GET /pms/_search?pretty
    {
      "query": {
        "match_all": {}
      },
      "aggs": {
        "brand_of_aggs":{
          "terms": {
            "field": "brandName"
          }
        }
      }
    }
    
    //
    GET /pms/_search?pretty
    {
      "query": {
        "match_all": {}
      },
      "aggs": { //外层aggs
        "brand_of_aggs":{
          "terms": {
            "field": "brandName",
            "si
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值