如何优化solr上的大索引

时间:2011-11-04 09:40:29

标签: optimization solr indexing

我们的指数每天增加2000-3000个文件,增长相对较快。 我们每晚都在进行优化。

关键是,Solr在优化时需要双磁盘空间。实际上,索引的大小为44GB,可以在100GB的分区上运行 - 接下来的几个月。

关键是,50%的磁盘空间在一天的90%时间内未使用,仅在优化期间需要。

接下来的事情:我们必须在该分区期刊上添加更多空间 - 这与来自存储部门的人一直是一次痛苦的讨论(因为我们有多个索引......)。

所以问题是:有没有办法优化索引而不会阻止磁盘上额外100%的索引大小?

我知道,多核分布式搜索是一种选择 - 但这只是一个“后退”解决方案,因为我们需要基本上改变应用程序。

谢谢!

2 个答案:

答案 0 :(得分:3)

Lucene在引擎盖下不断融合。阅读可以在solrconfig.xml中设置的Merge Factor。如果你调整这个设置,你可能根本不需要进行优化。

答案 1 :(得分:-1)

您可以通过传递maxSegment参数来尝试部分优化。 这会将索引减少到指定的数字。 我建议你分批进行(例如,如果有50个段首先减少到30个然后减少到15个,依此类推)。 这是网址:

host:port/solr/CORE_NAME/update?optimize=true&maxSegments=(Enter the number of segments you want to reduce to. Ignore the parentheses)&waitFlush=false