Đây là câu trả lời mà tôi đã tìm thấy:
var cursor = db.collection.find(...); //Add your query here.
var size = 0;
cursor.forEach(
function(doc){
size += Object.bsonsize(doc)
}
);
print(size);
Sẽ xuất ra kích thước tính bằng byte của tài liệu khá chính xác.
Tôi đã chạy lệnh hai lần. Lần đầu tiên, có 141 215 tài liệu, một lần được đổ, có tổng cộng khoảng 108 mb. Sự khác biệt giữa đầu ra của lệnh và kích thước trên đĩa là 787 byte.
Lần thứ hai tôi chạy lệnh, có 35 914 179 tài liệu, một lần được đổ, có tổng cộng khoảng 57,8 gb. Lần này, tôi có cùng kích thước chính xác giữa lệnh và kích thước thực trên đĩa.