Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/83623

TítuloConsensus in high performance computing
Autor(es)Sobral, Diogo José Cruz
Orientador(es)Pereira, José
Palavras-chaveDistributed systems
Distributed consensus
NVMe
Storage performance tool kit
Network storage
Sistemas distribuídos
Consenso distribuído
Armazenamento em rede
Data2022
Resumo(s)For a long time, developers and scientists designed consensus solutions that sacrificed thread scalability or load balance to decrease the latency. The appearance of networking and memory with microseconds requests reshaped how high-throughput consensus solutions are designed today. Today’s protocols must be multi-threaded to scale and seize the high hardware-level parallelism available. Moreover, their focus should be on not overloading the system instead of decreasing the latency. In the last decade, storage devices underwent an enormous development in their performance. The NVMe devices bought the request’s latency of solid-state devices to the microseconds range. Additionally, the software available to manage and operate these devices kept up with the hardware development. Libraries such as the Storage Performance Tool Kit (SPDK) appeared to ease the development of high-performance storage applications. In this context, this work aimed to answer a fundamental question: can NVMe Devices and SPDK improve the existing consensus-related work? This dissertation describes a solution for the distributed consensus problem that combines Disk Paxos (a consensus algorithm that relies upon writing and reading in a network of storage devices to achieve a distributed agreement) with NVMe Devices and SPDK. We conceived this solution using C++ and conducted a performance evaluation that, in the end, compared our solution with LibPaxos. Our findings describe the issues and benefits of the usage of these technologies to solve consensus. With our approach, we increase the understanding of the potential of these new technologies in enabling better solutions for the consensus problem in the future.
Durante bastante tempo, as abordagens adotadas para resolver o consenso distribuído sacrificavam a escalabilidade do número de “threads” ou o balanceamento da carga com o objetivo de diminuir a latência da solução. O aparecimento de redes e latências de memória, com pedidos na ordem dos microssegundos, alterou a forma como os algoritmos de alto desempenho são desenhos, hoje em dia. Os protocolos atuais têm de ser “multithreaded” para conseguirem escalar e aproveitar o elevado paralelismo existente do hardware disponível. Para além disso, o foco dos protocolos deve residir em evitar a sobrecarga do sistema e não na redução da latência. Na última década, houve um grande desenvolvimento nos dispositivos de armazenamento. Os discos “NVMe” introduziram latências na gama dos microssegundos aumentando significativamente o desempenho dos discos de armazenamento. Adicionalmente, o “software” disponível, para gerir e operar sobre estes dispositivos, também acompanhou o seu desenvolvimento. Bibliotecas, como o “Storage Performance Tool Kit (SPDK)”, apareceram para facilitar o desenvolvimento de aplicações de armazenamento de alto desempenho. Neste contexto, este trabalho teve, como principal objetivo, responder à seguinte questão: Podem os dispositivos NVMe e o SPDK melhorar o trabalho existente sobre o consenso distribuído? Esta dissertação descreve uma solução para o consenso distribuído que combina o Disk Paxos, um algoritmo que resolve o consenso distribuído, através de leituras e escritas numa rede partilhada de discos, com os dispositivos NVMe e a biblioteca SPDK. Esta solução foi desenvolvida em C++ e foi realizada uma análise de desempenho que, na sua fase final, compara a mesma com outra solução existente, o LibPaxos. A análise desenvolvida descreve os problemas e os benefícios de usar estas tecnologias para resolver o problema de consenso distribuído. Com esta abordagem, foi possível explorar e descobrir o potencial que as tecnologias usadas têm para possibilitar o desenvolvimento de melhores soluções no futuro.
TipoDissertação de mestrado
DescriçãoDissertação de mestrado integrado em Informatics Engineering
URIhttps://hdl.handle.net/1822/83623
AcessoAcesso aberto
Aparece nas coleções:BUM - Dissertações de Mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
Diogo-José-Cruz-Sobral-dissertação.pdf2,2 MBAdobe PDFVer/Abrir

Este trabalho está licenciado sob uma Licença Creative Commons Creative Commons

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID