向量数据库篇:Embedding 检索系统如何选型
向量数据库负责存储 embedding 并做相似度检索,是 RAG、语义搜索和推荐召回中的重要基础设施。
向量数据库篇:Embedding 检索系统如何选型
向量数据库不是替代 MySQL、PostgreSQL 或 OLAP 的数据库,而是专门解决“语义相似”检索问题。它把文本、图片或代码表示成高维向量,再根据距离找到最接近的内容。
Rendering diagram...
常见索引思路
HNSW 适合低延迟近似最近邻检索,工程上非常常见。IVF 会先把向量聚类,再在部分簇里搜索。PQ 会压缩向量,牺牲一点精度换取更低存储。
精确检索:更准,但成本高
近似检索:更快,但可能漏掉少量结果
常见产品
Milvus 适合大规模向量检索和独立向量基础设施。Qdrant 易用、过滤能力强,适合中小团队快速搭建。Weaviate 提供对象化建模和丰富生态。pgvector 则适合已经使用 PostgreSQL、数据规模不特别夸张的系统。
选型关注点
选型时不要只看 QPS。还要看数据规模、过滤条件、更新频率、召回率、运维复杂度、备份恢复、和现有数据库的集成方式。
type VectorSearchQuery = {
vector: number[];
topK: number;
filter?: {
projectId?: string;
docType?: string;
};
};
小结
向量数据库解决的是语义召回,传统数据库解决的是事务、约束和精确查询。RAG 系统里,两者经常一起出现。