Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

estado de fragmentação

Nesta página

  • Compatibilidade
  • Sintaxe
  • Comportamento
shardingState

shardingState é um comando admin que informa se mongod é membro de um cluster fragmentado. Para executar o comando, você deve executar no banco de banco de dados do admin . Consulte db.adminCommand().

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

O comando tem a seguinte sintaxe:

db.adminCommand(
{
shardingState: 1
}
)

Para que shardingState detecte que um mongod é nó de um cluster fragmentado, o mongod deve atender às seguintes condições:

  1. o mongod é um membro principal de um conjunto de réplicas e

  2. a instância mongod é um nó de um cluster fragmentado.

Se shardingState detectar que um mongod é membro de um cluster fragmentado, shardingState retornará um documento semelhante ao seguinte protótipo:

{
"enabled" : true,
"configServer" : "<configdb-string>",
"shardName" : "<string>",
"shardHost" : "string:",
"versions" : {
"<database>.<collection>" : Timestamp(<...>),
"<database>.<collection>" : Timestamp(<...>)
},
"ok" : 1,
"$clusterTime" : {
"clusterTime" : Timestamp(1510716515, 1),
"signature" : {
"hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="),
"keyId" : NumberLong("6488045157173166092")
}
},
"operationTime" : Timestamp(1510716515, 1)
}

Caso contrário, shardingState retornará o seguinte documento:

{
"enabled" : false,
"ok" : 1,
"$clusterTime" : {
"clusterTime" : Timestamp(1510716515, 1),
"signature" : {
"hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="),
"keyId" : NumberLong("6488045157173166092")
}
},
"operationTime" : Timestamp(1510716515, 1)
}

A resposta de shardingState quando usado com um servidor de configuração é:

{
"enabled" : false,
"ok" : 1,
"operationTime" : Timestamp(1510767613, 1),
"$gleStats" : {
"lastOpTime" : Timestamp(0, 0),
"electionId" : ObjectId("7fffffff0000000000000001")
},
"$clusterTime" : {
"clusterTime" : Timestamp(1510767613, 1),
"signature" : {
"hash" : BinData(0,"IwBZ4SZjIMI5NdM62NObV/R31GM="),
"keyId" : NumberLong("6488693018630029321")
}
}
}

Observação

As instâncias mongos não fornecem o shardingState.

Aviso

Esse comando obtém um bloqueio de escrita no reconhecimento de data center afetado e bloqueará outras operações até que seja concluído; no entanto, a operação normalmente é de curta duração.

Voltar

sharedCollection