向海量向量数据库查询靠速度与精准的平衡。理解向量索引的本质,是优化性能的关键。
• HNSW(Hierarchical Navigable Small World)
- 默认且最通用,构建多层次索引结构
- 高层快速定位,大层精确检索,类似多维跳跃表
- 适用范围广,支持动态增量更新,极具扩展性
- 需警惕:大规模时内存占用激增,重写入场景下索引维护成本高
• Flat Index(平面索引)
- 最简单,全部向量线性扫描
- 适合小规模数据,节省内存
- 缺点:查询时间随数据线性增长,不适合大规模实时检索
- 适用场景:批量离线任务,100%召回率优先,查询延迟可接受
• Dynamic Index(动态索引)
- 混合策略,初期用Flat索引,超过阈值(默认1万条)自动切换为HNSW
- 优化自动化,兼顾小规模灵活性和大规模效率
- 注意隐藏切换带来的重建开销,影响写入性能
选择向量索引不仅看数据规模,更要结合读取/写入比例、在线/离线业务形态。盲目追求速度,忽视系统资源与维护,反而得不偿失。
建议新项目初期优先选用HNSW,因其适应性强、性能均衡,后续可根据业务特性调整优化。
详情解读🔗 weaviate.io/blog/vector-search-explained
向量索引 数据库性能 大数据检索 机器学习 AI系统优化