Definición
db.collection.getShardLocation()Novedad 8.1 en la versión.:
Devuelve un documento que contiene los fragmentos donde se encuentra la colección y si la colección está fragmentada.
Importante
Método mongosh
Esta página documenta un método de
mongosh. Esta no es la documentación sobre comandos de base de datos ni sobre controladores específicos de un lenguaje.El método
getShardLocation()es un contenedor para la etapa de agregación$listClusterCatalog.
Salida
El método getShardLocation() devuelve un documento con los siguientes campos:
Campo | Tipo | Descripción |
|---|---|---|
| Arreglo | Particiones donde residen los datos de la colección. |
| Booleano | Indica si la colección está particionada. |
Si ejecutas el método en una implementación no fragmentada:
El arreglo
shardsestá vacío.El campo
shardedestáfalse.
Compatibilidad
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.
Sintaxis
db.<collection>.getShardLocation()
Ejemplos
Colección particionada
El siguiente ejemplo muestra las particiones que contienen los datos en la colección sample_mflix.movies:
use sample_mflix db.movies.getShardLocation()
{ shards: [ 'shard01', 'shard02' ], sharded: true }
Colección no particionada en un clúster particionado
Si ejecutas el comando en un clúster fragmentado pero la colección no está fragmentada, el campo sharded es false y el arreglo shards solo contiene el fragmento config:
use sample_mflix db.movies.getShardLocation()
{ shards: [ 'config' ], sharded: false }
Implementación sin particiones
Si ejecuta el comando en una implementación no particionada, el campo sharded es false y el arreglo shards está vacío:
use sample_mflix db.movies.getShardLocation()
{ shards: [], sharded: false }