Definição
sh.moveChunk(namespace, query, destination)Moves the chunk that contains the document specified by the
queryto thedestinationshard.sh.moveChunk()provides a wrapper around themoveChunkdatabase command.Importante
In most circumstances, allow the balancer to automatically migrate chunks, and avoid calling
sh.moveChunk()directly.Aviso
Esse comando não pode ser usado para chave de fragmento com hash, pois usa a opção
finddo comandomoveChunk. Para mover uma parte com uma chave de fragmento com hash, use o comandomoveChunkespecificando o campobounds.Importante
Método mongosh
This page documents a
mongoshmethod. This is not the documentation for database commands or language-specific drivers, such as Node.js.Para o comando do banco de dados, consulte o comando
moveChunk.Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.
sh.moveChunk()recebe os seguintes argumentos:ParâmetroTipoDescriçãonamespacestring
O namespace da collection fragmentada que contém a parte a ser migrado.
querydocumento
Uma correspondência de igualdade na chave de fragmento que seleciona a parte a ser movida.
destinationstring
A ID do fragmento do destinatário.
Observação
Use o comando
listShardspara recuperar o ID do shard do destinatário.Por padrão, o MongoDB não poderá mover um chunk se o número de documentos no chunk for maior que 2 vezes o resultado da divisão do tamanho do chunk configurado pelo tamanho médio do documento . O comando
moveChunkpode especificar a opção forceJumbo para permitir a migração manual de chunks grandes demais para serem movidos, com ou sem o rótulo jumbo . Consulte comando moveChunk para detalhes.
Dica
Fragmentação e migraçãode parte
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
- MongoDB Atlas: The fully managed service for MongoDB deployments in the cloud
Importante
This command is not supported in M0 and Flex clusters. For more information, see Unsupported Commands.
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Exemplo
Dada a collection people no reconhecimento de data center records, a operação a seguir localiza a parte que contém o documento com o campo zipcode definido como 53187 e, em seguida, move essa parte para o fragmento chamado shard0019:
sh.moveChunk("records.people", { zipcode: "53187" }, "shard0019")