哪个更快或更新插入MongoDB和为什么?

时间:2018-02-21 12:24:14

标签: mongodb

MongoDB插入查询或更新查询中哪个查询更快,以及为什么该查询更快。

    db.collection.insert(
       <document or array of documents>
)

  db.collection.update(
   <query>,
   <update>
)

1 个答案:

答案 0 :(得分:0)

这取决于我们正在更新或插入的文件

  

插入:

需要检查相同_id的文档是否已存在

if document with same _id exists 
   then insert failed
else 
   insert document
  

更新(使用Upsert):

if document with same _id exists 
   update document
else 
   insert new document

当我们在查询中提供文档_id时,插入或更新将花费相同的时间,而我们在集合中的其他因素(如索引)也会对查询write performance产生相当大的影响。如果插入或更新查询中没有提供文档_id,那么它将会更慢

如果您需要提高mongodb的性能,可以查看这些引用

https://www.sitepoint.com/7-simple-speed-solutions-mongodb/ https://docs.mongodb.com/manual/core/write-performance/