Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Arquitetura do MongoDB Search

MongoDB Search enables full-text search capabilities in your Kubernetes environment by deploying the mongot process alongside your MongoDB database deployment (mongod). The mongot process manages search indexes, sources data from the database, and processes $search and $searchMeta queries. This eliminates the need to maintain separate search systems while providing advanced search features.

Para implantar o MongoDB Search, você aplica o Recurso Personalizado (CR) do MongoDBSearch, que o operador do Kubernetes detecta e usa para implantar mongot pods e solicitar o armazenamento persistente especificado no spec.

Para procedimentos de implantação, consulte Implantar MongoDB Search e pesquisa vetorial.

Cada processo do mongot tem seu próprio volume persistente que não é compartilhado com o banco de dados ou outros nós de pesquisa. O armazenamento é usado para manter índices que são criados a partir dos dados obtidos continuamente do banco de dados. As definições do índice (metadados) são armazenadas no próprio banco de dados .

O mongot executa as seguintes ações:

  • Gerencia o índice.

    O mongot é responsável por atualizar as definições de índice no banco de dados.

  • Obtém os dados do banco de dados.

    Os nós do mongot estabelecem conexões permanentes com o banco de dados para atualizar índices do banco de dados em tempo real.

  • Processa queries de pesquisa.

    When mongod receives a $search or $searchMeta query, it directs the query to one of the mongot nodes. The mongot that receives the query processes the query, aggregates the data, and returns the results to mongod, which forwards the results to the user.

The mongot components are tightly coupled with a single MongoDB replica set and cannot be shared across multiple databases or replica sets. Each replica set deployment has its own dedicated search nodes. To learn more about Search node architecture, see Node Architecture in the MongoDB Search documentation.

A conectividade de rede entre mongot e mongod vai em ambas as direções:

  • mongot estabelece conexões com o conjunto de réplicas para obter os dados usados para construir índices e executar query.

  • mongod conecta-se ao mongot para encaminhar operações relacionadas à pesquisa, como gerenciamento de índice e consulta de dados.

O mongod atua como proxy para todas as query de pesquisa. Você nunca interage diretamente com o mongot.

Quando os processos mongot e mongod são implantados dentro do cluster Kubernetes, o Operador Kubernetes executa a configuração para ambos os processos automaticamente. Especificamente, o operador Kubernetes:

  1. Encontra o MongoDB CR referenciado por MongoDBSearch usando spec.source.mongodbResourceRef, ou por uma convenção de nomenclatura procurando o MongoDB CR com o mesmo nome que MongoDBSearch.

  2. Gera a configuração mongot em um arquivo YAML e a salva em um mapa de configuração chamado <MongoDBSearch.metadata.name>-search-config.

  3. Implanta o conjunto stateful do MongoDB Search denominado <MongoDBSearch.metadata.name>-search com os requisitos de armazenamento e recursos configurados de acordo com spec.persistence e spec.resourceRequirements na CR.

  4. Atualiza a configuração de cada processo mongod adicionando as opções setParameter necessárias, incluindo os nomes de host e números de porta dos hosts mongot.

Quando o conjunto de réplicas do MongoDB está fora do Kubernetes, você implanta mongot usando o operador Kubernetes e executa algumas etapas manualmente. O operador Kubernetes lida com a configuração dos pods de pesquisa, mas você deve reconfigurar seus nós do MongoDB e a rede.

Se o servidor MongoDB estiver dentro do cluster Kubernetes, o operador Kubernetes configurará automaticamente a autenticação de arquivo de chave para o MongoDB Search. Se o servidor MongoDB for externo, você deve criar um secret do Kubernetes contendo as credenciais do arquivo de chave do conjunto de réplicas e referenciá-lo no MongoDBSearch CR.

Você não pode implantar o MongoDB Search nas seguintes arquiteturas:

  • IBM Power (ppc64le)

  • IBM Z (s390x)

Dica