sh.balancerCollectionStatus()
Nesta página
Definição
sh.balancerCollectionStatus(namespace)
Retorna um documento que contém informações sobre se as partes de uma collection fragmentada estão balanceados (ou seja, não precisam ser movidos) a partir do momento em que o comando é executado ou precisam ser movidos devido à drenagem de fragmentos, violação de zona ou desequilíbrio de pedaços entre fragmentos.
Importante
Método mongosh
Esta página documenta um método
mongosh
. Esta não é a documentação de comandos de banco de dados nem drivers específicos de linguagem, como Node.js.Para o comando de banco de dados de dados, consulte o comando
balancerCollectionStatus
.Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.
Sintaxe
sh.balancerCollectionStatus()
tem o seguinte formato:
sh.balancerCollectionStatus( <namespace> )
Parâmetro
O método sh.balancerCollectionStatus()
utiliza o seguinte parâmetro:
Controle de acesso
Ao executar com controle de acesso, o usuário deve ter a enableSharding
ação de privilégio do no reconhecimento de data center e/ou collection para executar o método. Ou seja, um usuário deve ter uma role que conceda o seguinte privilégio:
{ resource: { db: <database>, collection: <collection> }, actions: [ "enableSharding" ] }
O papel do clusterManager
embutido fornece os privilégios apropriados.
Exemplo
Para verificar se as partes de uma collection fragmentada test.contacts
estão balanceados, conecte-se a uma instância mongos
e emita o seguinte:
sh.balancerCollectionStatus("test.contacts")
Se os chunks da collection não precisarem ser movidos, o método retornará uma saída semelhante à seguinte:
{ "balancerCompliant" : true, "ok" : 1, "operationTime" : Timestamp(1583193238, 1), "$clusterTime" : { "clusterTime" : Timestamp(1583193238, 1), "signature" : { "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="), "keyId" : NumberLong(0) } } }
Para a descrição da saída, consulte balancerCollectionStatus Output.