Lesson 4 · 10 min
Choosing a vector database
Pinecone, Weaviate, Qdrant, Milvus, pgvector, MongoDB Atlas, Elasticsearch. Honest 2026 comparison and when each is the right pick.
The 2026 landscape
Already on Postgres? Use pgvector. With HNSW + the new IVFFlat improvements, it handles 10-50M vectors competitively. Operational simplicity wins; you don't add a service.
Already on MongoDB? Atlas Vector Search is built in. Same logic: don't add a service if your existing DB does it.
Already on Elasticsearch / OpenSearch? Native dense_vector + HNSW. Hybrid retrieval (dense + BM25) is built in.
Need hybrid retrieval as a first-class feature? Weaviate or Qdrant. Both ship HNSW + sparse + filtering with great ergonomics.
Pure vector workload, very large scale? Milvus (open source, k8s-native) or Pinecone (managed). Both handle 1B+ vectors; Pinecone trades cost for zero ops.
Edge / on-device? SQLite-vec or Chroma (in-process). Real choice for desktop apps and PWAs that ship a local search.