Docs Menu
Docs Home
/ /

db.stats() (método mongosh)

db.stats(scale)

Devuelve estadísticas que reflejan el estado de uso de un único database.

La El db.stats() método es un contenedor que rodea el comando de base de datos dbStats.

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 tiene soporte limitado en los clústeres Flex y M0. 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.

El db.stats() método tiene los siguientes parámetros opcionales:

Parameter
Tipo
Descripción

Número

Opcional. El factor de escala para los datos de los distintos tamaños. El scale por defecto es 1 para devolver los datos de tamaño en bytes. Para mostrar los kilobytes en lugar de bytes, se debe especificar un valor scale de 1024.

Si se especifica un factor de escala no entero, MongoDB utiliza la parte entera del factor especificado. Por ejemplo, si se especifica un factor de escala de 1023.999, MongoDB utiliza 1023 como factor de escala.

A partir de la versión 4.2, la salida incluye el scaleFactor utilizado para escalar los valores de tamaño.

Número

opcional. Para devolver información sobre el espacio libre asignado a las colecciones, establezca freeStorage en 1.

Si la instancia tiene una gran cantidad de colecciones o índices, la obtención de datos sobre el uso del espacio libre puede provocar retrasos en el procesamiento. Para recopilar datos de db.stats() sin detalles de espacio libre, establezca freeStorage en 0 o no incluya el parámetro.

El método db.stats() devuelve un documento con estadísticas sobre el estado del sistema de base de datos. Una lista completa, incluidos los detalles de almacenamiento gratuito, se asemeja a lo siguiente:

{
db: 'test',
collections: 2,
views: 0,
objects: 1689,
avgObjSize: 52.56542332741267,
dataSize: 86.7021484375,
storageSize: 100,
freeStorageSize: 32,
indexes: 2,
indexSize: 116,
indexFreeStorageSize: 36,
totalSize: 216,
totalFreeStorageSize: 68,
scaleFactor: 1024,
fsUsedSize: 60155820,
fsTotalSize: 61255492,
ok: 1,
'$clusterTime': {
clusterTime: Timestamp({ t: 1646085664, i: 1 }),
signature: {
hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0),
keyId: Long("0")
}
},
operationTime: Timestamp({ t: 1646085664, i: 1 })
}

Para obtener una explicación sobre el resultado, consulte Resultado.

Después de un cierre no limpio de un mongod que utiliza el motor de almacenamiento WiredTiger, las estadísticas de conteo y tamaño informadas por db.stats() pueden ser inexactas.

La cantidad de deriva depende del número de operaciones de inserción, actualización o eliminación realizadas entre el último punto de control y el apagado no limpio. Los puntos de control suelen ocurrir cada 60 segundos. Sin embargo, las instancias mongod que se ejecutan con configuraciones --syncdelay no por defecto pueden tener puntos de control más o menos frecuentes.

Ejecuta validate en cada colección en el mongod para restaurar las estadísticas después de un apagado no limpio.

Después de un apagado no limpio:

Para que se ejecuten en un set de réplicas, las operaciones de dbStats requieren que el nodo esté en estado PRIMARY o SECONDARY. Si el nodo se encuentra en otro estado, como STARTUP2, se produce un error en la operación.

Para devolver los valores en kilobytes, establezca el escalar en 1024:

db.stats(1024)

Nota

El factor de escala redondea los valores a números enteros.

Para devolver un solo valor, como indexSize, se debe añadir el nombre del campo a db.stats().

db.stats().indexSize
db.stats(1024).indexSize

La salida muestra la diferencia entre los valores originales y los escalados.

118784
116

Para devolver información sobre el espacio libre asignado a las colecciones, se debe pasar el parámetro freeStorage a db.stats().

El siguiente ejemplo devuelve el indexFreeStorageSize en kilobytes:

db.stats( { freeStorage: 1, scale: 1024 } ).indexFreeStorageSize

Volver

db.shutdownServer

En esta página