MongoDB数据库中的数据如何存储在磁盘上?

时间:2010-11-08 19:44:33

标签: mongodb database

我知道MongoDB接受并检索记录为JSON/BSON objects,但它如何将这些文件实际存储在磁盘上?它们是作为单个*.json文件的集合存储还是作为一个大文件存储?我对后者有一种预感,因为MongoDB文档声明它在具有ext4/xfs的系统上效果最好,它们在处理大文件时更好。任何人都可以确认吗?

4 个答案:

答案 0 :(得分:35)

给定的mongo数据库被分解为磁盘上的一系列BSON文件,大小增加到2GB。 BSON是它自己的格式,专门为MongoDB构建。

这些幻灯片应该回答您的所有问题:

http://www.slideshare.net/mdirolf/inside-mongodb-the-internals-of-an-opensource-database

答案 1 :(得分:13)

MongoDB将数据作为BSON存储在数据路径目录中,通常是 / data / db 。每个集合应该有两个文件, collection.0 ,它存储数据(然后根据需要增加该整数)和 collection.ns 存储命名空间该集合的元数据。

答案 2 :(得分:3)

可在此处找到BSON格式的详细文档:http://bsonspec.org/

答案 3 :(得分:2)

最多mongodb 3.0 http://blog.mongolab.com/2014/01/how-big-is-your-mongodb/ 如果在MongoDB 3.0中打开有线存储引擎,它将使用有线存储模型 http://docs.mongodb.org/v3.0/core/storage/#storage-wiredtiger