Menu Docs

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

db.collection.initializeOrderedBulkOp()

Nesta página

  • Definição
  • Comportamento
  • Exemplos

Dica

db.collection.initializeOrderedBulkOp()

Importante

Método mongosh

Esta página documenta um método mongosh . Esta não é a documentação para um driver específico de idioma, como Node.js.

Para drivers de API do MongoDB, consulte a documentação do driver MongoDB específica do idioma.

Inicializa e retorna um novo construtor de operações do Bulk() para uma coleção. O construtor constrói uma lista ordenada de operações de escrita que MongoDB executa em massa.

Retorna:novo objeto de construtor de operações Bulk() .

Com uma lista de operações ordenadas, o MongoDB executa as operações de gravação na lista serialmente.

Ao executar uma lista de operações ordered , o MongoDB agrupa as operações por operation type e contiguidade; ou seja, operações contíguas do mesmo tipo são agrupadas. Por exemplo, se uma lista ordenada tiver duas operações de inserção seguidas por uma operação de atualização seguida por outra operação de inserção, o MongoDB agrupa as operações em três grupos separados: o primeiro grupo contém as duas operações de inserção, o segundo grupo contém a operação de atualização e o terceiro grupo contém a última operação de inserção. Esse comportamento está sujeito a alterações em versões futuras.

Bulk() operações em mongosh e métodos comparáveis nos drivers não têm um limite para o número de operações em um grupo. Para ver como as operações são agrupadas para execução de operações em massa, chame Bulk.getOperations() após a execução.

Dica

Veja também:

A execução de uma lista de operações ordered em uma collection fragmentada geralmente será mais lenta do que a execução de uma lista unordered , já que, com uma lista ordenada, cada operação deve aguardar a conclusão da operação anterior.

Se ocorrer um erro durante o processamento de uma das operações de gravação, o MongoDB retornará sem processar as operações de gravação restantes na lista.

O seguinte inicializa um construtor de operações Bulk() na users collection, adiciona uma série de operações de gravação e executa as operações:

var bulk = db.users.initializeOrderedBulkOp();
bulk.insert( { user: "abc123", status: "A", points: 0 } );
bulk.insert( { user: "ijk123", status: "A", points: 0 } );
bulk.insert( { user: "mop123", status: "P", points: 0 } );
bulk.find( { status: "D" } ).delete();
bulk.find( { status: "P" } ).update( { $set: { comment: "Pending" } } );
bulk.execute();
← Métodos de operação em massa