【问题标题】:Performance gain by using bulk inserts vs regular inserts in MongoDB通过在 MongoDB 中使用批量插入与常规插入来提高性能
【发布时间】:2013-05-08 03:47:30
【问题描述】:

在 MongoDB 和 pymongo 中使用批量插入与常规插入相比,性能提升是多少。批量插入只是常规插入的包装器吗?

【问题讨论】:

  • 要获得大量插入的性能,请尝试使用 mongoimport(您需要创建适当的 json 或 csv 文件)。它可能比批量插入快 10 倍,但是 mongoimport 对于 upsert 来说非常慢。

标签: mongodb performance pymongo database


【解决方案1】:

@dsmilkov 这是一个优势,因为您不必每次都打开连接。

【讨论】:

    【解决方案2】:

    批量插入不是常规插入的包装器。批量插入操作包含许多作为一个整体发送的文档。它节省了尽可能多的数据库往返。它的性能要高得多,因为您不必分别通过网络发送每个文档。

    【讨论】:

    • 但是,在服务器上它们仍然是单独插入的。
    • ... 而且您也失去了轻松判断哪些文档插入失败以及哪些文档从批处理中成功插入的能力。这是异步驱动程序开始显示出巨大优势的领域。
    • 在 mongodb 2.6 中添加的任何单个插入(在 bulkinsert 操作中)报告错误的功能
    猜你喜欢
    • 2013-07-12
    • 2013-07-23
    • 1970-01-01
    • 1970-01-01
    • 2019-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-02
    相关资源
    最近更新 更多