我在一个集合中有几百万个文档。我需要在每个文件上执行复杂表达式,然后更新每个文档中的结果值。
我尝试了Eval()和javascript方法。
我尝试过批量更新方法。
他们都需要很多时间才能完成(小时)。没有填充问题,因为已更新的字段已存在。
但是,如果我将生成的文档存储到新的集合中而不是更新原始文档,那么性能是可以接受的。
那么,MongoDB中的更新应该比插入更慢?
你知道一种不同的方法吗?
谢谢!
答案 0 :(得分:0)
你试过吗
db.coll.update({}, {/* your changes here */}, { multi: true})
这将更改与第一个参数匹配的所有文档,该参数为空,因此它与所有文档匹配。