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

addShard (comando de base de datos)

addShard

Agrega un set de réplicas de partición a un clúster particionado.

Tip

En mongosh, este comando también se puede ejecutar a través del método asistente sh.addShard().

Los métodos asistente son convenientes para usuarios de mongosh, pero es posible que no proporcionen el mismo nivel de información que los comandos de base de datos. En los casos en que no se necesite la conveniencia o se requieran campos de retorno adicionales, utiliza el comando de base de datos.

Este comando está disponible en implementaciones alojadas en los siguientes entornos:

  • 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.

Nota

Este comando no es compatible con MongoDB Atlas. Consulte Modificar su clúster de Atlas para agregar o remover particiones de su clúster de Atlas.

El comando tiene la siguiente sintaxis:

db.adminCommand(
{
addShard: "<replica_set>/<hostname><:port>",
maxSize: <size>,
name: "<shard_name>"
}
)

El comando contiene los siguientes campos:

Campo
Tipo
Descripción

addShard

string

El nombre del set de réplicas, el nombre de host y el puerto de al menos un nodo del set de réplicas de la partición. Cualquier nombre de host adicional de miembro del set de réplicas debe estar separado por comas. Por ejemplo:

<replica_set>/<hostname><:port>,<hostname><:port>, ...

maxSize

entero

opcional. El tamaño máximo en megabytes de la partición. Si configuras maxSize en 0, MongoDB no limita el tamaño de la partición.

name

string

opcional. Un nombre para la partición. Si esto no se especifica, MongoDB proporciona automáticamente un nombre único.

El comando addShard almacena la información de la configuración de particiones en la base de datos de configuración. Siempre ejecute addShard cuando use la base de datos admin.

Especifique un maxSize cuando tenga máquinas con diferentes capacidades de disco o si desea limitar la cantidad de datos en algunas particiones. La restricción maxSize impide que el balanceador migre fragmentos a la partición cuando el totalSize que se obtiene de ejecutar listDatabases en la partición supera el valor de maxSize.

La partición que agregues al clúster debe estar vacía.

Al añadir una partición a un clúster, se afecta el equilibrio de los fragmentos entre las particiones de un clúster para todas las colecciones particionadas existentes. El equilibrador comenzará a migrar fragmentos para lograr el equilibrio en el clúster. Consulta Balancer Internals para más información.

Las migraciones de fragmentos pueden afectar el espacio en disco, ya que la partición fuente archiva automáticamente los documentos migrados por defecto. Para más detalles, consulte el directoriomoveChunk.

Importante

No se puede incluir un miembro oculto en la lista de nodos iniciales proporcionada en addShard.

Debes tener el addShard acción en un recurso de clúster para ejecutar el comando addShard. Los clusterAdmin o los clusterManager roles de funcionalidad incorporada contienen la acción addShard y otorgan privilegios para ejecutar el comando addShard.

El siguiente comando añade un set de réplicas como partición:

use admin
db.runCommand( { addShard: "repl0/mongodb3.example.net:27327"} )

Advertencia

No utilices localhost como nombre de host a menos que tu servidor de configuración también esté ejecutándose en localhost.

Volver

abortReshardCollection

En esta página