2016-10-11 107 views
0

很慢,我工作富有成效Solr的服務器,在它超過700.000數據集。我使用的查詢方式dismax以下設置:Solr的查詢與豐富的QF

mm = 2<-1 5<80% 
tie = 0.1 
qf = title^4 text title_bg^4 text_bg title_hr^4 text_hr title_cs^4 text_cs title_da^4 text_da title_nl^4 text_nl title_et^4 text_et title_fi^4 text_fi title_fr^4 text_fr title_de^4 text_de title_el^4 text_el title_hu^4 text_hu title_ga^4 text_ga title_it^4 text_it title_lv^4 text_lv title_lt^4 text_lt title_mt^4 text_mt title_pl^4 text_pl title_pt^4 text_pt title_ro^4 text_ro title_sk^4 text_sk title_sl^4 text_sl title_es^4 text_es title_sv^4 text_sv name^4 tags^2 groups^2 

的QF值非常擴展,因爲一些字段存儲在多國語言對於這類查詢我想在所有的語言進行搜索。但是查詢非常緩慢。大約需要12秒才能得到答覆。服務器的硬件綽綽有餘。我注意到qf值的範圍和響應時間是連接的。當我剝離下來時,響應時間變得更好。這是預期的行爲?如果不是太大?有沒有辦法調整這種情況下的性能?

+0

你真的真的需要用西班牙語和瑞典語和匈牙利同時搜索,或者你有一些想法的時間提前了用戶語言是什麼嗎? –

+0

事實上,我需要用所有語言進行搜索。沒有其他辦法了。 – linsenfips

回答

1

這聽起來像一個良好的用例query reranking

您可以使用一個簡單的查詢第一(例如移除所有標題*從QF的東西可能仍給了良好的效果),然後使用全複雜QF你現在有重新排名的一步。

+0

謝謝。聽起來像一個很好的方法。但我真的很想明白爲什麼這麼慢? CPU和RAM是足夠的,根本沒有任何挑戰。 – linsenfips