0

我正在运行一个高效的 Solr 服务器,其中包含超过 700.000 个数据集。我正在使用具有以下设置的查询模式 dismax:

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 值的范围和响应时间是相关的。当我剥离 qf 时,响应时间会变得更好。这是预期的行为吗?qf 不应该太大吗?有没有办法调整这种情况下的性能?

4

1 回答 1

1

这听起来像是查询重新排名的一个很好的用例。

您首先使用更简单的查询(例如,从 qf 中删除所有 title* 内容可能仍会产生良好的结果),然后使用您现在拥有的完整复杂 qf 进行重新排名步骤。

于 2016-10-11T22:11:55.413 回答