Milvus(@milvusio)
Korean memory stocks are going crazy. SK Hynix has nearly tripled since the end of 2025.
8.5Score

TL;DR · AI 摘要
文章指出内存价格对向量搜索成本影响巨大,并介绍 Milvus 提供的六种降低内存压力的技术手段。
核心要点
- IVF_RABITQ 可将向量压缩至每维度 1 bit,在 10M 向量基准测试中节省约 31/32 内存。
- 通过 mmap 和分层存储策略,可按需加载数据并减少常驻内存占用。
- DiskANN 支持将索引路径移至 SSD,显著降低大规模数据集对 DRAM 的依赖。
结构提纲
按章节快速跳转。
大规模向量搜索面临高昂内存成本挑战,尤其在数十亿嵌入和热索引场景下。
Milvus 提供六种内存优化方式,包括压缩、映射、分层存储等策略以降低成本。
该方法实现每维 1 bit 压缩,在保证 94.7% 召回率的同时提升 QPS 并大幅节约内存。
适用于需要平衡召回精度与内存使用的场景,牺牲部分精度换取更低资源消耗。
利用内存映射 I/O 和冷热数据分离机制,有效控制实际内存使用规模。
借助 SSD 存储处理超大容量索引,缓解传统 DRAM 资源瓶颈问题。
思维导图
用一张图看清主题之间的关系。
查看大纲文本(无障碍 / 无 JS 友好)
- Vector Search Memory Optimization
- Compression Techniques
- IVF_RABITQ (1-bit)
- SQ8 / PQ (Light Quantization)
- Storage Strategies
- Memory-Mapped I/O (mmap)
- Tiered Storage
- DiskANN (SSD-based Indexing)
金句 / Highlights
值得收藏与分享的关键句。
在 Milvus 2.6 对 1000 万条 768 维向量进行基准测试时,IVF_RABITQ 达到 94.7% 的召回率,QPS 是 IVF_FLAT 的 3.6 倍,而仅使用约 1/32 的向量内存。
使用内存映射 I/O,使向量数据能够按需分页加载,而不是一次性全部载入 RAM。
保留热点数据靠近计算单元,把较冷的数据迁移到更便宜的存储设备上,从而避免为很少查询的数据支付昂贵的内存费用。
#Milvus#向量数据库#内存优化#检索性能#量化压缩
打开原文韩国内存股疯狂上涨。SK海力士自2025年底以来股价已接近翻三倍。如果你在大规模运行向量搜索,内存往往是最大的成本驱动因素之一:数十亿的嵌入向量、需要保持热状态的索引,以及围绕RAM配置的服务节点。
Milvus 提供了几种方法,可以在不牺牲大规模向量搜索能力的前提下降低内存压力:
- IVF_RABITQ
- 将其选为索引类型。将向量压缩到每个维度仅占1位。在Milvus 2.6对1000万个768维向量的基准测试中,IVF_RABITQ 达到了 94.7% 的召回率,同时 查询吞吐量(QPS)比 IVF_FLAT 高出3.6倍,而使用的向量内存仅为后者的约 1/32。
- SQ8 / PQ
- 当你需要更精细地平衡召回率与成本时,可以使用较轻量的量化方式。这些选项通过牺牲一些精度来换取更低的内存占用,但不会像1位压缩那样极端。
- mmap
- 使用内存映射 I/O,使向量数据能够按需分页加载,而不是一次性全部载入RAM。当你的数据集远大于活跃工作集时非常有用。
- 分层存储(Tiered Storage)
- 将热点数据保留在靠近计算资源的位置,将冷数据迁移到更便宜的存储介质上,避免为很少被查询的数据支付高昂的内存费用。
- DiskANN
- 将更多的索引路径移至SSD,从而减少那些无法完全放入内存的大规模数据集对DRAM的依赖。
这五种选项并不互斥,它们可以叠加使用。将它们组合配置,你的向量数据库成本就不必随着内存价格一起飙升。
→ 完整工程解析:milvus.io/blog/turboquan