2026年,向量数据库的「索引算法」已经不是性能瓶颈了。HNSW、IVF、PQ、DiskANN——这些索引算法在2026年已经非常成熟,ANN-benchmark上的QPS和Recall数字已经卷到了天花板。

真正的性能瓶颈,已经转移到了「磁盘IO」。当你的向量数据库存储了10亿条向量(每条向量1536维,float32),总数据量约6TB。这些数据不可能全部放在内存中,必须存储在磁盘上。而磁盘IO的速度,是向量数据库性能的「天花板」。

为什么磁盘IO是瓶颈

向量数据库的查询过程,可以简化为两个阶段:

阶段一:索引查找。 使用HNSW或IVF索引,快速定位到「候选向量」(通常在100-1000个)。这个阶段的速度很快(毫秒级),因为索引结构通常可以放在内存中。

阶段二:向量加载和距离计算。 从磁盘加载「候选向量」到内存,计算和查询向量的距离(如余弦相似度或欧几里得距离),排序,返回Top-K结果。这个阶段的速度,取决于磁盘IO的速度。

问题在于: 当你的向量数据库有10亿条向量时,「候选向量」的indexing虽然很快,但「候选向量」本身分布在磁盘的各个位置。从磁盘加载这些「随机位置」的向量,IOPS(每秒IO操作数)可能成为瓶颈。

磁盘IO是向量数据库的「阿喀琉斯之踵」。 索引算法再好,磁盘IO跟不上,整体性能就是「木桶最短的那块板」。

2026年的解决方案

2026年,向量数据库社区在探索几种解决磁盘IO瓶颈的方案。

方案一:NVMe SSD + 向量化存储。 使用NVMe SSD(比SATA SSD快10倍)来存储向量数据。将向量数据「顺序化」存储——将经常一起被检索的向量存储在相邻的磁盘位置,减少「随机IO」。Milvus 2.4和Qdrant 1.9在2026年都支持了NVMe优化。

方案二:内存分层(Hot/Cold分离)。 将「热向量」(经常被查询的向量)存储在内存中,将「冷向量」(很少被查询的向量)存储在磁盘上。Pinecone Serverless和Zilliz Cloud在2026年都支持了「自动分层」——根据查询频率自动将向量从磁盘移到内存,或从内存移到磁盘。

方案三:向量压缩(量化)。 使用乘积量化(Product Quantization, PQ)或标量量化(Scalar Quantization, SQ)将向量从float32压缩到int8甚至int4。压缩后的向量占用更少的磁盘空间,加载速度更快。但压缩会损失精度,需要在「性能」和「精度」之间平衡。

方案四:DiskANN。 Microsoft的DiskANN是一个专门为「磁盘IO」优化的向量索引算法。它将向量数据组织成「图结构」,在磁盘上「顺序」存储,使得磁盘IO是「顺序」的而不是「随机」的。DiskANN在2026年已经成为「磁盘级」向量索引的事实标准。

向量数据库的性能优化,已经从「算法优化」进入了「系统优化」的阶段。