Skip to main content
QUICK REVIEW

[论文解读] PnyxDB: a Lightweight Leaderless Democratic Byzantine Fault Tolerant Replicated Datastore

Loïck Bonniot, Christoph Neumann|arXiv (Cornell University)|Nov 8, 2019
Distributed systems and fault tolerance参考文献 55被引用 11
一句话总结

PnyxDB 是一种轻量级、无主从、拜占庭容错(BFT)的复制数据存储系统,通过条件性背书实现应用层的民主化投票,使节点能够基于自定义策略拒绝事务。通过利用可交换操作和一种新型冲突解决协议,它在180个全球分布的节点部署中,将提交延迟降低至5秒以内,相比 BFT-SMaRt 和 Tendermint 降低了11倍。

ABSTRACT

Byzantine-Fault-Tolerant (BFT) systems are rapidly emerging as a viable technology for production-grade systems, notably in closed consortia deployments for nancial and supply-chain applications. Unfortunately, most algorithms proposed so far to coordinate these systems suffer from substantial scalability issues, and lack important features to implement Internet-scale governance mechanisms. In this paper, we observe that many application workloads offer little concurrency, and propose PnyxDB, an eventually-consistent Byzantine Fault Tolerant replicated datastore that exhibits both high scalability and low latency. Our approach is based on conditional endorsements, that allow nodes to specify the set of transactions that must not be committed for the endorsement to be valid. In addition to its high scalability, PnyxDB supports application-level voting, i.e. individual nodes are able to endorse or reject a transaction according to application-defined policies without compromising consistency. We provide a comparison against BFTSMaRt and Tendermint, two competitors with different design aims, and show that our implementation speeds up commit latencies by a factor of 11, remaining below 5 seconds in a worldwide geodistributed deployment of 180 nodes.

研究动机与目标

  • 解决现有 BFT 复制协议在生产级系统中,特别是在封闭联盟中的可扩展性和治理限制问题。
  • 突破传统 BFT 协议在超过数十个副本后面临的可扩展性瓶颈。
  • 在不损害一致性的情况下,支持节点基于自定义策略选择性地背书或拒绝事务,实现应用层投票。
  • 在具备拜占庭容错和最终一致性保障的前提下,支持去中心化系统中的民主决策机制。
  • 设计一种对拜占庭故障具有鲁棒性的系统,同时避免单点故障、主节点或对可信第三方的依赖。

提出的方法

  • 引入条件性背书机制,每个节点可指定其不会提交的事务集合,从而实现冲突的检测与解决。
  • 利用独立操作的可交换性,支持乱序执行,同时保证安全性和最终一致性。
  • 设计一种改进的拜占庭法定人数协议,通过验证背书是否符合条件约束,确保即使在拜占庭行为下仍能达成一致和保障安全。
  • 采用信任网络模型实现节点恢复与协调,避免中心化主节点或可信第三方。
  • 通过低回滚率的推测性状态同步机制,加速提交延迟。
  • 通过一等投票机制支持应用定义的策略,使节点能够基于自身信念行动,而不损害系统的一致性。

实验结果

研究问题

  • RQ1无主从或可信第三方依赖的 BFT 复制数据存储系统能否实现高可扩展性和低延迟?
  • RQ2如何在 BFT 系统中原生支持应用层投票,同时保持一致性和容错能力?
  • RQ3在地理分布的 BFT 系统中,可交换操作在多大程度上可被利用以降低提交延迟?
  • RQ4条件性背书能否有效解决无主从、民主化 BFT 数据存储系统中的冲突?
  • RQ5该系统在真实世界网络异步和对抗性行为下的表现如何?

主要发现

  • 与 BFT-SMaRt 和 Tendermint 相比,PnyxDB 将提交延迟降低了11倍,在180个全球分布节点的部署中实现低于5秒的提交时间。
  • 系统在高负载和网络波动下仍能保持稳定的提交吞吐量,表现出良好的可扩展性。
  • 条件性背书使节点能够表达应用特定的策略,实现民主治理,同时不损害安全性或一致性。
  • 通过利用可交换性和推测性执行,系统实现了低延迟性能,状态同步期间的回滚率极低。
  • PnyxDB 支持数百个副本而无需主节点,避免了单点故障,增强了对篡改或操纵的抗性。
  • 在高竞争环境下可能出现查询丢失,但客户端可高效重试;非冲突事务可独立于待处理检查点继续执行,保障了系统的活性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

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