向量数据库篇: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 系统里,两者经常一起出现。

参考链接