揭开 Milvus 容量规划工具的神秘面纱

2024-07-24

By Christy Bergman

揭开 Milvus 容量规划工具的神秘面纱

在当今快速发展的数据领域,为您的 Milvus 部署选择合适的配置对于确保高效的性能和资源利用至关重要。面对众多选择,选择合适的配置可能会让人感到不知所措。

以下是使用 Milvus 容量规划工具时需要考虑的3个关键点。

63-1.png 63-1.png

Milvus 容量规划工具

索引选择:平衡内存、磁盘、成本、准确性和速度

Milvus 提供了多种索引算法(HNSW、FLAT、IVF_FLAT、IVF_SQ8),这些算法在内存使用、磁盘空间、成本、速度和准确性方面存在权衡。HNSW 通常是推荐的选择,因为它平衡了性能和内存。有关这些索引的更多详细信息,请参见此博客。

HNSW:

  • 结合了两个概念:跳过列表和可导航小世界(NSW)图。HNSW 创建了一个 NSW 的分层列表。HNSW 搜索从顶层开始,逐层向下寻找每层的最近邻。顶层的图中节点最少,底层的图中节点最多。

  • 查询速度非常快,召回率极佳。每个向量需要最多的内存,因此成本可能最高。

FLAT:

  • 100% 召回率(穷尽搜索)。

  • 查询速度非常慢,对于数据大小 n,时间复杂度为 O(n),索引大小与向量数据相同。

IVF_FLAT:

  • 将向量空间划分为簇,仅在 nlist 个簇中进行搜索,与 IVF_FLAT 相比提高了搜索速度。

  • 中等召回率,中等查询速度(比 HNSW 慢但比 FLAT 快)。

  • 比 HNSW 需要更多的内存,但比 FLAT 需要的内存少。

IVF_SQ8:

  • 利用标量量化技术,将磁盘、计算和内存消耗减少 70-75%。

  • 中等召回率,中高等查询速度。

  • 当资源有限时,提供了比 IVF_FLAT 更好的选择,但牺牲了较低的准确性。

除了上述最常见的浮点索引外,Milvus 还支持 ScANN(在 CPU 上比 HNSW 快 20%)、二进制、稀疏和基于磁盘的索引,请参阅 Milvus 索引文档页面。

DISKANN 是一种混合磁盘/内存索引,如果您可以接受稍长的延迟(大约 100 毫秒左右),但需要支持大量向量和高召回率,这是一个不错的选择。

AUTOINDEX 在开源 Milvus 中默认为 HNSW(或在 Zilliz 中为更高性能的专有索引)。

GPU_CAGRA 是 GPU 索引中最快的,但它需要带有 GDDR 内存的推理卡,而不是带有 HBM 的卡。其他支持的 GPU 索引包括:GPU_BRUTE_FORCE、GPU_IVF_FLAT、GPU_IVF_PQ。

段大小和部署配置

容量规划工具提供了三种段大小(512 MB、1024 MB、2048 MB)。默认段大小为 512 MB。更少、更大的段通常意味着更快的搜索,因此如果您有大量数据,通常建议使用 2GB。

将段视为数据块;它们是 Milvus 中用于负载均衡和启用索引上的分布式搜索的最小单位。我们的快速经验法则:

  • 对于 4GB-8GB 的查询节点大小,使用 512MB 段。

  • 对于查询节点小于 16GB,使用 1GB 段。

  • 对于查询节点大于 16GB,选择 2-4GB 段大小。

在 Pulsar 或 Kafka 之间,对于新项目(绿地安装),建议使用 Pulsar,因为每个主题的开销较小。

Zilliz Cloud 的企业版提供了额外的成本和速度配置。更多信息,请参见我们的云容量规划工具:

  • 内存不足(OOM)减少和压缩优化以实现峰值性能。

  • 延迟加载存储节省:

  • 使用标准计算单元(CUs)高效存储热数据。

  • 使用分层存储 CUs 以成本效益的方式存储很少访问(冷)的数据。

结论

记住,这只是一个起点!Milvus 提供了广泛的自定义选项。

Milvus 容量规划工具专注于单一索引。如果您需要为不同的集合使用不同的索引算法,请创建具有自定义配置的单独集合。这可能需要更复杂的部署设置。

参考链接

资源规划:https://docs.zilliz.com/docs/resource-planning

Zilliz 云定价计算器:https://zilliz.com/pricing#estimate_your_cost

Milvus 索引介绍:https://thesequence.substack.com/p/guest-post-choosing-the-right-vector

Milvus 索引文档:https://milvus.io/docs/index.md

Milvus GPU CAGRA 索引:https://zilliz.com/blog/Milvus-introduces-GPU-index-CAGRA

  • Christy Bergman

    Christy Bergman

    准备好开始了吗?

    立刻创建 Zilliz Cloud 集群,存储和检索您的向量。

    免费试用 Zilliz Cloud