@ -236,7 +236,7 @@ Nevertheless, there are certainly advances to be made by having some amount of c
<!-- challenges of autoscalers: See Qu et al Auto-scaling web applications -->
\nop
\nop{}
{\renewcommand{\arraystretch}{1.5}
\begin{table}[h!]
\centering
@ -512,13 +512,13 @@ Horovitz and Arian \cite{EfficientCloudAutoScalingSLA_2018} proposed an algorith
It is important to note that this solution is not a full autoscaler by itself:
instead it is a machine learning algorithm that only learns and suggests the ideal thresholds for scaling.
For example, "to not raise response time above 100ms, add more replicas when CPU utilization is above 78.5%".
This makes the operation more transparent to the cluster administrator and requires less trust, as the administrators remains in full control.
This makes the operation more transparent to the cluster administrator and requires less trust, as the administrator remains in full control.
<!-- At its core is the reinforcement learning-based Q-Learning approach but it is enhanced with several optimizations for faster convergence. -->
As the name suggest, Q-Threshold leverages a Q-Learning algorithm and is enhanced with several optimizations for faster convergence.
Q-learning is a model-free reinforcement-learning algorithm that learns the optimal actions in state space through a reward function.
In the context of horizontal scaling the goal of Q-Learning is finding the optimal autoscaling policy while obeying a specified SLA.
Therefore, the reward function needs to tradeoff SLA violations (in their case response time, which should be as low as possible) for resource utilization (which should be as high as possible).
Therefore, the reward function needs to trade-off SLA violations (in their case response time, which should be as low as possible) for resource utilization (which should be as high as possible).
When the SLA is violated, the reward is negative.
The authors have conducted extensive simulations with different variations of their algorithm and found satisfying results: Q-Threshold completely avoids SLA violations and has a stable behavior when scaling due to workload changes.