Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/81307
Título: | Planet-scale leaderless consensus |
Autor(es): | Duarte, Vitor Manuel Enes |
Orientador(es): | Gotsman, Alexey Baquero, Carlos |
Palavras-chave: | Consenso distribuído Geo-replicação Tolerância a falhas Consensus Fault tolerance Geo-replication |
Data: | 18-Nov-2022 |
Resumo(s): | As aplicações de web modernas replicam os seus dados à escala planetária e exigem fortes garantias
na coerência dos seus dados mais críticos. Essas garantias são geralmente fornecidas por meio de replicação
de máquina de estados (RME). Avanços recentes em RME concentraram-se em protocolos sem
líder, pois estes melhoram o desempenho e a disponibilidade das soluções tradicionais baseadas em
Paxos. Embora os protocolos sem líder se tenham mostrado muito promissores, estes são ainda pouco
adequados para sistemas de escala planetária, pois utilizam grandes quóruns, oferecem um desempenho
imprevisível e têm mecanismos de recuperação complexos. Nesta tese propomos dois protocolos sem
líder, Atlas e Tempo, adaptados para sistemas de escala planetária. O Atlas minimiza o tamanho
dos seus quóruns fazendo uso da observação de que falhas simultâneas em centros de dados são raras.
Também processa uma percentagem elevada de comandos da aplicação em uma única round trip,
mesmo quando estes comandos conflituam. O Atlas consegue isto com um mecanismo de recuperação
que é significativamente mais simples do que os protocolos sem líder que o precederam. O Tempo
baseia-se no Atlas, mas atinge um rendimento superior e oferece um desempenho previsível mesmo
em cargas de trabalho com elevado nível de conflitos. Para obter estes benefícios, o Tempo marca cada
comando da aplicação com uma timestamp e executa-o somente após esta timestamp se tornar estável,
ou seja, quando todos os comandos com uma timestamp menor são conhecidos. Ambos os mecanismos
para gerar uma timestamp e detetar quando esta fica estável são totalmente descentralizados, evitando
assim a necessidade de um líder. Avaliámos o Atlas e o Tempo em ambientes geo-distribuídos reais e
simulados e demonstramos que eles superam as alternativas oferecidas pelo estado da arte. Modern web applications replicate their data across the globe and require strong consistency guarantees for their most critical data. These guarantees are usually provided via state-machine replication (SMR). Recent advances in SMR have focused on leaderless protocols, which improve the performance and availability of traditional Paxos-based solutions. Although leaderless protocols have shown great promise, they are poorly suited to planet-scale systems as they leverage large quorums, offer unpredictable performance and have complex recovery mechanisms. In this thesis we propose two leaderless protocols, Atlas and Tempo, tailored to planet-scale systems. Atlas minimizes the size of its quorums by making use of the observation that concurrent data center failures are rare. It also processes a high percentage of accesses in a single round trip, even when these conflict. Atlas achieves this while having a recovery mechanism that is significantly simpler than that of previous leaderless protocols. Tempo builds upon Atlas, but achieves superior throughput and offers predictable performance even in contended workloads. To achieve these benefits, Tempo timestamps each application command and executes it only after the timestamp becomes stable, i.e., all commands with a lower timestamp are known. Both the timestamping and stability detection mechanisms are fully decentralized, thus obviating the need for a leader replica. We evaluate Atlas and Tempo in both real and simulated geo-distributed environments and demonstrate that they outperform state-of-the-art alternatives. |
Tipo: | Tese de doutoramento |
Descrição: | Programa de Doutoramento em Informática das Universidades do Minho, de Aveiro e do Porto |
URI: | https://hdl.handle.net/1822/81307 |
Acesso: | Acesso aberto |
Aparece nas coleções: | DI - Teses de doutoramento |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Vitor Manuel Enes Duarte.pdf | Tese de Doutoramento | 4,57 MB | Adobe PDF | Ver/Abrir |
Este trabalho está licenciado sob uma Licença Creative Commons