我知道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. 加密Mysql數據庫存儲在磁盤上的文件
- 5. 如何將JSON數據存儲在磁盤上?
- 6. 數據如何存儲在磁盤上? - EFI GUID
- 7. mysql數據如何存儲在磁盤上?
- 8. 磁盤上的數據庫存儲,最佳實踐
- 9. 在磁盤或MongoDB上存儲文件
- 10. 對於sqlite,內存中的數據庫比存儲在磁盤上的數據庫更快?
- 11. 數據庫中的BLOB VS磁盤存儲的文件
- 12. 圖像應該保存在數據庫中的磁盤上嗎?
- 13. Spark shuffle爲什麼在磁盤上存儲中間數據?
- 14. RavenDB Embedded:存儲在磁盤上的數據在哪裏?
- 15. 如何管理GridFS MongoDB數據庫的磁盤大小?
- 16. 如何根據磁盤路徑確定數據存儲?
- 17. MySQL的performance_schema數據庫中的信息是否存儲在磁盤上?
- 18. MySQL的varchar數據類型..如何獲取存儲在磁盤
- 19. Spring數據存儲庫MongoDB
- 20. 將未使用的類數據成員存儲在磁盤上
- 21. SQLite:ON磁盤與內存數據庫
- 22. 緩存 - 磁盤或數據庫?
- 23. 使用pymongo加載和保存mongoDB數據庫從/到磁盤
- 24. 如何存儲MongoDB數據
- 25. 將數據添加到存儲在磁盤上的Spark/Parquet數據
- 26. 數據存儲在MongoDB中
- 27. 如何將XML數據存儲在iPhone上的數據庫中?
- 28. 如何在數據庫中將數據存儲到數據庫
- 29. SQL Server 2014如何使用磁盤空間來存儲數據
- 30. 磁盤上的JackRabbit存儲庫