Resolvendo o problema de bilhões de vetores no Azure AI Search
By Mirko Peters ·
Explore os desafios técnicos específicos de pesquisar conjuntos de dados massivos em escala. Este post analisa como a alta dimensionalidade e as restrições de memória afetam as cargas de trabalho de IA corporativa.
Automatically translated with AI from the original post. Read the English original
Explore os desafios técnicos específicos de pesquisar conjuntos de dados massivos em escala. Este post analisa como a alta dimensionalidade e as restrições de memória afetam as cargas de trabalho de IA corporativa.
O problema de bilhões de vetores no Azure AI Search
Desafios da pesquisa vetorial em escala de bilhões
Você enfrenta o problema de bilhões de vetores quando precisa indexar e pesquisar conjuntos de dados massivos em IA corporativa. Lidar com bilhões de vetores traz desafios técnicos específicos. Você precisa criar sistemas de indexação eficiente capazes de processar dados em grande escala sem perder desempenho. Atualizações em tempo real são importantes, porque você quer que os resultados da pesquisa continuem atualizados e relevantes. Gerenciar embeddings de alta dimensionalidade também é essencial para resultados de pesquisa precisos.
Quando você trabalha com conjuntos de dados na escala de bilhões, encontra várias limitações:
- A alta dimensionalidade aumenta os custos computacionais e pode reduzir o desempenho da pesquisa.
- A lacuna semântica entre as representações vetoriais e o significado no mundo real pode causar imprecisões.
- A coleta de lixo se torna difícil, dificultando a remoção de informações desatualizadas dos índices.
- A qualidade dos vetores depende do modelo de embedding escolhido, o que afeta a precisão da pesquisa.
- A escalabilidade pressiona os requisitos de memória e pode aumentar o tempo de pesquisa.
- O problema de cold start dificulta a pesquisa de novos itens sem boas representações vetoriais.
- A interpretabilidade é baixa, então entender por que um resultado de pesquisa aparece pode ser um desafio.
Esses desafios tornam o problema de bilhões de vetores um dos mais difíceis da IA moderna.
Por que a escolha do algoritmo importa
Sua escolha de algoritmo tem impacto direto na forma como você resolve o problema de bilhões de vetores. Se você escolher um algoritmo como o HNSW, terá acesso rápido e pesquisa eficiente em grandes conjuntos de dados. No entanto, ele exige muita RAM, o que pode aumentar os custos. Outros algoritmos, como o KNN exaustivo, oferecem alta precisão, mas exigem muito mais processamento, por isso são mais indicados para conjuntos de dados menores. O algoritmo certo ajuda você a equilibrar velocidade, precisão e uso de recursos. Você pode otimizar o desempenho para a sua aplicação específica ao alinhar o algoritmo às suas necessidades. Essa decisão define o quão bem você lida com conjuntos de dados massivos e o quanto gasta em hardware.
Visão geral do Azure AI Search
O Azure AI Search oferece uma plataforma poderosa para enfrentar o problema de bilhões de vetores. Você pode pré-processar seus dados com ferramentas avançadas de limpeza e enriquecimento, o que melhora a qualidade dos vetores antes da indexação. A plataforma organiza suas informações em um banco de dados vetorial projetado para tarefas de recuperação e para as necessidades atuais de pesquisa. Você se beneficia de recursos robustos de pesquisa e recuperação, incluindo processamento de linguagem natural para compreensão semântica. A segurança é forte, com criptografia e controles de acesso para proteger seus dados.
O Azure AI Search se integra de forma fluida a outros serviços do Microsoft Azure e a plataformas de terceiros. Você pode usar a pesquisa híbrida, que combina pesquisa por palavras-chave e pesquisa vetorial para obter os melhores resultados. O ranqueamento e o ajuste de relevância permitem definir como os resultados aparecem, tornando-os mais úteis para os seus usuários. A plataforma também oferece experiências de pesquisa inteligentes, como preenchimento automático e resultados sugeridos. Construído sobre a infraestrutura global do Azure, o Azure AI Search entrega a escala e a confiabilidade de que você precisa para conjuntos de dados massivos e projetos de dados em grande escala.
Índice baseado em grafo: HNSW e DiskANN

O que é HNSW
Você pode ter ouvido falar em HNSW, que significa hierarchical navigable small world (mundo pequeno navegável hierárquico). Esse algoritmo de índice baseado em grafos ajuda você a encontrar vetores semelhantes rapidamente em grandes conjuntos de dados. O HNSW cria uma estrutura de grafo em múltiplas camadas que conecta os pontos de dados de forma que a busca seja rápida e precisa. Cada camada do grafo tem uma densidade diferente: as camadas superiores têm menos nós, e as inferiores têm mais. Esse design permite que você comece a busca no topo e desça, refinando os resultados à medida que avança. O HNSW é otimizado para busca vetorial em memória, por isso mantém todo o grafo na RAM. Essa abordagem oferece resultados com baixa latência, mas também significa que você precisa de muita memória quando o conjunto de dados cresce.
O que é o DiskANN
O DiskANN é a resposta da Microsoft aos desafios da busca vetorial em escala de bilhões. Esse índice baseado em grafos usa uma abordagem híbrida que combina memória e armazenamento em SSD. O DiskANN permite que você armazene a maior parte do índice em SSDs, que são bem mais baratos que a RAM. Você mantém na memória apenas os dados de navegação mais importantes. Esse design ajuda você a gerenciar conjuntos de dados massivos sem custos altos de hardware. O DiskANN usa o algoritmo de grafo Vamana para orientar a busca pelos dados. Ele também usa um método especial de poda para manter o grafo diversificado e eficiente. O diskann da Microsoft alimenta o Azure AI Search e outros serviços, tornando-se uma inovação essencial para a IA corporativa.
| Inovação | Descrição |
|---|---|
| Busca ANN de alta velocidade | A arquitetura do DiskANN permite buscas ANN eficientes em SSDs, o que ajuda a reduzir custos de hardware. |
| Sistema de memória híbrido | O DiskANN usa uma combinação de DRAM e SSD para gerenciar bilhões de pontos em uma única máquina. |
| Armazenamento com boa relação custo-benefício | O DiskANN armazena o índice ANN em disco, oferecendo uma solução econômica para o tratamento de dados de alta dimensionalidade. |
Como o HNSW funciona
Construção do grafo
O HNSW constrói seu índice baseado em grafos criando uma hierarquia de grafos de busca. Você começa com uma estrutura vazia. O primeiro vetor que você adiciona se torna o único nó da camada superior. Para cada novo vetor, o HNSW decide em quantas camadas ele deve entrar usando um processo aleatório. O novo vetor se conecta aos vizinhos mais próximos em cada camada, até o seu máximo atribuído. A camada superior tem o menor número de nós, o que a torna um bom ponto de partida para a busca. As camadas inferiores têm mais nós, permitindo buscas detalhadas. O HNSW pode atualizar seu grafo sem uma reconstrução completa, então você pode adicionar novos dados conforme suas necessidades crescem.
Processo de busca
Quando você pesquisa com HNSW, começa na camada superior do grafo. Você usa conexões de longo alcance para se aproximar rapidamente da área onde o vetor-alvo pode estar. À medida que desce por cada camada, as conexões ficam mais densas. Isso ajuda você a refinar a busca e chegar mais perto da melhor correspondência. Na camada mais baixa, o HNSW usa uma busca por feixe (beam search) para encontrar os vizinhos mais próximos. Esse processo oferece resultados rápidos e precisos, especialmente quando todo o grafo cabe na memória.
- Princípios de design do HNSW:
- Otimizado para operações em memória, entregando baixa latência e alto recall.
- Usa uma estrutura de grafo em múltiplas camadas baseada em redes de mundo pequeno.
- Emprega uma estratégia de poda para remover arestas redundantes e incentivar a diversidade.
- O processo de busca envolve descer pelas camadas, começando com links esparsos de longo alcance e terminando com uma busca por feixe na camada base.
Você pode ver que tanto o HNSW quanto o DiskANN usam um índice baseado em grafos, mas seus designs atendem a necessidades diferentes. O HNSW funciona melhor quando você consegue manter tudo na memória. O DiskANN permite escalar para bilhões de vetores usando SSDs, o que o torna ideal para cargas de trabalho corporativas no Azure AI Search.
Como o DiskANN funciona
Arquitetura híbrida de memória e SSD
Você encontra uma abordagem única ao usar o DiskANN para buscas em bilhões de vetores. O DiskANN combina memória e armazenamento em SSD para criar uma arquitetura híbrida. Esse design permite que você armazene a maior parte do seu índice vetorial em SSDs, que custam menos que a RAM. Você mantém na memória apenas os dados de navegação essenciais. Esse método permite escalar sua busca para bilhões de vetores sem precisar de hardware caro.
O DiskANN usa duas técnicas principais para otimizar armazenamento e velocidade:
- Grafo Vamana: Você usa essa estrutura para uma navegação eficiente no índice.
- Quantização de produto (PQ): Você comprime os vetores na memória, o que reduz o uso de RAM.
Você se beneficia de um processo de execução de consulta em duas fases. Na primeira fase, o DiskANN usa vetores comprimidos com PQ na RAM para identificar rapidamente um conjunto de candidatos. Você não precisa ler do disco nessa etapa. Na segunda fase, o DiskANN busca vetores de precisão total no SSD para o conjunto de candidatos. Em seguida, você calcula as distâncias exatas para encontrar as melhores correspondências. Esse processo oferece alto recall e baixa latência, mantendo os requisitos de memória baixos.
Dica: A arquitetura híbrida de memória e SSD do DiskANN possibilita buscas em escala web em hardware comum. Você pode armazenar índices vetoriais em SSDs em vez de RAM, o que torna as aplicações de grande escala mais acessíveis.
Processo de busca
Você inicia uma busca no DiskANN navegando pelo grafo Vamana com vetores comprimidos na memória. Essa etapa ajuda a encontrar rapidamente os candidatos promissores. Você evita leituras de disco nessa fase, o que acelera o processo. Quando tiver o conjunto de candidatos, o DiskANN passa para a próxima fase.
Você busca vetores de precisão total no SSD para cada candidato. Calcula as distâncias exatas entre sua consulta e esses candidatos. Esse processo em duas fases garante resultados precisos sem deixar sua busca mais lenta. Você alcança alto recall porque o DiskANN examina os melhores candidatos em detalhe. Você também mantém a latência baixa, pois a maior parte do trabalho acontece na memória.
O processo de busca do DiskANN funciona bem para conjuntos de dados massivos. Você pode lidar com bilhões de vetores sem precisar de grandes quantidades de RAM. Você obtém resultados rápidos e confiáveis mesmo à medida que seus dados crescem. Isso torna o DiskANN uma escolha forte para cargas de trabalho de IA corporativas no Azure AI Search.
| Etapa | O que você faz | Benefício |
|---|---|---|
| Fase 1: Navegação | Usa vetores comprimidos com PQ na RAM para encontrar candidatos | Busca rápida, sem leituras de disco |
| Fase 2: Refinamento | Busca vetores de precisão total no SSD e calcula as distâncias | Alto recall, baixa latência |
Você percebe que a arquitetura híbrida e o processo de busca do DiskANN ajudam a resolver de forma eficiente o problema dos bilhões de vetores. Você pode escalar sua busca, reduzir custos e manter o desempenho à medida que seus dados crescem.
Pontos fortes e fracos
Prós e contras do HNSW
Você costuma escolher o HNSW para recuperação de vetores porque ele oferece velocidade de busca de última geração e alto recall. Quando você ajusta bem o HNSW, obtém resultados rápidos e correspondências precisas. Ele lida bem com dados vetoriais de alta dimensionalidade, o que é importante para cargas de trabalho de IA modernas. Você também se beneficia de inserções incrementais, então pode atualizar seu índice sem reconstruir tudo.
| Pontos fortes | Pontos fracos |
|---|---|
| Velocidade de busca de última geração e alto recall quando bem ajustado. | Alto consumo de memória devido ao armazenamento de links do grafo para cada vetor. |
| Lida bem com dados de alta dimensionalidade. | Tempo longo de construção do índice com parâmetros de construção de alta qualidade. |
| Suporta inserções incrementais de forma eficiente. | A exclusão complexa de elementos pode degradar o desempenho ao longo do tempo. |
Você escala o HNSW de forma eficiente porque ele usa O(N log N) para a construção do índice. A construção paralela permite usar processadores com múltiplos núcleos, o que acelera o processo. O uso de memória cresce linearmente com o tamanho do conjunto de dados, então você consegue prever as necessidades de armazenamento. No entanto, você precisa manter o grafo inteiro na RAM, o que limita a escalabilidade para conjuntos de dados com bilhões de vetores.
Prós e contras do DiskANN
Você recorre ao DiskANN quando precisa escalar a recuperação de vetores além do que a RAM comporta. O DiskANN otimiza o uso de SSD, o que reduz custos de hardware e permite gerenciar conjuntos de dados massivos. Você obtém alta precisão e baixa latência combinando buscas em memória com leituras em lote do SSD. O DiskANN oferece suporte a atualizações em tempo real e busca híbrida, então você pode filtrar e recuperar vetores com eficiência.
Considere estes pontos sobre o DiskANN:
- Escalabilidade com bom custo-benefício, usando SSDs em vez de RAM.
- Alta precisão e baixa latência em escala, por meio de buscas em memória e leituras do SSD.
- Atualizações em tempo real e recuperação híbrida de vetores com filtros.
- Os tempos de construção são lentos porque a construção do grafo Vamana é computacionalmente pesada.
- O desempenho depende da taxa de transferência e da latência dos SSDs.
- As atualizações são mais caras em comparação com estruturas em memória, como o hnsw.
- A implementação e o ajuste exigem otimização cuidadosa.
Você se beneficia da capacidade do diskann de trabalhar com vetores quantizados, o que comprime os dados e melhora a busca com eficiência de memória. Você pode usar o diskann em cargas de trabalho com bilhões de vetores sem se preocupar com os limites de RAM.
Eficiência de Memória e Armazenamento
Você deve considerar a eficiência de memória e de armazenamento ao escolher entre hnsw e diskann para a recuperação de vetores. O hnsw funciona bem para conjuntos de dados que cabem na RAM do seu servidor. Você obtém acesso rápido e alto desempenho, mas não consegue escalar além dos limites de memória. O diskann permite expandir o tamanho do seu conjunto de dados até a capacidade do disco, trocando um pouco de velocidade por armazenamento. Você armazena a maior parte do seu índice em SSDs, o que torna o diskann ideal para conjuntos massivos de vetores.
| Recurso | HNSW | DiskANN |
|---|---|---|
| Eficiência de Memória | Altamente eficiente para conjuntos de dados que cabem no cache (RAM) do servidor. | Projetado para conjuntos de dados grandes demais para caber na RAM. |
| Eficiência de Armazenamento | Limitado pela quantidade de RAM disponível. | Expande o tamanho do conjunto de dados até a capacidade do disco, trocando um pouco de velocidade por armazenamento. |
| Otimização de Desempenho | Aproveita o acesso rápido à memória para ganhar velocidade. | Minimiza as penalidades de desempenho do armazenamento em disco, que é mais lento. |
| Adequação ao Conjunto de Dados | Adequado para conjuntos de dados que cabem na RAM. | Adequado para conjuntos de dados massivos, além da capacidade da RAM. |
Você usa vetores quantizados tanto no hnsw quanto no diskann para reduzir a necessidade de armazenamento e melhorar a velocidade de recuperação. A arquitetura híbrida do diskann permite escalar a busca vetorial mantendo os custos baixos. Você obtém busca com eficiência de memória para tarefas de recuperação em grande escala, especialmente quando trabalha com vetores quantizados e armazenamento em SSD.
Comparação de Algoritmos de Busca Vetorial

Desempenho em Escala
Você precisa medir como um algoritmo de busca vetorial se comporta à medida que o seu conjunto de dados cresce. HNSW e DiskANN buscam ambos entregar alto recall e velocidade, mas suas estratégias são diferentes. O HNSW depende de grafos em memória, o que significa que você obtém busca rápida do vizinho mais próximo quando os vetores cabem na RAM. O DiskANN usa uma abordagem híbrida de memória e SSD, então você pode escalar o desempenho da busca sem se preocupar com os limites de memória.
Quando você executa a busca do vizinho mais próximo em milhões de vetores, o HNSW oferece recuperação em alta velocidade e baixa latência. Você pode ajustar parâmetros para recall e velocidade. O DiskANN mantém alto recall e velocidade mesmo à medida que o conjunto de dados se expande. Você armazena a maior parte do índice em SSDs, o que permite lidar com bilhões de vetores. Você usa uma busca em duas etapas para equilibrar velocidade e precisão. A primeira etapa encontra candidatos na memória, e a segunda refina os resultados usando SSDs.
Você obtém alto recall e velocidade com os dois algoritmos, mas o DiskANN permite escalar o desempenho da busca além dos limites da RAM.
Escalabilidade para Bilhões de Vetores
Você enfrenta novos desafios quando o seu conjunto de dados cresce de milhões para bilhões de vetores. O HNSW funciona bem para até 50 milhões de vetores. Você usa o HNSW como algoritmo padrão de busca vetorial e ajusta os parâmetros para recall. Quando você chega a 50 a 500 milhões de vetores, implementa sharding e quantização escalar. Você pode usar recuperação em duas fases para ganhar eficiência. Para conjuntos de dados acima de 500 milhões de vetores, você precisa de recuperação hierárquica e arquiteturas de múltiplas camadas. Você usa quantização agressiva para dados frios.
| Faixa de Quantidade de Vetores | Estratégia com HNSW |
|---|---|
| 1-50M | Use o HNSW como algoritmo padrão, garanta que os vetores caibam na RAM e ajuste os parâmetros para recall. |
| 50-500M | Implemente sharding, ative a quantização escalar e considere a recuperação em duas fases para ganhar eficiência. |
| 500M+ | Use recuperação hierárquica, arquiteturas de múltiplas camadas e quantização agressiva para dados frios. |
O DiskANN muda o jogo para a busca vetorial em escala de bilhões. Você armazena a maior parte do índice em SSDs, então não precisa se preocupar com os limites de RAM. Você usa quantização por produto para comprimir os vetores e mantém os dados de navegação na memória. Você escala sua busca do vizinho mais próximo para bilhões de vetores sem sacrificar o desempenho da busca. O DiskANN oferece suporte a busca aproximada baseada em clustering e recuperação híbrida, o que ajuda você a gerenciar conjuntos de dados massivos.
O DiskANN permite escalar seu algoritmo de busca vetorial para bilhões de vetores, o que o torna ideal para cargas de trabalho corporativas.
Latência de consulta e taxa de transferência
Você se preocupa com a latência de consulta e a taxa de transferência ao executar busca vetorial em escala. O HNSW oferece baixa latência para a busca do vizinho mais próximo porque mantém o grafo inteiro na memória. Você obtém respostas rápidas às consultas e alta taxa de transferência para conjuntos de dados que cabem na RAM. Quando seu conjunto de dados cresce, a latência aumenta à medida que você fragmenta os dados ou usa arquiteturas em múltiplas camadas.
O DiskANN usa um processo de busca em duas etapas. Primeiro, você pesquisa vetores compactados na memória, o que permite selecionar candidatos com rapidez. Em seguida, refina sua consulta buscando vetores de precisão total nos SSDs. Essa abordagem mantém a latência baixa e preserva a alta taxa de transferência, mesmo para conjuntos de dados na escala de bilhões. Você otimiza a recuperação agrupando leituras nos SSDs e usando estruturas de navegação eficientes.
Você alcança alto recall e velocidade com o DiskANN, mesmo quando o volume de consultas aumenta. Você não precisa se preocupar com limites de memória, então pode escalar o desempenho da busca para aplicações corporativas.
Você obtém latência de consulta e taxa de transferência confiáveis com o DiskANN, o que o torna uma escolha forte para busca do vizinho mais próximo em larga escala.
Impacto em custo e recursos
Você deve considerar o impacto em custo e recursos ao escolher um algoritmo de busca vetorial para o Azure AI Search. A forma como cada algoritmo usa memória e armazenamento afeta seu orçamento e sua capacidade de escalar.
O DiskANN se destaca em cargas de trabalho com bilhões de vetores. Você pode armazenar a maior parte do índice em SSDs, que custam menos que a RAM. Esse design permite escalar de milhares para bilhões de vetores sem um grande aumento nos custos de memória. O DiskANN funciona bem para cargas de trabalho de IA em produção porque usa os SSDs com eficiência e mantém na memória apenas os dados mais importantes.
O HNSW funciona melhor para conjuntos de dados de tamanho médio. Você precisa manter o índice inteiro na RAM. Esse requisito limita o quanto você pode escalar. Se seu conjunto de dados crescer demais, você pode enfrentar custos operacionais altos. O HNSW também é limitado a 2.000 dimensões, o que pode restringir seus casos de uso.
| Tipo de índice | Adequado para cargas de trabalho com bilhões de vetores | Requisitos de memória | Custos operacionais |
|---|---|---|---|
| DiskANN | Sim, projetado para desempenho em SSD | Escala de milhares a bilhões de vetores | Recomendado para cargas de trabalho de IA em produção |
| HNSW | Não, adequado para conjuntos de dados médios | Exige que o índice caiba na RAM | Limitado a 2.000 dimensões |
Dica: se você quer controlar custos e escalar sua busca para bilhões de vetores, o DiskANN oferece uma vantagem clara. Você pode usar SSDs com custo acessível e manter baixas as necessidades de memória.
Casos de uso reais
Você pode ver o valor desses algoritmos em aplicações reais. Muitas organizações usam o DiskANN e o HNSW para diferentes tipos de problemas de busca vetorial.
- Você pode usar um método híbrido de bom custo-benefício para busca aproximada do vizinho mais próximo. Essa abordagem combina armazenamento em SSD com estruturas de grafo na memória.
- Você pode implantar o DiskANN para conjuntos de dados estáticos, como corpora de pesquisa, nos quais os dados não mudam com frequência.
- Você pode escolher o DiskANN para implantações sensíveis a custo. Ele funciona bem em aplicações na escala de bilhões em que você precisa controlar despesas.
- Você pode usar o DiskANN para consultas que toleram latências inferiores a 10 milissegundos. Essa velocidade é suficientemente rápida para muitas tarefas de busca corporativa.
- Você pode combinar o HNSW com arquivos invertidos em disco (HNSW-IF) para busca híbrida. Esse método alcança alto recall e mantém a latência baixa.
| Caso de uso | Descrição |
|---|---|
| Conjuntos de dados estáticos | Ideal para corpora de pesquisa em que os dados não mudam com frequência. |
| Implantações sensíveis a custo | Adequado para aplicações na escala de bilhões em que o custo é uma preocupação. |
| Consultas tolerantes à latência | Funciona bem para consultas que toleram latências inferiores a 10 ms. |
Observação: muitas organizações alcançam 90% de recall com latência de 10 ms usando métodos híbridos. Esse desempenho atende às necessidades da maioria das aplicações corporativas de busca com IA.
Você pode alinhar a escolha do algoritmo à sua carga de trabalho. Se você precisa escalar, controlar custos e manter a latência baixa, o DiskANN oferece a flexibilidade e a eficiência de que você precisa.
Quando usar HNSW ou DiskANN
Escolher o algoritmo certo para sua carga de trabalho no Azure AI Search pode fazer uma grande diferença em velocidade, custo e precisão. Você precisa analisar seus dados, seu hardware e com que frequência eles mudam. Vamos detalhar os principais critérios de decisão para que você escolha a melhor ferramenta para suas necessidades de busca vetorial.
Critérios de decisão
Tamanho do conjunto de dados
Comece sempre analisando o tamanho do seu conjunto de dados. Se você trabalha com milhões de vetores, o HNSW oferece resultados de busca rápidos e precisos. Ele funciona melhor quando os dados cabem na memória. Quando seu conjunto de dados cresce para bilhões de vetores, o DiskANN se torna a melhor escolha. Ele usa SSDs para armazenar a maior parte do índice, então você não precisa se preocupar em ficar sem RAM.
| Critério | HNSW | DiskANN |
|---|---|---|
| Tamanho do conjunto de dados | Indicado para milhões de vetores | Excelente para bilhões de vetores |
Você pode ver que o HNSW se adapta a cargas de trabalho menores, enquanto o DiskANN lida com conjuntos de dados massivos sem perder desempenho.
Hardware e custo
Seu hardware e seu orçamento também têm um papel importante. O HNSW precisa de muita RAM porque mantém o grafo inteiro na memória. Isso pode ficar caro à medida que seu banco de dados vetorial cresce. O DiskANN ajuda a economizar dinheiro ao armazenar a maior parte do índice em SSDs, que custam menos que a RAM. Você só precisa de memória suficiente para a parte de navegação do índice.
| Critério | HNSW | DiskANN |
|---|---|---|
| Infraestrutura | Requisitos de RAM | Reduz os custos de memória |
Se você quer manter os custos baixos e ainda pesquisar em bilhões de vetores, o DiskANN oferece uma vantagem clara.
Necessidades de latência
Pense em quão rápido você precisa dos resultados da busca. O HNSW oferece latência muito baixa porque pesquisa na memória. Você pode obter resultados em apenas alguns milissegundos se os dados couberem na RAM. O DiskANN equilibra velocidade e escala. Ele usa um processo de busca em duas etapas, então você ainda obtém resultados rápidos mesmo com conjuntos de dados enormes. Para a maioria das aplicações corporativas, o DiskANN mantém os tempos de consulta abaixo de 10 milissegundos.
- O HNSW é a melhor opção para cargas de trabalho em que cada milissegundo conta.
- O DiskANN funciona bem quando você precisa pesquisar grandes conjuntos de dados rapidamente e pode aceitar um pequeno aumento na latência.
Padrões de atualização
A frequência com que seus dados mudam afeta sua escolha. O HNSW funciona bem para dados estáticos ou que mudam lentamente. Se você atualiza seus vetores com frequência, pode precisar reconstruir o índice, o que leva tempo. O DiskANN se adapta melhor a atualizações frequentes. Ele mantém a precisão e o recall estáveis, mesmo quando você adiciona ou altera vetores com frequência.
| Recurso | HNSW | DiskANN |
|---|---|---|
| Latência de atualização | Exige reconstrução completa do índice | Se adapta com eficiência a mudanças |
| Recall | Alto, mas afetado por mudanças | Precisão estável com muitas modificações |
Se sua aplicação precisa lidar com muitas atualizações, o DiskANN oferece mais flexibilidade.
Cenários de exemplo
Você pode usar cenários do mundo real para ajudar a decidir qual algoritmo atende às suas necessidades.
| Métrica | HNSW | DiskANN |
|---|---|---|
| Recall médio | 0.6 | 0.7 |
| Precisão de ponta a ponta | 0.972 | 0.933 |
| Robustez-0.2@10 | 0.998 | 0.984 |
| Robustez-0.9 | 0.84 | 0.81 |
- O HNSW oferece alto recall e alta taxa de consultas por segundo. Em conjuntos de dados como o SIFT1M, você pode alcançar cerca de 95% de recall@10 em apenas 1 a 2 milissegundos por consulta em CPU.
- O DiskANN apresenta maior recall médio, o que significa que encontra mais correspondências verdadeiras em grandes conjuntos de dados. Ele mantém a precisão alta, mesmo à medida que seus dados crescem.
- O HNSW funciona melhor para sistemas de recomendação ou mecanismos de busca em que você precisa de precisão e velocidade máximas.
- O DiskANN se encaixa em buscas de grande escala, como pesquisar bilhões de imagens de produtos ou documentos, em que você precisa equilibrar velocidade, custo e escala.
O HNSW se destaca em cargas de trabalho que exigem a busca mais rápida possível em conjuntos de dados menores. O DiskANN brilha quando você precisa pesquisar quantidades massivas de dados sem estourar o orçamento.
Migração e abordagens híbridas
Você não precisa escolher apenas um algoritmo para todas as situações. Muitas organizações começam com o HNSW para conjuntos de dados menores. À medida que o banco de dados vetorial cresce, elas migram para o DiskANN para lidar com mais dados e manter os custos baixos. Você também pode usar uma abordagem híbrida. Por exemplo, pode manter os vetores mais populares ou recentes na memória com o HNSW, enquanto armazena vetores mais antigos ou menos usados em SSDs com o DiskANN.
- Comece com o HNSW para prototipagem rápida e cargas de trabalho pequenas.
- Migre para o DiskANN quando seu conjunto de dados ultrapassar os limites de memória.
- Combine os dois métodos para o melhor equilíbrio entre velocidade e escala.
Dica: revise sua carga de trabalho regularmente. À medida que seus dados e necessidades mudarem, você pode ajustar sua abordagem para obter o melhor desempenho e valor.
Ao entender o tamanho do seu conjunto de dados, o hardware, as necessidades de latência e os padrões de atualização, você pode fazer uma escolha inteligente entre hnsw e diskann. Isso ajuda você a criar um sistema de pesquisa vetorial que atende aos seus objetivos e cresce junto com o seu negócio.
Melhores práticas para pesquisa vetorial no Azure
Dicas de configuração de índice
Você pode alcançar alto desempenho no Azure AI Search seguindo algumas dicas importantes de configuração. Comece garantindo que o tamanho do seu índice caiba em uma única unidade de pesquisa vetorial. Isso ajuda a manter sua pesquisa rápida e confiável. Procure minimizar o tamanho dos seus embeddings. Embeddings menores melhoram os tempos de consulta e aumentam as consultas por segundo. Use consultas de Approximate Nearest Neighbor (vizinho mais próximo aproximado) para ganhar eficiência, pois elas aceleram a pesquisa sem sacrificar muito a precisão.
Mantenha o número de resultados por consulta entre 10 e 100. Essa faixa reduz a latência e mantém sua pesquisa responsiva. Evite usar endpoints de modelo que escalam para zero em produção. Inícios a frio (cold starts) podem atrasar sua pesquisa e frustrar os usuários. Planeje picos de consultas para que seu sistema consiga lidar com aumentos repentinos no tráfego de pesquisa. Use service principals com tokens OAuth para uma autenticação segura e eficiente. Sempre use a versão mais recente do SDK do Python para se beneficiar das melhorias de desempenho. Se você precisar de maior throughput, escale seu endpoint ou paralelize em vários endpoints.
Dica: um índice bem configurado é a base de uma pesquisa vetorial otimizada no Azure.
Monitoramento e otimização
Você precisa monitorar e otimizar seu sistema de pesquisa para manter alto desempenho, especialmente com cargas de trabalho de bilhões de vetores. A tabela abaixo mostra algumas técnicas eficazes:
| Técnica | Descrição |
|---|---|
| Índices em múltiplas camadas | Use índices rápidos para dados quentes e comprima dados frios para economizar espaço. |
| Controle de fan-out | Gerencie as interações entre shards e clusters para reduzir saltos de rede. |
| Quantização | Reduza o tamanho dos vetores com métodos como IVF-PQ para caber nos limites de memória. |
| Ajuste de centroides | Ajuste o número de centroides para equilibrar recall e sobrecarga. |
| Asymmetric Distance Computation | Acelere a pesquisa comparando consultas em precisão total com vetores comprimidos. |
| Roteamento intencional de consultas | Use metadados e clustering para evitar broadcasts desnecessários durante a pesquisa. |
| Minimize o payload de rede | Transfira apenas IDs e scores, não vetores completos, entre os nós. |
| Agregação hierárquica | Agregue os resultados localmente para reduzir a coordenação e estabilizar a latência. |
| Predominância de memória | Garanta que os vetores caibam na memória para o melhor desempenho de pesquisa. |
| Uso situacional de GPU | Use GPUs para indexação, se necessário, mas verifique se elas realmente aumentam o throughput da sua pesquisa. |
| Qualidade da rede | Monitore as condições da rede, pois elas afetam a latência da pesquisa. |
Nota: o monitoramento regular ajuda você a identificar problemas cedo e manter sua pesquisa funcionando sem interrupções.
Armadilhas comuns
Você pode enfrentar algumas armadilhas comuns ao configurar ou escalar seu sistema de pesquisa no Azure. Um erro é deixar o índice crescer demais para uma única unidade de pesquisa. Isso pode deixar suas consultas mais lentas e tornar a pesquisa menos confiável. Usar embeddings grandes também pode prejudicar o desempenho. Sempre mantenha seus embeddings o menores possível para o seu caso de uso.
Outra armadilha é ignorar picos de consultas. Se você não planejar aumentos repentinos no tráfego de pesquisa, seu sistema pode falhar sob pressão. Depender de endpoints que escalam para zero pode causar atrasos de inicialização a frio, que tornam sua pesquisa mais lenta. Deixar de atualizar seu SDK ou não usar tokens OAuth pode gerar riscos de segurança e ganhos de desempenho perdidos.
Lembre-se: evite essas armadilhas para manter sua pesquisa rápida, segura e confiável.
Seguindo essas melhores práticas, você pode construir uma experiência de pesquisa robusta e eficiente no Azure. Você vai lidar com grandes conjuntos de dados com facilidade e entregar resultados rápidos e precisos aos seus usuários.
Você resolve o problema de bilhões de vetores no Azure AI Search escolhendo o algoritmo certo para as suas necessidades. O DiskANN oferece escalabilidade com bom custo-benefício para conjuntos de dados massivos, enquanto o HNSW entrega resultados rápidos para cargas de trabalho menores. Você alinha o algoritmo à sua carga de trabalho, à escala e ao orçamento. A tabela abaixo ajuda você a selecionar o melhor endpoint:
| Tipo de SKU | Caso de uso e descrição |
|---|---|
| Endpoints padrão | Ideal para necessidades críticas de latência, com índices de até 320 milhões de vetores. |
| Endpoints otimizados para armazenamento | Ideal para mais de 10 milhões de vetores, quando você tolera alguma latência e precisa de eficiência de custo. |
- Estime suas necessidades de armazenamento testando com alguns documentos.
- Planeje as atualizações e o volume total de conteúdo.
O Azure AI Search oferece flexibilidade e acompanha as inovações da Microsoft para IA corporativa.
Perguntas frequentes
Qual é a principal diferença entre HNSW e DiskANN?
Você usa o HNSW para busca vetorial em memória. O DiskANN permite armazenar a maior parte do seu índice em SSDs. Isso torna o DiskANN mais adequado para lidar com bilhões de vetores sem custos altos de memória.
Dá para usar o DiskANN em aplicações em tempo real?
Sim. O DiskANN oferece buscas de baixa latência, geralmente abaixo de 10 milissegundos. Você pode usá-lo em tarefas de busca de IA em tempo real, mesmo com conjuntos de dados muito grandes.
Como você decide qual algoritmo usar no Azure AI Search?
Você escolhe o HNSW para conjuntos de dados menores que cabem na RAM. Escolhe o DiskANN para conjuntos de dados massivos que precisam de escalabilidade com bom custo-benefício. Considere o tamanho dos dados, o hardware e as necessidades de latência.
O DiskANN exige hardware especial?
Não. Você pode executar o DiskANN em servidores padrão com SSDs. Não é preciso máquinas caras com muita memória. Isso torna a escalabilidade mais fácil e acessível.
Como o Azure AI Search mantém seus dados seguros?
O Azure AI Search usa criptografia e controles de acesso. Você controla quem pode acessar seus dados. Os recursos de segurança da Microsoft ajudam você a proteger informações sensíveis.
Dá para atualizar seu índice vetorial sem indisponibilidade?
Você pode atualizar os índices HNSW e DiskANN. O DiskANN oferece atualizações eficientes para conjuntos de dados grandes. Você mantém os resultados de busca atualizados sem tirar seu sistema do ar.
Quais são as boas práticas para otimizar o desempenho da busca vetorial?
Use embeddings menores, mantenha seu índice dentro de uma única unidade de busca e monitore a latência das consultas. Sempre atualize seu SDK e planeje picos de consultas para manter um desempenho alto.
🎧 Ouça este episódio
Quer uma explicação prática sobre HNSW vs DiskANN for Vector Search in Azure AI Search? Este episódio explica o tema em linguagem clara e mostra por que ele importa para Microsoft 365, Azure, Power Platform, segurança, IA e trabalho moderno.
Ouça este episódio se você quer:
- Entender os conceitos-chave por trás de HNSW vs DiskANN for Vector Search in Azure AI Search
- Ver como isso se encaixa no ecossistema mais amplo de tecnologia da Microsoft
- Descobrir onde isso pode gerar valor prático para a sua organização
Você também pode gostar destes episódios relacionados do M365 FM:
- Improve Microsoft Copilot Accuracy Beyond Vector Search
- Azure AI Search – Simply Explained
- Vector Databases - Simply Explained
- Descoberta de API do Microsoft Graph para pesquisa semântica corporativa
- Faça a pesquisa do SharePoint mostrar primeiro os arquivos certos
Descubra mais conversas práticas sobre Microsoft no M365 FM.
Última revisão: julho de 2026.
Quem deve ouvir
Este episódio é para administradores, arquitetos, desenvolvedores, profissionais de segurança e líderes de negócios da Microsoft que precisam de uma base prática antes de tomar decisões de implementação, operação ou governança.
🎧 Você também deve ouvir
- Azure Resource Manager — Um próximo passo muito relacionado para aprofundar este tema.
- Infrastructure as Code — Um próximo passo muito relacionado para aprofundar este tema.
- Azure Policy — Um próximo passo muito relacionado para aprofundar este tema.