我知道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. 如何在數據庫中存儲