Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem

Detalhes bibliográficos
Autor(a) principal: Tulio Braga Moreira Pinto
Data de Publicação: 2019
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFMG
Texto Completo: http://hdl.handle.net/1843/44157
Resumo: A popularização das aplicações online e intensas em dados nos últimos anos trouxe consigo novos desafios à computação. Apesar de a flexibilidade e a elasticidade da computação em nuvem terem facilitado a alocação de recursos de hardware e software sob demanda, a heterogeneidade e a irregularidade nos padrões de acesso das aplicações massivas em dados, por outro lado, tornaram esta tarefa mais desafiadora. Em consequência, a combinação destas características tornam a previsão de desempenho (p. ex: previsão do tempo de resposta das aplicações) mais complexa. Sendo assim, este trabalho explora dois modelos analíticos para a previsão do tempo de resposta de aplicações paralelas na plataforma Spark, muito popular para processamento de grandes volumes de dados. O primeiro modelo é baseado em um fork/join, no qual uma aplicação é dividida em N tarefas que são processadas em paralelo em múltiplos servidores. Este modelo captura o tempo do servidor mais lento para computar os atrasos de sincronização. O segundo modelo é baseado em teoria de filas e considera a precedência entre as tarefas para estimar os atrasos de sincronização. Múltiplos cenários experimentais são considerados, incluindo atividades recorrentes como o wordcount, algoritmos frequentemente utilizados em aprendizado de máquina, como o SVM, o Logistic Regression e o K-Means, e consultas ad-hoc comuns em análise de dados. Para o modelo baseado em precedência de tarefas, os resultados das previsões apresentaram erro médio inferior a 20% para a maioria dos cenários, considerado tipicamente baixo para modelos analíticos. Ainda, com um tempo de execução na casa dos milissegundos, este modelo se mostrou eficaz para a reconfiguração dinâmica de sistemas paralelos, tarefa importante na garantia de qualidade de serviço das aplicações massivas em dados. Ambos os modelos fork/join e de precedência de tarefas são comparados com o modelo de simulação DagSim, considerado estado da arte para previsão de desempenho de aplicações Hadoop e Spark.
id UFMG_c971977917c8a6eae5a93cfff044fad0
oai_identifier_str oai:repositorio.ufmg.br:1843/44157
network_acronym_str UFMG
network_name_str Repositório Institucional da UFMG
repository_id_str
spelling Jussara Marques de Almeidahttp://lattes.cnpq.br/3286329883412205Ana Paula Couto da SilvaFabrício Murai FerreiraDorgival Olavo Guedes Netohttp://lattes.cnpq.br/9963538235164080Tulio Braga Moreira Pinto2022-08-10T19:28:11Z2022-08-10T19:28:11Z2019-07-15http://hdl.handle.net/1843/44157A popularização das aplicações online e intensas em dados nos últimos anos trouxe consigo novos desafios à computação. Apesar de a flexibilidade e a elasticidade da computação em nuvem terem facilitado a alocação de recursos de hardware e software sob demanda, a heterogeneidade e a irregularidade nos padrões de acesso das aplicações massivas em dados, por outro lado, tornaram esta tarefa mais desafiadora. Em consequência, a combinação destas características tornam a previsão de desempenho (p. ex: previsão do tempo de resposta das aplicações) mais complexa. Sendo assim, este trabalho explora dois modelos analíticos para a previsão do tempo de resposta de aplicações paralelas na plataforma Spark, muito popular para processamento de grandes volumes de dados. O primeiro modelo é baseado em um fork/join, no qual uma aplicação é dividida em N tarefas que são processadas em paralelo em múltiplos servidores. Este modelo captura o tempo do servidor mais lento para computar os atrasos de sincronização. O segundo modelo é baseado em teoria de filas e considera a precedência entre as tarefas para estimar os atrasos de sincronização. Múltiplos cenários experimentais são considerados, incluindo atividades recorrentes como o wordcount, algoritmos frequentemente utilizados em aprendizado de máquina, como o SVM, o Logistic Regression e o K-Means, e consultas ad-hoc comuns em análise de dados. Para o modelo baseado em precedência de tarefas, os resultados das previsões apresentaram erro médio inferior a 20% para a maioria dos cenários, considerado tipicamente baixo para modelos analíticos. Ainda, com um tempo de execução na casa dos milissegundos, este modelo se mostrou eficaz para a reconfiguração dinâmica de sistemas paralelos, tarefa importante na garantia de qualidade de serviço das aplicações massivas em dados. Ambos os modelos fork/join e de precedência de tarefas são comparados com o modelo de simulação DagSim, considerado estado da arte para previsão de desempenho de aplicações Hadoop e Spark.The popularity of online and data-intensive applications presented new challenges to computing. Although cloud computing technology has enabled on-demand resource scheduling, the data access heterogeneity and irregularity of data-intensive applications have increased the difficulty of both hardware and software resource scheduling. Nonetheless, the performance prediction (e.g.: response time) of such applications increase in complexity as all these characteristics are combined. Thus, this research explores two analytical models for the response time prediction of parallel applications running on Apache Spark, one of the most popular frameworks for massive data-processing. The first model is based on a fork/join queues, in which an application is split into N tasks and processed in parallel in multiple servers. This model captures the synchronization delays perceived in the slowest server. The second model is based on queuing networks. It considers the precedence relationship between the application tasks to compute the synchronization delays. Multiple experimental scenarios were considered, including the parallel wordcount algorithm, machine learning common algorithms, such as SVM, Logistic Regression, and K-Means, and ad-hoc data analytics queries. The precedence relationship model presented a mean error less than 20% for most of the experimental scenarios, which is typically considered reasonable for analytical models. Yet, both models presented execution times in the range of milliseconds. Such a low execution time enables the usage of the models for the dynamic provisioning of parallel systems, an important task to guarantee the quality of service of massive data-processing applications. Both the analytical models were compared to the DagSim simulation model, the state-of-art model for performance prediction of Hadoop and Spark applications.Outra AgênciaporUniversidade Federal de Minas GeraisPrograma de Pós-Graduação em Ciência da ComputaçãoUFMGBrasilICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃOhttp://creativecommons.org/licenses/by-nc-nd/3.0/pt/info:eu-repo/semantics/openAccessComputação – TesesComputação em nuvem – TesesSistemas distribuídos – TesesProcessamento massivo de dados – TesesPrevisão de desempenhoComputação em nuvemSparkProcessamento massivo de dadosAplicações paralelasSistemas distribuídosPrevisão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvemResponse time prediction of parallel applications for big data processing in cloud environmentsinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisreponame:Repositório Institucional da UFMGinstname:Universidade Federal de Minas Gerais (UFMG)instacron:UFMGLICENSElicense.txtlicense.txttext/plain; charset=utf-82118https://repositorio.ufmg.br/bitstream/1843/44157/5/license.txtcda590c95a0b51b4d15f60c9642ca272MD55ORIGINALDissertacao-Tulio-Aprovada-Catalografica-Final-2022.pdfDissertacao-Tulio-Aprovada-Catalografica-Final-2022.pdfDissertação de mestrado "Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem"application/pdf1396282https://repositorio.ufmg.br/bitstream/1843/44157/4/Dissertacao-Tulio-Aprovada-Catalografica-Final-2022.pdff776634c896dfb8f4fac8db03fd41d97MD54CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufmg.br/bitstream/1843/44157/2/license_rdfcfd6801dba008cb6adbd9838b81582abMD521843/441572022-08-10 16:28:11.4oai:repositorio.ufmg.br:1843/44157TElDRU7Dh0EgREUgRElTVFJJQlVJw4fDg08gTsODTy1FWENMVVNJVkEgRE8gUkVQT1NJVMOTUklPIElOU1RJVFVDSU9OQUwgREEgVUZNRwoKQ29tIGEgYXByZXNlbnRhw6fDo28gZGVzdGEgbGljZW7Dp2EsIHZvY8OqIChvIGF1dG9yIChlcykgb3UgbyB0aXR1bGFyIGRvcyBkaXJlaXRvcyBkZSBhdXRvcikgY29uY2VkZSBhbyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBkYSBVRk1HIChSSS1VRk1HKSBvIGRpcmVpdG8gbsOjbyBleGNsdXNpdm8gZSBpcnJldm9nw6F2ZWwgZGUgcmVwcm9kdXppciBlL291IGRpc3RyaWJ1aXIgYSBzdWEgcHVibGljYcOnw6NvIChpbmNsdWluZG8gbyByZXN1bW8pIHBvciB0b2RvIG8gbXVuZG8gbm8gZm9ybWF0byBpbXByZXNzbyBlIGVsZXRyw7RuaWNvIGUgZW0gcXVhbHF1ZXIgbWVpbywgaW5jbHVpbmRvIG9zIGZvcm1hdG9zIMOhdWRpbyBvdSB2w61kZW8uCgpWb2PDqiBkZWNsYXJhIHF1ZSBjb25oZWNlIGEgcG9sw610aWNhIGRlIGNvcHlyaWdodCBkYSBlZGl0b3JhIGRvIHNldSBkb2N1bWVudG8gZSBxdWUgY29uaGVjZSBlIGFjZWl0YSBhcyBEaXJldHJpemVzIGRvIFJJLVVGTUcuCgpWb2PDqiBjb25jb3JkYSBxdWUgbyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBkYSBVRk1HIHBvZGUsIHNlbSBhbHRlcmFyIG8gY29udGXDumRvLCB0cmFuc3BvciBhIHN1YSBwdWJsaWNhw6fDo28gcGFyYSBxdWFscXVlciBtZWlvIG91IGZvcm1hdG8gcGFyYSBmaW5zIGRlIHByZXNlcnZhw6fDo28uCgpWb2PDqiB0YW1iw6ltIGNvbmNvcmRhIHF1ZSBvIFJlcG9zaXTDs3JpbyBJbnN0aXR1Y2lvbmFsIGRhIFVGTUcgcG9kZSBtYW50ZXIgbWFpcyBkZSB1bWEgY8OzcGlhIGRlIHN1YSBwdWJsaWNhw6fDo28gcGFyYSBmaW5zIGRlIHNlZ3VyYW7Dp2EsIGJhY2stdXAgZSBwcmVzZXJ2YcOnw6NvLgoKVm9jw6ogZGVjbGFyYSBxdWUgYSBzdWEgcHVibGljYcOnw6NvIMOpIG9yaWdpbmFsIGUgcXVlIHZvY8OqIHRlbSBvIHBvZGVyIGRlIGNvbmNlZGVyIG9zIGRpcmVpdG9zIGNvbnRpZG9zIG5lc3RhIGxpY2Vuw6dhLiBWb2PDqiB0YW1iw6ltIGRlY2xhcmEgcXVlIG8gZGVww7NzaXRvIGRlIHN1YSBwdWJsaWNhw6fDo28gbsOjbywgcXVlIHNlamEgZGUgc2V1IGNvbmhlY2ltZW50bywgaW5mcmluZ2UgZGlyZWl0b3MgYXV0b3JhaXMgZGUgbmluZ3XDqW0uCgpDYXNvIGEgc3VhIHB1YmxpY2HDp8OjbyBjb250ZW5oYSBtYXRlcmlhbCBxdWUgdm9jw6ogbsOjbyBwb3NzdWkgYSB0aXR1bGFyaWRhZGUgZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCB2b2PDqiBkZWNsYXJhIHF1ZSBvYnRldmUgYSBwZXJtaXNzw6NvIGlycmVzdHJpdGEgZG8gZGV0ZW50b3IgZG9zIGRpcmVpdG9zIGF1dG9yYWlzIHBhcmEgY29uY2VkZXIgYW8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgZGEgVUZNRyBvcyBkaXJlaXRvcyBhcHJlc2VudGFkb3MgbmVzdGEgbGljZW7Dp2EsIGUgcXVlIGVzc2UgbWF0ZXJpYWwgZGUgcHJvcHJpZWRhZGUgZGUgdGVyY2Vpcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3Ugbm8gY29udGXDumRvIGRhIHB1YmxpY2HDp8OjbyBvcmEgZGVwb3NpdGFkYS4KCkNBU08gQSBQVUJMSUNBw4fDg08gT1JBIERFUE9TSVRBREEgVEVOSEEgU0lETyBSRVNVTFRBRE8gREUgVU0gUEFUUk9Dw41OSU8gT1UgQVBPSU8gREUgVU1BIEFHw4pOQ0lBIERFIEZPTUVOVE8gT1UgT1VUUk8gT1JHQU5JU01PLCBWT0PDiiBERUNMQVJBIFFVRSBSRVNQRUlUT1UgVE9ET1MgRSBRVUFJU1FVRVIgRElSRUlUT1MgREUgUkVWSVPDg08gQ09NTyBUQU1Cw4lNIEFTIERFTUFJUyBPQlJJR0HDh8OVRVMgRVhJR0lEQVMgUE9SIENPTlRSQVRPIE9VIEFDT1JETy4KCk8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgZGEgVUZNRyBzZSBjb21wcm9tZXRlIGEgaWRlbnRpZmljYXIgY2xhcmFtZW50ZSBvIHNldSBub21lKHMpIG91IG8ocykgbm9tZXMocykgZG8ocykgZGV0ZW50b3IoZXMpIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBkYSBwdWJsaWNhw6fDo28sIGUgbsOjbyBmYXLDoSBxdWFscXVlciBhbHRlcmHDp8OjbywgYWzDqW0gZGFxdWVsYXMgY29uY2VkaWRhcyBwb3IgZXN0YSBsaWNlbsOnYS4KRepositório de PublicaçõesPUBhttps://repositorio.ufmg.br/oaiopendoar:2022-08-10T19:28:11Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)false
dc.title.pt_BR.fl_str_mv Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem
dc.title.alternative.pt_BR.fl_str_mv Response time prediction of parallel applications for big data processing in cloud environments
title Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem
spellingShingle Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem
Tulio Braga Moreira Pinto
Previsão de desempenho
Computação em nuvem
Spark
Processamento massivo de dados
Aplicações paralelas
Sistemas distribuídos
Computação – Teses
Computação em nuvem – Teses
Sistemas distribuídos – Teses
Processamento massivo de dados – Teses
title_short Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem
title_full Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem
title_fullStr Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem
title_full_unstemmed Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem
title_sort Previsão do tempo de resposta de aplicações paralelas de processamento de dados massivos em ambientes de nuvem
author Tulio Braga Moreira Pinto
author_facet Tulio Braga Moreira Pinto
author_role author
dc.contributor.advisor1.fl_str_mv Jussara Marques de Almeida
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/3286329883412205
dc.contributor.advisor-co1.fl_str_mv Ana Paula Couto da Silva
dc.contributor.referee1.fl_str_mv Fabrício Murai Ferreira
dc.contributor.referee2.fl_str_mv Dorgival Olavo Guedes Neto
dc.contributor.authorLattes.fl_str_mv http://lattes.cnpq.br/9963538235164080
dc.contributor.author.fl_str_mv Tulio Braga Moreira Pinto
contributor_str_mv Jussara Marques de Almeida
Ana Paula Couto da Silva
Fabrício Murai Ferreira
Dorgival Olavo Guedes Neto
dc.subject.por.fl_str_mv Previsão de desempenho
Computação em nuvem
Spark
Processamento massivo de dados
Aplicações paralelas
Sistemas distribuídos
topic Previsão de desempenho
Computação em nuvem
Spark
Processamento massivo de dados
Aplicações paralelas
Sistemas distribuídos
Computação – Teses
Computação em nuvem – Teses
Sistemas distribuídos – Teses
Processamento massivo de dados – Teses
dc.subject.other.pt_BR.fl_str_mv Computação – Teses
Computação em nuvem – Teses
Sistemas distribuídos – Teses
Processamento massivo de dados – Teses
description A popularização das aplicações online e intensas em dados nos últimos anos trouxe consigo novos desafios à computação. Apesar de a flexibilidade e a elasticidade da computação em nuvem terem facilitado a alocação de recursos de hardware e software sob demanda, a heterogeneidade e a irregularidade nos padrões de acesso das aplicações massivas em dados, por outro lado, tornaram esta tarefa mais desafiadora. Em consequência, a combinação destas características tornam a previsão de desempenho (p. ex: previsão do tempo de resposta das aplicações) mais complexa. Sendo assim, este trabalho explora dois modelos analíticos para a previsão do tempo de resposta de aplicações paralelas na plataforma Spark, muito popular para processamento de grandes volumes de dados. O primeiro modelo é baseado em um fork/join, no qual uma aplicação é dividida em N tarefas que são processadas em paralelo em múltiplos servidores. Este modelo captura o tempo do servidor mais lento para computar os atrasos de sincronização. O segundo modelo é baseado em teoria de filas e considera a precedência entre as tarefas para estimar os atrasos de sincronização. Múltiplos cenários experimentais são considerados, incluindo atividades recorrentes como o wordcount, algoritmos frequentemente utilizados em aprendizado de máquina, como o SVM, o Logistic Regression e o K-Means, e consultas ad-hoc comuns em análise de dados. Para o modelo baseado em precedência de tarefas, os resultados das previsões apresentaram erro médio inferior a 20% para a maioria dos cenários, considerado tipicamente baixo para modelos analíticos. Ainda, com um tempo de execução na casa dos milissegundos, este modelo se mostrou eficaz para a reconfiguração dinâmica de sistemas paralelos, tarefa importante na garantia de qualidade de serviço das aplicações massivas em dados. Ambos os modelos fork/join e de precedência de tarefas são comparados com o modelo de simulação DagSim, considerado estado da arte para previsão de desempenho de aplicações Hadoop e Spark.
publishDate 2019
dc.date.issued.fl_str_mv 2019-07-15
dc.date.accessioned.fl_str_mv 2022-08-10T19:28:11Z
dc.date.available.fl_str_mv 2022-08-10T19:28:11Z
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 http://hdl.handle.net/1843/44157
url http://hdl.handle.net/1843/44157
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/3.0/pt/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/3.0/pt/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Minas Gerais
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Ciência da Computação
dc.publisher.initials.fl_str_mv UFMG
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv ICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
publisher.none.fl_str_mv Universidade Federal de Minas Gerais
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFMG
instname:Universidade Federal de Minas Gerais (UFMG)
instacron:UFMG
instname_str Universidade Federal de Minas Gerais (UFMG)
instacron_str UFMG
institution UFMG
reponame_str Repositório Institucional da UFMG
collection Repositório Institucional da UFMG
bitstream.url.fl_str_mv https://repositorio.ufmg.br/bitstream/1843/44157/5/license.txt
https://repositorio.ufmg.br/bitstream/1843/44157/4/Dissertacao-Tulio-Aprovada-Catalografica-Final-2022.pdf
https://repositorio.ufmg.br/bitstream/1843/44157/2/license_rdf
bitstream.checksum.fl_str_mv cda590c95a0b51b4d15f60c9642ca272
f776634c896dfb8f4fac8db03fd41d97
cfd6801dba008cb6adbd9838b81582ab
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)
repository.mail.fl_str_mv
_version_ 1797970962710265856