Building consensus sequences based on distributed, fault-tolerant consensus, as used for replicated state machines, typically requires a separate distributed state for every new consensus instance. Allocating and maintaining this state causes significant overhead. In particular, freeing the distributed, outdated states in a fault-tolerant way is not trivial and adds further complexity and cost to the system.
In this paper, we propose an extension to the single-decree Paxos protocol that can learn a sequence of consensus decisions 'in-place', i.e. with a single set of distributed states. Our protocol does not require dynamic log structures and hence has no need for distributed log pruning, snapshotting, compaction, or dynamic resource allocation.
The protocol builds a fault-tolerant atomic register that supports arbitrary read-modify-write operations. We use the concept of consistent quorums to detect whether the previous consensus still needs to be consolidated or is already finished so that the next consensus value can be safely proposed. Reading a consolidated consensus is done without state modifications and is thereby free of concurrency control and demand for serialisation. A proposer that is not interrupted reaches agreement on consecutive consensus decisions within a single message round-trip per decision by preparing the acceptors eagerly with the previous request.
Efficient and Simple Algorithms for Fault Tolerant Spanners
最近表明,一个版本的贪心算法给出了一个结构的容错空间是大小最优的,至少对于顶点故障。然而,构造该时间序列的算法不是多项式时间的,并且最著名的多项式时间算法明显是次优的。设计一个多项式时间算法来构造(近)最优的容错空间是最近两篇关于容错空间的论文([Bodwin,Dinitz,Parter,Vassilevka Williams SODA '18]和[Bodwin,Patel PODC '19])中的一个公开问题。我们给出了一个令人惊讶的简单算法,在多项式时间内运行,并通过修改贪心算法运行在多项式时间,构造非常接近最优的容错spectrum(关闭只有一个线性因子的拉伸)。为了补充这一结果,我们还给出了简单的分布式结构的两个模型的CONGEST和CONGEST。