方案如下:
>在Node.js中使用Mongoose.js
>执行一个查询,比如Model.find().where(‘something’,’value’).exec(callback)
>您在回调中收到一系列文档
如何确定磁盘上这些文档的大小?
至少对我来说,近似值是可以的.
解决方法
您可以通过将查询作为精简查询(获取纯
JavaScript对象而不是Mongoose文档实例)执行此操作,然后深入到BSON库中,该库是本机MongoDB驱动程序的一部分并调用
calculateObjectSize
:
var bson = mongoose.mongo.BSON; Model.find().where('something','value').lean().exec(function(err,docs) { var docsBsonSize = bson.calculateObjectSize(docs)); });
它不会给你磁盘上的大小,但它应该是BSON文档大小的一个很好的近似值.