An adaptive replica placement approach for distributed key-value stores

Detalhes bibliográficos
Autor(a) principal: Costa Filho, José Serafim da
Data de Publicação: 2019
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Institucional da Universidade Federal do Ceará (UFC)
Texto Completo: 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.
id UFC-7_1577ed577047ab9e0884b576f8cf6c6f
oai_identifier_str oai:repositorio.ufc.br:riufc/46964
network_acronym_str UFC-7
network_name_str Repositório Institucional da Universidade Federal do Ceará (UFC)
repository_id_str
spelling An adaptive replica placement approach for distributed key-value storesDistributed key-value storeReplica placementLoad balancingThe 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.O uso de KVS (armazenamento de valores-chave distribuídos) sofreu adoção rápida por vários tipos de aplicativos nos últimos anos devido às várias vantagens oferecidas, como APIs RESTful baseadas em HTTP, alta disponibilidade e elasticidade. Devido às excelentes características de escalabilidade, os sistemas KVS geralmente usam hashing consistente como mecanismo de alocação de dados. Embora os sistemas KVS ofereçam muitas vantagens, eles não foram projetados para se adaptar dinamicamente a cargas de trabalho que geralmente incluem enviesamento no acesso aos dados. Além disso, os nós de armazenamento físico subjacentes podem ser heterogêneos e não expor seus recursos e métricas de desempenho a camada acima responsável pela alocação dos dados. Nesta dissertação, essas questões são abordadas e propõe-se um passo essencial para uma solução autônoma dinâmica, alavancando a aprendizagem por reforço profundo. Uma abordagem de autoaprendizagem é projetada para alterar de forma incremental o posicionamento de réplicas de dados, melhorando o balanceamento de carga entre os nós de armazenamento. A abordagem proposta é dinâmica no sentido de que é capaz de evitar a concentração de dados populares evitando que nós de armazenamento se tornem sobrecarregados. Além disso, a solução desenvolvida pensada para ser conectável. Ela não pressupõe nenhum conhecimento prévio dos recursos dos nós de armazenamento, portanto diferentes implantações de KVS podem utilizá-la. Os experimentos mostram que a estratégia proposta funciona bem diante de mudanças de diferentes cargas de trabalho, que podem incluir enviesamento no acesso aos dados. Além disso, uma avaliação da abordagem proposta é feita em cenários em que a heterogeneidade dos nós de armazenamento é alterada. Os resultados demonstram que a abordagem proposta pode se adaptar, construindo sobre o conhecimento do desempenho dos nós de armazenamento adquirido previamente.Machado, Javam de CastroMoreira, Leonardo OliveiraCosta Filho, José Serafim da2019-10-21T20:24:02Z2019-10-21T20:24:02Z2019info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfCOSTA FILHO, José Serafim da. An adaptive replica placement approach for distributed key-value stores. 2019. 76 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal do Ceará, Fortaleza, 2019.http://www.repositorio.ufc.br/handle/riufc/46964engreponame:Repositório Institucional da Universidade Federal do Ceará (UFC)instname:Universidade Federal do Ceará (UFC)instacron:UFCinfo:eu-repo/semantics/openAccess2019-10-21T20:29:20Zoai:repositorio.ufc.br:riufc/46964Repositório InstitucionalPUBhttp://www.repositorio.ufc.br/ri-oai/requestbu@ufc.br || repositorio@ufc.bropendoar:2024-09-11T18:59:05.531121Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC)false
dc.title.none.fl_str_mv An adaptive replica placement approach for distributed key-value stores
title An adaptive replica placement approach for distributed key-value stores
spellingShingle An adaptive replica placement approach for distributed key-value stores
Costa Filho, José Serafim da
Distributed key-value store
Replica placement
Load balancing
title_short An adaptive replica placement approach for distributed key-value stores
title_full An adaptive replica placement approach for distributed key-value stores
title_fullStr An adaptive replica placement approach for distributed key-value stores
title_full_unstemmed An adaptive replica placement approach for distributed key-value stores
title_sort An adaptive replica placement approach for distributed key-value stores
author Costa Filho, José Serafim da
author_facet Costa Filho, José Serafim da
author_role author
dc.contributor.none.fl_str_mv Machado, Javam de Castro
Moreira, Leonardo Oliveira
dc.contributor.author.fl_str_mv Costa Filho, José Serafim da
dc.subject.por.fl_str_mv Distributed key-value store
Replica placement
Load balancing
topic Distributed key-value store
Replica placement
Load balancing
description 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.
publishDate 2019
dc.date.none.fl_str_mv 2019-10-21T20:24:02Z
2019-10-21T20:24:02Z
2019
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv COSTA FILHO, José Serafim da. An adaptive replica placement approach for distributed key-value stores. 2019. 76 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal do Ceará, Fortaleza, 2019.
http://www.repositorio.ufc.br/handle/riufc/46964
identifier_str_mv COSTA FILHO, José Serafim da. An adaptive replica placement approach for distributed key-value stores. 2019. 76 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal do Ceará, Fortaleza, 2019.
url http://www.repositorio.ufc.br/handle/riufc/46964
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da Universidade Federal do Ceará (UFC)
instname:Universidade Federal do Ceará (UFC)
instacron:UFC
instname_str Universidade Federal do Ceará (UFC)
instacron_str UFC
institution UFC
reponame_str Repositório Institucional da Universidade Federal do Ceará (UFC)
collection Repositório Institucional da Universidade Federal do Ceará (UFC)
repository.name.fl_str_mv Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC)
repository.mail.fl_str_mv bu@ufc.br || repositorio@ufc.br
_version_ 1813029022438785024