Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/

visão geral do Atlas Search

Nesta página

  • Fundamentos do Atlas Search
  • Indexação
  • Tokenização
  • Consultando
  • Pontuação
  • arquitetura do atlas search
  • Sobre o processo mongot

O Atlas Search do MongoDB permite indexação de texto refinada e query de dados em seu cluster Atlas. Ele permite a funcionalidade de pesquisa avançada para seus aplicativos sem nenhum gerenciamento adicional ou sistema de pesquisa separado junto com seu banco de dados. O Atlas Search fornece opções para vários tipos de analisadores de texto, uma linguagem de query avançada que usa estágios do pipeline de agregação Atlas Search $search como e em conjunto com outros estágio do pipeline de agregação MongoDB e classificação de resultados baseada em pontuação.$searchMeta

Dica

Experimente rapidamente o Atlas Search sem precisar de uma conta, cluster ou coleção do Atlas, com o Atlas Search Playground. Para saber mais, consulte a documentação.

Os conceitos a seguir formam a base do Atlas Search e são essenciais para otimizar seu aplicativo.

No contexto da pesquisa, um índice é uma estrutura de dados que categoriza os dados em um formato facilmente pesquisável. Os índices de pesquisa permitem a recuperação mais rápida de documentos que contêm um determinado termo, sem a necessidade de examinar toda a coleção. Embora os índices do Atlas Search e os índices do MongoDB tornem a recuperação de dados mais rápida, observe que eles não são os mesmos. Como o índice no final de um livro, um índice de pesquisa é um mapeamento entre os termos e os documentos que contêm esses termos. Os índices de pesquisa também contêm outros metadados relevantes, como as posições dos termos nos documentos.

A criação de pelo menos um índice de pesquisa geralmente é necessária em qualquer aplicativo de pesquisa. Para obter mais informações, consulte Criar e gerenciar índices do Atlas Search.

Ao criar um índice de pesquisa, os dados devem primeiro ser transformados em uma sequência de tokens ou termos. Um analisador facilita esse processo por meio de etapas, incluindo:

  • Tokenização: Divisão das palavras de uma string em tokens indexáveis. Por exemplo, dividir uma frase com espaços e pontuação.

  • Normalização: Organizar os dados para que sejam representados de forma consistente e mais fácil de analisar. Por exemplo, transformar o texto em letras minúsculas ou remover palavras indesejadas chamadas palavras de parada.

  • Stemming: reduzir as palavras à sua forma raiz. Por exemplo, ignorar sufixos, prefixos e formas de palavras no plural.

As particularidades da tokenização são específicas da linguagem e podem exigir a realização de escolhas adicionais. Qual analisador usar depende dos seus dados e aplicativo. Para obter mais informações, consulte Processar dados com analisadores.

As queries de pesquisa consultam o índice para retornar um conjunto de resultados. As queries de pesquisa são diferentes das queries de banco de dados tradicionais, pois destinam-se a atender a necessidades de informações mais gerais. Onde uma query de banco de dados deve seguir uma sintaxe estrita, as queries de pesquisa podem ser para correspondência simples de texto, mas também podem procurar frases, números ou intervalos de datas semelhantes, ou usar expressões regulares ou curingas.

Para obter mais informações, consulte Criar e executar consultas de pesquisa do Atlas.

Cada documento recebe uma pontuação de relevância que permite que os resultados da query sejam retornados em ordem, começando com a maior relevância e terminando na menor relevância. Na forma mais simples de pontuação, os documentos pontuam mais alto se o termo de query aparecer com frequência em um documento e mais baixo se o termo de query aparecer em muitos documentos da coleção. A pontuação também pode ser personalizada. Adaptar a pesquisa a um domínio específico geralmente significa personalizar a pontuação padrão baseada em relevância, por meio de aumento, decaimento ou outras opções de modificação.

Para obter mais informações, consulte Documentos de pontuação.

O processo mongot do Atlas Search, desenvolvido no Apache Lucene, interage com o processo de banco de dados mongod para criar e gerenciar suas queries e índices de pesquisa vetorial e de texto completo.

O processo mongot executa as seguintes tarefas:

  1. Cria índices de Atlas Search com base nas regras na index definition para a collection.

  2. Monitores fluxos de alterações para o estado atual dos documentos e índices para as coleções para as quais você definiu Atlas Search indexes.

  3. Processa queries do Atlas Search e retorna os IDs dos documentos e outros metadados da pesquisa dos documentos correspondentes ao mongod, que então faz uma pesquisa completa do documento e retorna os resultados ao cliente.

Você pode escolher um modelo de implantação em que o processo Atlas Search mongot seja executado junto com o processo mongod em cada nó do cluster Atlas ou em que o processo mongot seja executado em nós de pesquisa separados. Para testar suas consultas de pesquisa e criar protótipos de seu aplicativo, você pode escolher o modelo de implantação padrão em que os processos mongot e mongod são executados no mesmo nó. No entanto, para aplicativos prontos para produção, implante mongot em nós de pesquisa separados para evitar qualquer contenção de recursos entre os processos mongot e mongod em seu ambiente de produção.

Para obter orientação sobre como escolher um tipo de implantação para ambientes de pré-produção e produção, consulte Opções de implantação do Atlas Search e Opções de implantaçãodo Atlas Vector Search.

Voltar

Atlas Search