Dica
O MongoDB também fornece o método db.collection.bulkWrite() para executar operações de gravação em massa.
Definição
db.collection.initializeUnorderedBulkOp()Importante
Método mongosh
Este é um método
mongosh. Esta não é a documentação deNode.jsou de outros métodos de driver específicos da linguagem de programação.Na maioria dos casos, métodos
mongoshfuncionam da mesma forma que os métodos legados do shellmongo. No entanto, alguns métodos legados não estão disponíveis emmongosh.Para a documentação do shell legado
mongo, consulte a documentação para a release correspondente do MongoDB Server:Para drivers da API do MongoDB, consulte a documentação do driver do 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 não ordenada de operações de gravação que o MongoDB executa em lote.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
Observação
Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
Comportamento
Ordem de operação
Com uma lista de operações não ordenada, o MongoDB pode executar em paralelo as operações de gravação na lista e em qualquer ordem. Se a ordem das operações for importante, use db.collection.initializeOrderedBulkOp() .
Execução de operações
Ao executar uma lista de operações unordered, o MongoDB agrupa as operações. Com uma operação em lote não ordenada, as operações na lista podem ser reordenadas para aumentar o desempenho. Dessa forma, os aplicativos não devem depender da ordenação ao realizar operações unordered em lote.
Operações Bulk() 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.
Error Handling
Se ocorrer um erro durante o processamento de uma das operações de gravação, o MongoDB continuará processando as operações de gravação restantes na lista.
Exemplo
O seguinte comando inicializa um construtor de operações Bulk() e inclui uma série de operações de inserção para adicionar vários documentos:
var bulk = db.users.initializeUnorderedBulkOp(); 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.execute();