2012-09-30 147 views

回答

12

作爲一般的指南,你可以使用收集stats()報道avgObjSize值檢查文件的平均大小的集合collname在:

db.collname.stats() 

要查找和計數,您可以使用類似的東西,以大型文檔:

var maxSize = 1024; 
var bigDocs = 0; 
db.collname.find().forEach(
    function (doc) { 
     var docSize = Object.bsonsize(doc); 
     if (docSize >= maxSize) { 
      bigDocs++; 
      print(doc._id + ' is ' + docSize + ' bytes'); 
     } 
    } 
) 
print("Found " + bigDocs + " documents bigger than " + maxSize + " bytes") 

注意,這兩個例子中所使用的的MongoDB BSON表示,這將從尺寸變化熱曲被用來表示其他數據庫中的相同數據。

+0

根據這些文檔(http://docs.mongodb.org/manual/reference/limits/#BSON文件大小),「最大BSON文檔大小爲16兆字節。」# –

+1

@KevinMeredith:你說得對最大的MongoDB文檔大小爲16MB(如在MongoDB 2.4中),但是提出的問題是如何檢查文檔的實際大小並將它們保持在1KB以下。 – Stennie