有誰知道如何從範圍訂購聚合/方面桶到可預測的順序我是否將它們添加到方面的順序?ElasticSearch方面/聚合排序/訂購
當前1.4分支(可能還有舊的分支機構)通過「doc_count」命令桶不可預測。我希望能夠以預定義的順序輸出桶。
有誰知道如何從範圍訂購聚合/方面桶到可預測的順序我是否將它們添加到方面的順序?ElasticSearch方面/聚合排序/訂購
當前1.4分支(可能還有舊的分支機構)通過「doc_count」命令桶不可預測。我希望能夠以預定義的順序輸出桶。
一個簡單的方法可能是在Elasticsearch的響應結束時對它們進行排序。另一種方式可能是按照術語排序(聚合的關鍵)。
更新:
如果您使用的日期範圍的聚集與查詢像下面那麼結果將在「3天前」,「昨天」,「今天」無論doc_count的時間順序自動地。
{
"aggs" : {
"timerange" : {
"date_range" : {
"field" : "day",
"keyed" : true,
"ranges" : [
{
"key": "today",
"from": "now/d"
}
,
{
"key": "yesterday",
"from": "now-1d/d",
"to": "now/d"
},
{
"key": "3 days ago",
"from": "now-3d/d",
"to": "now-2d/d"
}
]
}
}
}
}
如果你有興趣在日常的數據則Date histogram將更加方便。
再次,這些是RANGE查詢。 – user3169851 2014-11-25 13:03:12
我對原始答案進行了一些編輯。讓我知道,如果我正確理解你的問題 – 2014-11-26 07:50:05
這是一個非常hacky的答案,總是期望鬥鍵可以排序,由於他們如何被標記,但無論如何感謝。我選擇在客戶端進行分類 – user3169851 2014-11-26 11:22:40
你是什麼意思的預定義順序?請澄清你的要求。 – bittusarkar 2014-11-25 10:31:56
我可以設置一個訂單,例如按照我請求的順序返回存儲桶,而不是通過「doc_count」 – user3169851 2014-11-25 10:38:19
else命令它們,從而允許我將任意字段添加到將在存儲桶中返回的存儲桶,例如標籤或一些標識符,所以我可能會爲自己工作...... – user3169851 2014-11-25 10:42:39