Elasticsearch'te "filtreler" ve "filtrelenmiş sorgular" arasında bir fark varsa, çalışmayı deniyorum.Bir aramayı Elasticsearch ile filtrelemenin doğru yolu? (filtrelenmiş filtreye karşı filtre)
Aşağıdaki iki örnek istek dizimden çalıştırıldığında aynı sonuçları döndürür.
Gerçekten ince bir şekilde farklı mıdırlar?
Farklı durumlarda, diğerinin üzerinde tercih edilmesinin bir nedeni var mı?
DSL bir üst düzey query
, ve bir üst düzey filter
elde edilmiştir:
GET /index/type/_search?_source
{
"query": {
"multi_match": {
"query": "my dog has fleas",
"fields": ["name", "keywords"]
}
},
"filter": {
"term": {"status": 2}
}
}
DSL filtered
yapı kullanılarak, sadece bir üst düzey query
elde edilmiştir:
GET /index/type/_search?_source
{
"query": {
"filtered": {
"query": {
"multi_match": {
"query": "my dog has fleas",
"fields": ["name", "keywords"]
}
},
"filter": {
"term": {"status": 2}
}
}
}
}
http://stackoverflow.com/questions/28937819/does-it-matter-if-the-filter-is-inside-or-outside-a-filtered-query/ –