Search 减少solr中的查询时间

Search 减少solr中的查询时间,search,solr,indexing,Search,Solr,Indexing,我正在使用solr进行搜索。我的索引大小一小时比一小时大。所以查询时间也越来越长。许多人建议分片。这是最后一个选择吗。我现在该怎么办? 在匆忙进行切分之前,您可以先看看您的模式,看看是否可以在那里进行任何优化。切分可以让您的搜索速度更快 使用停止词:停止词是非常常见的词,可能会不必要地扩大索引大小。当你需要停止的时候,试着用它们 尽可能避免与“扩展”选项同义。这些也极大地扩展了指数 避免在大范围内使用N克。如果尺寸较大,则会生成太多的组合 当您只需要筛选器时,请使用查询筛选器(fq参数)。过滤查

我正在使用solr进行搜索。我的索引大小一小时比一小时大。所以查询时间也越来越长。许多人建议分片。这是最后一个选择吗。我现在该怎么办?

  • 在匆忙进行切分之前,您可以先看看您的模式,看看是否可以在那里进行任何优化。切分可以让您的搜索速度更快

  • 使用停止词:停止词是非常常见的词,可能会不必要地扩大索引大小。当你需要停止的时候,试着用它们

  • 尽可能避免与“扩展”选项同义。这些也极大地扩展了指数

  • 避免在大范围内使用N克。如果尺寸较大,则会生成太多的组合

  • 当您只需要筛选器时,请使用查询筛选器(fq参数)。过滤查询比普通查询更快,并且不会应用任何评分。它只是一个过滤器。因此,如果需要将和查询放在一起,请将筛选器查询放在fq参数中

  • 不时运行“优化索引”以清除索引中已删除的文档,并减小索引大小

  • 使用debugQuery=on,查看是否可以发现任何需要花费很长时间的事情

  • 如果文档大小较大,请尝试使用documentCache

  • 如果有重复的筛选查询,请尝试使用filterCache

  • 如果有重复的查询,请尝试使用queryResultCache


如果没有上述结果导致任何性能提升,那么你可能会考虑分配/分布式搜索

,以便帮助你(1)知道你的模式(2)很酷,看慢的查询。这些可能是您可以进行微调的地方。请根据您的数据尝试缓存