Skip to main content
QUICK REVIEW

[论文解读] Linearizable Replicated State Machines With Lattice Agreement

Xiong Zheng, Vijay K. Garg|arXiv (Cornell University)|Oct 13, 2018
Distributed systems and fault tolerance参考文献 17被引用 5
一句话总结

本文提出 AsyncLA,一种 O(log f) 的异步格理论协议,相较于先前 O(f) 的界限实现了指数级改进,从而实现了高效的一致性复制状态机(LaRSM)。通过优化广义格理论并将其与 CRDT 集成,作者实现了一种高吞吐量、低延迟的 LaRSM,其吞吐量比 SPaxos 高 1.3 倍,并在故障发生时仍能保持可用性,证明了格理论作为一致性复制状态机中一致性机制的实用替代方案。

ABSTRACT

This paper studies the lattice agreement problem in asynchronous systems and explores its application to building linearizable replicated state machines (RSM). First, we propose an algorithm to solve the lattice agreement problem in $O(\log f)$ asynchronous rounds, where $f$ is the number of crash failures that the system can tolerate. This is an exponential improvement over the previous best upper bound. Second, Faleiro et al have shown in [Faleiro et al. PODC, 2012] that combination of conflict-free data types and lattice agreement protocols can be applied to implement linearizable RSM. They give a Paxos style lattice agreement protocol, which can be adapted to implement linearizable RSM and guarantee that a command can be learned in at most $O(n)$ message delays, where $n$ is the number of proposers. Later on, Xiong et al in [Xiong et al. DISC, 2018] give a lattice agreement protocol which improves the $O(n)$ guarantee to be $O(f)$. However, neither protocols is practical for building a linearizable RSM. Thus, in the second part of the paper, we first give an improved protocol based on the one proposed by Xiong et al. Then, we implement a simple linearizable RSM using the our improved protocol and compare our implementation with an open source Java implementation of Paxos. Results show that better performance can be obtained by using lattice agreement based protocols to implement a linearizable RSM compared to traditional consensus based protocols.

研究动机与目标

  • 为解决现有格理论协议在构建实用一致性复制状态机(RSM)时的低效问题。
  • 将格理论的异步轮次复杂度从 O(f) 降低至 O(log f),显著提升性能。
  • 设计一种实用的广义格理论协议,支持通过无冲突数据类型(CRDT)高效实现一致性 RSM。
  • 通过实验评估所提出的 LaRSM 在正常和故障条件下与基于 Paxos 的系统(如 SPaxos)的性能表现。

提出的方法

  • 设计 AsyncLA,一种新型格理论算法,通过分层协调和容错多数派之间的值传播,实现 O(log f) 的异步轮次。
  • 对 Xiong 等人(2018)提出的广义格理论协议进行优化,减少消息开销,并提升写入密集型工作负载下的批处理效率。
  • 将优化后的格理论协议与 CRDT 映射数据结构结合,实现一种支持确定性更新和查询的一致性 RSM(LaRSM)。
  • 采用客户端重试机制并设置短超时,以在副本故障期间维持系统可用性,确保请求持续处理。
  • 采用点对点客户端路由模型,允许客户端在超时后动态切换副本,提升容错能力和负载均衡。
  • 通过模拟评估性能,测试不同客户端负载、故障场景和读写比例,以衡量吞吐量、延迟和可扩展性。

实验结果

研究问题

  • RQ1格理论能否在 O(log f) 的异步轮次内解决,从而显著优于先前的 O(f) 上限?
  • RQ2基于格理论的 RSM 在吞吐量和延迟方面是否优于基于共识的 RSM(如 SPaxos)?
  • RQ3与基于领导者的协议(如 SPaxos)相比,所提出的 LaRSM 如何处理故障?
  • RQ4LaRSM 的性能是否随读写比例提高而改善?原因是什么?
  • RQ5随着副本数量增加,基于格理论的 RSM 的可扩展性限制是什么?

主要发现

  • AsyncLA 协议在格理论中实现了 O(log f) 的异步轮次,相较于先前的 O(f) 上限实现了指数级改进。
  • 在正常负载条件下,所实现的 LaRSM 吞吐量约为 SPaxos 的 1.3 倍。
  • LaRSM 在副本故障期间仍能维持请求处理,吞吐量仅从约 20K 下降至约 15K 请求/秒;而 SPaxos 在领导副本故障时完全停止处理请求。
  • LaRSM 的延迟在正常条件下仅增加约 5ms,且在故障期间保持稳定;而 SPaxos 在领导故障时延迟飙升至无穷大。
  • 性能随读写比例提高而改善,原因在于更小的提案集合减少了消息大小,加速了格理论的完成过程。
  • 随着副本数量增加,LaRSM 的可扩展性表现较差,原因在于 O(log f) 的轮次复杂度依赖于 f = (n−1)/2,而 f 随 n 增大而增长。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。