#elasticsearch #facets
#elasticsearch #фасет
Вопрос:
У меня есть интересная проблема, когда я запускаю этот запрос для состояния WA
{
"query":{"bool":{"must":[ {"query_string":{"default_field":"State","query":""**wa**""}}],"must_not":
[],"should":[]}},"from":0,"size":10,"sort":[],
"facets":{ "States" : { "terms" : { "field" : "State" } } }
}
Результат
«фасеты»: { «Состояния»: { «_type»: «термины», «отсутствует»: 0, «всего»: 78201, «другое»: 0, «термины»: [ { «term»: «wa», «count»: 78201 } ] }
Но если я выполню этот запрос для всех состояний
{
"query":{ "bool":{"must":[{"match_all":{}}],"must_not":[],"should":[]}},"from":0,"size":1,"sort":[],
"facets":{ "States" : { "terms" : { "field" : "State" } } }
}
Возвращает меньшее количество для WA, я ожидал получить то же число, что и предыдущий запрос
«фасеты»: { «Состояния»: { «_type»: «термины», «отсутствует»: 209814, «всего»: 2549592, «другое»: 1200206, «термины»: [ { «термин»: «ca», «количество»: 305780 }, { «термин»: «mi», «count»: 185574 }, { «term»: «fl», «count»: 160341 }, { «term»: «tn», «count»: 135670 }, { «term»: «il», «count»: 132751 }, { «term»: «tx», «count»: 113359 }, { «term»: «oh», «count»: 98598 }, { «term»: «pa», «count»: 84601 }, { «term»: «co», «count»: 79796 }, { «term»: «wa», «count»: 52916 } ] } } }
Итак, как на самом деле работают фасеты elasticsearch?
Спасибо, как всегда
Комментарии:
1. Пожалуйста, отредактируйте и отформатируйте свой вопрос правильно
2. У кого-нибудь есть мысль?