Menu Docs

Interrompa a desfragmentação de uma coleção fragmentada

Normalmente, você deve usar umajanela de balanceamento de shards para especificar quando o balanceador é executado em vez de iniciar e parar manualmente a desfragmentação.

Para parar manualmente a desfragmentação de uma coleção fragmentada, utilize o comando configureCollectionBalancing com a opção defragmentCollection definida como false .

O procedimento dessa tarefa utiliza um exemplo de coleção fragmentada denominada ordersShardedCollection em um banco de dados denominado test.

Você pode usar sua própria coleção fragmentada e banco de dados no procedimento.

Se você parar de desfragmentar uma coleção antes da desfragmentação ser concluída, a coleção estará em um estado parcialmente desfragmentado e operará normalmente. Para retomar a desfragmentação, reinicie o processo.

1

Executar:

db.adminCommand(
{
configureCollectionBalancing: "test.ordersShardedCollection",
defragmentCollection: false
}
)
2

Quando a desfragmentação para, a saída do comando retorna ok: 1:

{
ok: 1,
'$clusterTime': {
clusterTime: Timestamp({ t: 1678834337, i: 1 }),
signature: {
hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0),
keyId: Long("0")
}
},
operationTime: Timestamp({ t: 1678834337, i: 1 })
}

Você pode iniciar a desfragmentação novamente a qualquer momento. Para obter detalhes, consulte Iniciar desfragmentação de uma coleção fragmentada.