分布式数据库技术:Paxos 与 Amazon Aurora 解析
1. Paxos Leader - Lease 管理
在分布式系统中,Paxos 算法是一种常用的共识算法,而 Paxos Leader - Lease 管理对于确保系统的一致性和稳定性至关重要。
1.1 传统方法
确保 Paxos 领导者租赁间隔不相交的最简单方法是,领导者在每次延长租赁间隔时,同步进行 Paxos 写入操作。后续领导者会读取该间隔,并等待其结束。
1.2 TrueTime 方法
使用 TrueTime 可以避免额外的日志写入来确保租赁间隔的不相交性。具体操作步骤如下:
1. 潜在的第 i 个领导者在发送租赁请求( esend i,r )之前,计算从副本 r 获得租赁投票开始时间的下限: vleader i,r = TT.now().earliest 。
2. 每个副本 r 在收到租赁请求( ereceive i,r )之后的 egrant i,r 时刻授予租赁,租赁结束时间为 tend i,r = TT.now().latest + 10 。
3. 副本 r 遵循单投票规则,即直到 TT.after(tend i,r) 为真时,才会授予另一个租赁投票。为了在 r 的不同实例中强制执行此规则,Spanner 在授予租赁之前,会在授予副本处记录租赁投票,此日志写入可以搭载在现有的 Paxos 协议日志写入上。
4. 当第 i 个领导者
超级会员免费看
订阅专栏 解锁全文
920

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



