向量数据库选型之争:Milvus、Pgvector与Elasticsearch在千万级数据下的性能压测

发布时间:2026/8/25 0:51:49
向量数据库选型之争:Milvus、Pgvector与Elasticsearch在千万级数据下的性能压测 2026年的今天,任何认真构建AI产品的团队都绕不开一个核心痛点:向量检索。从RAG(检索增强生成)到多模态搜索,从推荐系统到药物分子相似性比对,非结构化数据被Embedding模型“投射”到高维空间后,如何以毫秒级延迟从千万甚至亿级向量中找回最相似的Top-K结果,已成为决定产品体验的命门。过去一年,我所在的AI基础设施团队为某知识库产品(承载超过1200万份文档片段)进行了为期3个月的向量数据库深度选型。候选者锁定为当下最热门的三位:Milvus(Zilliz旗下,专为向量而生的云原生分布式数据库)Pgvector(PostgreSQL生态最受欢迎的向量扩展,稳扎稳打的“老实人”)Elasticsearch(借助8.x后引入的向量插件,试图在搜索霸主地位上再添利刃)本文不堆砌PPT理论,而是基于真实压测环境(AWS EC2集群,千万级768维真实业务Embedding),从写入吞吐、索引构建、QPS召回率、P99延迟、内存占用、过滤查询六大维度展开厮杀。全文超5000字,附全部可复现的Python压测代码与调参心得。无论你是架构师、SRE还是算法工程师,这篇“血泪报告”都值得你收藏。目录一、参评者画像与版本基线(2026年Q2)二、压测环境与工具链(完全可复现)2.1 硬件配置(AWS c6i.4xlarge)2.2 压测工具与数据准备2.3 召回率“黄金标准”三、写入性能:索引构建的“第一公里”3.1 Milvus:分段式写入,吞吐惊艳3.2 Pgvector:稳如老狗,但速度垫底3.3 Elasticsearch:批量写入亮眼3.4 写入小结四、查询性能:纯向量检索(无过滤)4.1 Milvus:加速比惊人,但延迟抖动明显4.2 Pgvector:稳定压倒一切,但QPS天花板低4.3 Elasticsearch:脚本评分拖累,但可优化4.4 纯向量查询总评五、带标量过滤的混合查询:真实世界的“照妖镜”5.1 Milvus:标量过滤机制成熟5.2 Pgvector:混合查询的“噩梦”5.3 Elasticsearch:混合查询的“主场优势”5.4 混合查询小结六、资源效率与运维复杂度6.1 内存与存储占用(全量索引后)6.2 运维复杂度(主观评分,5分最差)七、实战代码:构建统一的压测框架八、调参心得与避坑指南8.1 Milvus:nprobe与索引类型的天平8.2 Pgvector:HNSW vs IVFFlat的取舍8.3 Elasticsearch:num_candidates与分片数九、综合评分与选型决策矩阵十、未来展望与2026年技术前沿一、参评者画像与版本基线(2026年Q2)压测开始前,先明确三位选手的“出身”与本次使用的版本:数据库版本架构模式索引类型(本次测试)部署方式Milvus2.5.3 (Standalone)存算分离,基于Knowhere引擎IVF_FLAT + HNSW (混合)单机Docker Compose (内存映射)Pgvector0.8.1 (PG 16.3)插件式,紧耦合PostgreSQLHNSW (ivfflat备选)单机RDS式部署Elasticsearch