Shitaibin / shitaibin.github.io

博客:Go语言、区块链
http://lessisbetter.site
67 stars 21 forks source link

WAL(预写式日志)简介 | Go语言充电站 #77

Open Shitaibin opened 4 years ago

Shitaibin commented 4 years ago

http://lessisbetter.site/2020/01/02/wal-introduction/

引言Write Ahead Logging,简称WAL,也被翻译成预写式日志,是数据库技术中实现事务日志(Transaction Journal)的一种标准方法,可以实现单机事务的原子性,同时可以提高数据库的写入效率。 思考如下场景,如何确保原子性:写操作修改数据库中a和b的值,二者是一个事务,需要把a和b的最新值持久化到磁盘,假如保存完a的值,系统宕机了,重新启动后,a的值已经写入,但b待写入的