Melhorar o desempenho da pesquisa vetorial
Nesta página
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.
Reduzir as dimensões do vetor
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.
Evite indexar vetores ao executar queries
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.
Excluir campos vetoriais dos resultados
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.
Tenha memória suficiente.
Mundos pequenos hierárquicos navegáveis funciona eficientemente quando dados vetoriais são mantidos na memória. Você deve garantir que os nós de dados tenham RAM suficiente para manter os dados e índices vetoriais. Recomendamos a implantação de nós de pesquisa separados para isolamento do volume de trabalho sem isolamento de dados, o que permite um uso mais eficiente da memória para casos de uso de pesquisa vetorial.
Aqueça o cache do sistema de arquivos
Quando você realiza a pesquisa vetorial, suas consultas inicialmente realizam buscas aleatórias no disco à medida que você atravessa os mundos pequenos hierárquicos navegáveis gráfico e os valores vetoriais são lidos na memória. Isso causa uma latência muito alta para as queries iniciais. A latência melhora quando Mundos Pequenos Hierárquicos Navegáveis traversal lê todos os vetores indexados na memória, o que permite que eles sejam acessados muito mais rapidamente para consultas subsequentes.
No entanto, esse processo de aquecimento do cache deve ser repetido em gravações grandes ou quando o índice for reconstruído.