Journaling工作原理
2019-01-18 21:32:50 0 举报
Journal工作原理
作者其他创作
大纲/内容
Journal file
shared view
query--id:123update--name:five
值得注意的是,private view并未连接到data file,因此无法将private view的修改刷新到data file
private view
Data file
Mongo
query id:123update name:five
然后mongodb将shared view重新映射到private view。这样可以防止private view变脏
当mongodb崩溃,journal可以重播尚未进入data file的修改,到shared view上
然后mongodb会将此更改写入journal文件。所以当启用Journaling功能后,服务异常关闭情况下,最大可能丢失100ms的数据。
通过Journal功能,mongodb会进行第二次映射,将shared view映射到private view中。这也是为什么启用Journal功能会使mongodb的虚拟内存量增加一倍。
当进行写操作时,mongodb会将其写入private view
MongoDB中Journal工作原理
最后,shared view将刷新到磁盘 data file上。默认情况下mongodb每60s执行一次。
如果在内存中修改数据,MongoDB会将这些更新刷新到磁盘文件。 这基本上是mongodb在没有journal功能情况下的工作方式:要求每60s刷新一次内存中的修改
journal活动修改记录
当MongoDB启动时,它会将Data File映射到shared view。
0 条评论
回复 删除
下一页