On this page
Bulk.getOperations()
在本页面
Bulk.
getOperations
( )- 2.6 版的新功能。
返回通过Bulk.execute()执行的写操作数组。返回的写操作由 MongoDB 确定要执行的组。有关 MongoDB 如何对批量写入操作列表进行分组的信息,请参阅Bulk.execute() Behavior。
只能在Bulk.execute()之后使用Bulk.getOperations()。在调用Bulk.execute()之前先调用Bulk.getOperations()会导致不完整列表。
Example
以下代码在items
集合上初始化Bulk()操作构建器,添加一系列写操作,执行这些操作,然后在bulk
构建器对象上调用getOperations():
var bulk = db.items.initializeUnorderedBulkOp();
for (var i = 1; i <= 1500; i++) {
bulk.insert( { x: i } );
}
bulk.execute();
bulk.getOperations();
getOperations()方法返回执行了操作的数组。输出显示 MongoDB 将操作分为两组,一组包含 1000 个操作,一组包含 500 个操作。有关 MongoDB 如何将批量写入操作列表分组的信息,请参阅Bulk.execute() Behavior
尽管该方法返回了返回的数组中的所有 1500 个操作,但为简洁起见,此页面省略了一些结果。
[
{
"originalZeroIndex" : 0,
"batchType" : 1,
"operations" : [
{ "_id" : ObjectId("53a8959f1990ca24d01c6165"), "x" : 1 },
... // Content omitted for brevity
{ "_id" : ObjectId("53a8959f1990ca24d01c654c"), "x" : 1000 }
]
},
{
"originalZeroIndex" : 1000,
"batchType" : 1,
"operations" : [
{ "_id" : ObjectId("53a8959f1990ca24d01c654d"), "x" : 1001 },
... // Content omitted for brevity
{ "_id" : ObjectId("53a8959f1990ca24d01c6740"), "x" : 1500 }
]
}
]
Returned Fields
该数组包含具有以下字段的文档:
originalZeroIndex
- 根据零索引指定将操作添加到批量操作构建器的 Sequences;例如添加到批量操作构建器中的第一个操作的originalZeroIndex值为
0
。
- 根据零索引指定将操作添加到批量操作构建器的 Sequences;例如添加到批量操作构建器中的第一个操作的originalZeroIndex值为
batchType
- 指定写操作类型。
batchType |
Operation |
---|---|
1 | Insert |
2 | Update |
3 | Remove |
operations
- 包含操作详细信息的文档数组。
See also