Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/
Atlas
/ /

Como pesquisar dados não alfabéticos como strings

Este tutorial demonstra como executar consultas específicas de strings em campos não strings, convertendo os campos em strings e armazenando-os em uma visualização materializada. As visualizações materializadas permitem que você use operadores específicos para strings para consultar os campos convertidos e manter os dados originais intactos na coleção de origem.

Este tutorial orienta você pelas seguintes etapas:

  1. Crie uma visualização materializada em uma collection de amostras

  2. Crie índices do Atlas Search na visualização materializada

  3. Execute queries do Atlas Search nos campos convertidos na visualização materializada

Antes de começar, certifique-se de que seu cluster do Atlas atenda aos requisitos descritos nos Pré-requisitos.

Esta seção demonstra como criar uma visualização materializada chamada airbnb-mat-view no sample_airbnb.listingsAndReviews collection. Essa visualização armazena vários campos numéricos e de data da collection de origem como campos de string.

Para executar as queries no estágio Executar queries nos campos convertidos deste tutorial, você precisa criar índices do Atlas Search nos campos da string convertidas em sua airbnb_mat_view visualização materializada do.

As seguintes definiçõesJSON do definem índices de Atlas Search na airbnb_mat_view visualização materializada do. Você pode utilizar mapeamentos dinâmicos ou estáticos para especificar quais campos deseja indexar em sua collection, dependendo do tipo de queries que deseja executar. Para saber mais sobre mapeamentos de campo ou sintaxe de índice do Atlas Search , consulte Definir Mapeamentos de Campo ou Referência de Índice, respectivamente.

A seguinte definição de índice do JSON Atlas Search utiliza mapeamentos dinâmicos para indexar os campos na visualização materializada. Você pode usar esse índice para executar queries usando o operador queryString.

Você não pode executar queries usando o operador autocomplete em campos indexados dinamicamente.

{
"mappings": {
"dynamic": true
}
}

A seguinte definição de índice do JSON Atlas Search usa mapeamentos estáticos para indexar os campos na exibição materializada como o tipo autocomplete. Você pode usar esse índice para executar queries usando o operador de preenchimento automático.

Você não pode executar queries utilizando o operador queryString em campos indexados como autocomplete tipo.

{
"mappings": {
"dynamic": false,
"fields": {
"accommodatesNumber": [
{
"dynamic": true,
"type": "document"
},
{
"minGrams": 1,
"type": "autocomplete"
}
],
"lastScrapedDate": [
{
"dynamic": true,
"type": "document"
},
{
"type": "autocomplete"
}
],
"maximumNumberOfNights": [
{
"dynamic": true,
"type": "document"
},
{
"minGrams": 1,
"type": "autocomplete"
}
]
}
}
}

Para saber como criar os índices definidos acima usando sua interface preferida, consulte Gerenciar índices do Atlas Search .

Você pode executar queries nos campos numéricos e de data que foram convertidos em cadeias de caracteres. Este tutorial usa os operadores queryString e autocomplete para pesquisar propriedades. A query utiliza os seguintes estágios de pipeline:

  • $search estágio para pesquisar a coleção.

  • Estágio $limit para limitar a saída a 5 resultados.

  • $project estágio a ser excluído _id

Nesta seção, você se conecta ao seu cluster do Atlas e executa as queries de amostra usando o operador nos campos da coleção airbnb_mat_view.

Observação

Você não pode executar queries próximas ou de intervalo em relação aos campos de data e número que foram convertidos em cadeias de caracteres em sua exibição materializada.

Voltar

Pesquisa de design para seu modelo de dados

Nesta página