8.pgsql的事务处理机制(2)

本文详细介绍了PostgreSQL的事务处理机制,包括MVCC模型,如何通过MVCC提高并发效率,以及WAL(预写日志)在确保事务原子性和持久性方面的作用。还讨论了WAL的日志记录形式和事务崩溃恢复策略,以及事务归档日志在数据库备份和恢复中的应用。
摘要由CSDN通过智能技术生成

1.MVCC模型图形说明

传统模式:

类似悲观锁,并发效率低下。

MVCC处理模式:

加版本,单个写操作会将数据复制一份新的版本,不会阻塞,并发效率高。

pgsql事务隔离性就是通过上图的数据的多版本来保证。

MVCC老版本数据处理:

每张表都有 free space map,它记录文件存储的可用空间情况。FSM 不是很准确,因为它以8KB来计算,并且不是实时更新的,它是由 VACUUM 更新的。在 MVCC 情况下,update 和 delete 后,旧的数据快照不会立即删除,VACUUM会释放空间以重用或还给操作系统。

3.预写日志WAL

1.在更新数据前,把操作的信息及数据以日志的形式写到磁盘。

2.只有日志实际写到硬盘后,数据才会被认为是安全的。

3.当数据没有被写到磁盘时,系统崩溃,日志重做更新数据,保证事物原子性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值