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

Crie índices para oferecer suporte a suas queries

Um índice cobre uma query quando o índice contém todos os campos verificados pela query. Uma query coberta analisa o índice e não a collection, o que melhora o desempenho da query.

Os índices também podem suportar parcialmente queries se um subconjunto dos campos consultados for indexado.

Uma única collection pode ter um máximo de 64 índices. No entanto, muitos índices podem degradar o desempenho antes que esse limite seja atingido. Para coletas com alta taxa de gravação para leitura, os índices podem degradar o desempenho porque cada inserção também deve atualizar quaisquer índices.

1

Para identificar padrões de query comuns em seu aplicação, use o estágio de agregação $queryStats . $queryStats reporta métricas para formas de query, que agrupam queries com base em campos compartilhados.

2

Depois de saber quais campos seu aplicação consulta com frequência, você pode criar índices para dar suporte a consultas nesses campos. Para obter mais informações, consulte Exemplos.

3

Depois que seu aplicação começar a usar índices, você poderá analisar a eficácia dos índices. Para ver as estatísticas e o uso do índice, você pode:

  • Use o estágio de agregação $indexStats .

  • Para MongoDB Atlas , visualize índices na interface do usuário do Atlas .

Considere excluir índices não utilizados para melhorar o desempenho do aplicação . Para mais informações, consulte Remover índices desnecessários.

Repita este procedimento periodicamente para garantir que seus índices suportem seu volume de trabalho atual.

Os exemplos nesta página usam dados do conjunto de dados de amostra sample_mflix. Para obter detalhes sobre como carregar esse conjunto de dados em sua implantação autogerenciada do MongoDB , consulte Carregar o conjunto de dados de amostra. Se você fez modificações nos bancos de dados de amostra, talvez seja necessário descartar e recriar os bancos de dados para executar os exemplos nesta página.

Observação

Os document na coleção movies contêm campos adicionais não mostrados aqui.

Se seu aplicação consultar somente uma única chave em uma determinada coleta, você precisará criar um índice de chave única para essa coleta. Por exemplo, você pode criar um índice em title na coleção movies :

db.movies.createIndex( { title: 1 } )

Este índice suporta esta query:

db.movies.find( { title: 'Mulholland Drive' } )

Se seu aplicação executar queries em uma única chave e em várias chaves, um índice composto será mais eficiente do que um índice de chave única. Por exemplo, você pode criar um índice nos campos year, runtime e title :

db.movies.createIndex( { year: 1, runtime: 1, title: 1 } )

Um índice composto suporta queries sobre prefixos de índice, que são os subconjuntos iniciais de campos indexados. Por exemplo, o índice anterior suporta esta query:

db.movies.find( { year: 2012, runtime: { $gt: Decimal128( "120" ) } }, { title: 1 } )

Para obter mais informações e considerações de desempenho sobre prefixos de índice, consulte Prefixos de índice.

Para dados hospedados no MongoDB, você pode suportar pesquisa de texto completo com índices de pesquisa MongoDB Search. Para saber mais, consulte Criar um índice de pesquisa MongoDB.

Para implantações autogerenciadas (não Atlas), o MongoDB fornece um tipo de índice text que suporta a pesquisa de conteúdo de string de caracteres em uma coleção. Para saber mais sobre índices de texto autogerenciados, consulte Índices de texto em implantações autogerenciadas.

Os índices de Vector Search oferecem suporte a queries sobre incorporações vetoriais. Para criar índices de Vector Search , consulte Campos de índice para Vector Search.

Para usar um índice para comparações de string, uma operação também deve especificar os mesmos agrupamentos. Se uma operação especificar um agrupamento diferente da especificada pelo índice, o índice não poderá suportar comparações de string nos campos indexados.

Aviso

As chaves de índice com reconhecimento de agrupamento podem ser maiores do que as chaves de índice para índices sem agrupamento porque os índices configurados com agrupamento usam chaves de agrupamento ICU para obter a ordem de classificação.