У меня есть индекс и я хочу получить счетчик для записей в каждом типе одного конкретного индекса в elasticsearch, но может заранее не знать типы.
Так, например, индекс
/events
и типы могут быть
/events/type1
/events/type2
...
/events/typeN
И я бы хотел запросить индекс и сказать "Дайте мне подсчет каждого из типов под индексными событиями", поэтому, возможно, результат, подобный
/events/type1 : 40
/events/type2: 20
/events/typeN: 10
где /events/ _count даст мне
/events: 70
Edit
Имотов ответ велик. У меня возникли проблемы с выяснением того, как легко работать в JavaScript/Ajax. У меня есть что-то вроде этого прямо сейчас:
$.ajax({
type: 'GET',
url: 'http://localhost:9200/events/_search?search_type=count',
data: '{ "facets" : { "count_by_type" : { "terms" : { "field": "_type" }}}}',
success: function(text) {
console.log(text);
}
)}'
Но я получаю только общее количество элементов в ES, фасетная часть ответа кажется отсутствующей.