2011-08-26 2 views
4

В настоящее время я реализую решение Solr, где пользователь может выбрать различные варианты поиска продукта. Теперь я могу взять все эти параметры и объединить их в один длинный запрос, или я могу использовать запрос, который извлекает все (*: *) и применяет к нему фильтры запросов.Solr/Lucene: В чем разница между регулярными запросами и фильтрами?

Обычный запрос:

q=color:blue AND price:500 

Запрос с помощью фильтров запросов:

q=*:*&fq=color:blue&fq=price:500 

Результат точно такой же. Так в чем же разница? Когда следует использовать один или другой?

ответ

4

Фильтрующие запросы не влияют на оценку документа. Далее они полезны в кэшировании, запросы, заданные с помощью fq, кэшируются независимо от основного запроса Document for solr query parameters

0

Как правило, в любой системе производства вы бы использовать вариант обработчика Dismax запроса, который не поддерживает прежний синтаксис, следовательно, фильтрация должна быть выполнена с использованием фильтра запросов в этом случае.

Смежные вопросы