Definición
db.collection.getShardLocation()Nuevo en la versión 8.1.
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 una
mongoshMétodo. Esta no es la documentación de comandos de base de datos ni de controladores específicos del lenguaje.El método
getShardLocation()es un contenedor para el$listClusterCatalogetapa de agregación.
Salida
El método getShardLocation() devuelve un documento con los siguientes campos:
Campo | Tipo | Descripción |
|---|---|---|
| Arreglo | Fragmentos donde residen los datos de la colección. |
| Booleano | Indica si la colección está particionada. |
Si ejecuta el método en una implementación no fragmentada:
La matriz
shardsestá vacía.El campo
shardedesfalse.
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 los fragmentos 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 fragmentada en un clúster fragmentado
Si ejecuta el comando en un clúster fragmentado pero la colección no está fragmentada, el campo sharded es false y la matriz shards solo contiene el fragmento config:
use sample_mflix db.movies.getShardLocation()
{ shards: [ 'config' ], sharded: false }
Implementación sin fragmentar
Si ejecuta el comando en una implementación no fragmentada, el campo sharded es false y la matriz shards está vacía:
use sample_mflix db.movies.getShardLocation()
{ shards: [], sharded: false }