Menu Docs

Página inicial do DocsIniciar e gerenciar o MongoDBMongoDB Atlas

Etapa 1: Crie um índice Atlas Search

Nesta página

  • UI do Atlas
  • API de pesquisa do Atlas
  • Atlas CLI
  • Programaticamente
  • Próximos passos

Importante

Recurso Indisponível em Instâncias sem Servidor

Neste momento, as instâncias sem servidor não permitem essa funcionalidade. Para saber mais, consulte Limitações de instância sem servidor.

O índice do Atlas Search é uma estrutura de dados que categoriza os dados em um formato facilmente pesquisável. É um mapeamento entre os termos e os documentos que contêm esses termos. Os índices do Atlas Search permitem a recuperação mais rápida de documentos usando determinados identificadores. Você deve configurar um índice do Atlas Search para fazer query em dados em seu cluster Atlas usando o Atlas Search.

Você pode criar um índice de Pesquisa do Atlas em um único campo ou em múltiplos campos. Recomendamos que você indexe os campos que usa regularmente para classificar ou filtrar seus dados para recuperar rapidamente os documentos que contêm os dados relevantes em tempo de query.

Você pode criar um índice do Atlas Search usando a UI do Atlas , Atlas Search API, Atlas CLI ou um driver MongoDB compatível na linguagem de sua preferência.

Este tutorial utiliza a collection sample_mflix.movies a partir de amostras de conjuntos de dados.

1
  1. Se ainda não estiver exibido, selecione a organização que contém seu projeto desejado no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Clique no nome do seu cluster.

  4. Clique na aba Atlas Search.

2
3
  • Para uma experiência abada, selecione a Pesquisa Atlas Visual Editor.

  • Para editar a definição de índice bruto, selecione a Pesquisa Atlas JSON Editor.

4
  1. No campo Index Name, digite default.

    Observação

    Se você nomear seu índice como default, não precisará especificar um parâmetro index ao usar o estágio do pipeline $search. Caso contrário, você deve especificar o nome do índice utilizando o parâmetro index.

  2. Na seção Database and Collection, localize o banco de dados sample_mflix e selecione a coleção movies.

5

Você pode criar um índice de pesquisa do Atlas que utiliza mapeamentos dinâmicos ou mapeamentos estáticos. Para saber mais sobre mapeamentos dinâmicos e estáticos, consulte Mapeamentos estáticos e dinâmicos.

A seguinte definição de índice indexa dinamicamente os campos de tipos suportados na collection movies . Você pode usar o Visual Editor do Atlas Search ou o JSON Editor do Atlas Search na interface de usuário do Atlas para criar o índice.

  1. Clique em Next.

  2. Revise a definição de índice "default" para a collection movies.

  1. Clique em Next.

  2. Revise a definição do índice.

    A definição do seu índice deve ser semelhante a esta:

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

    A definição de índice acima indexa dinamicamente os campos de tipos suportados em cada documento na collection movies.

  3. Clique em Next.

6
7
8

Uma janela modal é exibida para que você saiba que seu índice está construindo. Clique no botão Close.

9

O índice deve levar cerca de um minuto para ser criado. Enquanto está se formando, a coluna Status mostra Build in Progress. Quando terminar de se formar, a coluna Status mostrará Active.

1

A seguinte definição de índice indexa dinamicamente os campos de tipos compatíveis na collection movies.

1PUBLIC_KEY=MY_PUBLIC_KEY # replace replace with your public key
2PRIVATE_KEY=MY_PRIVATE_KEY # replace with your private key
3GROUP_ID=YOUR_GROUP_ID # replace with your project ID
4CLUSTER_NAME=YOUR_CLUSTER_NAME # replace with your cluster's name
5
6curl --user "$PUBLIC_KEY:$PRIVATE_KEY" --digest \
7 --header "Content-Type: application/json" \
8 --include \
9 --request POST "https://cloud.mongodb.com/api/atlas/v1.0/groups/$GROUP_ID/clusters/$CLUSTER_NAME/fts/indexes?pretty=true" \
10 --data '{
11 "collectionName": "movies",
12 "database": "sample_mflix",
13 "mappings": {
14 "dynamic": true
15 },
16 "name": "default"
17 }'
2

As solicitações cURL de amostra usam essas variáveis. Substitua essas variáveis com os valores desejados antes de executar o comando cURL para criar um Índice do Atlas Search.

Nome
Tipo
Descrição
PUBLIC_KEY
string
Sua chave de API pública para suas credenciais deAPI .
PRIVATE_KEY
string
Sua chave de API privada para suas credenciais de API.
GROUP_ID
string
Cadeia de caracteres hexadecimais exclusiva de 24 caracteres que identifica o projeto que contém o cluster que contém a coleta para o qual você deseja criar um índice do Atlas Search.
CLUSTER_NAME
string

Rótulo legível por humanos que identifica o cluster que contém a coleta para a qual você deseja criar um índice do Atlas Search.

Use a API para obter o CLUSTER_NAME. Para cada cluster, o Atlas retorna o CLUSTER_NAME no campo nome .

3
1{
2 "collectionName" : "movies",
3 "database" : "sample_mflix",
4 "indexID" : "60bfd25f59fc81594354eed3",
5 "mappings" : {
6 "dynamic" : true
7 },
8 "name" : "default",
9 "status" : "IN_PROGRESS"
10}

Observação

Você também pode utilizar o Atlas Search com sistemas locais do Atlas que você cria com o Atlas CLI. Para saber mais, consulte Criar uma implantação de Atlas local.

1

Copie a seguinte definição de índice de exemplo e cole o índice JSON exemplo em um novo arquivo e salve o arquivo:

A seguinte definição de índice indexa dinamicamente os campos de tipos compatíveis na collection movies.

1{
2 "name": "INDEX_NAME",
3 "clusterName": "CLUSTER_NAME",
4 "collectionName": "movies",
5 "database": "sample_mflix",
6 "mappings": {
7 "dynamic": true
8 }
9}
2

Cole a seguinte solicitação de amostra do Atlas CLI em seu editor de texto favorito e substitua as variáveis.

atlas clusters search index create \
--clusterName CLUSTER_NAME \
--file FILE_PATH \
--projectId PROJECT_ID
--profile PROFILE_NAME

As solicitações de amostra do Atlas CLI utilizam estas variáveis. Substitua estas variáveis por seus valores desejados antes de executar o comando para criar um índice de Pesquisa do Atlas.

Nome
Tipo
Descrição
PROJECT_ID
string
Cadeia exclusiva de caracteres 24-hexadecimal que identifica o projeto que contém o agrupamento. O agrupamento contém a coleção para a qual você deseja criar um índice de Pesquisa Atlas.
CLUSTER_NAME
string
Cadeia de caracteres exclusiva de 24 caracteres hexadecimais que identifica cluster. O agrupamento contém a coleção para a qual você deseja criar um índice de Pesquisa do Atlas.
FILE_PATH
string
Caminho para o arquivo de índice JSON que você criou e salvou nas etapas anteriores, incluindo a extensão de arquivo .json.
PROFILE_NAME
string
Opcional. Nome do perfil que define as chaves pública e privada para o projeto. Para obter mais informações, consulte Salvar configurações de conexão . Se você remover o sinalizador --profile , o Atlas CLI utilizará o perfil padrão.
3

Execute a solicitação. Você recebe esta resposta quando o Atlas Search começa a criar o índice:

{
"collectionName": "movies",
"database": "sample_mflix",
"indexID": <index-id>,
"mappings": {
"dynamic": true
},
"name": <index-name>,
"status": "IN_PROGRESS"
}

Você pode criar um Atlas Search index programaticamente usando mongosh ou um MongoDB Driver compatível em seu idioma preferido.

  • M10 ou Atlas clusters maiores

  • As seguintes versões para cada driver:

    Driver
    Versão
    Driver .NET/C#
    2.21 ou posterior
    Controlador Node.js
    6.1 ou posterior

➤ Use o menu suspenso Selecione a linguagem para definir a linguagem do exemplo nesta seção.


Agora que você criou o índice, prossiga para Passo 2: Executar queries no Atlas Search.

← Comece com Atlas Search