×marble
all posts
Jul 4, 2026·11 min read

Vector Databases in 2026: The Honest Landscape

Pinecone, Weaviate, Qdrant, Milvus, pgvector — the honest take on which vector database fits which personalization workload in 2026.

Alex Shrestha·Founder, ×marble

Vector Databases in 2026: The Honest Landscape

TL;DR.

  • The vector databases in 2026 landscape consolidated around five serious choices: Pinecone, Weaviate, Qdrant, Milvus, and pgvector. Everything else is either a wrapper, a startup gamble, or a feature inside a bigger product.
  • Qdrant's Rust core wins the open-source latency race — published 2026 benchmarks show p50 around 8 ms and p99 around 25 ms on 1M vectors at 1536 dimensions, faster than Pinecone or Weaviate at the same scale.
  • Pinecone's serverless model is the fastest path from idea to indexed corpus, but its read-unit pricing punishes filtered-query-heavy workloads — a single filtered query can consume 5–10 read units, not 1.
  • Weaviate is the only one of the five with hybrid BM25 plus vector search built into the core query path, not bolted on as a second call.
  • pgvector is the right answer more often than vendors want to admit: if Postgres is already in your stack and you have under 50M vectors, you don't need a second data store.
  • Milvus only justifies its Kubernetes-plus-etcd-plus-MinIO operational tax above roughly 500M vectors — below that, you're paying for capacity you can't use.

You don't pick a vector database for the benchmarks. You pick it for the operational shape it forces on your team — who pages, who tunes the index, who pays the egress bill when your embeddings grow 10x. We've shipped four production retrieval pipelines on different stores in the last eighteen months, and the ranking that comes out of benchmark tables almost never matches the ranking that comes out of the post-mortem doc. This post is the honest version: what each of the five real options is good at in 2026, what each one quietly costs, and how to pick without ending up on a migration in a year.

What actually changed in 2026

Three things shifted since the previous big consolidation wave. First, the major open-source projects — Qdrant, Weaviate, Milvus — all moved hybrid search (BM25 plus vector) into the core query engine rather than as a client-side rerank. Second, pgvectorscale and the StreamingDiskANN index made Postgres competitive past 50M vectors, which used to be the line where you "had to" leave it. Third, Pinecone retired its old pod model entirely and went serverless-only, which changed the pricing math for anyone with bursty traffic. The vector databases in 2026 landscape is no longer "Pinecone or you suffer" — it's a real five-way choice.

The other thing that changed: embedding dimensions doubled. Voyage's voyage-3-large and OpenAI's text-embedding-3-large ship at 2048 and 3072 dimensions respectively. A vector store that benchmarked beautifully at 768 dimensions in 2023 doesn't necessarily clear the latency bar at 2048 in 2026. Always look at the dimension count under any latency number you're quoted.

Pinecone — serverless, dev-friendly, expensive when you grow

Pinecone is the default if you don't want to think about infrastructure. You get an API key, you call upsert, you call query, and Pinecone handles indexing, replication, autoscaling, and capacity planning. There is no instance to size, no HNSW parameter to tune, no node to ssh into. For a small team that needs a working RAG or personalization retrieval pipeline this quarter, that's worth real money.

The catch is the pricing model. Pinecone's serverless tier charges per read unit, per write unit, and per GB stored. The headline numbers ($0.33 per GB stored, $8.25 per million read units, $2 per million write units in early 2026) look reasonable until you measure what a real query actually costs. Per public reports, a single filtered query can consume 5 to 10 read units, not 1, because the read unit accounting includes scanned vectors plus filter evaluation. At a million daily filtered queries, that math turns a $25/month mental model into a $250–500/month bill.

The pattern we've seen: Pinecone is right for the first 12 months of a product, and right forever if your query volume stays modest. It becomes wrong the moment you have a hot path running tens of millions of filtered queries per day, at which point migrating to self-hosted Qdrant typically cuts retrieval infrastructure cost meaningfully — one published case study reported a 30% cost reduction. It's also right for personalization workloads that need elastic burst — Black Friday on a marketplace, a content launch on a streaming app — because you literally don't pay for capacity you don't use.

Weaviate — hybrid search built into the query path

Weaviate is the only one of the five where hybrid search isn't a separate concept. You issue a single GraphQL or REST query with a vector, a BM25 keyword expression, and metadata filters; Weaviate fuses the rankings using a tunable alpha parameter and returns a single ranked list. Other stores get you there with a rerank step or two queries plus merge logic in your service. Weaviate gets you there in one round trip.

That matters more than it sounds. Most production personalization queries are not "find the 10 closest embeddings to this vector" — they're "find content this user might like, but only items launched in the last 30 days, only in their language, and please weight recent terms in the query string". Weaviate is built around that shape. It also ships built-in vectorization modules (OpenAI, Cohere, Voyage, Hugging Face), which means you can hand it raw text and skip the embedding-call boilerplate in your service code if you want.

Cost-wise, Weaviate Cloud's Flex tier starts at $45/month, and the old Serverless tier was retired in late 2025. Below 50M vectors, the managed pricing is reasonable; above that, memory requirements start climbing and self-hosting starts winning. Weaviate is the right pick when your personalization product blends content metadata (genres, tags, prices) with semantic similarity — which is most marketplaces, most media products, most B2B catalogs.

Qdrant — Rust, fast, simple, the filtered-search king

If you're running an open-source vector store in 2026, Qdrant is the one we reach for first. Its Rust core gives it a real latency edge over Java-based competitors: published 2026 benchmarks on 1M vectors at 1536 dimensions show Qdrant at roughly 8 ms p50 and 25 ms p99, compared to Pinecone's roughly 20 ms p50 and 50 ms p99 on the same workload, and Weaviate around 15 ms p50 and 40 ms p99. At 10M vectors, p99 typically lands around 12 ms for Qdrant versus 16 ms for Weaviate and 18 ms for Milvus.

What we like more than the raw speed is the filter integration. Qdrant's ACORN-style filtered HNSW lets you push tag, price, and recency filters into the graph traversal itself, instead of running ANN first and filtering after (which blows up your retrieved set) or filtering first and running ANN over the candidate set (which destroys recall when filters are selective). For a personalization layer that does heavy attribute filtering — almost all of them — that's not a luxury, it's the difference between sub-30 ms p99 and getting paged.

The Qdrant free tier is also the most usable: 1 GB of RAM, no credit card. Self-hosted production deployments serving millions of vectors typically run $30–50/month of infrastructure. The downsides: no built-in vectorization modules (you bring embeddings as input), and the management console is leaner than Weaviate's. We consider those features, not bugs.

Milvus — built for the billion-vector tier

Milvus is the right answer at a specific scale: somewhere above roughly 500M vectors. Below that, the operational tax is brutal. A production Milvus cluster needs etcd, MinIO (or S3), Pulsar (or Kafka), plus Milvus's own query nodes, data nodes, index nodes, and coordinator services — all of it ideally on Kubernetes. If you don't already have a platform team running Kubernetes well, you don't want this. We've seen Milvus deployments where the operational complexity ate two engineers full-time before the index even mattered.

The reason to pay that tax is real, though. Milvus separates storage, compute, and coordination into independent scaling tiers, which means you can scale read capacity without paying for write capacity (or vice versa), and you can attach GPUs to specific query nodes for embedded reranking. Zilliz Cloud (the managed Milvus) ships a Cardinal engine that they publish as up to 10x throughput and 3x faster index builds versus OSS alternatives. At 40,000+ GitHub stars in early 2026, Milvus is the most starred open-source vector database, and the LF AI & Data Foundation governance is real, not theatre.

Our default rule: under a billion vectors, pick Qdrant or Weaviate self-hosted. Above a billion, look at Milvus and Vespa seriously. Above ten billion, your options narrow to those two and to building something custom.

pgvector — when Postgres is the constraint, not vectors

The Qdrant Milvus pgvector axis is real, and pgvector is the answer more often than the dedicated-vector-DB vendors want to admit. If you already run Postgres, you already have one connection pool, one backup story, one migration tool, one RBAC model, and one alerting setup. Adding a second data store doubles all of that. For most teams the question shouldn't be "which vector DB is best?" — it should be "do we actually need a vector DB at all, or does pgvector on the Postgres we already run get us to production?"

The answer used to be "you need a vector DB above 10M vectors". The pgvectorscale extension changed that. Its StreamingDiskANN index keeps pgvector competitive past 50M vectors on commodity hardware, and the transactional consistency you get from being inside Postgres is something dedicated vector stores can't match — your embeddings update in the same transaction as the row they describe, with no eventual-consistency window. For personalization that joins user profiles, item metadata, and embeddings in the same query, pgvector beats anything else for simplicity.

When does pgvector stop being right? Three signals: (1) you cross roughly 100M vectors and your filter selectivity is high, (2) your p99 latency target is under 15 ms and you're seeing 30 ms+ on pgvector, or (3) you're doing pure-vector workloads where the relational layer is dead weight. Until you hit one of those, the vector databases in 2026 landscape favors staying inside Postgres.

How to actually choose

We use a four-question decision tree internally. It maps cleanly to the Pinecone vs Weaviate question and the broader Qdrant Milvus pgvector spread:

  1. Is Postgres already in your stack and you're under 50M vectors? Use pgvector. Stop reading.
  2. Do you need hybrid keyword-plus-vector search in one query (most personalization use cases)? Use Weaviate.
  3. Do you need open-source, sub-30 ms p99 filtered search, and you have platform engineers? Use Qdrant.
  4. Do you have over 500M vectors and a Kubernetes platform team? Use Milvus or Zilliz Cloud.
  5. Otherwise, and you want zero operations? Use Pinecone serverless, watching the read-unit math.

The order matters. Most teams should stop at step 1 or 2. The reason vendors push the "you need a dedicated vector DB" narrative hard is that the dedicated vector DB is what they sell. The vector databases in 2026 landscape rewards teams that resist that pull until their data actually demands it.

One more thing the benchmark tables hide: cost-at-scale is dominated by recall-tuning, not raw QPS. The HNSW parameters (ef_construction, ef_search, M) trade index size and query latency against recall, and a 1-point recall difference can swing hardware cost by 2x. Always benchmark on your own embeddings, your own filter distribution, and your own recall target. Vendor benchmarks are marketing.

How ×marble fits in

We built ×marble because most product teams don't actually want to operate a vector database — they want personalization that works. ×marble runs a knowledge graph for entities and relationships and a vector index for semantic similarity, fused into a single ranking layer, so you don't choose between Qdrant and Weaviate at all. You hand us events, you query our API, you get ranked recommendations with explanations. Our consumer products — vivo.timesmarble.com for daily AI briefings, video.timesmarble.com for personalized YouTube, marblexmusic.com for music — all sit on the same engine. If you'd rather not benchmark five vector stores and own the operational tail, we built this so you don't have to.

FAQ

Which vector database is best in 2026?

There is no single best vector database in 2026 — the right pick depends on scale, query shape, and whether Postgres is already in your stack. For under 50M vectors with Postgres present, pgvector is the default. For managed-cloud convenience, Pinecone serverless. For open-source filtered search, Qdrant. For hybrid keyword-plus-vector, Weaviate. For billion-scale with platform engineers, Milvus.

Is Pinecone still worth it in 2026?

Pinecone is worth it when your team values zero operational overhead more than per-query cost, especially in the first 12 months of a product. It becomes expensive when filtered-query volume scales — a single filtered query can consume 5–10 read units, not 1 — and teams typically migrate to self-hosted Qdrant or Weaviate when monthly retrieval bills cross the cost of a part-time platform engineer.

What is the difference between Pinecone vs Weaviate?

Pinecone is a fully managed serverless API with no infrastructure to operate but per-query pricing; Weaviate is open-source-plus-managed with hybrid search (BM25 plus vector) built into a single query and tunable HNSW parameters. Pinecone optimizes for time-to-first-query. Weaviate optimizes for query expressiveness when you need keywords, vectors, and metadata filters fused.

When should I use pgvector instead of a dedicated vector database?

Use pgvector when Postgres is already running, your vector count is under roughly 50M, and your queries naturally join embeddings with relational data (users, items, transactions). The pgvectorscale extension extends that ceiling further. The Qdrant Milvus pgvector decision usually comes down to whether the operational cost of a second data store is justified — for most teams under 100M vectors, it isn't.

What is the fastest vector database?

In 2026 published benchmarks, Qdrant leads open-source latency: roughly 8 ms p50 and 25 ms p99 on 1M vectors at 1536 dimensions, versus Pinecone's roughly 20 ms p50 and 50 ms p99 and Weaviate's roughly 15 ms p50 and 40 ms p99 on the same workload. Qdrant's Rust core and filter-aware HNSW (ACORN-style) are the main reasons. Self-hosted on dedicated hardware with appropriate ef_search tuning, Qdrant can hit sub-millisecond p50.

Further reading

the product behind these notes

×marble is the personalization graph.

One API. A living knowledge graph per user. Day-zero ready, explainable by construction. We built it so you don't have to.

See ×marble