1. Redo Log 同步的核心目标
- 数据一致性:确保所有副本在事务提交后具有相同的数据视图。
- 容错性:在主副本故障时,从副本能快速接管并恢复数据。
- 高吞吐:通过批量同步和并行处理提升效率。
2. Multi Paxos 协议的同步流程
Multi Paxos 协议通过多轮投票机制协调副本间的日志同步。paxos协议用于保证同一个数据分片的多个副本之间的数据一致性。
(1)事务提交阶段
-
客户端发起事务:
客户端向主副本提交事务请求(包含读写操作和redo log记录)。Client → Leader: {"type": "transaction", "redo_log": [...]} -
主副本处理事务:
- 主副本执行事务的读写操作,并将
redo log记录写入本地日志。 - 关键动作:主副本作为 Proposer,生成包含
redo log的提案(Proposal)。
- 主副本执行事务的读写操作,并将
(2)提案阶段(Propose Phase)
- 广播提案:
主副本向所有从副本(包括自身)广播提案,包含:- 提案编号(唯一标识,递增)。<

最低0.47元/天 解锁文章
4478

被折叠的 条评论
为什么被折叠?



