我最近運行Elasticsearch過濾請求是Elasticsearch過濾器請求的結果的默認文檔序列是什麼?
{
"from" : 0,
"size" : 10,
"query" : {
"filtered" : {
"filter" : {
"bool" : {
"must" : {
"terms" : {
"a_id" : [ 257793, 257798, 257844 ]
}
}
}
}
}
},
"explain" : false,
"fields" : "a_id"
}
所以,我可以找到a_id
所有文檔中257793, 257798, 257844
,結果257844, 257798, 257793
。到現在爲止還挺好。
然後我發現無論序號是數字的順序,返回文檔總是在同一a_id
順序。也就是說,即使我跑
"terms" : {
"a_id" : [257798, 257844, 257793 ]
}
結果文檔是在257844, 257798, 257793
的順序爲好。
所以我很好奇Elasticsearch過濾背後的機制。任何人都可以幫助我並給我一個提示嗎?
我認爲這可能是有關與存儲在ES上的「索引序列」,但沒有「成熟的理論」在我的腦海中證明了這一點。 – user1702713
另外'a_id'是種類「unique_id」,沒有2個文檔具有相同的'a_id'。所以倒序索引就像'257798 - > doc_257798','257844 - > doc_257844' – user1702713