为什么redo log能保证持久化? 而page-buff却不能?
要知道我们进行数据update的时候,是先对数据table对应的page进行修改,而直接操作磁盘效率太低,于是Linux有了swap区,用来对磁盘页进行映射,当然默认最好是4可对奇,这样我们就可以像对内存一样,对待硬盘;但是有个明显的问题,由于内存的page-buff并不是实时的刷新到硬盘,所以如断电等操作,可能会丢失部分数据,所以单单依靠page-buff 是不可靠的。
为什么redo log可以保证? 因为redo-log是物理日志,我们在执行update的时候,实际上也会写到redo-log对应的buff中,这样redo-log-buff会依赖我们的配置,选择如何同步到硬盘上进行持久化,为什么redo-log-buff是可靠的呢? 因为redo-log-buff是顺序io,本身性能就会很高,所以会依赖操作系统同步到磁盘上进行持久化,如果需要rollback,那么只需要依赖undo 就可以实现。
redo-log补充
最新推荐文章于 2024-11-05 23:38:21 发布
732

被折叠的 条评论
为什么被折叠?



