Как установить "search_type" в "count" в asticsearch-rails?
Вот запрос, который я хотел бы получить, работая с asticsearch-rails. (Запрос работает в Sense). Моя цель состоит в том, чтобы вернуть все корзины для предметов, у которых есть человек, чье имя начинается с буквы B. Мой первый камень преткновения заключается в том, что я не могу понять, как указать, что для search_type должно быть установлено значение count.
GET _search?search_type=count
{
"query": {
"prefix": {
"person": "B"
}
},
"aggs" : {
"facets" : {
"terms" : {
"field" : "person",
"size" : 0,
"order" : { "_term" : "asc" }
}
}
}
}
1 ответ
Согласно этой проблеме, это пока не поддерживается.
Альтернатива, которая работает, это просто настройка size: 0
в вашем запросе, вот так:
{
"size": 0, <--- add this
"query": {
"prefix": {
"person": "B"
}
},
"aggs" : {
"facets" : {
"terms" : {
"field" : "person",
"size" : 0,
"order" : { "_term" : "asc" }
}
}
}
}
Стоит отметить, однако, что search_type=count
будет объявлено устаревшим , теперь не рекомендуется в ES 2.0, и рекомендация будет size: 0
в вашем запросе, как указано выше. Это сделает вас совместимым с ES 2.0... по крайней мере для этого запроса, то есть:)