我知道MongoDB
接受和检索记录为JSON/BSON objects
,但它如何实际上将这些文件存储在磁盘上?它们是作为单个*.json
文件的集合存储还是作为一个大文件存储?我对后者有一种预感,因为MongoDB
文档声明它在具有ext4/xfs
的系统上效果最好,这在处理大文件方面更好。有人可以确认吗?MongoDB数据库中的数据如何存储在磁盘上?
51
A
回答
32
一个给定的mongo数据库被分解成磁盘上的一系列BSON文件,其大小增加到2GB。 BSON是它自己的格式,专门为MongoDB构建。
这些幻灯片应该回答您的所有问题:
http://www.slideshare.net/mdirolf/inside-mongodb-the-internals-of-an-opensource-database
11
MongoDB将磁盘上的数据作为BSON存储在数据路径目录中,通常为/data/db。每个集合应该有两个文件,集合0,,它存储数据(并且该整数随后按需增加)和collection.ns,其存储集合的命名空间元数据。
3
的BSON格式的详细文档可以在这里找到:http://bsonspec.org/
2
最多的MongoDB 3.0 http://blog.mongolab.com/2014/01/how-big-is-your-mongodb/ 如果打开wiredtiger存储引擎在MongoDB 3.0中它将使用wiredtiger存储模式 http://docs.mongodb.org/v3.0/core/storage/#storage-wiredtiger
相关问题
- 1. 数据库记录如何存储在磁盘上?
- 2. Apache Cassandra磁盘上的数据存储
- 3. MongoDB - 在磁盘上存储SSD和数据收集索引?
- 4. 如何将JSON数据存储在磁盘上?
- 5. 数据如何存储在磁盘上? - EFI GUID
- 6. 磁盘上的数据库存储,最佳实践
- 7. 在磁盘或MongoDB上存储文件
- 8. 对于sqlite,内存中的数据库比存储在磁盘上的数据库更快?
- 9. 数据库中的BLOB VS磁盘存储的文件
- 10. 图像应该保存在数据库中的磁盘上吗?
- 11. Spark shuffle为什么在磁盘上存储中间数据?
- 12. MySQL的performance_schema数据库中的信息是否存储在磁盘上?
- 13. 如何根据磁盘路径确定数据存储?
- 14. 将未使用的类数据成员存储在磁盘上
- 15. SQLite:ON磁盘与内存数据库
- 16. 将数据添加到存储在磁盘上的Spark/Parquet数据
- 17. 如何将XML数据存储在iPhone上的数据库中?
- 18. MongoDB数据存储
- 19. SQL Server 2014如何使用磁盘空间来存储数据
- 20. 磁盘上的JackRabbit存储库
- 21. 如何将Python /文件数据存储在内存中,直到写入磁盘?
- 22. 将内存中的H2数据库保存到磁盘
- 23. 如何将对象数据源数据保存到磁盘?
- 24. 如何正确保存磁盘缓存中的数据?
- 25. 如何在Mono中使用Sqlite将基于磁盘的数据库加载到内存数据库中?
- 26. 如何将数据存储内的MongoDB
- 27. 数据库设计:如何在数据库中存储XML/JSON?
- 28. 在android数据库中存储数据
- 29. 不在数据库中存储数据
- 30. 如何在数据库中存储