2026 向量数据库全景对比:从 pgvector 到 Milvus,RAG 基础设施如何选型

如果你正在搭建一个 RAG(检索增强生成)应用,迟早会面对同一个问题:向量数据库选哪个?
过去两年,向量数据库从一个”要不要用”的决策,变成了”用哪个”的选择题。生态从最初一两家(Pinecone、Milvus)膨胀到 30+ 个选项——还有 Chroma 这种内嵌式、pgvector 这种”零新增基础设施”的后来者。选择多了,纠结就来了。
这篇文章基于 Salt Technologies AI Q1 2026 基准数据、Vecstore 2026 年生产环境实测以及 Encore、Milvus 官方等多来源信息,对 6 个主流向量数据库做一维度的性能、成本和适用场景对比。不卖弄参数矩阵,只讲你在生产环境里真正会遇到的取舍。
为什么选型这么重要
向量数据库是 RAG 架构的”检索层”——你的文档被切成片段、转成 embedding 向量、存进去,然后每次用户提问都要从这里做最近邻搜索(ANN)。它的性能直接决定:
- 延迟:用户等到答案需要多久
- 成本:每月账单多少
- 扩展性:100 万向量还行,1 亿怎么办
- 运维负担:需要专门的 SRE 盯着,还是 push 进去就完事
选错的话,后期迁移非常痛苦——不仅涉及数据格式转换,还会改变你整个检索流水线的调优参数。所以第一版选什么,往往就是上线版本用的什么。
六大主流方案速览
在 2026 年的生态中,真正被广泛采用的向量数据库基本集中在以下几家:
| 数据库 | 类型 | 部署方式 | 开源许可 | GitHub ⭐ | 单节点最大向量数 |
|---|---|---|---|---|---|
| pgvector | Postgres 扩展 | 随 Postgres 自托管 | MIT | — | 10-50M |
| Qdrant | 专用向量 DB | 自托管 / Qdrant Cloud | Apache 2.0 | ~35,000+ | 数十亿(分布式) |
| Weaviate | 专用向量 DB | 自托管 / Weaviate Cloud | BSD-3 | ~30,000+ | 数十亿(托管) |
| Milvus | 专用向量 DB | 自托管 / Zilliz Cloud | Apache 2.0 | 40,000+ | 数十亿+(分布式) |
| Pinecone | 专用向量 DB | 托管(Serverless / Pod) | 闭源 | — | 数十亿 |
| Chroma | 内嵌式 / 轻量 | 进程内 / 客户端-服务端 | Apache 2.0 | ~19,000+ | <1M(单节点) |
Milvus 在 2025 年 12 月突破 40,000 GitHub ⭐,成为向量数据库生态中最受欢迎的开源项目,被 NVIDIA、Salesforce、eBay、Airbnb、DoorDash 等超过 10,000 家企业用于生产。Qdrant 以 Rust 实现闻名,性能表现突出。Weaviate 则以内置混合搜索和 GraphQL 支持见长。
Pinecone 作为该品类的先驱,走纯托管路线——没有开源版本,但提供开箱即用的零运维体验。
性能基准:延迟、吞吐量与召回率
查询延迟(1M 向量,1536 维,标准 OpenAI embedding)
Salt Technologies Q1 2026 基准测试结果(p50 / p99,毫秒):
| 数据库 | p50 延迟 | p99 延迟 | 吞吐量(每秒索引数) |
|---|---|---|---|
| Qdrant | 4ms | 25ms | 8,000-20,000 |
| Redis | 5ms | 20ms | 15,000-40,000 |
| Milvus | 6ms | 35ms | 10,000-30,000 |
| Pinecone | 8ms | 45ms | 5,000-15,000 |
| Chroma | 12ms | 70ms | 2,000-8,000 |
| Weaviate | 12ms | 65ms | 3,000-10,000 |
| pgvector | 18ms | 90ms | 1,000-5,000 |
几个关键发现:
Qdrant 在延迟上领先。 其 Rust 实现带来显著的性能优势,在多个数据集上比竞争对手快 4 倍的 QPS。尤其在做元数据过滤搜索时(”找相似产品且 category=shoes”),Qdrant 的过滤性能是业内最好的。
pgvector 的速度比很多人想象的好。 “Postgres 做向量搜索太慢”这个说法来自 IVFFlat 索引时代。自 pgvector 0.5.0 引入 HNSW 索引后,pgvector 在 1M 向量规模上能匹配甚至超过专用向量数据库。Supabase 的基准测试显示,pgvector HNSW 在同等算力下 99% 准确率超过 Qdrant。
Pinecone Serverless 用延迟换便利。 Serverless 层比自托管或专用节点慢,他们的 Pod 层(p2)更快但价格显著更高。上面的数据是大多数团队实际使用的 Serverless 层表现。
Pinecone 的召回率最低——而且无法调优。 Vecstore 的实测显示:
- Qdrant(HNSW):~99.2%
- Milvus(HNSW):~99.0%
- pgvector(HNSW, ef_search=200):~98.5%
- Weaviate(HNSW):~97.8%
- Pinecone Serverless:~95%
关键问题是 Pinecone 不暴露 HNSW 参数,用户无法调优索引来控制精度-性能权衡。对某些应用这没问题,对另一些则是致命缺陷。
向量数据库性能对比(p50 延迟,越低越好)

成本:同样 1M 向量的真实月账单
这是最现实的部分。性能数据可以跑分,成本却是每个月实实在在要付的。
Salt Technologies Q1 2026 管理版定价(起步价):
| 数据库 | 起步价 | 付费模式 |
|---|---|---|
| Redis Cloud | $7/月 | 按量计费 |
| Qdrant Cloud | $9/月 | 按使用量(1GB 免费层) |
| Weaviate Cloud | $25/月 | 按量计费 |
| Supabase | $25/月 | Pro 版(含 pgvector) |
| Milvus (Zilliz Cloud) | $65/月 | 容量计费 |
| Pinecone | $70/月 | 2GB 免费层,按量/Pod |
| Elasticsearch | $95/月 | 按量计费 |
1M 向量、1024 维、中等查询量的生产环境月费估算(Vecstore 实测):
| 方案 | 月费估算 | 说明 |
|---|---|---|
| Weaviate Cloud | ~$45 | $45 起价,入门友好 |
| Pinecone Serverless | ~$50-80 | 存储便宜,读取量积累快 |
| Qdrant Cloud | ~$65-102 | 按资源计费(CPU/RAM/磁盘) |
| pgvector on Neon | ~$30-150 | Serverless PG,按活跃时间计费,突发负载更便宜 |
| pgvector on RDS | ~$260 | db.r6g.large,但含完整 Postgres 实例 |
pgvector on RDS 最贵——但你买的是一个完整 Postgres。 不是单独的向量数据库,而是应用数据 + 向量数据共存于一个实例,一个连接池、一个备份策略、一次部署。对很多团队来说,这个简便性值溢价。
pgvector on Neon 改变了游戏规则。 Neon 的 serverless Postgres 空闲时计算归零。如果你的搜索流量是突发的(工作时段高、夜间低),只为活跃时间付费。能把本需 $260/月的 RDS 成本降到 $30-50/月。Vecstore 因此将基础设施整体迁移到 Neon——延迟从 200ms 降到 80ms,架构也简化了。
50M 向量规模时,成本差距急剧扩大。 Timescale 的 pgvectorscale 基准测试显示:自托管 Postgres 在 EC2 上约 $835/月,对比 Pinecone s1 层 $3,241/月或 p2 层 $3,889/月——节省了 75-79%。
向量数据库成本对比(1M 向量生产估算)

深度特性对比
混合搜索(Hybrid Search)
混合搜索 = 向量相似度 + 关键词匹配(如 BM25),在单一查询中结合两者。
- Weaviate:最成熟的内置混合搜索,向量 + BM25 一条查询完成
- Elasticsearch:kNN 向量搜索 + 全文搜索原生结合,如果你已经在用 ES
- Qdrant:通过稀疏向量(Sparse Vectors)支持混合搜索
- Pinecone:提供 sparse-dense 混合搜索
- pgvector:通过 SQL 将向量搜索与 Postgres 全文搜索结合
可扩展性与极限
- Chroma:设计用于 <1M 向量,适合原型开发和轻量生产
- pgvector / Supabase:单节点 10-50M 向量。标准 HNSW 在 5-10M 以上性能下降明显——50M 向量 × 768 维需要约 150GB+ RAM。Timescale 的 pgvectorscale 扩展引入 StreamingDiskANN(磁盘索引),50M 向量上 p95 延迟比 Pinecone s1 层低 28 倍
- Milvus:为 十亿级数据集设计,支持 8 种索引算法(含 GPU 加速),分片和分区最成熟
- Qdrant / Weaviate:分布式模式下可达 数十亿向量
ACID 与事务
只有 pgvector 和 Supabase 支持 ACID 事务——因为底层是 PostgreSQL。如果你在向量数据和关系数据之间需要事务一致性(比如”先更新用户数据再插入向量”作为一个原子操作),这是唯一的选项。专用向量数据库(Pinecone、Qdrant、Weaviate、Milvus)都不提供完整 ACID 保证。
选型决策框架:该选哪个?
别被功能矩阵忽悠了。实际选型时,按这个顺序问自己:
1. 你已经在用 Postgres 吗?→ 先用 pgvector
如果 Postgres 已经是你的数据库,加一个 pgvector 扩展,零新增基础设施。SQL 就是超能力——“找相似图片,且上传者是认证账户,且 7 天内上传”这只是一条 SQL 查询。用独立向量数据库的话,那是:向量搜索 → 过滤 → 再 join 应用数据库。
2. 想要零运维、不在乎调优 → Pinecone
纯托管,serverless,没有运维负担。你专注应用,Pinecone 处理扩展、备份、可用性。代价是不能调优索引精度,成本随规模线性增长。
3. 需要最快的过滤搜索、想自托管、用 Rust → Qdrant
最低延迟(p50 4ms),过滤搜索性能业内第一。开源 Apache 2.0,可以自托管或上 Qdrant Cloud。
4. 数据量巨大、需要 GPU 加速 → Milvus
十亿级向量数据集的最佳选择,8 种索引算法可精细调优,社区生态最成熟(40,000+ ⭐)。
5. 需要混合搜索且体验要好 → Weaviate
内置混合搜索体验最好,GraphQL 接口简洁,托管和自托管都支持。
6. 只是原型验证、规模不大 → Chroma
最易上手的向量数据库,进程内运行零配置。但生产规模受限(<1M 向量),适合快速原型和轻量场景。
7. 用 MongoDB 的 → MongoDB Atlas Vector Search
直接在现有 MongoDB 数据上添加向量能力,Atlas 聚合管道原生支持。
真实世界的建议
Vecstore(一家专注语义搜索的创业公司)的经验值得参考:他们在生产环境中从 Pinecone + RDS 迁移到 pgvector + Neon,不是出于性能,而是出于架构简洁性。向量和应用数据在同一数据库里,一个连接池、一个备份策略,问题少了一半。
更重要的真相是:5ms 和 15ms 的向量查询延迟差异,用户根本感知不到。 真正影响搜索结果质量的,是 embedding 模型的选择和搜索相关性调优,不是数据库之间的几毫秒差距。
选一个适合你规模和团队的数据结构,把精力花在 embedding 质量、chunk 策略和相关性调优上——那才是 RAG 系统的命门。
总结
- 规模 <10M 向量 + 已有 Postgres:pgvector,零成本增量,SQL 超能力
- 零运维 + 快速上线:Pinecone,代价是不能调优精度
- 最低延迟 + 自托管:Qdrant,Rust 性能优势明显
- 十亿级规模:Milvus,最成熟的分片/GPU 加速
- 混合搜索优先:Weaviate,最流畅的向量+关键词统一查询
- 原型/轻量:Chroma,零配置上手
- 突发负载成本敏感:pgvector on Neon,serverless 按活跃时间计费
选型没有银弹,但有了这个框架,你应该能根据自身约束快速收敛到 1-2 个候选,然后做 PoC 验证。
参考资料:
- Salt Technologies AI - Vector Database Benchmark 2026(Q1 2026 基准数据)
- Vecstore - pgvector vs Pinecone vs Qdrant: 2026 Benchmarks(生产环境实测)
- Encore - Best Vector Databases in 2026
- Milvus 官方 - Milvus 突破 40,000 GitHub Stars
- Neon - Vecstore 迁移案例研究