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 de pesquisa vetorial do MongoDB

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

Para implantar a pesquisa vetorial, você aplica o recurso personalizado (CR) do MongoDBSearch, que o operador do Kubernetes coleta e usa para implantar pods mongot e solicitar armazenamento persistente especificado no spec.

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

Cada processo 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 vetoriais que são criados a partir dos dados continuamente obtidos do banco de dados. As definições de índice (metadados) são armazenadas no próprio banco de dados.

O mongot executa as seguintes ações:

  • Gerencia o índice vetorial.

    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 query de pesquisa vetorial.

    When mongod receives a $vectorSearch 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.

Os componentes do mongot são fortemente associados a um único conjunto de réplicas MongoDB e não podem ser compartilhados entre vários bancos de dados ou conjuntos de réplicas. Cada implantação de conjunto de réplicas tem seus próprios nós de pesquisa dedicados.

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. Implementa o conjunto stateful do Vector Search denominado <MongoDBSearch.metadata.name>-search com requisitos de armazenamento e recursos configurados de acordo com spec.persistence e spec.resourceRequirements no 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 do Kubernetes, o operador Kubernetes configurará automaticamente a autenticação do arquivo de chave para o Vector Search . Se o servidor MongoDB for externo, você deverá criar um Kubernetes Secret contendo a credencial de arquivo de chave do conjunto de réplica e referenciá-lo no MongoDBSearch CR.

Você não pode implantar a pesquisa vetorial nas seguintes arquiteturas:

  • IBM Power (ppc64le)

  • IBM Z (s390x)

Dica