我正在使用Node的 mongodb驱动程序,其中有3种方法:
1)db.collection.insert
2)db.collection.insertOne
3)db.collection.insertMany
我发现db.collection.insert完成了insertOne和insertMany的工作。
我也找到了与删除相同的方法。更新。
对db.collection.insertOne& amp;和db.collection.insertOne& db.collection.insertMany方法?
可以安全地假设我正在收集一个在某个时间点将有数百万条记录的集合。
答案 0 :(得分:1)
存在一些细微差别:
因此,这取决于您选择的访问模式。通常,为了提高性能,如果您必须添加多个文档,请尝试仅进行1次调用(insert()或insertMany())并使其无序(如果可能,从应用程序的角度来看)。如果您对是否应该使用(insert()或insertMany())提出疑问,则取决于您是否需要explain()或生成的objectIds,但性能没有差异(如果您输入:db.yourCollection.insert
或db.yourCollection.insertMany
(不含()
),您会看到两者都执行了bulk.insert(obj)
)
<强> TL; DR:强>
答案 1 :(得分:0)
执行操作时,请说明30个文档,使用许多选项插入/更新效率更高:
因此减少往返次数,网络开销并允许db引擎一次处理所有文档,通过客户端调用插入/更新的所有文档逐个循环来列出优势
答案 2 :(得分:0)