Skip to main content
QUICK REVIEW

[논문 리뷰] PnyxDB: a Lightweight Leaderless Democratic Byzantine Fault Tolerant Replicated Datastore

Loïck Bonniot, Christoph Neumann|arXiv (Cornell University)|2019. 11. 08.
Distributed systems and fault tolerance참고 문헌 55인용 수 11
한 줄 요약

PnyxDB는 경량이며 리더 없는, 비잔티노스 결함 내성(BFT) 복제 데이터베이스로, 조건부 승인을 통해 애플리케이션 수준의 투표를 가능하게 하여 노드가 사용자 정의 정책에 따라 트랜잭션을 거부할 수 있도록 한다. 교환 가능한 연산을 활용하고 새로운 충돌 해결 프로토콜을 도입함으로써, 전 세계 180개 노드로 구성된 배포 환경에서 BFT-SmaRt와 Tendermint보다 11배 낮은 커밋 지연 시간(5초 미만)을 달성한다.

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 프로토콜이 수십 개의 복제본을 초월할 경우 도달하는 확장성의 한계를 극복한다.
  • 노드가 사용자 정의 정책에 따라 트랜잭션을 승인하거나 거부할 수 있도록 하되, 일致성에 영향을 주지 않도록 한다.
  • 비잔티노스 결함 내성과 최종 일致성을 유지하면서 탈중앙화된 시스템에서 민주적 의사결정을 가능하게 한다.
  • 단일 장애 지점, 리더, 또는 신뢰할 수 있는 제3자에 의존하지 않으면서도 비잔티노스 결함에 강건한 시스템을 설계한다.

제안 방법

  • 각 노드가 커밋하지 않을 트랜잭션의 집합을 지정하는 조건부 승인을 도입하여 충돌 탐지 및 해결을 가능하게 한다.
  • 독립적인 연산의 교환 가능성을 활용해 순서가 바뀐 실행도 허용하면서도 안전성과 최종 일치성을 유지한다.
  • 조건부 제약 조건에 따라 승인을 검증함으로써 비잔티노스 행동 조건에서도 합의와 안전성을 보장하는 수정된 비잔티노스 쿼럼 프로토콜을 설계한다.
  • 중앙 집중식 리더나 신뢰할 수 있는 제3자 없이도 노드 복구 및 조율을 가능하게 하기 위해 웹 오브 트러스트 모델을 사용한다.
  • 낮은 롤백 비율을 유지하면서도 상태 동기화를 사전 실행 방식으로 구현해 커밋 지연 시간을 가속화한다.
  • 일致성에 영향을 주지 않으면서도 노드가 자신의 신념에 따라 행동할 수 있도록 일관된 투표 메커니즘을 제공하는 애플리케이션 정의 정책을 지원한다.

실험 결과

연구 질문

  • RQ1리더나 신뢰할 수 있는 제3자에 의존하지 않고도 BFT 복제 데이터베이스가 고성능 확장성과 낮은 지연 시간을 달성할 수 있는가?
  • RQ2BFT 시스템에서 애플리케이션 수준의 투표를 원천적으로 지원하면서도 일치성과 장애 내성은 유지할 수 있는가?
  • RQ3교환 가능한 연산을 얼마나 효과적으로 활용할 수 있을까? 지리적으로 분산된 BFT 시스템에서 커밋 지연 시간을 줄이는 데에 있어.
  • RQ4조건부 승인이 리더 없는 민주적인 BFT 데이터베이스에서 충돌을 효과적으로 해결할 수 있는가?
  • RQ5실제 네트워크 비동기성과 악성 행동 조건에서 시스템은 어떻게 성능을 발휘하는가?

주요 결과

  • PnyxDB는 BFT-SmaRt와 Tendermint보다 커밋 지연 시간을 11배 감소시켜, 전 세계 180개 노드로 구성된 지리적으로 분산된 환경에서 5초 미만의 커밋 시간을 달성한다.
  • 시스템은 확장성 조건에서도 일관된 커밋 처리량을 유지하며, 고부하 및 네트워크 변동성 조건에서 뛰어난 내구성을 보여준다.
  • 조건부 승인이 노드가 애플리케이션 특화 정책을 표현할 수 있도록 하여, 안전성과 일치성에 영향을 주지 않으면서도 민주적 거버넌스를 가능하게 한다.
  • 교환 가능성과 사전 실행을 활용해 낮은 지연 시간 성능을 달성하였으며, 상태 동기화 중 롤백 비율도 극히 낮게 유지된다.
  • 리더 없이도 수백 개의 복제본을 지원하여 단일 장애 지점의 위험을 피하고, 오염 또는 조작에 대한 강건성을 향상시킨다.
  • 경쟁 조건에서 쿼리 손실이 발생할 수는 있으나, 클라이언트가 효율적으로 재시도할 수 있으며, 충돌하지 않는 트랜잭션은 보류 중인 체크포인트에 영향을 받지 않고 별도로 진행되어 라이브니스가 유지된다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.