O MongoDB Search oferece vários métodos para ajudá-lo a otimizar queries para diferentes modelos de dados. Use os tutoriais a seguir para aprender padrões de design comuns, para que você possa consultar seus dados de forma eficaz com o MongoDB Search.
Pré-requisitos
Para concluir os tutoriais, você deve ter:
Um Atlas cluster com MongoDB versão 6.0 ou superior ou um cluster autogerenciado do MongoDB com MongoDB versão 8.2 ou superior.
Os dados de amostra carregados no seu cluster.
Project Data Access Admin
ou acesso superior ao seu projeto para criar índices de pesquisa MongoDB .Testador de Pesquisa,
mongosh
, Compass ou um Driver MongoDB compatível para executar consultas em seu cluster.
Observação
Você pode executar queries do MongoDB Search usando qualquer driver por meio do estágio de agregação $search
. Esses tutoriais incluem exemplos para uma seleção de clientes. Consulte a página do tutorial específica para obter detalhes.
Você também pode completar estes tutoriais com sistemas locais que você cria com o Atlas CLI ou com um sistema local. Para saber mais, consulte Criar um sistema local do Atlas e sistemas autogerenciados.
Faça query campos não-string com operadores específicos para strings
Alguns operadores do MongoDB Search, como queryString e autocomplete, oferecem suporte apenas a campos de string. Se você precisar consultar campos que não são de string usando esses operadores, poderá converter os valores desses campos em strings e armazenar os campos convertidos em uma exibição materializada. Uma visualização materializada permite usar operadores específicos da string para consultar os campos convertidos e manter os dados originais intactos na collection de origem.
Para começar, veja Como pesquisar dados Não alfabéticos como strings.
Campos de consulta dentro de documentos incorporados
Você pode usar o MongoDB Search para consultar campos dentro de uma array de documentos, mesmo quando a array de documentos estiver aninhada. Depois de indexar os campos do documento como o tipo embeddedDocuments, você pode executar queries nos campos dentro desses documentos, incluindo os campos dentro dos seguintes tipos de arrays:
Array de documentos.
Array de documentos dentro de um documento.
Array de documentos dentro de um array de documentos.
Para começar, consulte Como executar queries de pesquisa do MongoDB em campos em documentos incorporados.
Consultar em várias coleções
Quando sua pesquisa tiver que abranger várias coleções, você pode usar os seguintes métodos para pesquisá-las:
Para unir coleções e pesquisar entre elas, utilize o estágio
$lookup
com$search
.Para combinar os resultados da pesquisa de várias coleções, use o estágio
$unionWith
.Para consolidar várias coleções para que você possa indexá-las e pesquisá-las juntas, crie uma visualização materializada.
Para começar, consulte Como executar queries de pesquisa do MongoDB em várias coleções.