storageSize
est la somme de toutes les extensions pour ces données, à l'exclusion des index.
Donc, cette collection prend 2 extensions, elles sont ~ 2 Go chacune, donc ~ 4 Go. size
comprend des index et je crois que quelques autres choses qui gonflent le nombre. Ni l'un ni l'autre ne représente vraiment la taille appropriée du disque. Pour la taille du disque, db.stats()
a un champ de taille de fichier qui est plus proche de ce que vous voulez, je pense que vous recherchez.
Le manuel décrit un peu mieux la signification des différents domaines, voir ici pour les collections:
http://docs.mongodb.org/manual/reference/collection-statistics/
Et ici pour les statistiques de la base de données:
http://docs.mongodb.org/manual/reference/database-statistics/
Quelques autres informations potentiellement pertinentes:
La commande compacte ne réduit aucun fichier de données; il défragmente uniquement l'espace supprimé afin que des objets plus gros puissent le réutiliser. La commande compacte ne supprimera ni ne réduira jamais les fichiers de base de données et nécessite généralement un espace supplémentaire pour effectuer son travail, généralement au moins une extension supplémentaire.
Si vous réparez la base de données, elle réécrira essentiellement les fichiers de données à partir de zéro, ce qui supprimera le rembourrage et les stockera sur le disque aussi efficacement que possible. Cependant, vous devrez avoir ~ 2x la taille du disque pour le faire (en fait moins, mais c'est un guide décent).
Une autre chose à garder à l'esprit ici - réparer et enlever le rembourrage compact. Le facteur de remplissage varie entre 1 (aucun déplacement de documents causé par la croissance des documents) et 2 (beaucoup de mouvements causés par la croissance des documents). Votre facteur de remplissage de ~ 1,67 indiquerait que vous grandissez (et par conséquent provoquez des mouvements) un peu.
Lorsque vous compactez ou réparez une base de données, vous supprimez ce remplissage - la croissance ultérieure du document va donc déclencher encore plus de mouvements qu'auparavant. Les déplacements étant des opérations relativement coûteuses, cela peut avoir un impact sérieux sur vos performances. Plus d'infos ici:
http://www.mongodb.org/display/DOCS/Padding+Factor
validate
?