MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Ottieni la dimensione di tutti i documenti in una query

Ecco la risposta che ho trovato:

var cursor = db.collection.find(...); //Add your query here.
var size = 0;
cursor.forEach(
    function(doc){
        size += Object.bsonsize(doc)
    }
);
print(size);

Dovrebbe restituire la dimensione in byte dei documenti in modo abbastanza accurato.

Ho eseguito il comando due volte. La prima volta si trattava di 141 215 documenti che, una volta scaricati, avevano un totale di circa 108 mb. La differenza tra l'output del comando e la dimensione su disco era di 787 byte.

La seconda volta che ho eseguito il comando, c'erano 35 914 179 documenti che, una volta scaricati, avevano un totale di circa 57,8 GB. Questa volta, avevo esattamente la stessa dimensione tra il comando e la dimensione reale su disco.