Etcd (三) WAL
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Etcd (三) WAL相关的知识,希望对你有一定的参考价值。
参考技术A WAL (Write ahead logging) : 存放预写式日志,最大的作用是记录了整个数据变化的全部历程。在 etcd 中,所有数据的修改在提交前,都要先写入到WAL中。 .wal 文件命名格式为 seq + idx 。WAL 机制使得 etcd 具备了以下两个功能:
创建临时的WAL文件名和目录,对当前文件上锁并预分配空间,然后将临时文件重命名,作为原子操作
核心功能,对小于预分配64MB的文件直接持久化日志和state;大于64MB的部分进行cut,分配(seq+1,index+1)的新名字,以此打开filepipeline预分配的文件进行下一步操作
在指定index打开文件,读取该index后所有的日志信息
读取解码后的Record,主要包含以下几种类型:
用于检验文件是否被污染。每次cut64MB后都会更新crc,记录到文件中,从而能够核验其正确性
以上是关于Etcd (三) WAL的主要内容,如果未能解决你的问题,请参考以下文章