apresentação do artigo "reducing costs of spot instances via checkpointingin the amazon...

32
Reducing Costs of Spot Instances via Checkpointing in the Amazon Elastic Compute Cloud Luiz Augusto Amelotti Rafael Perdigão Bonutti

Upload: luiz-amelotti

Post on 09-Jul-2015

53 views

Category:

Documents


0 download

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

Page 1: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Luiz Augusto AmelottiRafael Perdigão Bonutti

Page 2: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

• Artigo apresentado na CLOUD 2010• Sangho Yi

• Derrick Kondo

• Artur Andrzejak

Page 3: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 4: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Spot Instances

Oferece modelo de cobrança diferenciado

Page 5: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 6: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Spot Instances

Page 7: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 8: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 9: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Falhas

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

Page 10: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 11: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Função densidade de probabilidade

Page 12: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 13: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 14: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 15: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 16: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 17: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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)

Page 18: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 19: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 20: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 21: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Análise do custo

1

0

),())(()(rt

k

bskip ukftTrktH

1

0

1

0

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

k

t

k

cbbtake tTukftTukfrkH

Page 22: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 23: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 24: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Resultados – preço total da tarefa

Page 25: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Resultados – tempo de execução

Page 26: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Resultados - combinados

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

Page 27: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 28: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Resultados – preço médio

Page 29: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Resultados – delayed termination

Page 30: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 31: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

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

Page 32: Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Dúvidas/Perguntas