Estratégias de mapeamento de Threads para processamento eficiente de consultas

Detalhes bibliográficos
Autor(a) principal: Dominico, Simone, 1989-
Data de Publicação: 2021
Tipo de documento: Tese
Idioma: por
Título da fonte: Repositório Institucional da UFPR
Texto Completo: https://hdl.handle.net/1884/75117
Resumo: Orientador: Eduardo Cunha de Almeida
id UFPR_beee0be8303b2aa486c44354185f69c6
oai_identifier_str oai:acervodigital.ufpr.br:1884/75117
network_acronym_str UFPR
network_name_str Repositório Institucional da UFPR
repository_id_str 308
spelling Dominico, Simone, 1989-Alves, Marco Antonio Zanata, 1984-Universidade Federal do Paraná. Setor de Ciências Exatas. Programa de Pós-Graduação em InformáticaAlmeida, Eduardo Cunha de, 1977-2022-05-27T13:11:49Z2022-05-27T13:11:49Z2021https://hdl.handle.net/1884/75117Orientador: Eduardo Cunha de AlmeidaCoorientador: Marco Antonio Zanata AlvesTese (doutorado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa : Curitiba, 15/02/2022Inclui referênciasÁrea de concentração: Ciência da ComputaçãoResumo: Os Sistemas Gerenciadores de Banco de Dados (SGBDs) modernos usam a execução paralela de consultas para cumprir requisitos de desempenho importantes, como baixo tempo de resposta e grande vazão no processamento de consultas. Contudo, cumprir requisitos de desempenho com o aumento exponencial dos volumes de dados gerados na atual era digital tem sido um constante desafio. Neste sentido, o desenvolvimento dos SGBDs requer o envolvimento com os avanços nas arquiteturas de hardware e sistemas operacionais (SO) para aproveitar de forma eficiente os múltiplos recursos de hardware disponíveis, como processadores, memória e discos. Nesta tese exploramos a execução de consultas em arquitetura de acesso não-uniforme à memória (Non-uniform memory access (NUMA)) que tem potencial para oferecer alta vazão através de vários chips contendo unidades de processamento de múltiplos núcleos agrupados em nós de processamento. No entanto, os SGBDs modernos não exploram o hardware NUMA em todo o seu potencial deixando para os SOs o trabalho de alocação de threads geradas pelas consultas. A alocação de threads dos SOs acarreta em movimento de dados ine?ciente entre os nós NUMA dado que os SOs são projetados para cargas de trabalho de propósito geral e políticas de balanceamento de carga. Esta tese apresenta dois mecanismos de alocação de threads de execução de consultas. O primeiro mecanismo é direcionado para os SGBDs relacionais. O mecanismo proposto utiliza um pipeline de regra-condição-ação que, por meio de contadores de hardware, encontra prontamente o número ideal local de núcleos. Esse mecanismo usa uma fila de prioridade que rastreia o histórico do espaço de endereço de memória usado pelas threads da execução de consultas para decidir sobre a alocação/liberação de núcleos e sua distribuição entre os nós NUMA e, com isso, diminui os acessos remotos à memória ao mesmo tempo em que aumenta consideravelmente a vazão e o speedup máximo. O segundo mecanismo considera os SGBDs multidimensionais. Este mecanismo controla a alocação de threads por meio de um algoritmo de jogo multi-agente. Nesse contexto, as threads são agentes tomadores de decisão e escolhem a melhor alocação baseadas em informações de contadores de hardware e padrões de acesso à memória com redução dos acessos remotos e aumento na economia de energia. Em resumo, estes mecanismos permitem que SGBDs relacionais e multidimensionais aproveitem os recursos computacionais oferecidos por máquinas NUMA melhorando sensivelmente os tempos de resposta e vazão na execução paralela de consultas.Abstract: Modern Database Management Systems (DBMS) use parallel query execution to meet performance requirements, like low response time and high throughput in query processing. With the exponential increase in data volumes generated in the current digital age, meeting these performance requirements in query execution has been a constant challenge. In this sense, there is a dire need for co-design among DBMSs, hardware architectures and operating systems (OS) to eficiently take advantage of the multiple hardware resources, such as processors, memory and disks. NUMA hardware has the potential to provide high throughput across multiple chips containing multi-core processing units grouped into processing nodes. However, modern DBMSs do not exploit the NUMA hardware to its full potential, leaving the allocation of query threads to the OSs. The allocation of threads from OSs leads to inefficient data movement between NUMA nodes as OSs are designed for general purpose workloads and load balancing policies. This thesis presents two query processing thread allocation mechanisms. The first mechanism relational DBMSs. The proposed mechanism uses a rule-condition-action pipe that, through hardware counters, readily finds the local optimal number of cores. This mechanism uses a priority queue that tracks the history of the memory address space used by the query execution threads to decide on the allocation/release of cores and their distribution among the NUMA nodes and, with that, decreases the remote memory accesses while considerably increasing the throughput and the maximum speedup. The second mechanism aims multidimensional DBMSs. This mechanism controls the allocation of threads through a multi-agent game algorithm. In this context, threads are decision-making agents that choose the best allocation based on information from hardware counters and memory access patterns, reducing remote access and increasing energy savings. In summary, these mechanisms allow relational and multidimensional DBMS to take advantage of the computational resources offered by NUMA machines, significantly improving the response times and throughput in the parallel processing of queries.1 recurso online : PDF.application/pdfArquitetura de redes de computadorBanco de dadosThreads (Programa de computador)Ciência da ComputaçãoEstratégias de mapeamento de Threads para processamento eficiente de consultasinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisporreponame:Repositório Institucional da UFPRinstname:Universidade Federal do Paraná (UFPR)instacron:UFPRinfo:eu-repo/semantics/openAccessORIGINALR - T - SIMONE DOMINICO.pdfapplication/pdf3923013https://acervodigital.ufpr.br/bitstream/1884/75117/1/R%20-%20T%20-%20SIMONE%20DOMINICO.pdf747a647c00f263c263e385347a651c0dMD51open access1884/751172022-05-27 10:11:49.724open accessoai:acervodigital.ufpr.br:1884/75117Repositório de PublicaçõesPUBhttp://acervodigital.ufpr.br/oai/requestopendoar:3082022-05-27T13:11:49Repositório Institucional da UFPR - Universidade Federal do Paraná (UFPR)false
dc.title.pt_BR.fl_str_mv Estratégias de mapeamento de Threads para processamento eficiente de consultas
title Estratégias de mapeamento de Threads para processamento eficiente de consultas
spellingShingle Estratégias de mapeamento de Threads para processamento eficiente de consultas
Dominico, Simone, 1989-
Arquitetura de redes de computador
Banco de dados
Threads (Programa de computador)
Ciência da Computação
title_short Estratégias de mapeamento de Threads para processamento eficiente de consultas
title_full Estratégias de mapeamento de Threads para processamento eficiente de consultas
title_fullStr Estratégias de mapeamento de Threads para processamento eficiente de consultas
title_full_unstemmed Estratégias de mapeamento de Threads para processamento eficiente de consultas
title_sort Estratégias de mapeamento de Threads para processamento eficiente de consultas
author Dominico, Simone, 1989-
author_facet Dominico, Simone, 1989-
author_role author
dc.contributor.other.pt_BR.fl_str_mv Alves, Marco Antonio Zanata, 1984-
Universidade Federal do Paraná. Setor de Ciências Exatas. Programa de Pós-Graduação em Informática
dc.contributor.author.fl_str_mv Dominico, Simone, 1989-
dc.contributor.advisor1.fl_str_mv Almeida, Eduardo Cunha de, 1977-
contributor_str_mv Almeida, Eduardo Cunha de, 1977-
dc.subject.por.fl_str_mv Arquitetura de redes de computador
Banco de dados
Threads (Programa de computador)
Ciência da Computação
topic Arquitetura de redes de computador
Banco de dados
Threads (Programa de computador)
Ciência da Computação
description Orientador: Eduardo Cunha de Almeida
publishDate 2021
dc.date.issued.fl_str_mv 2021
dc.date.accessioned.fl_str_mv 2022-05-27T13:11:49Z
dc.date.available.fl_str_mv 2022-05-27T13:11:49Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://hdl.handle.net/1884/75117
url https://hdl.handle.net/1884/75117
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 1 recurso online : PDF.
application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPR
instname:Universidade Federal do Paraná (UFPR)
instacron:UFPR
instname_str Universidade Federal do Paraná (UFPR)
instacron_str UFPR
institution UFPR
reponame_str Repositório Institucional da UFPR
collection Repositório Institucional da UFPR
bitstream.url.fl_str_mv https://acervodigital.ufpr.br/bitstream/1884/75117/1/R%20-%20T%20-%20SIMONE%20DOMINICO.pdf
bitstream.checksum.fl_str_mv 747a647c00f263c263e385347a651c0d
bitstream.checksumAlgorithm.fl_str_mv MD5
repository.name.fl_str_mv Repositório Institucional da UFPR - Universidade Federal do Paraná (UFPR)
repository.mail.fl_str_mv
_version_ 1797698994884837376