如何在mongo db中测量一组文档占用的空间(以字节为单位)?

时间:2014-12-21 19:12:17

标签: mongodb

我想要做的是弄清楚某组文档占用的字节数。例如。类似的东西:

collection.stuff.stats({owner: someOwner}, {sizeInBytes: 1})

第一个参数是查询,第二个参数是您想要计算的统计数据的投影。

我读到可以使用bsonsize函数来衡量单个文档的大小。我想知道是否可以使用它和聚合方法来计算搜索的大小。但如果我要这样做,我想知道bsonsize是如何工作的。它是如何工作的?跑步很贵吗?

在mongo中还有其他测量数据大小的选项吗?

1 个答案:

答案 0 :(得分:1)

找到这种方法可能是“快速而又脏”的方法是将结果分配给游标,然后将结果插入到新的集合中并在其上调用db.collection.stats。它在shell中看起来像这样:

var myCursor = db.collection.find({key:value});
while(myCursor.hasNext()) {
    db.resultColl.insert(myCursor.next())
}

db.resultColl.stats();

哪个应返回有关文档子集的信息