Return to search

PIPEL: modelo de gerência da elasticidade para aplicações organizadas em pipeline

Submitted by Silvana Teresinha Dornelles Studzinski (sstudzinski) on 2016-10-05T11:54:31Z
No. of bitstreams: 1
Vinícius Meyer_.pdf: 1508817 bytes, checksum: caf4a7d85be91f78b827610620bae299 (MD5) / Made available in DSpace on 2016-10-05T11:54:32Z (GMT). No. of bitstreams: 1
Vinícius Meyer_.pdf: 1508817 bytes, checksum: caf4a7d85be91f78b827610620bae299 (MD5)
Previous issue date: 2016-08-23 / Nenhuma / No ambiente da computação workflows tornam-se um padrão crescente para diversos experimentos científicos. Workflows científicos são compostos por várias aplicações estruturadas em um fluxo de atividades, onde o resultado de uma delas torna-se a entrada de outra. Uma aplicação pipeline é um tipo de workflow que recebe um conjunto de tarefas, as quais devem passar por todas as fases desta aplicação de forma sequencial, o que pode levar a um tempo de execução proibitivo. Tendo em vista este problema, aplicações pipeline podem se beneficiar da utilização de recursos distintos para cada um dos estágios, ou seja, executadas em plataformas distribuídas. Entretanto, dependências e necessidade especificas da computação distribuída surgem devido à interação entre os estágios de processamento e a grande quantidade de dados que devem ser processadas. O fluxo de entrada para aplicações que utilizam padrões pipeline pode ser intenso, inconstante ou irregular. De acordo com o comportamento do fluxo de tarefas, alguns estágios da aplicação podem ter seu desempenho prejudicado, atrasando os estágios subsequentes e por fim interferindo no desempenho da aplicação. Uma alternativa para resolver isto é alocar o máximo de recursos disponíveis (over-provisioning) em cada estágio da aplicação. Entretanto, esta técnica pode gerar um alto custo de infraestrutura, além da possibilidade que em alguns momentos os recursos fiquem ociosos. Sendo assim, a elasticidade em ambiente de nuvem computacional aparece como uma alternativa, explorando o conceito “pagar somente pelo que usar” (pay-as-you-go). Nesse contexto é proposto um modelo de elasticidade baseado
na camada PaaS (Plataform as a Service) da nuvem, intitulado de Pipel. Este modelo permite que aplicações pipeline tirem vantagem do provisionamento dinâmico de recursos da infraestrutura de nuvem computacional. Pipel utiliza uma abordagem reativa, fazendo uso de thresholds para a tomada de decisões da elasticidade, baseados na carga de CPU das máquinas virtuais em cada estágio da aplicação. Cada estágio possui um balanceador de carga (chamado de controlador de estágio) e um determinado número de recursos em operação. O controlador do estágio recebe as tarefas que o estágio deve executar, as aloca em uma fila onde são distribuídas nas máquinas virtuais disponíveis em seu estágio. De acordo com regras estabelecidas Pipel realiza ações de elasticidade sobre o ambiente de nuvem. Para validar esta proposta foi desenvolvido um protótipo, o qual foi testado em dois cenários: (i) sem uso de elasticidade e (ii) com uso da elasticidade. Em cada cenário utilizou-se quatro cargas de processamento: (i) Crescente; (ii) Decrescente; (iii) Constante e (iv) Oscilante. Os resultados apresentam uma redução de 38% no tempo da execução da aplicação com o uso da elasticidade provida por Pipel. / In the computing environment workflows has become a standard for many scientific experiments. Scientific workflows consist of several applications structured in an activity flow, where the output of one becomes the input of another. A pipeline application is a type of workflow that receives a set of tasks, which must pass through all stages of this application in a sequential manner, which can lead to a prohibitive execution time. Considering this problem, pipeline
applications can benefit from the use of different resources for each stage, or performed in a distributed way. However, specific dependencies and distributed computing problems arise due to the interaction between the processing stages and the mass of data that must be processed. The input stream for applications that use pipeline standards can be intense, erratic or irregular. According to the task flow behavior some stages may have degraded performance, delaying subsequent stages and ultimately interfering in the application’s performance. An alternative to solve this is to allocate the maximum available resources (over-provisioning) in each application stage. However, this technique can generate a high infrastructure costs and the possibility that some resources remain idle in certain moments. Thus, the elasticity in cloud computing environments appears as an alternative, exploring the pay-as-you-go concept. In this context, we propose an elastic model based on the PaaS layer (Platform as a Service) cloud, named Pipel. This model allows pipeline applications to take advantage of the dynamic resource provisioning capabilities of cloud computing infrastructure. Pipel uses a reactive approach, using thresholds for elasticity decisions based on the CPU load of virtual machines in each application stage. Each stage has a load balancer (called stage controller) and a number of operating resources. The stage controller receives the tasks that the stage should run, allocates in a queue and then distribute the tasks in virtual machines available at each stage. According to established rules Pipel performs elasticity actions on the cloud environment. To validate this proposal we developed a prototype that has been tested in two different scenarios: (i) without elasticity and (ii) with elasticity. In each scenario we used four different processing loads: (i) Increasing; (ii) Decreasing; (iii) Constant and (iv) Oscillating. The results showed a reduction of 38% of the application’s execution time using the elasticity provided by Pipel.

Identiferoai:union.ndltd.org:IBICT/oai:www.repositorio.jesuita.org.br:UNISINOS/5772
Date23 August 2016
CreatorsMeyer, Vinícius
Contributorshttp://lattes.cnpq.br/2332604239081900, Righi, Rodrigo da Rosa
PublisherUniversidade do Vale do Rio dos Sinos, Programa de Pós-Graduação em Computação Aplicada, Unisinos, Brasil, Escola Politécnica
Source SetsIBICT Brazilian ETDs
LanguagePortuguese
Detected LanguagePortuguese
Typeinfo:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis
Sourcereponame:Repositório Institucional da UNISINOS, instname:Universidade do Vale do Rio dos Sinos, instacron:UNISINOS
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0031 seconds