Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic...

Post on 09-Jul-2015

51 views 0 download

Tags:

description

Apresentação e análise do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud", apresentado na conferência CLOUD 2010 por Yi, Kondo e Andrzejak.

Transcript of Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic...

Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud

Luiz Augusto AmelottiRafael Perdigão Bonutti

• Artigo apresentado na CLOUD 2010• Sangho Yi

• Derrick Kondo

• Artur Andrzejak

Amazon EC2

• Amazon Elastic Compute Cloud• Serviço que provê recursos computacionais, sob demanda, na

nuvem

• Imagens pré-configuradas de VMs• Possibilidade de se criar a própria imagem (AMI)

• Possível selecionar o cluster onde a VM vai executar• EUA

• Europa

• Asia

• 3 tipos de instâncias• Reserved

• On Demand

• Spot

Spot Instances

Oferece modelo de cobrança diferenciado

Spot Instances

• Permite usar recursos ociosos do EC2

• Instância executa enquanto valor do recurso não ultrapassar um limite definido pelo usuário

• O valor do recurso muda de acordo com a oferta e demanda de recursos e média dos valores limites dos usuários

• Ótimo para aplicações que suportem flexibilidade na disponibilidade

• Custo x Disponibilidade

Spot Instances

Proposta e Objetivos

• Motivação• Minimizar custos• Variação do valor dos recursos de acordo com

oferta/demanda• Amazon começa a oferecer Spot Instances a partir de

dezembro/2009• Preços bem inferiores que instâncias padrão

• Avaliar o uso de estratégias de Checkpointing• Minimizar os custos monetários• Maximizar a confiabilidade

• Estudos a partir de históricos reais de preços da Amazon• Estudar estratégias que se adaptam à variação de preço

DefiniçõesNotação Definição

tr Tempo restante de processamento

tc Tempo para o próximo checkpoint

ta Tempo para avaliar o histórico de preços para obter f(t, ub)

r Tempo para reiniciar uma tarefa de processamento

ub Valor limite definido pelo usuário

f(t, ub) FDP de ocorrência de uma falha

e(t, ub) FDP de ocorrência de uma subida de preço dos recursos

ne Quantidade de aumentos de preços (rising edges) em um intervalo de tempo

me(ub) Quantidade média de aumentos de preços em um intervalo de disponibilidade

T(t) Tempo total esperado para executar uma tarefa, sem checkpoints

Htake(t) Tempo esperado de recuperação com checkpoints horários

Hskip(t) Tempo esperado de recuperação sem checkpoints horários

Etake(t) Tempo esperado de recuperação com checkpoints em rising edges

Eskip(t) Tempo esperado de recuperação sem checkpoints em rising edges

Falhas

• Preço do recurso x Preço limite definido pelo usuário

Função densidade de probabilidade

• Distribuição de probabilidade caso a variável

aleatória seja contínua

• Probabilidade de falha

• Probabilidade de aumento de preço (rising

edge)

• t – tempo desde o último checkpoint• ub – valor limite definido pelo usuário

),( butf

),( bute

Função densidade de probabilidade

Tempo de recuperação esperado

• Permitir recuperação do processamento de um ponto específico

• Na ocorrência de uma falha• Sem checkpoint: retornar ao início• Com checkpoint: retornar a um ponto intermediário

Checkpoint

• Ocorrência de falhas x Tempo total para executar uma tarefa

• Em uma base regular, criar “pontos” com informações do atual estado da tarefa de processamento

• Reduzir tempo para finalizar o processamento

• Permitir recuperação do processamento de um ponto específico

Checkpoint

• Tarefa tem de suportar a instabilidade do ambiente• Web crawling• Análise de dados• Transformação de dados

• Onde armazenar os dados? Na própria Amazon• SimpleDB• Elastic Block Storage• Amazon SQS

Modelos de Checkpointing

• Caso ótimo

• Sem checkpointing

• Checkpointing baseado no tempo

• Checkpointing baseado na alteração do preço

• Checkpointing com desições adaptativas

• Combinações das estratégias anteriores

Modelos de Checkpointing

Nome Descrição

Ótimo Caso ótimo, checkpoints sempre logo antes das falhas

Nenhum Sem nenhum checkpoint

H Checkpoints baseados no tempo (horário)

E Checkpoints baseados na mudança de preço (subida)

AH Checkpoints adaptativos baseados no tempo

AE Checkpoints adaptativos baseados na mudança de preço

H+E Checkpoints no tempo e na mudança de preço

H+AE Checkpoints no tempo e adaptativos na mudança de preço

AH+E Checkpoints adaptativos no tempo e na mudança de preço

AH+AE Checkpoints adaptativos no tempo e adaptativos na mudança de preço

AF(10) Adaptativo, a cada 10 minutos decide o que fazer

AF(30) Adaptativo, a cada 30 minutos decide o que fazer

Modelos de Checkpointing

• Baseado em tempo

• Checkpoints tomados em intervalos regulares de tempo

• Intuitivo

• Acompanha a cobrança

• Pode ser feito em intervalos menores (30 min)

Modelos de Checkpointing

• Baseado nos aumentos de preços (rising edges)

• Checkpoints tomados sempre que houver um aumento do preço dos recursos

• Pode falhar quando ocorre um aumento muito grande repentinamente

Modelos de Checkpointing

• Decisões adaptativas - baseado no tempo ou na alteração do preço dos recursos

• Avalia os custos de um criar um checkpoint

• Decide se cria ou não o checkpoint, baseado na opção de menor custo

Análise do custo

• Htake – Tempo esperado de recuperação com checkpoints horários

• Hskip – Tempo esperado de recuperação sem checkpoints horários

• Etake – Tempo esperado de recuperação com checkpoints em rising edges

• Eskip – Tempo esperado de recuperação sem checkpoints em rising edges

Análise do custo

1

0

),())(()(rt

k

bskip ukftTrktH

1

0

1

0

)(),()(),()(r ct

k

t

k

cbbtake tTukftTukfrkH

Delayed Termination

• Uma maneira de ganhar em cima da política da Amazon

• Quando um instância é terminada pela Amazon, a última hora parcial não é cobrada

• pt x preço/hr

Setup

• 42 tipos de instâncias avaliados. Hoje são cerca de 72

• Todas as 12 políticas foram testadas

• Código-fonte do simulador disponível em

spotckpt.sourceforge.net

Resultados – preço total da tarefa

Resultados – tempo de execução

Resultados - combinados

• Preço total x Tempo de execução

Resultados – Preço médio

• Produto normalizado de preço total x tempo de execução

• Valor médio baseado no histórico de preços

• Checkpointing baseado em tempo conseguiu reduzir significativamente melhor o custo final

• Resultados entre 30% ~ 45% do melhor caso

Resultados – preço médio

Resultados – delayed termination

Resultados – resultados gerais

• Checkpointing baseado em tempo se mostrou melhor na maioria dos casos

• Decisões adaptativas não mostraram impacto significante

• Estratégias de checkpointing apresentaram desempenho ~50% maior que o melhor caso

• É necessário buscar melhor estratégia

Trabalhos futuros

• Estudar relações entre preços passados e futuros

• Desenvolver política eficiente de checkpointing que minimize custos e tempo de execução

• Desenvolver modelo de decisão para o preço limite do usuário, dados requisitos de performance e confiabilidade

• Avaliar modelos propostos em outros fornecedores de IaaS

Dúvidas/Perguntas