Menu Docs

Página inicial do DocsDesenvolver aplicaçõesManual do MongoDB

Bulk.getOperations()

Nesta página

  • Exemplo
  • Campos retornados
Bulk.getOperations()

Retorna uma matriz de operações de gravação executadas por Bulk.execute(). As operações de gravação retornadas estão em grupos conforme determinado pelo MongoDB para execução. Para obter informações sobre como o MongoDB agrupa a lista de operações de gravação em massa, consulte Comportamento Bulk.execute().

Use apenas Bulk.getOperations() após um Bulk.execute(). Chamar Bulk.getOperations() antes de chamar Bulk.execute() resultará em uma lista incompleta .

O seguinte inicializa um construtor de operações Bulk() items , adiciona uma série de operações de gravação, executa as operações e, em seguida, chama getOperations() no objeto construtor bulk :

var bulk = db.items.initializeUnorderedBulkOp();
for (var i = 1; i <= 1500; i++) {
bulk.insert( { x: i } );
}
bulk.execute();
bulk.getOperations();

O método getOperations() retorna uma array com as operações executadas. A saída mostra que o MongoDB dividiu as operações em 2 grupos, um com 1000 operações e outro com 500. Para obter informações sobre como o MongoDB agrupa a lista de operações de gravação em massa, consulte Comportamento do Bulk.execute()

Embora o método retorne todas as 1500 operações na array retornada, esta página omite alguns dos resultados por brevidade.

[
{
"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 }
]
}
]

A matriz contém documentos com os seguintes campos:

originalZeroIndex

Especifica a ordem na qual a operação foi adicionada ao construtor de operações em massa, com base em um índice zero; por exemplo, a primeira operação adicionada ao construtor de operações em massa terá valor originalZeroIndex de 0.

batchType

Especifica o tipo de operações de gravação.

batchType
Operação
1
inserir
2
Atualização
3
Remover
operations

Array de documentos que contêm os detalhes da operação.

Dica

Veja também:

← Bulk.find.upsert()