SlideShare uma empresa Scribd logo
1 de 32
Baixar para ler offline
Reducing Costs of Spot
Instances via Checkpointing
in the Amazon Elastic
Compute Cloud
Luiz Augusto Amelotti
Rafael 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ções
Notaçã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

Mais conteúdo relacionado

Semelhante a Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud"

Aula 3 técnicas de teste de software1
Aula 3   técnicas de teste de software1Aula 3   técnicas de teste de software1
Aula 3 técnicas de teste de software1
Tiago Vizoto
 
Usiminas - SAP Forum Brasil
Usiminas - SAP Forum BrasilUsiminas - SAP Forum Brasil
Usiminas - SAP Forum Brasil
Uri Tenzer
 
Gerenciamento do tempo em projetos de software utilizando o método da corrent...
Gerenciamento do tempo em projetos de software utilizando o método da corrent...Gerenciamento do tempo em projetos de software utilizando o método da corrent...
Gerenciamento do tempo em projetos de software utilizando o método da corrent...
Daniel Ettinger
 

Semelhante a Apresentação do artigo "Reducing Costs of Spot Instances via Checkpointingin the Amazon Elastic Compute Cloud" (20)

Kanban
KanbanKanban
Kanban
 
Tuning de performance_qmeeting2018
Tuning de performance_qmeeting2018Tuning de performance_qmeeting2018
Tuning de performance_qmeeting2018
 
Uso Do Arena Em Simulacao
Uso Do Arena Em SimulacaoUso Do Arena Em Simulacao
Uso Do Arena Em Simulacao
 
Aula 3 técnicas de teste de software1
Aula 3   técnicas de teste de software1Aula 3   técnicas de teste de software1
Aula 3 técnicas de teste de software1
 
MFV - Instrucional.pptx
MFV - Instrucional.pptxMFV - Instrucional.pptx
MFV - Instrucional.pptx
 
TCO e otimização de custos na AWS
TCO e otimização de custos na AWSTCO e otimização de custos na AWS
TCO e otimização de custos na AWS
 
Webinar: Introdução a Big data
Webinar: Introdução a Big dataWebinar: Introdução a Big data
Webinar: Introdução a Big data
 
DevOps
DevOps DevOps
DevOps
 
Algoritmo de escalonamento Fuzzy Round Robin
Algoritmo de escalonamento Fuzzy Round RobinAlgoritmo de escalonamento Fuzzy Round Robin
Algoritmo de escalonamento Fuzzy Round Robin
 
Amazon EC2 avançado
Amazon EC2 avançadoAmazon EC2 avançado
Amazon EC2 avançado
 
Usiminas - SAP Forum Brasil
Usiminas - SAP Forum BrasilUsiminas - SAP Forum Brasil
Usiminas - SAP Forum Brasil
 
Utilizando SCRUM em Contratos de Preço-Fixo
Utilizando SCRUM em Contratos de Preço-FixoUtilizando SCRUM em Contratos de Preço-Fixo
Utilizando SCRUM em Contratos de Preço-Fixo
 
Tco Nuvem Economia
Tco Nuvem EconomiaTco Nuvem Economia
Tco Nuvem Economia
 
Introducao+ao+amazon+ec2+ +ricardo+geh
Introducao+ao+amazon+ec2+ +ricardo+gehIntroducao+ao+amazon+ec2+ +ricardo+geh
Introducao+ao+amazon+ec2+ +ricardo+geh
 
Tutorial visão automação de testes e casper js
Tutorial visão automação de testes e casper jsTutorial visão automação de testes e casper js
Tutorial visão automação de testes e casper js
 
Tutorial - Visão sobre Automação de Testes com CasperJS
Tutorial - Visão sobre Automação de Testes com CasperJSTutorial - Visão sobre Automação de Testes com CasperJS
Tutorial - Visão sobre Automação de Testes com CasperJS
 
Rio Cloud Computing Meetup 25/01/2017 - Lançamentos do AWS re:Invent 2016
Rio Cloud Computing Meetup 25/01/2017 - Lançamentos do AWS re:Invent 2016Rio Cloud Computing Meetup 25/01/2017 - Lançamentos do AWS re:Invent 2016
Rio Cloud Computing Meetup 25/01/2017 - Lançamentos do AWS re:Invent 2016
 
Gerenciamento do tempo em projetos de software utilizando o método da corrent...
Gerenciamento do tempo em projetos de software utilizando o método da corrent...Gerenciamento do tempo em projetos de software utilizando o método da corrent...
Gerenciamento do tempo em projetos de software utilizando o método da corrent...
 
Gerenciamento de Estoques Determinísticos no Varejo do Agronegócios
Gerenciamento de Estoques Determinísticos no Varejo do AgronegóciosGerenciamento de Estoques Determinísticos no Varejo do Agronegócios
Gerenciamento de Estoques Determinísticos no Varejo do Agronegócios
 
Aula 5
Aula 5Aula 5
Aula 5
 

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

  • 1. Reducing Costs of Spot Instances via Checkpointing in the Amazon Elastic Compute Cloud Luiz Augusto Amelotti Rafael Perdigão Bonutti
  • 2. • Artigo apresentado na CLOUD 2010 • Sangho Yi • Derrick Kondo • Artur Andrzejak
  • 3. 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
  • 4. Spot Instances Oferece modelo de cobrança diferenciado
  • 5. 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
  • 7. 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
  • 8. Definições Notaçã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
  • 9. Falhas • Preço do recurso x Preço limite definido pelo usuário
  • 10. 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
  • 11. Função densidade de probabilidade
  • 12. 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
  • 13. 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
  • 14. 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
  • 15. 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
  • 16. 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
  • 17. 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)
  • 18. 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
  • 19. 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
  • 20. 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
  • 21. Análise do custo     1 0 ),())(()( rt k bskip ukftTrktH        1 0 1 0 )(),()(),()( r ct k t k cbbtake tTukftTukfrkH
  • 22. 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
  • 23. 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
  • 24. Resultados – preço total da tarefa
  • 25. Resultados – tempo de execução
  • 26. Resultados - combinados • Preço total x Tempo de execução
  • 27. 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
  • 29. Resultados – delayed termination
  • 30. 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
  • 31. 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