46
A
回答
48
FilterQuery只存儲文檔IDS。這使得應用過濾器包含/排除文檔的速度非常快。這方面的好例子是根據國家,產品類型,可用性等搜索過濾產品。
正常查詢可以執行完全相同的功能,但它有一個非常複雜的評分系統來確定「相關性」。我相信該文檔指出評分只在主查詢上完成,而不是在過濾器查詢上完成。這也應該增加查詢速度。
所以,我可以查詢:
description:Kohler AND productType:Toilet
或者,我可以查詢:
description:Kohler
with a FQ of productType:Toilet
結果將是相同的,但分數會有所不同。另外,如果在productType:Toilet
的整個一天中收到許多不同的查詢,FilterQuery將被緩存,從而使整個查詢時間更快。
3
fq適用於固定的值列表。如果在q =天窗+立體聲上搜索,並且fq = Mustang solr將對q參數進行文本分析,因爲q =天窗+立體聲和q =立體聲+天窗將返回相同的結果集。但是,當通過fq過濾搜索時,沒有對fq參數應用分析,並且假設所有返回的文檔都將與fq匹配,因此不需要修改匹配的文檔的分數。
相關問題
- 1. solr主要查詢與fq
- 2. Solr的面查詢過濾
- 3. Apache Solr - 或過濾器查詢
- 4. Solr查詢(q)或過濾器查詢(fq)
- 5. solr多查詢器查詢
- 6. Solr的過濾查詢參數
- 7. Case In-Sensitive Solr查詢分面和濾波器查詢
- 8. 翻譯SQL查詢的DbContext查詢與過濾子查詢
- 9. 過濾查詢與外鍵
- 10. SPARQL查詢與過濾
- 11. 查詢過濾
- 12. 查詢基於過濾器的查詢linq查詢
- 13. 與關係的MySQL過濾器查詢
- 14. Solr過濾器查詢中多值字段上的布爾查詢
- 15. Solr/Lucene:常規查詢和過濾器查詢之間的區別
- 16. 過濾器cte xpath查詢
- 17. 查詢中的過濾器
- 18. 像過濾器SQL查詢
- 19. MDX過濾器查詢
- 20. MySql過濾器查詢
- 21. 過濾器的MySQL查詢
- 22. Solr的查詢 - 書面Solr的查詢
- 23. 過濾查詢mongoengine
- 24. NDB查詢過濾
- 25. 過濾LINQ查詢
- 26. Django查詢過濾
- 27. SOLR中的過濾器和複雜查詢有什麼區別?
- 28. 如何複製每個過濾器查詢的Solr索引?
- 29. 在查詢時使用solr木瓦過濾器
- 30. 如何在solr中創建多個過濾器查詢?
因此,如果例如在索引處對「productType」有術語提升,則如果在FilterQuery而不是主Query中設置productType,則可以對結果進行不同的排序,例如如果它位於Query中,那些帶有較高的productType分數將位於頂部,而如果它位於FilterQuery中,則具有較高productType分數的那些文檔可能位於底部,因爲由於分數位於FilterQuery中,所以未應用分數。我理解你嗎? – mrd3650 2012-01-05 08:15:55
正確。但是,如果您將productType作爲AND子句放在主Query中,則無論如何您都不會返回任何其他productType。所以這可能是有限的價值。但是,你所說的話意味着你明白它是如何工作的。 – rfeak 2012-01-05 15:49:29
是的,你有一個觀點,因爲我錯誤地假設productType上有一個FTS(因此可能會返回多個productType,但通常在* Type上沒有FTS)。謝謝。 – mrd3650 2012-01-06 09:02:08