我有一个 rake 任务,它处理一组记录并将其保存在另一个集合中:
batch = []
Record.where(:type => 'a').each do |r|
batch << make_score(r)
if batch.size %100 == 0
Score.collection.insert(batch)
batch = []
end
end
我一次处理大约 10 万条记录。不幸的是,在 20 分钟时,我得到了一个Query response returned CURSOR_NOT_FOUND
错误。
mongodb faq说使用skip
和limit
或关闭超时,使用它们的所有事情都慢了大约 2-3 倍。
如何与 mongoid 一起关闭超时?