ELK

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

2022-04-25  本文已影响0人  大勇任卷舒

23.1 聚合的引入

SELECT COUNT(color) 
FROM table
GROUP BY color

23.2 准备数据

POST /test-agg-cars/_bulk
{ "index": {}}
{ "price" : 10000, "color" : "red", "make" : "honda", "sold" : "2014-10-28" }
{ "index": {}}
{ "price" : 20000, "color" : "red", "make" : "honda", "sold" : "2014-11-05" }
{ "index": {}}
{ "price" : 30000, "color" : "green", "make" : "ford", "sold" : "2014-05-18" }
{ "index": {}}
{ "price" : 15000, "color" : "blue", "make" : "toyota", "sold" : "2014-07-02" }
{ "index": {}}
{ "price" : 12000, "color" : "green", "make" : "toyota", "sold" : "2014-08-19" }
{ "index": {}}
{ "price" : 20000, "color" : "red", "make" : "honda", "sold" : "2014-11-05" }
{ "index": {}}
{ "price" : 80000, "color" : "red", "make" : "bmw", "sold" : "2014-01-01" }
{ "index": {}}
{ "price" : 25000, "color" : "blue", "make" : "ford", "sold" : "2014-02-12" }

23.3 标准的聚合

GET /test-agg-cars/_search
{
  "size" : 0,
  "aggs" : { 
    "popular_colors" : { 
      "terms" : { 
        "field" : "color.keyword"
      }   
    } 
  } 
}

23.4 多个聚合

GET /test-agg-cars/_search
{
  "size" : 0,
  "aggs" : { 
    "popular_colors" : { 
      "terms" : { 
        "field" : "color.keyword"
      }
    },
    "make_by" : { 
      "terms" : { 
        "field" : "make.keyword"
      } 
    } 
  } 
}

23.5 聚合的嵌套

GET /test-agg-cars/_search
{
  "size" : 0,
  "aggs": {
    "colors": {
      "terms": {
        "field": "color.keyword"
      },
      "aggs": { 
        "avg_price": { 
          "avg": {
            "field": "price" 
          } 
        } 
      } 
    } 
  } 
}

23.6 按分类学习Bucket聚合

GET /test-agg-cars/_search
{
  "size": 0,
  "aggs": {
    "make_by": {
      "filter": { "term": { "type": "honda" } },
      "aggs": {
        "avg_price": { "avg": { "field": "price" } }
      }
    }
  }
}

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

上一篇下一篇

猜你喜欢

热点阅读