向量数据库与选型
向量库特殊在「近似最近邻 + 元数据过滤 + 持续写入」三件事要一起做好。Milvus / Qdrant / pgvector / Chroma / Elasticsearch 的差别不在能不能跑起来,而在这条路能走多远:数据量级、过滤复杂度、运维能力与已有技术栈决定选型。
也叫:向量数据库 · 向量库 · Milvus · Qdrant · pgvector · Chroma · 元数据过滤
核心概念:向量库到底特殊在哪出自 T2-4
普通数据库擅长精确匹配(WHERE id = 123)。向量检索要回答的是「跟这个向量最像的 10 个是谁」——在百万、亿级高维向量里做这件事,暴力算一遍全部距离在延迟上完全不可接受。
向量数据库 = 专为高维向量设计的存储与检索系统,核心能力是近似最近邻检索(ANN, Approximate Nearest Neighbor),配套元数据过滤、增删改和分布式扩展。
关键词是 Approximate(近似):用一点点召回率,换几个数量级的速度。 理解这个 trade-off 就理解了向量库的本质。
普通数据库擅长对上主键就返回;向量检索要回答的是「跟这个向量最像的 10 个是谁」
WHERE id = 123报得出主键就精确命中
换成「跟这个最像的 10 个是谁」,它答不了
向量数据库
专为高维向量设计的存储与检索系统
核心能力是近似最近邻检索,外加元数据过滤、增删改、分布式扩展
元数据过滤增删改分布式扩展
挨个量一遍距离
对应百万、亿级高维向量逐条比
结果最准,但延迟上完全不可接受
ANN · 近似最近邻
Approximate Nearest Neighbor
用一点点召回率,换几个数量级的速度
Approximate召回率让一点速度快几个数量级
题眼是 Approximate(近似):这笔交易是主动做的,不是模型不行。所以「召回不是 100%」在向量库里是设计选择而非 bug —— 理解这个 trade-off,后面 HNSW 的每个参数才有意义。
以上节选自T2-4 向量数据库与 HNSW:原理与选型,读全文能看到前后语境。