mongodb 3.2存储目录结构说明

时间:2022-02-18 22:54:52
[root@hadoop1 mongodb]# tree ./data
./data
|-- WiredTiger |
|-- WiredTiger.lock |
|-- WiredTiger.turtle |--引擎配置文件
|-- WiredTiger.wt |
|-- WiredTigerLAS.wt |
|-- _mdb_catalog.wt |--所有集合的元数据信息
|-- diagnostic.data
| |-- metrics.2016-07-27T23-37-15Z-00000
| `-- metrics.interim
|-- journal |--类似于redo log
| |-- WiredTigerLog.0000000001
| |-- WiredTigerPreplog.0000000001
| `-- WiredTigerPreplog.0000000002
|-- local
| |-- collection-0--3645467719118758283.wt
| `-- index-1--3645467719118758283.wt
|-- mongod.lock
|-- sizeStorer.wt |--所有集合的容量信息
`-- storage.bson 3 directories, 16 files
[root@hadoop1 mongodb] 注
_mdb_catalog.wt : 里存储了所有集合的元数据,包括集合对应的WT table名字,集合的创建选项,集合的索引信息等,WT存储引擎初始化时,会从_mdb_catalog.wt里读取所有的集合信息,并加载元信息到内存
sizeStorer.wt : 里存储所有集合的容量信息,如文档数、文档总大小等,当插入、删除、更新文档时,这些信息会先cache到内存,每操作1000次会刷盘一次;mongod进程crash可能导致sizeStorer.wt里的数据与实际信息不匹配,可通过validate()命令来重新扫描集合以订正统计信息