@xphoenyx

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

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

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


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

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

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

Войти через центр авторизации
Похожие вопросы