@xphoenyx

Как выбрать документы по конкретной категории с аггрегированием?

Имеется портал для выставления аукционов. Данные аукционов (документы) хранятся в индексе elasticsearch. Каждый аукцион принадлежит одной категории, у которой, в свою очередь, есть родительские категории. ID дочерней и родительских категорий хранятся в отдельном поле документа аукциона в виде вложенной структуры:

{
    ...
    'categories': {
         'level1': 3 // <- Категория аукциона (пример: видеокарты)
         'level2': 34 // <- Родительская категория (пример: компоненты)
         'level3': 152 // <- Родительская категория (пример: компьютеры)
    }
    ...
}


Передо мной стоит две задачи: выбрать из индекса документы с конкретной категорией, и выполнить при этом аггрегацию, в которой будет подсчитано количество аукционов в каждой затронутой запросом категории.

Вопрос: как должен выглядеть JSON с запросом, выполняющим эти условия?
  • Вопрос задан
  • 135 просмотров
Пригласить эксперта
Ответы на вопрос 1
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
Если номер категории у вас уникален, то зачем вы их разбили на несколько свойств? Не проще ли было бы просто сделать свойство 'level':[3,34,152]. Тогда агрегация будет в один запрос!
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
от 300 000 до 500 000 ₽
от 1 000 000 до 1 200 000 ₽
Сима-ленд Екатеринбург
от 120 000 до 250 000 ₽
26 апр. 2024, в 06:46
1000 руб./в час
26 апр. 2024, в 05:31
1000 руб./за проект