【问题标题】:MongoDB sharded cluster, behavior when balancer is off?MongoDB分片集群,平衡器关闭时的行为?
【发布时间】:2020-08-09 23:23:19
【问题描述】:

目前使用 4.2.8 社区版。拥有一个包含 20 多个分片节点的分片集群。

如果我关闭平衡器,插入的文档是否仍会分发到正确的分片节点——假设已经使用了一个好的分片键?我相信我选择了一个好的散列密钥,并且数据似乎已经很好地分发了,但是,我在高峰流量期间遇到了插入速度的一些减慢。

我希望只允许平衡器在一天中的预定时间运行,以最大限度地提高集群的性能,但我不知道这是否意味着所有插入都只会进入主分片并最大限度地利用磁盘。有人可以澄清一下吗?

【问题讨论】:

标签: database mongodb distributed sharding bson


【解决方案1】:

是的,您的数据将被插入到适当的分片中。

但是,如果正确选择了分片键,那么平衡器将在大部分时间处于空闲状态。因此,除非您必须进行一些维护或升级,否则我认为没有任何理由禁用平衡器。

当您发现在高峰流量期间插入速度变慢时,请检查平衡器状态,然后查看平衡器是否可能是罪魁祸首。

有一个内置函数(感谢@D.SM),见Schedule the Balancing Window

在某些情况下,尤其是当您的数据集增长缓慢且 迁移会影响性能,因此确保 平衡器仅在特定时间处于活动状态。以下程序 指定活动窗口,它是时间范围,在此期间 平衡器将能够迁移块

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-29
    • 2014-11-28
    • 2017-08-11
    • 1970-01-01
    相关资源
    最近更新 更多