MongoDB C# 驱动程序 2.0 InsertManyAsync 与 BulkWriteAsync

MongoDB C# driver 2.0 InsertManyAsync vs BulkWriteAsync

我必须使用新的 C# 2.0 驱动程序在 MongoDB 集合中插入许多文档。使用 collection.InsertManyAsync(...)collection.BulkWriteAsync(...) 有什么不同吗? (特别是关于性能)。

根据我从 MongoDB 文档中了解到的内容,带有文档数组的插入应该是后台的批量操作。对吗?

感谢您的帮助。

我在查看驱动程序源代码时找到了答案:InsertManyAsync 在内部使用 BulkWriteAsync

所以使用InsertManyAsync和写是一样的:

List<BsonDocument> documents = ...

collection.BulkWriteAsync(documents.Select(d => new InsertOneModel<BsonDocument>(d)));

显然,如果所有操作都是插入操作,则应使用InsertManyAsync