25-6-17-云计算复习10

**Question 9 [15 points]**
一个 Aurora 集群包含主实例 P 和两个只读副本(R1 在 AZ1,R2 在 AZ2)。数据库卷划分为两个保护组:

- **PG1**:存储奇数 LSN 日志(1001, 1003,...),副本分布在 SN1, SN2, SN3
- **PG2**:存储偶数 LSN 日志(1002, 1004,...),副本分布在 SN4, SN5, SN6

写入规则:

- 日志需写入 ≥3 个副本才视为成功
- CPL 为连续成功写入的最大 LSN
- VDL = min(PG1_CPL, PG2_CPL)

主实例 P 收到两个事务:

- **事务 X**:日志 LSN 1001 (PG1), 1002 (PG2), 1003 (PG1)
- **事务 Y**:日志 LSN 1004 (PG2), 1005 (PG1), 1006 (PG2)

观测到以下写入状态:

| LSN | PG | 成功副本数 | 失败副本位置 |
| ---- | ---- | ---------- | ------------ |
| 1001 | PG1 | 3 | 无 |
| 1002 | PG2 | 2 ❌ | SN6 |
| 1003 | PG1 | 3 | 无 |
| 1004 | PG2 | 3 | 无 |
| 1005 | PG1 | 2 ❌ | SN2, SN3 |
| 1006 | PG2 | 3 | 无 |

------

### 问题:

**[3 分]** 计算 PG1 和 PG2 的 CPL,并解释原因。

PG1:对应1001,1003,1005,1005失败了,因此CPL是1003

PG2:对应1002,1004,1006,1002失败了,因此CPL是0

**[2 分]** 计算系统当前 VDL 值。

CPL是两者之间的最低值,是0

**[4 分]** R1 需要从 P 同步日志。列出所有发送给 R1 的日志,并解释原因。

1001,1003,1004,1006,没有1002和1005是因为写入失败了

[3 分]

若此时 SN1 故障(PG1 副本):

- PG1 是否还能写入新日志?
- 系统能否维持当前 VDL?

PG1 是否还能写入新日志:不能,因为需要3个节点写入成功才可以,PG1故障后还剩2个,因此无法继续写入新日志

系统能否维持当前 VDL:可以,因为VDL不会随着节点故障而变小

**[3 分]** 给出两个优化建议,确保在 AZ 级故障时 VDL 仍能推进。

首先,修改条件,将其设置成允许部分AZ故障,例如3个AZ中写入2个成功即可

其次,增加AZ数量,例如增加至6个AZ中4个成功AZ

~  ~  The   End  ~  ~


 赏 
感谢您的支持,我会继续努力哒!
支付宝收款码
tips
文章二维码 分类标签:归档TypechoAutoUpload
文章标题:25-6-17-云计算复习10
文章链接:https://www.fangshaonian.cn/archives/98/
最后编辑:2025 年 11 月 10 日 18:31 By 方少年
许可协议: 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)
(*) 8 + 3 =
快来做第一个评论的人吧~