Если доступно несколько шардов, MongoDB начнет миграцию данных в другие шарды, когда у вас будет достаточное количество чанков.Эта миграция называется балансировкой и выполняется процессом, называемым балансировщиком. Балансировщик перемещает фрагменты из одного осколка в другой.
Для выполнения цикла балансировки в осколке должно быть как минимум на девять фрагментов больше, чем наименьшего-популярный осколокВ этот момент чанки будут перенесены из переполненного осколка, пока он не станет равным остальным осколкам.
Когда вы добавляете новый узел в кластер, MongoDB перераспределяет эти чанки среди узлов новой конфигурации.Это небольшой отрывок, чтобы получить полное представление о том, как он восстанавливает баланс при добавлении нового узла, прочитайте главу 2 «Понимание шардинга» книги Кристины Чодров «Scaling MongoDB»