6.6 Implications for practice and further research
6.6.2 Implications for further research
Um conjunto de métricas para a medição da elasticidade foi proposto por Herbst, Kounev e Reussner (2013), apresentando as ideias de velocidade e precisão da escalabilidade. Métricas específicas para elasticidade foram propostas baseada em tempos de operações e recur- sos, denominadas Elasticidade de Scaling Up e Elasticidade de Scaling Down. Essas métricas consideram a quantidade de recursos alocados e o intervalo de tempo dispendido durante perío- dos de subprovisionamento e sobreprovisionamento. Entretanto este trabalho é motivacional, e não há a realização de experimentos. Também não foram avaliados os períodos de tempo entre estados sobreprovisionados e subprovisionados.
Baseado nas ideias de Herbst, Kounev e Reussner (2013), propomos métricas ori- entadas aos tempos de execução de operações de alocação de recursos, e consideramos os pe- ríodos de tempo entre estados sobreprovisionados e subprovisionados, denominados estados transitórios, e também propomos métricas para avaliar situações de estabilidade. Adicional- mente propusemos métricas baseadas na utilização de recursos para cada um dos estados de alocação. Não foi proposta uma métrica específica para elasticidade, e sim métricas secundá- rias, que permitem o apoio e análise da elasticidade em ambientes. Além disso, Herbst, Kounev e Reussner (2013) utilizaram medidas de tempo e recursos, agregando seus valores médios, para compor métricas específicas para a medição da elasticidade, diferentemente de nossa maneira de cálculo. Por fim, não foram realizados experimentos em seu trabalho.
Em nosso trabalho, definimos o termo “estabilizado” como a situação onde a alo- cação dos recursos permanece a mesma, ou seja, não há adição ou remoção de recursos. O período de em tempo que ocorrer esta situação será considerado como um intervalo de tempo estabilizado. O termo “transitório” foi definido como o tempo entre estados no qual o ambiente ainda está se adaptando às ações de elasticidade, ou seja, ainda está sofrendo os efeitos das ações para que o aumento ou redução de recursos seja efetivado, não estando ainda disponíveis. Quatro métricas relacionadas ao tempo de execução de operações no ambiente fo- ram propostas: Tempo de Alocação Sobreprovisionada, Tempo de Alocação Subprovisionada, Tempo de Alocação Estabilizada e Tempo de Alocação Transitória. O Tempo de Alocação Sobreprovisionado (TASo) corresponde ao tempo utilizado para a execução de operações de
remoção de recursos. O Tempo de Alocação Subprovisionada (TASu) corresponde ao tempo utilizado para a execução de operações de adição de recursos. O Tempo de Alocação Estabi- lizada (TAE) corresponde ao intervalo de tempo onde não há adição ou remoção de recursos, sendo que a alocação permanece a mesma, ou estabilizada. O Tempo de Alocação Transitória (TAT ) corresponde ao tempo em que os efeitos da adição ou remoção de recursos estão em progresso.
Também foram considerados os recursos envolvidos nas operações de alocação e desalocação. Três métricas foram propostas: Total de Recursos Alocados Subprovisionados, Total de Recursos Alocados Sobreprovisionados e Total de Recursos Alocados Estabilizados. O Total de Recursos Alocados Subprovisionados (T RASu) corresponde à quantidade de recursos alocados em um estado subprovisionado, mas não estabilizado. O Total de Recursos Alocados Sobreprovisionados (T RASo) corresponde à quantidade de recursos alocados em um estado sobreprovisionado, mas não estabilizado. O Total de Recursos Alocados Estabilizados (T RAE) corresponde à quantidade de recursos alocados em um estado estabilizado.
Especificamente para a métricas orientadas à recursos, consideramos recursos como qualquer recurso utilizado pelo ambiente que possa ser adicionado ou removido para ações de ajuste da capacidade do ambiente. Exemplos de recursos são: máquinas virtuais (instâncias que podem ser adicionadas ou removidas), réplicas (que podem ser geradas e adicionadas e removidas), e unidades de processamento (capacidade de aumentar ou diminuir recursos de infraestrutura, como CPU e memória, a uma quantidade ou unidade pré-determinada). Assim, essas métricas são dependentes da infraestrura, pois vão depender da estratégia empregada.
Para as métricas orientadas a tempos de operações de alocação e desalocação de re- cursos, a estratégia de alocação e desalocação só influencia na duração, sendo assim, as métricas de tempo independentes da estratégia empregada, bastando apenas a coleta destes tempos. O que diferencia é que, como as estratégias são diferentes, o resultado das métricas podem demo- rar mais ou menos (variar para mais ou para menos). Um exemplo é uma estratégia que utilize migração de máquinas virtuais, que demoraria mais do que uma estratégia que apenas adiciona uma máquina virtual já pré-existente a um balanceador de carga. Existirão tempos para as 4 métricas, mas alguns variarão mais que outros devido à estratégia utilizada.
A Figura 4.1 descreve de forma gráfica e, somente para propósitos didáticos, as mé- tricas propostas relacionadas a tempos de alocação estabilizada, subprovisionada, sobreprovisi- onada e transitória. Adicionalmente, é possível analisar o comportamento das métricas propos- tas à quantidade de recursos em estados estabilizados, subprovisionados e sobreprovisionados. Esta figura é um modelo teórico, apenas para ilustar os pontos de controle e coleta dos tempos considerados nas métricas, e os períodos de tempo onde recursos estão alocados. Considerando um modelo em que as unidades de recursos são limitadas e atômicas, como a quantidade de máquinas virtuais, a ideia das métricas se adéqua aos deslocamentos na Figura 4.1. Em situa- ções mais realísticas, a estratégia de elasticidade pode ser horizontal ou vertical, e a forma de se calcular os tempos e a quantidade de recursos varia conforme a estratégia utilizada.
Na situação em azul consideramos como alocação estabilizada, o que significa que não há necessidade de aumentar ou reduzir recursos. É a situação onde os recursos do ambiente
Figura 4.1: Representação das métricas propostas para a análise da elasticidade em nuvem estão adequados às cargas de trabalho. Na situação em laranja ocorre a necessidade de mais recursos, por isso a capacidade deve aumentar, caso contrário violações de SLA ocorrerão. Na situação em verde ocorre a necessidade de reduzir recursos, por isso a capacidade deve diminuir, caso contrário estará entrado em uma situação de desperdício de recursos. A situação representada por um círculo preto é o intervalo em que a infraestrutura está se adaptando ao que foi adicionado ou removido de recursos. É o tempo que se gasta para que as operações de adição ou remoção de recursos tenham efeito no ambiente. Por isso ela sempre aparece após um momento de aumento e de redução de recursos. As métricas propostas orientadas a tempos de operações de alocação e desalocação de recursos correspondem aos tempos dos estados representados. As métricas propostas orientadas à quantidade de recursos correspondem à quantidade de recursos alocada aos estados representados.
É possível ter períodos em que não há estabilidade entre intervalos de coletas, re- presentados por linhas mais finas na Figura 4.1. Esta é uma situação onde há a necessidade de aumentar ou diminuir ainda mais os recursos, sem ter passado por um período de estabilidade de recursos, e depende do tamanho do intervalo de coleta definido.
TAT é o período de tempo representado pelo círculo preto, e em teoria existe entre todo ponto de mudança de estado de alocação de recursos ou passagem de um estado para outro. Caso TAT seja bem curto, o que depende da estratégia de elasticidade projetada para a nuvem, mesmo existindo ele poderá ser ignorado, pois em relação aos demais tempos ele será quase insignificante. Outra situação que pode ser desprezada caso seja relativamente curta são as situações em que não há estabilidade entre intervalos de coletas, podendo este tempo ser considerado pertencente a estados sobreprovisionados ou subprovisionados.
Utilizando um modelo apresentado para a representação de um provedor proposto por Costa et al. (2011), e considerando que os recursos de um provedor estão alocados em intervalos de tempo, então tem-se um ambiente de Computação em Nuvem A, para um período de tempo ∆T . Assim, formula-se a seguinte tupla:
Tabela 4.1: Métricas propostas orientadas a tempos de operações e a recursos alocados Métrica Descrição TASo = m
∑
1Ui Ui= período de tempo no estado de alocação subprovisionada
TASu =
m
∑
1
Oi Oi= período de tempo no estado de alocação sobreprovisionada
TAE =
∑
m1
Si Si= período de tempo no estado de alocação estabilizada
TAT =
∑
m1
Ti Ti= período de tempo no estado de alocação transitória
T RASu =
m
∑
1
Uri Uri= quantidade de recursos r no período de tempo i no estado de alo-
cação subprovisionada
T RASo =
m
∑
1
Ori Ori = quantidade de recursos r no período de tempo i no estado de
alocação sobreprovisionada
T RAE =
m
∑
1
Sri Scação estabilizadari= quantidade de recursos r no período de tempo i no estado de alo-
onde R corresponde à quantidade de recursos disponíveis no ambiente, N é a quantidade de intervalos de tempo de todo o período de tempo (dividindo o tempo total do experimento em períodos menores), os elementos U, O, S e T correspondem a conjuntos de intervalos referentes às métricas de tempo TASo, TASu, TAE e TAT , respectivamente, e os elementos Ur, Or e Sr correspondem a conjuntos de intervalos referentes às métricas de recursos T RASu, T RASo e T RAE, respectivamente.
A Tabela 4.1 exibe as métricas compostas por somatórios, consideradas métricas de referência, onde cada conjunto de intervalos pode ser vazio. A partir das métricas de referência, métricas secundárias podem ser derivadas a partir de seus valores totais, médios e percentuais, e assim servirem como análise complementar. A Tabela A.1 do Apêndice A exibe métricas complementares baseadas em tempos de alocação e desalocação de recursos, e a Tabela A.2 do Apêndice A exibe métricas complementares baseadas na quantidade de recursos.
A principal diferença entre as métricas propostas nesse trabalho e as propostas por Herbst, Kounev e Reussner (2013) é que existe o complemento de três métricas (TAE, TAT e T RAE), devido a uma necessidade de avaliar o ambiente durante períodos de estabilidade e transição, assim como seus recursos.