ANNOUNCEMENT: Voyage AI joins MongoDB to power more accurate and trustworthy AI applications on Atlas.
Learn more
Menu Docs

Atualizar uma zona de fragmento existente

Depois de especificar um intervalo de valores para uma zona de fragmentos, você pode atualizar o intervalo de zonas de fragmentos se os requisitos do seu aplicativo mudarem.

Para atualizar uma zona de shard existente, execute estas etapas:

  1. Pare o balanceador.

  2. Remova o intervalo antigo da zona.

  3. Atualize o intervalo da zona.

  4. Reinicie o balanceador.

  • As faixas de zona incluem o limite inferior e excluem o limite superior.

  • Depois de modificar uma zona, o balanceador deve migrar os chunks para as zonas apropriadas com base na nova faixa de valores. Até a conclusão do balanceamento, alguns chunks podem residir no shard errado, dadas as zonas configuradas para o cluster fragmentado.

Para concluir este tutorial, você deve implantar um cluster fragmentado com uma coleção fragmentada e criar uma zona para modificar.

Este exemplo utiliza uma coleção fragmentada denominada users no banco de banco de dados do records , fragmentado pelo campo zipcode .

1
sh.addShardToZone(<shard name>, "NYC")
2
sh.updateZoneKeyRange("records.users", { zipcode: "10001" }, { zipcode: "10281" }, "NYC" )

O procedimento a seguir modifica o intervalo de valores zipcode para a zona NYC para ser 11201 a 11240.

1
sh.stopBalancer()
2
sh.removeRangeFromZone("records.user", { zipcode: "10001" }, { zipcode: "10281" } )
3
sh.updateZoneKeyRange("records.users", { zipcode: "11201" }, { zipcode: "11240" }, "NYC" )
4
sh.startBalancer()