Paxos vs Raft: Have we reached consensus on distributed consensus? - Heidi Howard

Sdílet
Vložit
  • čas přidán 31. 05. 2024
  • Paxos vs Raft: Have we reached consensus on distributed consensus? - Heidi Howard and Richard Mortier (University of Cambridge)
    dl.acm.org/doi/abs/10.1145/33...
    A talk at the 7th Workshop on Principles and Practice of Consistency for Distributed Data (PaPoC @ EuroSys), 27 April 2020
    papoc-workshop.github.io/2020/
    Abstract:
    Distributed consensus is a fundamental primitive for constructing fault-tolerant, strongly-consistent distributed systems. Though many distributed consensus algorithms have been proposed, just two dominate production systems: Paxos, the traditional, famously subtle, algorithm; and Raft, a more recent algorithm positioned as a more understandable alternative to Paxos.
    In this paper, we consider the question of which algorithm, Paxos or Raft, is the better solution to distributed consensus? We analyse both to determine exactly how they differ by describing a simplified Paxos algorithm using Raft's terminology and pragmatic abstractions.
    We find that both Paxos and Raft take a very similar approach to distributed consensus, differing only in their approach to leader election. Most notably, Raft only allows servers with up-to-date logs to become leaders, whereas Paxos allows any server to be leader provided it then updates its log to ensure it is up-to-date. Raft's approach is surprisingly efficient given its simplicity as, unlike Paxos, it does not require log entries to be exchanged during leader election. We surmise that much of the understandability of Raft comes from the paper's clear presentation rather than being fundamental to the underlying algorithm being presented.

Komentáře • 13

  • @Bigeinla
    @Bigeinla Před rokem +1

    Nice job. You made it easy to understand.

  • @mediazador
    @mediazador Před 3 lety

    Thank you for explanation 👏

  • @levimk101
    @levimk101 Před 2 lety

    Great talk, well done

  • @NoobTube4148
    @NoobTube4148 Před 4 lety

    Thanks first last, that was great!

  • @kevinsu2219
    @kevinsu2219 Před 4 lety

    Great explanation

  • @bulgakovwork2022
    @bulgakovwork2022 Před rokem

    You are the best!!!

  • @trijit96
    @trijit96 Před 3 lety +3

    What if the leader with latest log goes out of network then what happens to data in case of RAFT?

    • @anuragbisht1200
      @anuragbisht1200 Před 9 měsíci

      data (and commit log) of that node is gone. A leader election will take place among the other remaining nodes. Once the down node join back it will join as a follower and receive the commit logs from other leader node. As far as data is concerned that will depends on the protocol, for instance in the consistent hashing algorithm, new node may receive data from the previous node in the ring etc.

  • @8Trails50
    @8Trails50 Před 4 lety

    I think it's interesting that systems like AWS DynamoDB opted for Paxos over Raft internally. Maybe just because it's more battle-tested? The timing of it?
    Anyways great talk

    • @bobbbobins
      @bobbbobins Před 4 lety +6

      I think DynamoDB predates the Raft paper paper by a few years. DynamoDB came out in 2012. In this video Heidi says Raft paper was 2014.

    • @8Trails50
      @8Trails50 Před 4 lety

      David Griffin right that makes sense

  • @sinpleplayer7340
    @sinpleplayer7340 Před 4 lety

    ❤️❤️❤️❤️❤️

  • @captainpints
    @captainpints Před 3 lety

    Awesome.