我们正在创建一个 solr 查询,其中提供一个自定义函数(非常复杂)并按该函数的值对结果进行排序。查询所花费的时间在 200 到 400 毫秒范围内。之后我们添加了
fq:{!frange l=40 u=100}$complexCustomFunction
所以整个复杂的查询看起来像
solr/select?customFunc=complexFunction(querySpecificValue1,querySpecificValue2)&sort_by=$customFunc&fq={!frange l=40 u=100}$customFunc...
仅添加此 frange fq 后,查询所需的时间增加了十倍,因此大约需要 4 秒
最佳答案
我们刚刚将 frange 从 fq 移至 q,这将查询所需的时间从 200 毫秒更改为 400 毫秒。 结果查询现在看起来像这样:
customFunc=complexFunction(querySpecificValue1,querySpecificValue2)&sort_by=$customFunc&q={!frange l=40 u=100}$customFunc...
关于java - Solr 查询具有 Frange 和复杂的自定义函数性能问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10029867/