发行版本
概述
Milvus 提供两个发行版本:CPU 版本和 GPU 版本。
- CPU 版 Milvus 仅支持 CPU 运算。
- GPU 版 Milvus 在 CPU 版的基础上对部分功能进行了 GPU 加速。
如果你的计算机上安装了支持 CUDA 功能的 GPU 设备,建议你安装 Milvus 的 GPU 版本以获取针对海量数据的更优的查询性能。
版本比较
Milvus 中的向量搜索包含但不限于这两个独立的部分:创建索引过程和搜索计算过程。
- GPU 版 Milvus 支持同时进行索引创建和搜索计算以提高查询效率,特别适合动态增加的数据。
- CPU 版 Milvus 仅支持搜索计算在创建索引结束后进行,更适合静态数据。
CPU 版本 Milvus 支持的索引类型
索引类型 | CPU 建索引 | CPU 搜索 | 浮点型向量 | 二值型向量 |
---|---|---|---|---|
FLAT | N/A | ✔️ | ✔️ | ✔️ |
IVF_FLAT | ✔️ | ✔️ | ✔️ | ✔️ |
IVF_SQ8 | ✔️ | ✔️ | ✔️ | ❌ |
IVF_PQ | ✔️ | ✔️ | ✔️ | ❌ |
RNSG | ✔️ | ✔️ | ✔️ | ❌ |
HNSW | ✔️ | ✔️ | ✔️ | ❌ |
ANNOY | ✔️ | ✔️ | ✔️ | ❌ |
GPU 版本 Milvus 支持的索引类型
索引类型 | CPU 建索引 | CPU 搜索 | GPU 建索引 | GPU 搜索 | 浮点型向量 | 二值型向量 |
---|---|---|---|---|---|---|
FLAT | N/A | ✔️ | N/A | ✔️ (仅支持浮点型向量) | ✔️ | ✔️ |
IVF_FLAT | ✔️ | ✔️ | ✔️ (仅支持浮点型向量) | ✔️ (仅支持浮点型向量) | ✔️ | ✔️ |
IVF_SQ8 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
IVF_SQ8H | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
IVF_PQ | ✔️ | ✔️ | ✔️ (仅对欧氏距离支持 GPU 索引) | ✔️ (仅对欧氏距离支持 GPU 搜索) | ✔️ | ❌ |
RNSG | ✔️ | ✔️ | ❌ | ❌ | ✔️ | ❌ |
HNSW | ✔️ | ✔️ | ❌ | ❌ | ✔️ | ❌ |
ANNOY | ✔️ | ✔️ | ❌ | ❌ | ✔️ | ❌ |
- FLAT 类型不需要建索引。
- 对于那些 CPU 和 GPU 同时支持的索引,Milvus 支持在创建和搜索时使用不同的设备。比如,你可以在 GPU 上创建索引后再在 CPU 上查询,也可以在 CPU 上创建索引后再在 GPU 上查询。
- 对于不同索引类型,创建索引的参数和搜索参数也有所不同。详细信息请参考 Milvus 基本操作。