最近在做RAG相关的项目,数据量不大,大概几十万条文本embedding。本来想直接用pgvector,因为业务数据本来就在PostgreSQL里,感觉能省一套运维。但看了一圈技术社区的帖子,又说专门的向量数据库(比如Milvus、Qdrant)性能强很多,还支持混合检索、标量过滤什么的。我现在两个都试了试,单机小数据量下pgvector响应其实还行,可又担心后面数据涨上去或者并发高了会崩。想问问有实际部署经验的前辈,这种规模下用pgvector真的够用吗?还是说直接在架构上引入独立向量库更稳妥?另外如果是用pgvector的话,索引选IVFFlat还是HNSW?有说法是数据量小用IVFFlat就够,但看官方文档又推荐HNSW,有点不知道信哪个了。
楼主
3天前
向量数据库和pgvector到底怎么选?感觉被各种文章绕晕了
请 登录 后发表回复
全部回复
共 3 条
2楼
3天前
几十万量级pgvector完全够用,HNSW别犹豫,真涨到千万再迁移也不迟。
3楼
2天前
说实话你这规模pgvector真够用了,我们线上300万条向量跑得挺稳,HNSW配好参数后召回和延迟都没问题。主要看你的查询模式,如果业务数据本来就在PG里,省掉同步那层麻烦比那点性能差划算多了。索引建议直接上HNSW,IVFFlat训练集不够时召回率会忽高忽低,调试起来很烦。等真到了千万级再考虑迁独立向量库也不迟,到时候按ID分表也能撑一阵。
4楼
2天前
几十万条pgvector完全够用,别被忽悠上专门库,HNSW无脑选就行。