美文网首页ELK
24.Elasticsearch索引聚合查询—Bucket聚合-

24.Elasticsearch索引聚合查询—Bucket聚合-

作者: 大勇任卷舒 | 来源:发表于2022-04-26 17:51 被阅读0次

    24.1 前置条件的过滤:filter

    24.1.1 对filter进行分组聚合:filters

    • 示例:日志系统中,每条日志都是在文本中,包含warning/info等信息
    PUT /test-agg-logs/_bulk?refresh
    { "index" : { "_id" : 1 } }
    { "body" : "warning: page could not be rendered" }
    { "index" : { "_id" : 2 } }
    { "body" : "authentication error" }
    { "index" : { "_id" : 3 } }
    { "body" : "warning: connection timed out" }
    { "index" : { "_id" : 4 } }
    { "body" : "info: hello pdai" }
    
    • 需要对包含不同日志类型的日志进行分组,这就需要filters:
    GET /test-agg-logs/_search
    {
      "size": 0,
      "aggs" : {
        "messages" : {
          "filters" : {
            "other_bucket_key": "other_messages",
            "filters" : {
              "infos" : { "match" : { "body" : "info" }},
              "warnings" : { "match" : { "body" : "warning" }}
            }
          }
        }
      }
    }
    

    24.2 对number类型聚合:Range

    • 基于多桶值源的聚合,使用户能够定义一组范围-每个范围代表一个桶
      • 在聚合过程中,将从每个存储区范围中检查从每个文档中提取的值,并“存储”相关/匹配的文档
    GET /test-agg-cars/_search
    {
      "size": 0,
      "aggs": {
        "price_ranges": {
          "range": {
            "field": "price",
            "ranges": [
              { "to": 20000 },
              { "from": 20000, "to": 40000 },
              { "from": 40000 }
            ]
          }
        }
      }
    }
    

    24.3 对IP类型聚合:IP Range

    • 专用于IP值的范围聚合


    • 返回:


    24.4 对日期类型聚合:Date Range

    • 专用于日期值的范围聚合



    24.5 对柱状图功能:Histrogram

    • 创建直方图需要指定一个区间,如果要为售价创建一个直方图,可以将间隔设为20,000
      • 这样做将会在每个 $20,000 档创建一个新桶,然后文档会被分到对应的桶中
    • 对于仪表盘来说,希望知道每个售价区间内汽车的销量
      • 还会想知道每个售价区间内汽车所带来的收入,可以通过对每个区间内已售汽车的售价求和得到
    • 可以用 histogram 和一个嵌套的 sum 度量得到想要的答案:
    GET /test-agg-cars/_search
    {
      "size" : 0,
      "aggs":{
        "price":{
          "histogram":{ 
            "field": "price.keyword",
            "interval": 20000
          },
          "aggs":{
            "revenue": {
              "sum": { 
                "field" : "price"
              }
            } 
          } 
        } 
      } 
    }
    

    大数据视频推荐:
    腾讯课堂
    CSDN
    ELK入门精讲
    AIOps智能运维实战
    ELK7 stack开发运维
    大数据语音推荐:
    ELK7 stack开发运维
    企业级大数据技术应用
    大数据机器学习案例之推荐系统
    自然语言处理
    大数据基础
    人工智能:深度学习入门到精通

    相关文章

      网友评论

        本文标题:24.Elasticsearch索引聚合查询—Bucket聚合-

        本文链接:https://www.haomeiwen.com/subject/ejftyrtx.html