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

Melhorar o desempenho da pesquisa vetorial

Nesta página

  • Reduzir as dimensões do vetor
  • Evite indexar vetores ao executar queries
  • Excluir campos vetoriais dos resultados
  • Tenha memória suficiente.
  • Aqueça o cache do sistema de arquivos

Atlas Vector Search permite que você execute queries deANN em que o Atlas Search busca resultados semelhantes a um produto selecionado, Atlas Search por imagens e assim por diante. Para melhorar a velocidade de indexação e o desempenho da consulta, revise as seguintes práticas recomendadas.

O Atlas Vector Search suporta até 4096 dimensões vetoriais inclusivas. No entanto, a indexação e as queries vetoriais do Atlas Search são computacionalmente intensivas, pois vetores maiores exigem mais comparações de pontos flutuantes. Portanto, sempre que possível, recomendamos reduzir o número de dimensões depois de garantir que você possa medir o impacto da alteração dos modelos de incorporação na precisão das suas queries vetoriais.

A incorporação de vetores consome recursos computacionais durante a indexação. Recomendamos evitar a indexação e a reindexação durante uma pesquisa vetorial. Se você decidir alterar o modelo de incorporação que produz os vetores para indexar, recomendamos reindexar os novos vetores em um novo índice em vez de atualizar o índice que está em uso atualmente.

Você pode solicitar campos existentes dos documentos nos resultados e campos recém-calculados para serem retornados no estágio $project . Para melhorar o desempenho da query, utilize o estágio $project para selecionar criteriosamente os campos para retornar nos resultados, a menos que você precise de todos os campos nos resultados. Recomendamos excluir o campo de vetor no estágio $project porque as incorporações de vetores podem ser grandes e afetar a latência da query ao retornar os resultados.

Pequenos Mundos Navegáveis Hierárquicos funciona eficientemente quando os dados vetoriais são mantidos na memória. Você deve garantir que os nós de dados tenham RAM suficiente para armazenar os dados vetoriais e índices. Recomendamos a implantação de nós de pesquisa separados para isolamento de carga de trabalho sem isolamento de dados, o que permite um uso mais eficiente da memória para casos de uso de pesquisa vetorial.

Quando você realiza uma pesquisa vetorial, suas queries inicialmente realizam buscas aleatórias no disco conforme você percorre o gráfico de Hierarchical Navigable Small World e os valores do vetor são lidos na memória. Isso causa uma latência muito alta para queries iniciais. A latência melhora quando Hierarchical Navigable Small Worlds traversal lê todos os vetores indexados na memória, o que permite que eles sejam acessados muito mais rapidamente para queries subsequentes.

No entanto, esse processo de aquecimento de cache deve ser repetido em gravações grandes ou quando o índice for recriado.

Voltar

Recursos da API