Performance mongo中bulk.find.update()与update.collection(multi=true)的比较
我是mongodb的新手,希望在我拥有数百万记录的项目中实现mongodb。我想知道我更喜欢更新-bulk.find.update()与update.collection,multi=true以获得性能。据我所知,bulk提供的最大收益是:Performance mongo中bulk.find.update()与update.collection(multi=true)的比较,performance,mongodb,mongodb-query,updates,Performance,Mongodb,Mongodb Query,Updates,我是mongodb的新手,希望在我拥有数百万记录的项目中实现mongodb。我想知道我更喜欢更新-bulk.find.update()与update.collection,multi=true以获得性能。据我所知,bulk提供的最大收益是: 对于批量中的所有请求,批量操作只向MongoDB发送一个请求。其他人针对每个文档发送请求,或仅针对一种操作类型发送请求,这些操作类型来自插入,更新,更新一个,使用更新操作和删除 Bulk可以在代码页的不同行处理许多不同的情况 批量操作可以异步工作。其他人不能
插入
,更新
,更新一个
,使用更新
操作和删除
批量的。例如,insertMany
如果考虑到上述优点,update()
必须显示与bulk.find.update()
操作相同的性能结果
因为update()
只能将一个查询对象发送到MongoDB。而multi:true
只是一个指定必须更新所有匹配文档的参数。这意味着它在网络上只发出一个请求。就像批量操作一样
因此,两者都只向MongoDB发送一个请求,MongoDB计算query子句以查找要更新的文档,然后更新它们
我曾试图在MongoDB官方网站上找到这个问题的答案,但我找不到
因此,@AsyaKamsky的解释将非常棒