文章目录
- 1. 前言
- 2. Write-Ahead Log
- 2.1 WAL数据结构
- 2.1.1 逻辑结构(Logical Structure)
- 2.1.2 物理结构(Physical Structure)
- 3. 参考文献
1. 前言
Write-Ahead Log简写为WAL,即预写式日志,PG数据库内核引入WAL的原因基于以下几点:
-
(1)如果发生停电、操作系统错误或数据库服务器崩溃等故障,RAM中的所有内容都将丢失;只有写入磁盘的数据才会被保留。要在故障后启动服务器,必须恢复数据一致性。如果磁盘本身已损坏,则必须通过备份恢复来解决相同的问题。
-
(2)理论上,您可以始终保持磁盘上的数据一致性。但在实践中,这意味着服务器必须不断地将随机页面写入磁盘(尽管顺序写入更便宜),而且这种写入的顺序必须保证在任何特定时刻都不会损害一致性(这很难实现&#