对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

db. 集合.initializeUnorderedBulkOp()(mongosh方法)

提示

MongoDB 还提供了 Mongo.bulkWrite() 方法用于执行批量写入操作。

db.collection.initializeUnorderedBulkOp()

重要

mongosh 方法

本页面提供 mongosh 方法的相关信息。这不是 特定于语言的驱动程序(例如 Node.js)的文档。

如需了解 MongoDB API 驱动程序,请参阅特定语言的 MongoDB 驱动程序文档。

为集合初始化并返回新的 Bulk() 操作构建器。该构建器可以构造 MongoDB 批量执行的写入操作的无序列表。

此命令可用于以下环境中托管的部署:

  • MongoDB Atlas:用于云中 MongoDB 部署的完全托管服务

注意

所有 MongoDB Atlas 集群都支持此命令。有关 Atlas 对所有命令的支持的信息,请参阅不支持的命令

对于无序操作列表,MongoDB 可以按任意顺序并行执行列表中的写入操作。如果操作顺序重要,请改用 db.collection.initializeOrderedBulkOp()

在执行 unordered 操作列表时,MongoDB 会对操作进行分组。对于无序批量操作,可以对列表中的操作进行重新排序以提高性能。因此,在执行 unordered 批量操作时,应用程序不应依赖顺序。

mongosh 中的 Bulk() 操作以及驱动程序中的类似方法对群组中的操作数量不设限制。要了解如何对这些操作进行分组以执行批量操作,请在执行调用 Bulk.getOperations()

如果在处理其中一个写入操作期间出现错误,MongoDB 将继续处理列表中剩余的写入操作。

以下示例初始化 Bulk() 操作构建器,并添加一系列插入操作以添加多个文档:

var bulk = db.users.initializeUnorderedBulkOp();
bulk.insert( { user: "abc123", status: "A", points: 0 } );
bulk.insert( { user: "ijk123", status: "A", points: 0 } );
bulk.insert( { user: "mop123", status: "P", points: 0 } );
bulk.execute();