Docs Menu
Docs Home
/
MongoDB マニュアル
/ / /

Bulk.getOperations()

項目一覧

  • 返されたフィールド
Bulk.getOperations()

Bulk.execute()を通じて実行された書き込み操作の配列を返します。 返される書込み (write) 操作は、実行用 MongoDB によって決定されたグループに入れられます。 MongoDB が一括書き込み操作のリストをグループ化する方法については、「 Bulk.execute() の動作 」を参照してください。

Bulk.getOperations()の後にのみBulk.execute() を使用します。Bulk.getOperations()を呼び出す前に呼び出すと、Bulk.execute() 不完全な リストが作成されます。

以下の例では、 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 が操作を2グループに分割したことが示されています。1 つは1000操作、もう 1 つは500操作です。 MongoDB が一括書き込み操作のリストをグループ化する方法については、「 Bulk.execute() の動作」を参照してください。

メソッドは返される配列内の 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 }
]
}
]

配列には、次のフィールドを持つドキュメントが含まれています。

originalZeroIndex

ゼロ インデックスに基づいて、操作が一括操作ビルダに追加された順序を指定します。例: 一括操作ビルダに追加された最初の操作のoriginalZeroIndex値は0です。

batchType

書込み (write) 操作のタイプを指定します。

batchType
操作
1
Insert
2
Update
3
削除
operations

操作の詳細を含むドキュメントの配列。

Tip

以下も参照してください。

  • Bulk()

  • Bulk.execute()

戻る

Bulk.find.upsert