Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/81090
Título: | RDMA mechanisms for columnar data in analytical environments |
Autor(es): | Silva, José Miguel Ribeiro da |
Orientador(es): | Pereira, José Coelho, Fábio André Castanheira Luís |
Palavras-chave: | RDMA Cache Analytical processing Columnar data Distributed systems Processamento analítico Dados colunares Sistemas distribuídos |
Data: | 6-Abr-2021 |
Resumo(s): | The amount of data in information systems is growing constantly and, as a consequence, the
complexity of analytical processing is greater. There are several storage solutions to persist
this information, with different architectures targeting different use cases. For analytical
processing, storage solutions with a column-oriented format are particularly relevant due
to the convenient placement of the data in persistent storage and the closer mapping to
in-memory processing.
The access to the database is typically remote and has overhead associated, mainly when
it is necessary to obtain the same data multiple times. Thus, it is desirable to have a cache
on the processing side and there are solutions for this. The problem with the existing so lutions is the overhead introduced by network latency and memory-copy between logical
layers. Remote Direct Memory Access (RDMA) mechanisms have the potential to help min imize this overhead. Furthermore, this type of mechanism is indicated for large amounts of
data because zero-copy has more impact as the data volume increases. One of the problems
associated with RDMA mechanisms is the complexity of development. This complexity is
induced by its different development paradigm when compared to other network commu nication protocols, for example, TCP.
Aiming to improve the efficiency of analytical processing, this dissertation presents a dis tributed cache that takes advantage of RDMA mechanisms to improve analytical processing
performance. The cache abstracts the intricacies of RDMA mechanisms and is developed
as a middleware making it transparent to take advantage of this technology. Moreover, this
technique could be used in other contexts where a distributed cache makes sense, such as
a set of replicated web servers that access the same database. A quantidade de informação nos sistemas informáticos tem vindo a aumentar e consequentemente, a complexidade do processamento analítico torna-se maior. Existem diversas soluções para o armazenamento de dados com diferentes arquiteturas e indicadas para determinados casos de uso. Num contexto de processamento analítico, uma solução com o modelo de dados colunar e especialmente relevante devido à disposição conveniente dos dados em disco e a sua proximidade com o mapeamento em memória desses mesmos dados. Muitas vezes, o acesso aos dados é feito remotamente e isso traz algum overhead, principalmente quando é necessário aceder aos mesmos dados mais do que uma vez. Posto isto, é vantajoso fazer caching dos dados e já existem soluções para esse efeito. O overhead introduzido pela latência da rede e cópia de buffers entre camadas lógicas é o principal problema das soluções existentes. Os mecanismos de acesso direto à memória remota (RDMA - Remote Direct Memory Access) tem o potencial de melhorar o desempenho neste cenário. Para além disso, este tipo de tecnologia faz sentido em sistemas com grandes quantidades de dados, nos quais o acesso direto pode ter um impacto ainda maior por ser zero-copy. Um dos problemas associados com mecanismos RDMA é a complexidade de desenvolvimento. Esta complexidade é causada pelo paradigma de desenvolvimento completamente diferente de outros protocolos de comunicação, como por exemplo, TCP. Tendo em vista melhorar a eficiência do processamento analítico, esta dissertação propõe uma solução de cache distribuída que tira partido de mecanismos de acesso direto a memoria remota (RDMA). A cache abstrai as particularidades dos mecanismos RDMA e é disponibilizada como middleware, tornando a utilização desta tecnologia completamente transparente. Esta solução visa os sistemas de processamento analítico, mas poderá ser utilizada noutros contextos em que uma cache distribuída faça sentido, como por exemplo num conjunto de servidores web replicados que acedem a mesma base de dados. |
Tipo: | Dissertação de mestrado |
Descrição: | Dissertação de mestrado integrado em Engenharia Informática |
URI: | https://hdl.handle.net/1822/81090 |
Acesso: | Acesso aberto |
Aparece nas coleções: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Jose Miguel Ribeiro da Silva.pdf | 893,08 kB | Adobe PDF | Ver/Abrir |
Este trabalho está licenciado sob uma Licença Creative Commons