我必须使用新的C#2.0驱动程序在MongoDB集合中插入许多文档.使用collection.InsertManyAsync(...)
或collection.BulkWriteAsync(...)
有什么不同吗?(特别是关于性能).
根据我从MongoDB文档中了解到的情况,带有一系列文档的insert应该是一个隐藏的批量操作.对吗?
谢谢你的帮助.
我必须使用新的C#2.0驱动程序在MongoDB集合中插入许多文档.使用collection.InsertManyAsync(...)
或collection.BulkWriteAsync(...)
有什么不同吗?(特别是关于性能).
根据我从MongoDB文档中了解到的情况,带有一系列文档的insert应该是一个隐藏的批量操作.对吗?
谢谢你的帮助.
我从驱动程序源代码中找到了答案:InsertManyAsync
使用internally而BulkWriteAsync
.
所以用InsertManyAsync
就等于写:
List<BsonDocument> documents = ...
collection.BulkWriteAsync(documents.Select(d => new InsertOneModel<BsonDocument>(d)));
显然,如果所有操作都是insert,那么应该使用InsertManyAsync
.