An adaptive replica placement approach for distributed key-value stores

Detalhes bibliográficos
Ano de defesa: 2019
Autor(a) principal: Costa Filho, José Serafim da
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Não Informado pela instituição
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://www.repositorio.ufc.br/handle/riufc/46964
Resumo: The use of distributed key-value stores (KVS) has experienced fast adoption by various types of applications in recent years due to key advantages such as HTTP-based RESTful APIs, high availability and elasticity. Due to great scalability characteristics, KVS systems commonly use consistent hashing as data placement mechanism. Although KVS systems offer many advantages, they were not designed to dynamically adapt to changing workloads which often include data access skew. Furthermore, the underlying physical storage nodes may be heterogeneous and do not expose their performance capabilities to higher level data placement layers. In this dissertation, those issues are addressed and it is proposed an essential step towards a dynamic autonomous solution by leveraging deep reinforcement learning. A self-learning approach is designed which incrementally changes the placement of data replicas, improving the load balancing among storage nodes. The proposed approach is dynamic in the sense that is capable of avoiding hot spots, i.e. overloaded storage nodes when facing different workloads including uneven data popularity situations. Also, the solution developed is intended to be pluggable. It assumes no previous knowledge of the storage nodes capabilities, thus different KVS deployments may make use of it. The experiments show that the proposed strategy performs well on changing workloads including data access skew aspects. In addition, an evaluation of the proposed approach is done on scenarios when storage nodes heterogeneity changes. The results demonstrate that the proposed approach can adapt, building up on the knowledge about the storage node’s performance it has already acquired.