Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

db.collection.hideIndex() (método mongosh)

Importante

Método mongosh

This page documents a mongosh method. This is not the documentation for database commands or language-specific drivers, such as Node.js.

Para o comando de banco de dados, consulte a opção de coleção index.hidden definida utilizando o comando collMod.

Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.

db.collection.hideIndex()

Oculta um índice existente do planejador de consultas. Um índice oculto do planejador de consultas não é avaliado como parte da seleção do plano de consultas.

Ao ocultar um índice do planejador, você pode avaliar o possível impacto da eliminação de um índice sem eliminá-lo. Se o impacto for negativo, você poderá exibir o índice em vez de ter que recriar um índice descartado. E como os índices são totalmente mantidos enquanto estão ocultos, os índices ficam imediatamente disponíveis para uso quando são exibidos.

Para obter detalhes, consulte Índices ocultos.

Esse método 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

db.collection.hideIndex(<index>)

The db.collection.hideIndex() method takes the following parameter:

Parâmetro
Tipo
Descrição

index

string ou documento

Especifica o índice a ser ocultado do planejador de consultas. Você pode especificar o índice pelo nome ou pelo documento de especificação.

Para localizar o nome do índice ou documento de especificação do índice, você pode usar o método db.collection.getIndexes() .

Para ocultar um índice de texto, especifique o nome do índice.

The db.collection.hideIndex() is a mongosh shell wrapper for the collMod command.

Para ocultar um índice, você deve ter featureCompatibilityVersion configurado para 5.0 ou superior.

Não é possível ocultar o índice _id.

Ocultar um índice não oculto redefine seu $indexStats.

Ocultar um índice já oculto não afeta o índice. No entanto, a operação ainda gerará uma entrada de oplog vazia.

Se a implantação forçar a autenticação/autorização, você deve ter o privilégio collMod no banco de dados da coleção.

A função embutida dbAdmin fornece os privilégios exigidos.

O exemplo a seguir oculta um índice existente.

Primeiro, utilize o db.collection.createIndex() para criar um índice sem ocultar:

db.restaurants.createIndex( { borough: 1, ratings: 1 } );

To hide the index, you can specify either the index key specification document or the index name to the db.collection.hideIndex() method. The following specifies the index name:

db.restaurants.hideIndex( "borough_1_ratings_1" );

Para verificar, execute db.collection.getIndexes() na collection restaurants:

db.restaurants.getIndexes();

A operação retorna as seguintes informações:

[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"borough" : 1,
"ratings" : 1
},
"name" : "borough_1_ratings_1",
"hidden" : true
}
]

A opção de índice hidden é retornada somente se o valor for true.