Эффективный способ вычисления * количества граней * в Elastic Search
Я хочу вычислить количество фасетов для пользовательского интерфейса фасетного запроса, но мне кажется, что мне чего-то не хватает, поскольку я не могу получить нужные мне числа, используя фасетные фильтры.
Вот пример. Даны два аспекта с тремя возможными терминами в каждом аспекте:
Colors: {red, yellow, blue}
Notes: {do, re, mi}
Когда я выполняю поиск, значения для каждого термина в фасете не учитывают фильтры, установленные в другом фасете.
Проиллюстрировать:
[ ] All colors (18)
[x] Red (10)
[ ] Green (5)
[ ] Blue (3)
[ ] All notes (18)
[ ] Do (5)
[x] Re (7)
[ ] Mi (6)
Обратите внимание, что итоговые значения в пределах каждой суммы фасетов к общему количеству совпадений для запроса, как будто фильтры не установлены.
Я хочу, чтобы числа в фасете «Примечания» учитывали фильтр в фасете «Цвета» и наоборот. Таким образом, числа для условий примечания должны составлять 10 (чтобы соответствовать красному фильтру), а не 18.
Интересно, что на примере снимка экрана в документации используется пример из Linked In, который фактически демонстрирует поведение, которое я хочу.
http://www.elasticsearch.org/guide/reference/api/search/facets/
Я могу получить желаемый результат, вручную повторно отправив запрос для каждого термина в каждом фасете (тьфу), но мне интересно, есть ли способ получить то же поведение, что и LinkedIn, из коробки, изменив мой запрос.