Pesquisa de design para seu modelo de dados
O Atlas Search oferece vários métodos para ajudar a otimizar queries para diferentes modelos de dados. Use os tutoriais a seguir para aprender padrões de design comuns e poder consultar seus dados de forma eficaz com o Atlas Search.
Pré-requisitos
Para concluir os tutoriais, você deve ter:
Um Atlas cluster com MongoDB versão 4.2 ou superior
Os dados de amostra foram carregados no seu cluster do Atlas.
Project Data Access Admin
ou acesso superior ao seu projeto Atlas para criar índices do Atlas Search .Search Tester,
mongosh
, Compass ou um MongoDB Driver compatível para executar consultas em seu cluster.
Observação
Você pode executar queries do Atlas 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 implantações locais do Atlas que você cria com o Atlas CLI. Para saber mais, consulte Criar uma implantação de Atlas local.
Fazer query de campos que não são strings com operadores específicos para strings
Alguns operadores do Atlas Search , como queryString e autocomplete, oferecem suporte apenas a campos de strings. Se você precisar consultar campos que não sejam 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, consulte Como pesquisar dados não alfabéticos como strings.
Campos de query dentro de documentos incorporados
Você pode usar o Atlas Search para fazer query de 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 uma array de documentos.
Para começar, consulte Como executar queries do Atlas Search em campos em documentos incorporados.
Fazer queries em várias collections
Quando sua pesquisa precisar abranger várias collections, você pode usar os métodos a seguir para pesquisá-las:
Para unir coleções e pesquisá-las, use o estágio
$lookup
com$search
.Para combinar resultados de pesquisa de várias collections, 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 Atlas Search em múltiplas coleções.