我的申请通常需要20分钟才能重新整合索引。有一个小桌子,有几条记录,我想再次重新索引。我想节省时间,所以我运行了命令rake sunspot:solr:reindex[500,Deal]
。这是直接从Github readme获取的,并且假设仅重新索引一个模型。
在此命令中重新索引所需的时间仍为20分钟,因此所用时间没有差异。我做错了吗?
答案 0 :(得分:31)
我在同样的情况下问你为什么需要同样的时间。
解决方案:擦除":solr"。只需写下:
rake sunspot:reindex[batch_size,Model]
如果您没有指定batch_size,那么您可以使用逗号","像:
rake sunspot:reindex[,model]
答案 1 :(得分:26)
我现在进入Rails控制台并从那里调用reindex:
Deal.solr_reindex(:batch_size => 1000, :include => :period)
这很有效,因为我现在只能重新索引一个模型,包括相关表来提高速度。以前只有200 /秒的索引,现在是1000 /秒。
(事实上,由于通过控制台或rake重新索引会清除索引文件,导致短索引空索引,我现在大部分时间都会调用solr_index
来更新索引。)