Milvus的向量索引(内存索引)
版本: v2.3.x
官网: https://milvus.io/docs/index.md
一、简介
Milvus 支持的各种类型的内存索引、每种索引最适合的场景以及用户可以配置以获得更好搜索性能的参数。
索引是有效组织数据的过程,它通过显着加速大型数据集上耗时的查询,在使相似性搜索变得有用方面发挥着重要作用。
为了提高查询性能,您可以为每个向量字段指定索引类型。
注意:目前,向量字段仅支持一种索引类型。 Milvus 在切换索引类型时会自动删除旧索引。
二、ANNS向量索引
Milvus 支持的向量索引类型大部分使用近似最近邻搜索 (ANNS) 算法。与通常非常耗时的准确检索相比,ANNS 的核心思想不再局限于返回最准确的结果,而是仅搜索目标的邻居。 ANNS 通过在可接受的范围内牺牲准确性来提高检索效率。
根据实现方法,ANNS向量索引可以分为四类:
- Tree-based index 基于树的索引
- Graph-based index 基于图的索引
- Hash-based index 基于哈希的索引
- Quantization-based index 基于量化的索引
三、Milvus 支持的索引
根据适合的数据类型,Milvus 支持的索引可以分为两类:
- 浮点嵌入的索引:
- 对于 128 维浮点嵌入,它们占用的存储为 128 * float 的大小 = 512 字节。
- 用于浮点嵌入的距离度量是欧几里德