ScholarGate
Assistente

Paxos e Raft

Paxos e Raft são os dois protocolos de consenso práticos mais influentes, fornecendo um acordo tolerante a falhas de travamento em um log replicado que sustenta sistemas de coordenação do mundo real.

Encontrar tema com PaperMindEm breveFind papers & topics
Tools & resources
Baixar slides
Learn & explore
VídeoEm breve

Definition

Paxos e Raft são protocolos baseados em quórum que permitem que um conjunto de réplicas concorde em uma sequência ordenada de comandos (um log replicado) apesar de falhas de travamento, garantindo que as entradas confirmadas nunca sejam perdidas ou reordenadas, desde que a maioria das réplicas permaneça disponível.

Scope

Este tópico abrange a família Paxos — Paxos de decreto único, Multi-Paxos e seus refinamentos de engenharia — e o protocolo Raft, que reorganiza as mesmas garantias em torno de um líder explícito, replicação de log e mudança de associação para facilitar a compreensão. Ele aborda os papéis de proponentes/aceitadores e líderes/seguidores, interseção de quórum, eleição de líder e termos, correspondência de log e as preocupações práticas de snapshots e reconfiguração.

Core questions

  • Como a interseção de quórum e a numeração de propostas mantêm Paxos seguro em diferentes rodadas e mudanças de líder?
  • Como Raft decompõe o consenso em eleição de líder, replicação de log e segurança?
  • Quais desafios de engenharia surgem ao transformar esses protocolos em sistemas de produção?

Key theories

Paxos de decreto único e Multi-Paxos
Paxos alcança acordo sobre um valor através de fases de preparação e aceitação governadas por números de proposta monotônicos e quóruns majoritários; Multi-Paxos amortece a fase de preparação em um fluxo de decisões lideradas por um líder estável para construir um log replicado.
Decomposição do Raft
Raft atinge a mesma segurança que Paxos ao eleger um único líder por termo, fazendo com que o líder anexe entradas que os seguidores replicam e impondo uma propriedade de correspondência de log, trocando deliberadamente a minimalidade pela compreensibilidade e facilidade de implementação.
Da especificação ao sistema em execução
A implantação de Paxos na prática exige o tratamento de falhas de disco, concessões de líder, compactação de log e reconfiguração, detalhes frequentemente ignorados no algoritmo original, mas essenciais para a correção e o desempenho.

Clinical relevance

Paxos e Raft são executados em serviços de coordenação amplamente utilizados, bancos de dados distribuídos e armazenamentos de configuração; compreendê-los é essencial para construir ou operar qualquer sistema que deva manter as réplicas fortemente consistentes através de falhas.

History

Lamport descreveu Paxos em seu artigo de 1998 'part-time parliament' e o esclareceu em 'Paxos made simple' (2001); Chandra e colegas relataram as realidades de torná-lo viável em escala em 2007; e Ongaro e Ousterhout introduziram Raft em 2014 para tornar garantias equivalentes muito mais fáceis de ensinar e implementar.

Debates

Compreensibilidade versus minimalidade em protocolos de consenso
Raft foi explicitamente projetado para ser mais fácil de entender do que Paxos, provocando debate sobre se sua estrutura adicional (um líder forte) sacrifica a flexibilidade; os proponentes argumentam que a compreensibilidade reduz os bugs de implementação, enquanto outros observam que as variantes de Paxos podem ser mais gerais.

Key figures

  • Leslie Lamport
  • Diego Ongaro
  • John Ousterhout
  • Tushar Chandra

Related topics

Seminal works

  • lamport1998
  • ongaro2014
  • chandra2007

Frequently asked questions

Paxos e Raft são algoritmos fundamentalmente diferentes?
Não — eles resolvem o mesmo problema com o mesmo núcleo de quórum majoritário e garantias de segurança equivalentes. Raft principalmente reorganiza Paxos em torno de um líder forte e um log explícito para tornar o protocolo mais fácil de entender e implementar.

Methods for this concept

Related concepts