Pular para o conteúdo
Skillpedia
Bancos de dados40 mil · #5303

qdrant-indexing-performance-optimization

Corrige problemas de lentidão na indexação e inserção de dados no Qdrant.

O que ela faz

Esta ferramenta ajuda a identificar e corrigir problemas que deixam o processo de indexação e envio de dados para o Qdrant muito lento. Ela sugere ajustes para acelerar o upload e a busca de informações.

Quando usar

  • ✓Quando o envio de dados para o Qdrant está demorando muito.
  • ✓Se o processo de otimização do índice está travado ou leva tempo demais.
  • ✓Quando a construção do índice HNSW (um tipo de índice para busca rápida) está muito lenta.

Exemplo do que pedir para a IA

“Minha indexação no Qdrant está muito lenta, o que posso fazer?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/github/awesome-copilot/blob/main/skills/qdrant-performance-optimization/indexing-performance-optimization/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/github/awesome-copilot/blob/main/skills/qdrant-performance-optimization/indexing-performance-optimization/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta analisa se o problema está no seu computador/rede ou no servidor Qdrant. Ela sugere otimizar o envio de dados em lotes, ajustar configurações do Qdrant como o número de 'shards' e a estratégia de indexação para acelerar o processo.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add github/awesome-copilot --skill qdrant-indexing-performance-optimization

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/qdrant-performance-optimization/indexing-performance-optimization/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

O Que Fazer Quando a Indexação do Qdrant Está Muito Lenta

O Qdrant NÃO constrói índices HNSW imediatamente. Segmentos pequenos usam força bruta até excederem indexing_threshold_kb (padrão: 20 MB). A busca durante esta janela é mais lenta por design, não um bug.

Uploads/Ingestão Muito Lentos

Use quando: chamadas de API de upload ou upsert estão lentas. Identifique o gargalo: lado do cliente (rede, loteamento) vs. lado do servidor (CPU, E/S de disco)

Para o lado do cliente, otimize o loteamento e o paralelismo:

  • Use upserts em lote (64-256 pontos por solicitação) API de Pontos
  • Use 2-4 fluxos de upload paralelos

Para o lado do servidor, otimize a configuração do Qdrant e a estratégia de indexação:

  • Crie mais shards (3-12), cada shard tem um worker de atualização independente Sharding
  • Crie índices de payload antes que os HNSW sejam construídos (necessário para índice vetorial filtrável) Índice de Payload

Adequado para carga inicial em massa de grandes conjuntos de dados:

  • Desabilite o HNSW durante a carga em massa (defina indexing_threshold_kb como muito alto, restaure depois) Parâmetros da Coleção
  • Definir m=0 para desabilitar HNSW é legado, use um indexing_threshold_kb alto em vez disso

Cuidado, uploads rápidos sem indexação podem usar temporariamente mais RAM e degradar o desempenho da busca até que o otimizador alcance.

Veja https://search.qdrant.tech/md/documentation/tutorials-develop/bulk-upload/

Otimizador Travado ou Demorando Muito

Use quando: o otimizador está rodando por horas, sem terminar.

  • Verifique o progresso real através do endpoint de otimizações (v1.17+) Monitoramento de Otimização
  • Grandes mesclagens e reconstruções de HNSW levam legitimamente horas em grandes conjuntos de dados
  • Verifique a CPU e a E/S de disco (HNSW é limitado por CPU, mesclagem é limitada por E/S, HDD não é viável)
  • Se optimizer_status mostrar um erro, verifique os logs por disco cheio ou segmentos corrompidos

Tempo de Construção do HNSW Muito Alto

Use quando: a construção do índice HNSW domina o tempo total de indexação.

Índice HNSW para Coleções Multi-Tenant

Se você tem um caso de uso multi-tenant onde todos os dados são divididos por algum campo de payload (por exemplo, tenant_id), você pode evitar a construção de um índice HNSW global e, em vez disso, confiar em payload_m para construir o índice HNSW apenas para subconjuntos de dados. Pular o índice HNSW global pode reduzir significativamente o tempo de indexação.

Veja Coleções Multi-Tenant para detalhes.

Índices de Payload Adicionais Estão Muito Lentos

O Qdrant constrói links HNSW extras para todos os índices de payload para garantir que a qualidade da busca vetorial filtrada não se degrade. Alguns índices de payload (por exemplo, campos text com textos longos) podem ter um número muito alto de valores únicos por ponto, o que pode levar a um longo tempo de construção do HNSW.

Você pode desabilitar a construção de links HNSW extras para um índice de payload específico e, em vez disso, confiar em estratégias ligeiramente mais lentas no tempo de consulta, como ACORN.

Leia mais sobre como desabilitar links HNSW extras na documentação

Leia mais sobre ACORN na documentação

O Que NÃO Fazer

  • Não crie índices de payload DEPOIS que o HNSW foi construído (quebra o índice vetorial filtrável)
  • Não use m=0 para uploads em massa em uma coleção existente, isso pode descartar o HNSW existente e causar longas reindexações
  • Não faça upload de um ponto por vez (o overhead por solicitação domina)
Perguntas frequentes

Por que a busca é mais lenta enquanto os dados estão sendo indexados?

O Qdrant não cria o índice HNSW imediatamente. Ele usa um método mais simples e rápido para dados menores, que é mais lento para buscas. Isso muda quando os dados atingem um certo tamanho ou são otimizados.

O que são 'shards' e como eles ajudam?

'Shards' são como divisões dos seus dados. Ter mais 'shards' permite que o Qdrant processe atualizações e indexações em paralelo, acelerando o processo geral.

Devo criar índices de 'payload' antes ou depois do HNSW?

É recomendado criar índices de 'payload' (informações adicionais associadas aos seus dados) antes de construir o índice HNSW. Isso garante que a busca filtrada funcione corretamente e pode otimizar o tempo total de indexação.

Detalhes

Descrição original do autor

Diagnoses and fixes slow Qdrant indexing and data ingestion. Use when someone reports 'uploads are slow', 'indexing takes forever', 'optimizer is stuck', 'HNSW build time too long', or 'data uploaded but search is bad'. Also use when optimizer status shows errors, segments won't merge, or indexing threshold questions arise.

repo: github/awesome-copilot

Popularidade

Estrelas no GitHub
40 mil
Posição no ranking
#5303
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas