CMU 15-445/645-Note10-Database Logging & Recovery

本文基于CMU 15-445/645课程,探讨了数据库崩溃恢复的策略,包括事务失败类型、影子分页、预写日志(WAL)以及检查点等。WAL通过在数据文件外单独的日志文件记录事务更改,确保在事务写入磁盘前日志已写入。同时,介绍了ARIES恢复算法和日志序列号(LSN)的概念,强调LSN在确保数据库一致性中的关键作用。
摘要由CSDN通过智能技术生成
0.写在前面

based on CMU 15-445/645 2020fall, Lecture #20 ~ Lecture #21.

1: CRASH RECOVERY

Motivation:当我们遇到崩溃和故障的时候,我们想要持久化对数据库的修改。
恢复算法有2个part:
1)针对DB运行中的transaction。
2)当遇上重启或者崩溃的时候,利用第一个part中的信息来恢复。

1.1 Type

Type #1 – Transaction Failures
Type #2 – System Failures(软件、硬件)
Type #3 – Storage Media Failures(DBMS无法恢复)

1.2 例子

在这里插入图片描述
核心问题:当T1对A修改,T2对B修改之后,T2COMMIT,此时Buffer Pool中A,B是否需要写到磁盘中。
由此引出2个Buffer Pool Policy。

1.2.1 STEAL POLICY
STEAL: Is allowed.
NO-STEAL: Is not allowed.
简单概括:没有COMMIT的事务是否能写到磁盘中。
如上述例子中T1没有提交,如果是NO

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值