es聚合 aggs


聚合的分類

  1. matric聚合 :在一組文檔中計算指標的聚合,如sum,min,max,avg

  2.bucket聚合 : 構建存儲桶的一系列聚合。(分組,篩選)

  3.pipeline聚合 :聚合其他聚合的輸出 及 其關聯指標的聚合

  4.matrix聚合 :在多字段上進行一系列的聚合,並根據從請求的文檔字段中提取的值生成矩陣結果。

 

 

 1. matric聚合

大概格式(還有用腳本計算的版本,先不記錄)

POST student/_search  #用get也可以
{
  "size": 0,   #表示只顯示聚合的值,不顯示具體數據
  "aggs": {
    "name1": {
      "percentile_ranks": {  #關鍵字
        "field": "grade",   #聚合的字段
        "values": [       #不同關鍵字,可用的參數不一致(可省略)
          89,
          90
        ]
      }
    }
  }
}

關鍵字:

avg  平均值

weighted_avg 加權平均值

cardinality  (同distinct功能) 計數,精確計算-使用參數precision_threshold 值越大,占用內存越大,最高是40000,超過這個值也按這個值計算

      對於字符串且基數高,存儲的字段值轉化為hash值會更快

min  最小值

max 最大值

sum  求和

value_count    計數(如果是缺失值將會被忽略)

stats 多個度量值的聚合(sum,count,avg,min,max 都會顯示)

extended_stats  多個度量值的聚合(sum,count,avg,min,max,sum_of_squares 平方, variance 方差, std_deviation 標准差, std_deviation_bounds平均值加/減兩個標准差的區間)

percentiles 從聚合文檔的數值上,提取一個或多個百分位數(1%,5%,25%,50%,75%,95%,99% 分布對應的值)如50%是小於一個值的。

percentiles_ranks 與percentiles相反,  指定小於等於的指定值的文檔,統計占比

 

2.bucket聚合

terms  分桶

top_hits  桶分組后,取最頂端的值

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM