Vector DBs em 2026: Qdrant, Weaviate, Pinecone, pgvector
- ⬜🚢 Semantic search em produção: indexing, sharding, freshness(Search & Information Retrieval Profundo)
Recomendamos completar os pré-requisitos antes de seguir, mas nada te impede de continuar.
O cenário em 2026
Mercado consolidou: pgvector para start, Qdrant para self-host sério, Pinecone para serverless gerenciado. Weaviate ainda forte em casos com schema rico. LanceDB para embedded. Milvus em deployments massivos. Escolha errada vira migration dolorosa.
Comparativo definitivo
| DB | Modelo | Scale típico | Forte em | Fraco em |
|---|---|---|---|---|
| pgvector | Postgres extension | ≤10-50M | SQL filters, ops zero (já tem PG) | >100M, latência alta |
| Qdrant | Self-host / cloud | 100M+ | Rust speed, on-the-fly filtering | Aprender API |
| Weaviate | Self-host / cloud | 100M+ | GraphQL, multi-modal, vetorização built-in | Mais opinionated |
| Pinecone | Serverless SaaS | Ilimitado | Zero ops, latência consistente | Custo em escala alta, vendor lock |
| LanceDB | Embedded | ~10M local | Single binary, multi-modal, offline | Não centralizado |
| Milvus | Self-host / Zilliz cloud | B+ vetores | Massive scale | Complexidade ops |
| Chroma | Embedded / self-host | ~10M | DX amigável Python | Maturidade em escala |
| Vespa | Self-host | B+ vetores | Hybrid lexical+vector + ranking complex | Curva de aprendizado |
Qual é a diferença essencial entre os dois algoritmos de índice aproximado mais usados?
Algoritmos por dentro
📋 Qual escolher?
Já tem Postgres. Zero ops adicional. HNSW nativo bom até 10M. Migre quando comprovar limite.
Alt: Qdrant — Quando passar de 50M ou precisar filtering complex on-the-fly
Alt: Pinecone — Time pequeno, sem appetite ops, custo OK
Alt: LanceDB — App desktop/edge/CLI
Alt: Milvus — B+ vetores em produção
Perguntas frequentes
❓ Como escolher banco vetorial em 2026?
❓ O que medir ao comparar bancos vetoriais?
❓ Filtro por metadado importa tanto assim?
Fixando
- → no mesmo lugar
- → varia muito
- → medir
- → medir
- Banco de dados
- Analytics
- Conceito de arquitetura
- Segurança e identidade
Os recursos convergiram; o que diferencia é operação, custo por milhão de vetores e desempenho do filtro por metadado. Escolher por vazão em benchmark sintético é escolher pelo número que menos importa.
- Comece pelo que você já opera. Se o volume cabe e você tem Postgres, a extensão de vetor é uma peça a menos, com transação e filtro por metadado no mesmo lugar.
- O índice é uma troca entre memória e recall. Grafo hierárquico dá recall alto e custa memória; partição por agrupamento é econômica e sensível ao número de partições varridas.
- Filtro por metadado é o critério que decide na prática. Buscar só no que aquele usuário pode ver é requisito comum, e o desempenho disso varia enormemente entre implementações.
- Medir recall a uma latência fixa. É fácil ser rápido devolvendo resultado pior. Comparar vazão sem fixar recall é o erro típico de avaliação de banco vetorial.
- Trocar de modelo de embedding é reindexar tudo. É a decisão mais difícil de reverter — mais que a de banco. Vetores de modelos diferentes vivem em espaços incomparáveis.
O que precisa ser medido ao ajustar um índice aproximado?
Quando um banco vetorial dedicado supera claramente a extensão num banco relacional?
Terminou de ler?
Marcar como concluído registra o XP, mantém sua sequência e coloca 3 cartas deste módulo na fila de revisão espaçada.
Próximos passos sugeridos
Temas deste módulo
Discussão
Carregando comentários…