2016-05-19 45 views
0

我已經在ElasticSearch索引中編制了大約30K個文檔。每個文檔都有一個稱爲嚴重性的字段,它是一個整數值。這些整數的範圍可以從0到5,增量爲1(0,1,2,3,4,5)。我想要計算嚴重程度爲0,嚴重程度爲1,嚴重程度爲2等的文檔數量......根據出現次數計數 - ElasticSearch

我試過了value_count和range,但它們似乎都不適合我的目的。

這是我的一個文檔看起來像。有些值已被刪除,但本質的東西是嚴重

{ 
   "_index": "incident_db", 
   "_type": "incidents", 
   "_source": { 
      "incident": { 
         "name": "something", 
         "severity": 3 
      } 
   } 
} 

回答

1

聚集根據爲什麼不直接使用terms aggregation這樣的:

POST /incident_db/_search 
{ 
    "size": 0, 
    "aggs": { 
    "counts": { 
     "terms": { 
     "field": "incident.severity" 
     } 
    } 
    } 
} 
+0

謝謝!我沒有意識到我可以在ES中進行術語搜索。 –

+0

很高興幫助! – Val

+0

對不起,我打算立即這樣做,但它不允許我。再次感謝 –