A partici贸n contiene un subconjunto de datos particionados para un cl煤ster. Juntos, las particiones del cl煤ster mantienen todo el conjunto de datos para el cl煤ster.
Las particiones deben implementarse como un set de r茅plicas para proporcionar redundancia y alta disponibilidad.
Importante
Los cl煤steres sharded utilizan el nivel de confirmaci贸n de escritura (write concern). "majority" para muchas de las operaciones internas. El uso de un 谩rbitro en un cl煤ster no se recomienda debido a los problemas de rendimiento con los sets de r茅plicas PSA.
Los usuarios, clientes o aplicaciones solo deben conectarse directamente a una partici贸n para realizar operaciones administrativas y de mantenimiento locales.
Realizar consultas en una sola partici贸n solo devuelve un subconjunto de datos. Conecte con el mongos para realizar operaciones a nivel de cl煤ster, incluidas las operaciones de lectura o guardar.
Importante
MongoDB no garantiza que dos fragmentos contiguos residan en una sola partici贸n.
partici贸n primaria
Cada base de datos en un cl煤ster particionado tiene una partici贸n primaria que contiene todas las colecciones no particionadas de esa base de datos. Cada base de datos tiene su propia partici贸n primaria. La partici贸n primaria no tiene ninguna relaci贸n con la primaria en un set de r茅plicas.
El mongos selecciona la partici贸n primaria al crear una nueva base de datos eligiendo la partici贸n en el cl煤ster que tiene la menor cantidad de datos. mongos utiliza el campo totalSize devuelto por el comando listDatabases como parte del criterio de selecci贸n.
Para cambiar la partici贸n primaria de una base de datos, utiliza el comando movePrimary. El proceso de migraci贸n de la partici贸n primaria puede requerir un tiempo considerable para completarse, y no debe acceder a las colecciones asociadas con la base de datos hasta que se complete. Dependiendo de la cantidad de datos que se migren, la migraci贸n puede afectar las operaciones generales del cl煤ster. Considera el impacto en las operaciones del cl煤ster y la carga de la red antes de intentar cambiar la partici贸n primaria.
Cuando despliegas un nuevo cluster shardeado con particiones previamente utilizadas como sets de r茅plicas, todas las bases de datos existentes contin煤an alojadas en sus sets de r茅plicas originales. Las bases de datos creadas posteriormente pueden residir en cualquier partici贸n del cl煤ster.
Estado de partici贸n
Utiliza el sh.status() m茅todo en mongosh para ver una visi贸n general del cl煤ster. Este informe incluye qu茅 partici贸n es el primario para la base de datos y la distribuci贸n de fragmentos entre las particiones. Consulta el m茅todo sh.status() para obtener m谩s detalles.
Seguridad en el cl煤ster particionado
Utiliza Autenticaci贸n interna/membres铆a autogestionada para aplicar la seguridad entre cl煤steres y evitar que componentes de cl煤ster no autorizados accedan al cl煤ster. Debes iniciar cada mongod en el cl煤ster con la configuraci贸n de seguridad adecuada para aplicar la autenticaci贸n interna.
A partir de MongoDB 5.3, SCRAM-SHA-1 no se puede usar para la autenticaci贸n intracl煤ster. Solo se admite SCRAM-SHA-256.
En versiones anteriores de MongoDB, se pueden usar tanto SCRAM-SHA-1 como SCRAM-SHA-256 para la autenticaci贸n intra-cl煤ster, incluso si SCRAM no est谩 expl铆citamente habilitado.
Consulta Implementar cl煤ster fragmentado autogestionado con autenticaci贸n de clave para aprender c贸mo implementar un cl煤ster fragmentado seguro.
Usuarios locales de la partici贸n
Cada partici贸n admite Control de acceso basado en roles en implementaciones autogestionadas (RBAC) para restringir el acceso no autorizado a los datos y las operaciones de la partici贸n. Inicia cada mongod en el set de r茅plicas con la opci贸n --auth para aplicar RBAC. Alternativamente, aplicar la autenticaci贸n interna/de membres铆a autogestionado para la seguridad intra-cl煤ster tambi茅n permite los controles de acceso de usuario a trav茅s de RBAC.
A partir de MongoDB 5.3, SCRAM-SHA-1 no se puede usar para la autenticaci贸n intracl煤ster. Solo se admite SCRAM-SHA-256.
En versiones anteriores de MongoDB, se pueden usar tanto SCRAM-SHA-1 como SCRAM-SHA-256 para la autenticaci贸n intra-cl煤ster, incluso si SCRAM no est谩 expl铆citamente habilitado.
Cada partici贸n tiene sus propios usuarios locales de la partici贸n. Estos usuarios no pueden utilizarse en otras particiones, ni pueden emplearse para conectarse al cl煤ster a trav茅s de un mongos.
Consulta Activar el control de acceso en implementaciones autogestionadas para ver un tutorial sobre c贸mo a帽adir usuarios a una implementaci贸n de MongoDB con RBAC habilitado.