Документы SOLR, укажите, что запросы фильтра, в отличие от основного запроса , не влияют на оценку документа, Может ли кто-нибудь объяснить, что это значит точно, предпочтительно с примером.
Спасибо.
Документы SOLR, укажите, что запросы фильтра, в отличие от основного запроса , не влияют на оценку документа, Может ли кто-нибудь объяснить, что это значит точно, предпочтительно с примером.
Спасибо.
Фильтрующий_Query ТОЛЬКО хранит IDS документа. Это делает очень быстрым применение фильтра для включения/исключения документов. Хорошими примерами этого являются фильтрация продуктов из поиска на основе страны, типа продукта, доступности и т.д.
Обычный запрос может выполнять ту же самую функцию, но он имеет очень сложную систему подсчета очков, чтобы определить "релевантность". Я считаю, что документация указывает, что подсчет очков производится только в основном запросе, а не в фильтре. Это также должно увеличить скорость запроса.
Итак, я могу запросить для:
description:Kohler AND productType:Toilet
Или я могу запросить для:
description:Kohler
with a FQ of productType:Toilet
Результаты будут одинаковыми, но оценки будут разными. Кроме того, если вы получаете много разных запросов в течение дня, которые для productType:Toilet
, FilterQuery будет кэшироваться, что ускорит общее время запроса.
fq предназначен для фиксированного списка значений. Если вы выполните поиск по q = sunroof + stereo и fq = Mustang solr выполнит текстовый анализ по параметру q, так как q = sunroof + stereo и q = stereo + sunroof вернет тот же набор результатов. Но при фильтрации поиска по fq нет никакого анализа, применяемого к параметру fq, и он предположил, что все возвращенные документы будут соответствовать fq, поэтому нет необходимости в том, чтобы он изменял оценку соответствующих документов.