36
A
回答
72
12
注:这将尝试存储整个结果集的内存(从.toArray
)。小心处理大数据集。不要在生产中使用! Abishek的答案具有处理光标而不是跨越内存数组的优点。
如果你还想要_id,试试这个。给定一个名为集“请求”:
// Creates a sorted list, then takes the max
db.requests.find().toArray().map(function(request) { return {size:Object.bsonsize(request), _id:request._id}; }).sort(function(a, b) { return a.size-b.size; }).pop();
// { "size" : 3333, "_id" : "someUniqueIdHere" }
1
如果你有一个巨大的收集工作,同时加载这一切到内存中是行不通的,因为你需要更多的内存比整个集合的大小为了工作。
相反,你可以使用下面的包我创建的进程分批整个集合: https://www.npmjs.com/package/mongodb-largest-documents
所有你需要做的是提供MongoDB的连接字符串和集合名称。该脚本在完成批量遍历整个集合时将输出前X个最大的文档。
相关问题
- 1. MongoDB最大文档大小
- 2. MongoDB文档的最大/最小值
- 3. MongoDb中的文档大小
- 4. 查找Elasticsearch中最大文档的大小
- 5. 在Mongo Collection中查找最大文档
- 6. CouchDB文档最大大小
- 7. 查找MongoDB的文件由子文档大小
- 8. 在MongoDB中查找游标大小
- 9. 最大和最小MongoDB中
- 10. 超过最大文档大小
- 11. 多维查找最大值MongoDB中
- 12. 查找最大,最小和中间值
- 13. 在python中查找csv文件中的最小,最大值
- 14. 子文档动态大小mongodb
- 15. MongoDB如何计算文档的大小?
- 16. MongoDB单文档大小限制为16MB
- 17. MongoDB使用巨大的阵列减小文档的大小
- 18. 更改MongoDB文档的最大尺寸
- 19. MongoDB文件大小太大
- 20. 查找MongoDB集合中任何文档中的最大字段数
- 21. MongoDB - 获取查询中所有文档的大小
- 22. 在csv文件中查找最小值和最大值
- 23. 用最大/最小值更新文档
- 24. 在elasticsearch中查找文档类型的平均商店大小
- 25. 哪个在RavenDB中最有效:大量小文档或单个大文档?
- 26. 在24小时内查找最大值
- 27. 关于MongoDB最大大小(16MB)
- 28. 是否有MongoDB最大bson大小?
- 29. 在Unix中查找大小的文件
- 30. 查找最小和最大日期SQL
我不知道你正在使用的驱动程序,但你应该能够看到[BSON大小(https://github.com/mongodb/mongo-c-driver/blob /master/src/bson.h#L141)。做到这一点,并进行表格扫描,找出最大的文件。 – vinipsmaker
不容易,在MongoDB查询中没有'$ documentSize'运算符,'$ size'做的事情完全不同。在大多数客户端驱动程序中,真正的方式包括javascript一个是使用客户端帮助程序。 – Sammaye