Please use this identifier to cite or link to this item: http://repositorio.unicamp.br/jspui/handle/REPOSIP/322699
Type: DISSERTAÇÃO DIGITAL
Degree Level: Mestrado
Title: Mecanismos para escalonamento de aplicações MapReduce de diferentes prioridades
Title Alternative: Scheduling mechanisms for MapReduce applications with distinct priorities
Author: Souza, Augusto Rodrigues de, 1985-
Advisor: Garcia, Islene Calciolari, 1971-
Abstract: Resumo: Em 2004, o Google surpreendeu a comunidade de sistemas distribuídos ao divulgar como funcionava seu framework de MapReduce e seu sistema de arquivos distribuído. Tal inovação rapidamente chamou a atenção das comunidades de software livre e diversos sistemas de MapReduce de código aberto foram criados implementando as ideias divulgadas pelo Google. Neste trabalho, focamos nossa atenção em dois deles, chamados Hadoop e Disco. O primeiro é desenvolvido principalmente em Java e o segundo em Erlang e discutimos um pouco sobre como essas linguagens influenciaram a arquitetura e o funcionamento destes sistemas. Focamos em especial em como esses sistemas trabalham com cargas heterogêneas, ou seja, compostas por aplicações de pesquisa (baixa prioridade e longa duração) e de produção (alta prioridade e baixa duração) em um mesmo cluster. Analisamos a fundo como esses sistemas funcionam, principalmente, quais são os mecanismos que auxiliam na tomada de decisão sobre agendamento de tarefas aos escalonadores. Por fim, propusemos o uso de uma política de escalonamento Fair e baseada em preempção de tarefas para auxiliar o escalonador do Disco a dar ênfase à aplicação de produção sem deixar de ser justo, ou seja, faz com que rapidamente a aplicação de produção atinja a quantidade de recursos do cluster que por justiça pertencem à ela em uma divisão justa dos mesmos. Para isso tarefas da aplicação menos prioritária (de pesquisa) sofrem preempção. Contribuímos para as comunidades do Hadoop e do Disco ao longo desse mestrado: colaboramos na codificação de uma política de preempção e checkpointing ao Hadoop e desenvolvemos uma política justa e que se utiliza de preempção no Disco para priorizar as aplicações de produção com resultados significativos no tempo de execução da nossa carga experimental. Outra contribuição deste trabalho é uma interface Web auxiliar ao Disco para reprodução dos nossos experimentos

Abstract: In 2004, Google released a paper in which they described how their MapReduce framework worked and how they structured their distributed file system. This innovation made the open software communities to organize themselves in order to develop open source alternatives for the Google's MapReduce framework. In this work, we focused in two of these systems: Hadoop and Disco. The former was developed mainly in Java and the later in Erlang, and we also discuss how these languages influenced the architecture and the behavior of these systems. Especially we looked to how these systems address the problem related to heterogeneous workloads which are composed of research applications (low priority and long duration) and production (high priority and short duration) in the same cluster. We analyzed deeply how these systems work and which are the mechanisms they use to help in the scheduling decision making. Lastly, we proposed the use of a Fair scheduling policy based in using preemption of tasks to guide the scheduler of Disco to give emphasis to the production application without giving up of being fair. As a consequence the production application quickly gets the resources designated to it in a Fair division. For this to happen, tasks with the lower priority application (research) are affected by preemption. We also contributed to the communities of Hadoop and Disco: we collaborated in the development of a preemption policy and checkpointing service for Hadoop and developed a Fair scheduling policy based on preemption for Disco to help it prioritize production applications with good results in the execution time for our experimental workload. Another contribution of this work was a Web interface for Disco to help in the reproduction of our experiments
Subject: Sistemas distribuídos
MapReduce (Programação paralela distribuída)
Processamento eletrônico de dados - Processamento distribuído
Editor: [s.n.]
Citation: SOUZA, Augusto Rodrigues de. Mecanismos para escalonamento de aplicações MapReduce de diferentes prioridades. 2017. 1 recurso online (76 p.). Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: <http://www.repositorio.unicamp.br/handle/REPOSIP/322699>. Acesso em: 1 set. 2018.
Date Issue: 2017
Appears in Collections:IC - Tese e Dissertação

Files in This Item:
File SizeFormat 
Souza_AugustoRodriguesDe_M.pdf3.77 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.