2011-12-09 15 views
6

Empecé a usar MongoDB hace unos días y tengo problemas para entender la arquitectura de algunas bases de datos. Si ejecuto la consulta db.stats(); Tenía tamaño de archivo, tamaño de datos, tamaño de almacenamiento & indexsize. Mientras estoy navegando me encontré con que la siguiente:¿Qué se entiende por tamaño de archivo y tamaño de datos en MongoDB?

Storagesize = datasize + espacio libre asignado para la recolección

datasize = tamaño de la base de datos utilizada por MongoDB

Aquí, yo no podía entender la REPRESENTACIÓN de tamaño de archivo & datasize Representación. Para datasize -> indexsize también se incluye ?. Proporcione una solución precisa para los atributos especificados y por favor, corrígeme si mencioné algo incorrecto.

antemano gracias,

Respuesta

16
  • datasize: Suma de todos los datos reales (objetos BSON) utilizados por la base de datos, en bytes
  • indexSize: Suma de todos los índices utilizados por la base de datos, en bytes
  • storageSize: DataSize más todo espacio de recogida preasignados, en bytes
  • Tamaño del archivo: suma de los tamaños de todos los archivos asignados a esta base de datos (por ejemplo test.0 + prueba.1 etc.), en bytes
  • nsSizeMB: Tamaño de archivo de espacio de nombres para esta base de datos, en megabytes.
  • avgObjSize: Tamaño promedio de los objetos del documento en la base de datos. Este valor incluye relleno y, por lo tanto, no puede cambiar cuando reduce el tamaño de los documentos.
+1

Hola @Remon van Vilet, gracias por tu valiosa información. – user626206

1

Como se explica en this post sobre los diferentes parámetros de rendimiento MongoDB debe controlar (con MMAPv1), aquí están todas las métricas de tamaño de almacenamiento devueltos por dbStats que se debe realizar un seguimiento:

  • dataSize medidas el espacio ocupado por todos los documentos y el relleno en la base de datos. Debido al relleno, dataSize disminuye si los documentos se eliminan, pero no cuando se reducen o se agrandan después de una actualización: esas operaciones solo agregan o toman prestado del relleno del documento.
  • indexSize devuelve el tamaño de todos los índices creados en la base de datos.
  • storageSize mide el tamaño de todas las extensiones de datos en la base de datos. Con MMAPv1, siempre es mayor o igual que dataSize porque las extensiones contienen espacio libre que aún no se ha utilizado o liberado por los documentos eliminados y trasladados. storageSize no se ve afectado cuando los documentos se contraen o se mueven.
  • fileSize corresponde al tamaño de sus archivos de datos. Obviamente siempre es más grande que storageSize y se puede ver como la huella de almacenamiento de su base de datos en el disco. Disminuye solo si elimina una base de datos y no se ve afectada cuando se eliminan colecciones, documentos o índices.

Aquí es un diagrama con las diferentes métricas de almacenamiento importantes devueltos por dbStats: dbStats storage metrics for MongoDB NOTA: Con el motor de almacenamiento MMAPv1, MongoDB pre-asigna espacio adicional en el disco para los documentos de forma eficiente las actualizaciones son posibles en el lugar ya que los documentos tienen espacio para crecer sin tener que ser reubicados. Este espacio adicional se llama relleno.

Cuestiones relacionadas