• hal
    2020-01-27
    唐老师新年好,听完写入操作的过程,有点好奇,oplog和journal日志能不能合并呢,我的理解的话就是oplog是个定容的集合,存放的记录都是幂等操作,用于mongodb的复制集模式,从主节点复制到其他slave节点保证数据的一致,journal日志是用于mongodb crash之后恢复的一个日志。那crash恢复能不能也用oplog呢?

    作者回复: oplog记录的是对数据库的逻辑操作, 在MongoDB里面用一个固定大小的普通集合来记录,和其他的数据一样,默认增删都是在内存里发生。

    journal 和其他数据库类似,采用WriteAheadLog机制,用来提供对数据库写入操作的一致性和持久性保证。它记录的是要对数据物理区块修改的一些动作。

    Journal 日志和Oplog理论上都可以用来恢复,但是journal比较底层,直接操作存储区,写入和恢复效率要比oplog 日志高,所以通常数据库都会采用专门的journal来做crash recovery.

     1
    
我们在线,来聊聊吧