Los clústeres fragmentados dividen los datos entre varios servidores en función de un clave de partición. Un clúster particionado escala mejor que un set de réplicas para implementaciones con conjuntos de datos grandes y operaciones de alto rendimiento.
Este tutorial convierte un único set de réplicas de tres nodos en un clúster con dos particiones. Cada partición en el nuevo clúster es un set de réplicas independiente de tres nodos.
Puede convertir a un clúster en la Interfaz de Usuario para las implementaciones alojadas en MongoDB Atlas.
Acerca de esta tarea
Algunos pasos en este tutorial provocarán tiempo de inactividad en su implementación. En cada paso individual se indica cuándo ocurrirá el tiempo de inactividad.
Este tutorial es para implementaciones que tienen la autenticación activada.
En este tutorial, especifica la configuración del servidor con archivos de configuración. Los archivos de configuración contienen ajustes que son equivalentes a la
mongodymongosopciones de línea de comando.El clúster fragmentado que implementas con este tutorial contiene diez servidores:
Un servidor para el
mongos.Tres servidores cada uno para las dos particiones del clúster (seis servidores en total).
Tres servidores para el set de réplicas del servidor de configuración.
Importante
No agregues árbitros a los set de réplicas durante el proceso de conversión. Los árbitros cambian el nivel de confirmación de escritura implícito por defecto de {w: majority} a {w: 1}.
Arquitectura de servidor
Este tutorial utiliza los siguientes servidores:
Nombre del host | Puerto | Descripción |
|---|---|---|
|
| Nodo de la partición inicial portadora de datos, |
|
| Nodo de la partición inicial portadora de datos, |
|
| Nodo de la partición inicial portadora de datos, |
|
| Nodo de la segunda partición que contiene datos, |
|
| Nodo de la segunda partición que contiene datos, |
|
| Nodo de la segunda partición que contiene datos, |
|
| El |
|
| Nodo del set de réplicas del servidor de configuración. |
|
| Nodo del set de réplicas del servidor de configuración. |
|
| Nodo del set de réplicas del servidor de configuración. |
Los nombres de host utilizados en este tutorial son ejemplos. Reemplaza los nombres de host usados en los comandos de ejemplo por los nombres de host usados en las implementaciones.
Importante
Para evitar actualizaciones de configuración debido a cambios en las direcciones IP, utilice nombres de host DNS en lugar de direcciones IP. Es particularmente importante usar un nombre de host DNS en lugar de una dirección IP al configurar miembros de set de réplicas o miembros de clústeres particionados.
Utiliza nombres de host en lugar de direcciones IP para configurar clústeres en un horizonte de red dividido. A partir de MongoDB 5.0, los nodos que solo están configurados con una dirección IP no pasan la validación de inicio y no se inician.
Antes de comenzar
Para completar este tutorial, debe tener un set de réplicas que utilice autenticación por archivo de claves o un certificado X.509. Para implementar un set de réplicas seguro que utiliza uno de estos métodos de autenticación, consulte cualquiera de los siguientes:
Este tutorial usa los directorios de datos por defecto
/data/dby/data/configdb. Para utilizar diferentes rutas, configure el ajustestorage.dbPathen su archivo de configuración.MongoDB admite la transición en línea desde un set de réplicas a un clúster de 1 partición al permitir que los comandos se ejecuten directamente contra una partición. Sin embargo, una vez que el clúster tiene más de una partición, solo los comandos enumerados se pueden ejecutar directamente en el fragmento sin el rol exclusivo de mantenimiento
directShardOperations.Todos los nodos deben usar el mismo binary y tener el mismo featureCompatibilityVersion al convertir un conjunto de réplicas en un clúster.
A partir de MongoDB 8.3, los conjuntos de réplicas que anteriormente eran clusters fragmentados no se pueden volver a convertir en conjuntos de réplicas.
La conversión de un clúster fragmentado en un conjunto de réplicas preserva los metadatos de particionado de su implementación anterior, incluido un document de identidad de partición, lo que impide que vuelva a convertirse en un clúster fragmentado. Si intentas una reconversión autogestionada a un clúster particionado, MongoDB devolverá un error.
Para convertir estos sets de réplicas en clústeres fragmentados, contacta con el soporte técnico.
Si tienes el análisis de queries ejecutándose en un set de réplicas y lo conviertes en un clúster fragmentado con un servidor de configuración dedicado, se detiene el análisis de queries.
Pasos
Nota
A partir de MongoDB 8.0, solo puedes ejecutar ciertos comandos en nodos de clústeres fragmentados. Si intentas conectarte directamente a un nodo y ejecutar un comando no compatible, MongoDB devuelve un error:
"You are connecting to a sharded cluster improperly by connecting directly to a shard. Please connect to the cluster via a router (mongos)."
Para ejecutar un comando de base de datos no compatible directamente contra un nodo en un clúster fragmentado, debes conectarte a mongos o tener el rol de solo mantenimiento directShardOperations.
Implementar el set de réplicas del servidor de configuración
Implementa un set de réplicas de tres nodos para los servidores de configuración. En este ejemplo, los servidores de configuración utilizan los siguientes hosts:
mongodb7.example.netmongodb8.example.netmongodb9.example.net
Configurar los servidores de configuración
Configura una instancia de
mongoden cada host del servidor de configuración. Especifica estas opciones en el archivo de configuración para cada instanciamongod:OpciónValorconfigReplSetconfigsvrlocalhosty luego cualquier otro nombre de host en el que elmongoddeba escuchar las conexiones de los clientes.replication: replSetName: configReplSet sharding: clusterRole: configsvr net: bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación.
Inicie los servidores de configuración
Implementar el
mongodcon la configuración especificada:mongod --config <PATH_TO_CONFIG_FILE> Los servidores de configuración usan el directorio de datos por defecto
/data/configdby el puerto por defecto27019.Conectar con uno de los servidores de configuración.
Utilice
mongoshpara conectarse a uno de los servidores de configuración. Por ejemplo:mongosh "mongodb://mongodb7.example.net:27019" Inicia el set de réplicas del servidor de configuración.
Para iniciar el set de réplicas, ejecuta
rs.initiate():rs.initiate( { _id: "configReplSet", configsvr: true, members: [ { _id: 0, host: "mongodb7.example.net:27019" }, { _id: 1, host: "mongodb8.example.net:27019" }, { _id: 2, host: "mongodb9.example.net:27019" } ] } ) El comando precedente utiliza la excepción de localhost para realizar acciones administrativas sin autenticación.
Importante
Se debe ejecutar
rs.initiate()en una sola instanciamongodpara el set de réplicas.
Restaurar usuarios y roles existentes a la nueva configuración
Restaure los usuarios y roles existentes que obtuviste al ejecutar mongodump.
mongorestore ./adminDump --nsInclude "admin.*" --host <configPrimaryURI>
El comando precedente utiliza la excepción de localhost para realizar acciones administrativas sin autenticación.
La salida al ejecutar este comando puede ser similar a:
0 document(s) restored successfully
Este mensaje no indica un problema. Esta salida significa que se restauraron 0 documentos que no son usuarios ni roles.
Secure servidor de configuración set de réplicas
Vuelve a configurar y reinicia el set de réplicas del servidor de configuración.
Reconfigura los servidores de configuración
Selecciona la pestaña de tu mecanismo de autenticación:
Reinicie una instancia de
mongoden cada uno de estos hosts:mongodb7.example.netmongodb8.example.netmongodb9.example.net
Especifica estas opciones en el archivo de configuración para cada instancia de
mongod:OpciónValorLa ruta al archivo clave utilizado para su set de réplicas inicial.
security: keyFile: <PATH_TO_KEYFILE> replication: replSetName: configReplSet sharding: clusterRole: configsvr net: bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación.
Reinicie una instancia de
mongoden cada uno de estos hosts:mongodb7.example.netmongodb8.example.netmongodb9.example.net
Especifica estas opciones en el archivo de configuración para cada instancia de
mongodademás de las opciones que ya configuraste:OpciónValorx509requireTLSLa ruta absoluta al archivo
.pemque contiene tanto el certificado TLS como la clave.La ruta absoluta hacia el archivo
.pemque contiene la cadena de certificados raíz de la Autoridad Certificadora.localhosty luego cualquier otro nombre de host en el que elmongoddeba escuchar las conexiones de los clientes.ADVERTENCIA: Antes de vincular tu instancia a una dirección IP de acceso público, debes asegurar tu clúster contra accesos no autorizados. Para obtener una lista completa de recomendaciones de seguridad, se debe consultar Checklist de seguridad para implementaciones autogestionadas. Como mínimo, se debe considerar habilitar la autenticación y reforzar la infraestructura de red.
sharding: clusterRole: configsvr replication: replSetName: configReplSet security: clusterAuthMode: x509 net: tls: mode: requireTLS certificateKeyFile: <FILE_WITH_COMBINED_CERT_AND_KEY> CAFile: <CA_FILE> bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación, como
net.tls.certificateKeyFilePasswordsi el archivo de clave de certificado TLS está cifrado con una contraseña.Reiniciar MongoDB
Reinicia el
mongodcon la configuración que especificaste:mongod --config <PATH_TO_CONFIG_FILE> --shutdown mongod --config <PATH_TO_CONFIG_FILE>
Implemente el mongos
El mongos proporciona la interfaz entre las aplicaciones cliente y el clúster fragmentado.
Cree un archivo de configuración para el mongos.
Especifica estas opciones en el archivo de configuración de
mongos:OpciónValorconfigReplSetseguidos de una barra/y al menos uno de los nombres de host y puertos del servidor de configuración.La ruta al archivo clave utilizado para su set de réplicas inicial.
localhosty luego cualquier otro nombre de host en el que elmongosdeba escuchar las conexiones de los clientes.sharding: configDB: configReplSet/mongodb7.example.net:27019,mongodb8.example.net:27019,mongodb9.example.net:27019 security: keyFile: <PATH_TO_KEYFILE> net: bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación.
Especifica estas opciones en el archivo de configuración de
mongos:OpciónValorconfigReplSetseguidos de una barra/y al menos uno de los nombres de host y puertos del servidor de configuración.x509requireTLSLa ruta absoluta al archivo
.pemque contiene tanto el certificado TLS como la clave.La ruta absoluta hacia el archivo
.pemque contiene la cadena de certificados raíz de la Autoridad Certificadora.localhosty luego cualquier otro nombre de host en el que elmongosdeba escuchar las conexiones de los clientes.sharding: configDB: configReplSet/mongodb7.example.net:27019,mongodb8.example.net:27019,mongodb9.example.net:27019 security: clusterAuthMode: x509 net: tls: mode: requireTLS certificateKeyFile: <FILE_WITH_COMBINED_CERT_AND_KEY> CAFile: <CA_FILE> bindIp: localhost,<ipaddress> Incluya cualquier opción adicional apropiada para su implementación.
Implementa el mongos.
Implementar el
mongoscon la configuración especificada:mongos --config <PATH_TO_CONFIG_FILE>
Reinicia el conjunto de réplicas inicial como una partición
Advertencia
No se puede ejecutar el comando setDefaultRWConcern para cambiar la configuración global por defecto de lectura o nivel de confirmación de escritura (write concern) hasta que el set de réplicas complete su conversión a un clúster particionado.
En este ejemplo, tu set de réplicas inicial es un set de réplicas de tres nodos. Este paso actualiza el set de réplicas inicial para que pueda ser añadido como una partición a tu clúster fragmentado.
El set de réplicas se ejecuta en estos hosts:
mongodb0.example.net:27017mongodb1.example.net:27017mongodb2.example.net:27017
Para los clústeres particionados, se debe establecer el rol para cada instancia mongod en la partición a shardsvr. Para especificar el rol del servidor, establecer el ajuste sharding.clusterRole en el archivo de configuración mongod.
Nota
Conéctate a un nodo de tu set de réplicas inicial.
Utilice
mongoshpara conectarte a uno de los miembros de tu set de réplicas inicial.mongosh "mongodb://<username>@mongodb0.example.net:27017" Si tu implementación utiliza autenticación X.509, especifica estas opciones de
mongosh:Por ejemplo:
mongosh "mongodb://<username>@mongodb0.example.net:27017" --tls --tlsCAFile <CA_FILE> --tlsCertificateKeyFile <filename> Determina el primario y los secundarios del set de réplicas.
Ejecuta
rs.status()para determinar el primario y los secundarios:rs.status() En la salida del comando, el
replSetGetStatus.members[n].stateStrcampo indica cuál nodo es el principal y cuáles nodos son secundarios.Reinicia los secundarios con la opción
--shardsvr.Advertencia
Este paso requiere cierto tiempo de inactividad para las aplicaciones conectadas a los secundarios del set de réplicas.
Conéctese a un secundario.
Utiliza
mongoshpara conectarse a uno de los secundarios.mongosh "mongodb://<username>@<host>:<port>" Apaga el secundario.
Ejecute los siguientes comandos:
use admin db.shutdownServer() Edite el archivo de configuración del secundario.
En el archivo de configuración del secundario, establecer
sharding.clusterRoleashardsvr:security: keyFile: <PATH_TO_KEYFILE> replication: replSetName: rs0 sharding: clusterRole: shardsvr net: port: 27017 bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación.
Reinicie el secundario como servidor de particiones.
Ejecute el siguiente comando en el host que contiene el secundario:
mongod --config <PATH_TO_CONFIG_FILE> Repite los pasos de apagado y reinicio para el otro secundario.
Conéctese a un secundario.
Utiliza
mongoshpara conectarse a uno de los secundarios.Si tu implementación utiliza autenticación X.509, especifica estas opciones de
mongosh:mongosh "mongodb://<username>@<host>:<port>" --tls --tlsCAFile <CA_FILE> --tlsCertificateKeyFile <filename> Apaga el secundario.
Ejecute los siguientes comandos:
use admin db.shutdownServer() Edite el archivo de configuración del secundario.
En el archivo de configuración del secundario, establecer
sharding.clusterRoleashardsvr:replication: replSetName: rs0 sharding: clusterRole: shardsvr security: clusterAuthMode: x509 net: port: 27017 tls: mode: requireTLS certificateKeyFile: <FILE_WITH_COMBINED_CERT_AND_KEY> CAFile: <CA_FILE> bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación, como
net.tls.certificateKeyFilePasswordsi el archivo de clave de certificado TLS está cifrado con una contraseña.Reinicie el secundario como servidor de particiones.
Ejecute el siguiente comando en el host que contiene el secundario:
mongod --config <PATH_TO_CONFIG_FILE> Repite los pasos de apagado y reinicio para el otro secundario.
Reinicia el primario con la opción --shardsvr.
Advertencia
Este paso requiere cierto tiempo de inactividad de las aplicaciones conectadas al primario del set de réplicas.
Conéctese al primario.
Usa
mongoshpara conectarte al primario:mongosh "mongodb://<username>@<host>:<port>" Degradar al primario.
Ejecuta el siguiente comando:
rs.stepDown() Verifique que la reducción esté completa.
Ejecutar
rs.status()para confirmar que el nodo al que estás conectado ha renunciado y ahora es un secundario:rs.status() Apaga la versión principal anterior.
Ejecute los siguientes comandos:
use admin db.shutdownServer() Esperar que se complete el apagado.
Edita el archivo de configuración del nodo:primario.
En el archivo de configuración principal, establece
sharding.clusterRoleenshardsvr:security: keyFile: <PATH_TO_KEYFILE> replication: replSetName: rs0 sharding: clusterRole: shardsvr net: port: 27017 bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación.
Reinicie el primario como servidor de particiones.
Ejecuta el siguiente comando en el host que contiene el principal:
mongod --config <PATH_TO_CONFIG_FILE>
Conéctese al primario.
Utiliza
mongoshpara conectarse a uno de los secundarios.Si tu implementación utiliza autenticación X.509, especifica estas opciones de
mongosh:Si tu implementación utiliza autenticación X.509, especifica estas opciones de
mongosh:mongosh "mongodb://<username>@<host>:<port>" --tls --tlsCAFile <CA_FILE> --tlsCertificateKeyFile <filename> Degradar al primario.
Ejecuta el siguiente comando:
rs.stepDown() Verifique que la reducción esté completa.
Ejecutar
rs.status()para confirmar que el nodo al que estás conectado ha renunciado y ahora es un secundario:rs.status() Apaga la versión principal anterior.
Ejecute los siguientes comandos:
use admin db.shutdownServer() Esperar que se complete el apagado.
Edita el archivo de configuración del nodo:primario.
En el archivo de configuración principal, establece
sharding.clusterRoleenshardsvr:replication: replSetName: rs0 sharding: clusterRole: shardsvr security: clusterAuthMode: x509 net: port: 27017 tls: mode: requireTLS certificateKeyFile: <FILE_WITH_COMBINED_CERT_AND_KEY> CAFile: <CA_FILE> bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación, como
net.tls.certificateKeyFilePasswordsi el archivo de clave de certificado TLS está cifrado con una contraseña.Reinicie el primario como servidor de particiones.
Ejecuta el siguiente comando en el host que contiene el principal:
mongod --config <PATH_TO_CONFIG_FILE>
Agregar el set de réplicas inicial como una partición
Después de convertir el set de réplicas inicial (rs0) en una partición, agregarlo al clúster.
Conéctese a
mongoscomo el usuario administrativo de su clúster.La instancia
mongosse ejecuta en el hostmongodb6.example.net.Para conectar
mongoshalmongos, ejecuta el siguiente comando:mongosh "mongodb://admin01@mongodb6.example.net:27017" Este comando te autentica como el usuario
admin01que creaste en el clúster fragmentado. Después de introducir el comando, introduce la contraseña de tu usuario.Agregar la partición.
Para añadir una partición al clúster, ejecuta el método
sh.addShard():sh.addShard( "rs0/mongodb0.example.net:27017,mongodb1.example.net:27017,mongodb2.example.net:27017" )
Actualiza tu cadena de conexión de la aplicación
Después de añadir la primera partición a tu clúster, actualiza la cadena de conexión que utilizan tus aplicaciones a la cadena de conexión de tu clúster particionado. Luego, reinicie sus aplicaciones.
Advertencia
Una vez que la nueva partición esté activa, mongosh y otros clientes deben conectarse siempre a la instancia mongos. No se conecte directamente a las instancias mongod. Si tus clientes se conectan directamente a particiones, puedes crear inconsistencias en los datos o metadatos.
A partir de MongoDB,8.3 solo se pueden ejecutar operaciones DDL y en applyOps un mongos para todos los clústeres fragmentados. Estas operaciones pueden no estar disponibles temporalmente durante la transición de un conjunto de réplicas a un clúster fragmentado.
Implementar un segundo conjunto de réplicas
Implementa un nuevo set de réplicas llamado rs1. Los nodos del set de réplicas rs1 se encuentran en los siguientes hosts:
mongodb3.example.netmongodb4.example.netmongodb5.example.net
Inicia cada nodo del set de réplicas.
Para cada instancia de
mongoden el set de réplicas, crea un archivo de configuración con las siguientes opciones:OpciónValorLa ruta al archivo clave utilizado para su set de réplicas inicial.
rs1shardsvrlocalhosty luego cualquier otro nombre de host en el que elmongoddeba escuchar las conexiones de los clientes.security: keyFile: <PATH_TO_KEYFILE> replication: replSetName: rs1 sharding: clusterRole: shardsvr net: bindIp: localhost,<ipaddress> Incluya opciones adicionales según corresponda para su implementación.
Para cada nodo, inicia un
mongodcon las siguientes opciones:OpciónValorrs1shardsvrx509requireTLSLa ruta absoluta al archivo
.pemque contiene tanto el certificado TLS como la clave.La ruta absoluta hacia el archivo
.pemque contiene la cadena de certificados raíz de la Autoridad Certificadora.localhosty luego cualquier otro nombre de host en el que elmongoddeba escuchar las conexiones de los clientes.replication: replSetName: rs1 sharding: clusterRole: shardsvr security: clusterAuthMode: x509 net: tls: mode: requireTLS certificateKeyFile: <FILE_WITH_COMBINED_CERT_AND_KEY> CAFile: <CA_FILE> bindIp: localhost,<ipaddress> Implementar el
mongodcon la configuración especificada:mongod --config <PATH_TO_CONFIG_FILE> Nota
Cuando especificas la opción
--shardsvrpara una instancia demongod, la instancia se ejecuta en el puerto27018por defecto.Inicia cada nodo del set de réplicas.
Conectar a un miembro del set de réplicas.
Utilice
mongoshpara conectar con uno de los miembros del set de réplicas. Por ejemplo:mongosh "mongodb://mongodb3.example.net:27018" mongosh "mongodb://mongodb3.example.net:27018" --tls --tlsCAFile <CA_FILE> --tlsCertificateKeyFile <filename> Inicia el set de réplicas.
En
mongosh, ejecute el métodors.initiate()para iniciar un set de réplicas que contenga el nodo actual:rs.initiate( { _id : "rs1", members: [ { _id: 0, host: "mongodb3.example.net:27018" }, { _id: 1, host: "mongodb4.example.net:27018" }, { _id: 2, host: "mongodb5.example.net:27018" } ] } ) El comando precedente requiere la excepción de localhost para realizar acciones administrativas sin autenticación.
Importante
Se debe ejecutar
rs.initiate()en una sola instanciamongodpara el set de réplicas.Agregar un usuario administrativo para el set de réplicas.
Después de implementar el set de réplicas, se debe utilizar la excepción de localhost para crear el primer usuario del set de réplicas.
Determinar el primario del set de réplicas.
Para determinar el principal, ejecute
rs.status():rs.status() En la salida del comando, el campo
replSetGetStatus.members[n].stateStrindica qué nodo es el principal.Conéctate al primario del conjunto de réplicas.
Conéctate al primario del set de réplicas con
mongosh. Por ejemplo, si el primario esmongodb4.example.net, ejecuta este comando:mongosh "mongodb://mongodb4.example.net:27018" Crea un usuario administrativo.
Ejecuta el siguiente método
db.createUser()para crear un usuario llamadors1Admincon el rol deuserAdmin:use admin db.createUser( { user: "rs1Admin", pwd: passwordPrompt(), roles: [ { role: "userAdmin", db: "admin" } ] } ) Después de ejecutar el comando, la base de datos te pedirá que ingreses una contraseña para el usuario
rs1Admin.
Agrega el segundo set de réplicas al clúster como una partición
Añade el nuevo set de réplicas, rs1, al clúster.
Conectar
mongoshalmongos.Ejecute el siguiente comando desde la línea de comandos para conectarse a la instancia
mongosque se ejecuta en el hostmongodb6.example.net:mongosh "mongodb://admin01@mongodb6.example.net:27017/admin" mongosh "mongodb://admin01@mongodb6.example.net:27017/admin" --tls --tlsCAFile <CA_FILE> --tlsCertificateKeyFile <filename> Este comando te autentica como el usuario
admin01que creaste en el clúster fragmentado. Después de introducir el comando, introduce la contraseña de tu usuario.Agrega la segunda partición.
Después de conectarse a
mongos, agregar el set de réplicasrs1como partición al clúster con el métodosh.addShard():sh.addShard( "rs1/mongodb3.example.net:27018,mongodb4.example.net:27018,mongodb5.example.net:27018" )
Fragmenta una colección
El paso final del procedimiento es la partición de una colección en el clúster particionado.
Determina la clave de partición.
Determina la clave de partición para la colección. La clave de partición indica cómo MongoDB distribuye los documentos entre las particiones. Buenas claves de fragmento:
Tener valores que estén distribuidos de manera uniforme entre todos los documentos.
Agrupa los documentos que se acceden con frecuencia al mismo tiempo en fragmentos contiguos.
Permitir la distribución efectiva de la actividad entre particiones.
Para obtener más información, consulta Elige una clave de partición.
Este procedimiento usa el campo
numbercomo la clave de partición para la coleccióntest_collection.Crear un índice sobre la clave de partición.
Antes de fragmentar una colección no vacía, crea un índice en la clave de partición:
use test db.test_collection.createIndex( { "number" : 1 } ) Divida la colección en partición.
En la base de datos
test, particionar eltest_collection. Especificanumbercomo la clave de partición.sh.shardCollection( "test.test_collection", { "number" : 1 } ) La próxima vez que se ejecute el balanceador, redistribuirá los fragmentos de documentos entre las particiones. A medida que los clientes insertan documentos en esta colección, el
mongosenruta los documentos a la partición adecuada.Cuando el balanceador redistribuye fragmentos, puede tener un impacto negativo en el rendimiento de la aplicación. Para minimizar el impacto en el rendimiento, se puede especificar cuándo ejecutar el balanceador para que no se ejecute durante las horas pico. Para aprender más, consultar Programar el período del balanceo.
Obtén más información
Para más tutoriales y procedimientos sobre particionado, consultar estas páginas: