Definição
moveRangeNovidades na versão 6.0.
Moves ranges between shards. Run the
moveRangecommand with amongosinstance while using the admin database.Dica
In
mongosh, this command can also be run through thesh.moveRange()helper method.Helper methods are convenient for
mongoshusers, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.
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.
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
Sintaxe
O comando tem a seguinte sintaxe:
db.adminCommand( { moveRange: <namespace>, toShard: <ID of the recipient shard>, min: <min key of the range to move>, // conditional max: <max key of the range to move>, // conditional forceJumbo: <bool>, // optional writeConcern: <write concern>, // optional secondaryThrottle: <bool> // optional } )
Campos de comando
O comando utiliza os seguintes campos:
Campo | Tipo | Descrição |
|---|---|---|
| string | ID do shard do destinatário. |
| chave | Chave mínima do intervalo a ser movido. Obrigatório se você não especificar Se você não especificar
|
| chave | Chave máxima do intervalo a ser movido. Obrigatório se você não especificar Se você não especificar
|
booleano | Opcional. Sinalizador que determina se o comando pode mover um intervalo muito grande para ser migrado. O intervalo pode ou não ser rotulado como jumbo.
O padrão é AVISO: O comando Essa opção faz com que o shard migre chunks mesmo quando eles são maiores do que o tamanho configurado do chunk. A collection permanece indisponível para gravações durante a migração. Para migrar esses grandes blocos sem esse longo período de bloqueio, consulte Intervalos de equilíbrio que excedem o limite de tamanho . | |
| documento | |
| booleano | Opcional.
Para obter mais informações, consulte Acelerador secundário. |
A seção de migração de intervalo descreve como os intervalos se movem entre fragmentos no MongoDB.
Considerações
Only use the moveRange in scenarios like:
uma ingestão inicial de dados
uma grande operação de importação em massa
Permita que o balanceador crie e equilibre intervalos em clusters fragmentados na maioria dos casos.
Exemplos
Os exemplos a seguir usam uma collection com:
chave de fragmento
xTamanho do chunk configurado de 128 MB
Um chunk com limites:
[x: 0, x: 100)
Especifique min e max
A tabela a seguir lista os resultados da configuração de min e max para vários valores:
min | max | Resultado |
|---|---|---|
|
| Move todos os documentos no intervalo para o fragmento do destinatário. |
|
| Cria três subintervalos:
Move todos os documentos em |
|
| Cria dois subintervalos:
Move todos os documentos em |
|
| Cria dois subintervalos:
Move todos os documentos em |
Especifique min, mas não max
A tabela a seguir lista os resultados da configuração min para vários valores:
min | Quantidade de dados no intervalo das chaves | Resultado |
|---|---|---|
| Menos de 128 MB contidos entre as chaves | Move todos os documentos no intervalo para o fragmento do destinatário. |
| Menos de 128 MB contidos entre as chaves | Cria dois subintervalos:
Move todos os documentos em |
| 128 MB contidos entre as chaves | Cria três subintervalos:
Move todos os documentos em |
Especifique max, mas não min
A tabela a seguir lista os resultados da configuração max para vários valores:
max | Quantidade de dados no intervalo das chaves | Resultado |
|---|---|---|
| Menos de 128 MB contidos entre as chaves | Move todos os documentos no intervalo para o fragmento do destinatário. |
| Menos de 128 MB contidos entre as chaves | Cria dois subintervalos:
Move todos os documentos em |
| 128 MB contidos entre as chaves | Cria três subintervalos:
Move todos os documentos em |