Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

sh.addShardToZone() (método mongosh)

sh.addShardToZone(shard, zone)

Asocia una partición con un zona. MongoDB asocia esta partición con la zona especificada. Los fragmentos cubiertos por la zona se asignan a particiones asociados con la zona.

Importante

Método mongosh

Esta página documenta a Método mongosh. Esta no es la documentación de comandos de base de datos ni de controladores específicos del lenguaje, como Node.js.

Para el comando de base de datos, consulta el comando addShardToZone.

Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.

Este método tiene el siguiente parámetro:

Parameter
Tipo
Descripción

string

El nombre de la partición al que asociar la zona.

string

Nombre de la zona a asociar con la partición.

Solo emite sh.addShardToZone() cuando estés conectado a una instancia mongos.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Importante

Este comando no es compatible con los clústeres M0 y Flex. Para obtener más información, consulta Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

Puedes asociar una zona con múltiples particiones y una partición puede estar asociada con múltiples zonas.

Consulte la página del manual de zonas para obtener más información sobre las zonas en clústeres particionados.

MongoDB ignora de manera efectiva las zonas que no tienen al menos un rango de valores de la clave de partición asociado con ellas.

Para asociar un rango de valores de la clave de partición con una zona, utilice el método sh.updateZoneKeyRange().

Puede ejecutar el updateZoneKeyRange comando de base de datos y sus asistentes sh.updateZoneKeyRange() y sh.addTagRange() en una colección no particionada o en una colección que no existe.

Tip

Al definir las zonas y los rangos de zonas antes de fragmentar una colección vacía o inexistente, la operación de "shard colletion" crea fragmentos para la zona definida rangos así como cualquier fragmento adicional para cubrir todo el rango de los valores de la clave de partición y realiza una distribución inicial de fragmentos basada en los rangos de zonas. Esta creación y distribución inicial de fragmentos permite una configuración más rápida del particionado zonificado. Después de la distribución inicial, el balanceador gestiona la distribución de fragmentos en adelante.

Consulta Predefinir zonas y rangos de zonas para una colección vacía o inexistente para ver un ejemplo.

Para los clústeres particionados que aplican control de acceso, debe autenticarse como un usuario cuyos privilegios incluyan cualquiera de los siguientes:

Los clusterAdmin o los clusterManager roles de funcionalidades incorporadas tienen los permisos necesarios para emitir sh.addShardToZone(). Consulta la página del manual de Control de Acceso Basado en Roles (RBAC) para obtener más información.

El siguiente ejemplo agrega tres zonas, NYC, LAX y NRT, asociando cada una a una partición:

sh.addShardToZone("shard0000", "JFK")
sh.addShardToZone("shard0001", "LAX")
sh.addShardToZone("shard0002", "NRT")

Una partición puede asociarse a varias zonas. El siguiente ejemplo asocia LGA a shard0000:

sh.addShardToZone("shard0000", "LGA")

shard0000 se asocia con la zona LGA y la zona JFK. En un clúster equilibrado, MongoDB enruta las lecturas y escrituras cubiertas por cualquier zona a shard0000.

Volver

sh.addShardTag

En esta página