milvus-logo
LFAI
首页
  • 管理指南

收集数量限制

Milvus 实例最多允许 65,536 个 Collection。不过,过多的 Collections 可能会导致性能问题。因此,建议限制在 Milvus 实例中创建的 Collection 数量。

本指南说明了如何设置 Milvus 实例中的 Collection 数量限制。

配置因安装 Milvus 实例的方式而异。

  • 对于使用 Helm Charts 安装的 Milvus 实例

    将配置添加到values.yaml 文件的config 部分。有关详细信息,请参阅使用 Helm Charts 配置 Milvus

  • 对于使用 Docker Compose 安装的 Milvus 实例

    将配置添加到用于启动 Milvus 实例的milvus.yaml 文件中。有关详细信息,请参阅使用 Docker Compose 配置 Milvus

  • 对于使用 Operator 安装的 Milvus 实例

    将配置添加到Milvus 自定义资源的spec.components 部分。有关详情,请参阅使用 Operator 配置 Milvus

配置选项

rootCoord:
    maxGeneralCapacity: 65536

maxGeneralCapacity 参数设置当前 Milvus 实例可容纳的最大 Collections 数量。默认值为65536

计算 Collections 的数量

在一个 Collections 中,可以设置多个分片和分区。分片是用于在多个数据节点之间分配数据写入操作的逻辑单元。分区是逻辑单元,用于通过只加载 Collections 数据的子集来提高数据检索效率。在计算当前 Milvus 实例中的 Collections 数量时,还需要计算分片和分区的数量。

例如,假设您已经创建了100 个Collection,其中60 个Collection 有2个分块和4 个分区,其余40 个Collection 有1 个分块和12 个分区。当前的 Collections 数量可以计算如下:

60 (collections) x 2 (shards) x 4 (partitions) + 40 (collections) x 1 (shard) x 12 (partitions) = 960

在上例中,您已经使用了默认限制中的960 个。现在如果想创建一个有4个分区和20 个分区的新 Collections,就会收到以下错误提示,因为 Collections 的总数超过了最大容量:

failed checking constraint: sum_collections(parition*shard) exceeding the max general capacity:

要避免此错误,可以减少现有或新集合中的分片或分区数量,删除某些集合,或者增加maxGeneralCapacity 值。

翻译自DeepLogo

想要更快、更简单、更好用的 Milvus SaaS服务 ?

Zilliz Cloud是基于Milvus的全托管向量数据库,拥有更高性能,更易扩展,以及卓越性价比

免费试用 Zilliz Cloud
反馈

此页对您是否有帮助?