@dailysse

Как сформировать запрос к ElasticSearch?

Всем доброго дня. Вопрос касается фасетного поиска.

Допустим есть 2 фильтра:

2.1 Категории
Грузовые (1765)
Легковые (1566)
Какие-нибудь еще (8675)

2.2 Цвета
Красный (5689)
Зеленый (156)
Синий (3599)
Желтый (2562)

Как мы видим напротив каждого фильтра указано сколько элементов индивидуально хранится в эластик.
Поставим галочку напротив "грузовые".

Поведение сейчас:

2.1 Категории
Грузовые (1765)
Легковые (0)
Какие-нибудь еще (0)

2.2 Цвета
Красный (кол-во красных грузовых)
Зеленый (кол-во зеленых грузовых)
Синий (кол-во синих грузовых)
Желтый (кол-во желтых грузовых)

Нужно такое поведение:

2.1 Категории
Грузовые (1765)
Легковые (1566)
Какие-нибудь еще (8675)

2.2 Цвета
Красный (кол-во красных грузовых)
Зеленый (кол-во зеленых грузовых)
Синий (кол-во синих грузовых)
Желтый (кол-во желтых грузовых)

То есть чтобы фильтр на конкретное поле не влиял на его агрегацию, но влиял на всех остальные. Как это можно реализовать оптимизированно? Сейчас реализуется за x запросов к elastic, а x равно кол-ву фильтров
  • Вопрос задан
  • 89 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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