• No se han encontrado resultados

CAPÍTULO IV: DESARROLLO DEL TEMA

4.2. Resultados

4.2.2 Grupo de clientes actuales y potenciales

The research methodology of the thesis can be seen as similar to the Design Science Research Methodology [109], which is an iterative process. The main processing steps can be discussed as the following:

• Understanding of the problem: The first step is to gain conceptual understanding of the problem domain, i.e., autoscaling in the cloud. This is achieved by a large amount of literature review. At the very early stage of the research, the concrete research direction may not be obvious, thus a general understanding of a wide ranges of problem in cloud computing is needed. As the knowledge is built, the research direction is then gradually converge to the related problem for autoscaling in the cloud, which is now the formal problem addressed in this thesis

• Suggestions and Hypothesis: In this step, potential issues and gaps in current re-search are identified. These issues are the keys that should be investigated clearly

when reading each related work. Some hypothesis about the possible solution to those issues are made, and they can influence the search key words in the literature review process. For example, when machine learning is identified as one possible so-lution to the problem of QoS modeling in the cloud, then a new phase of search key words can be added: machine learning AND cloud computing AND QoS modelling OR performance modelling

• Prototyping: This step requires implementation and development work to realize the concepts developed in the previous stage. It also require close investigation of some related techniques form other fields, e.g., machine learning and optimization algorithms. It is worth noting that from this stage forward, the research can go back to the first step if serious issues (e.g., wrong understanding of the problem) are found or incorrect hypothesis is made in the previous step.

• Evaluation: Once the prototype has been completed, qualitative and quantitative evaluation can be carried out. In particular, qualitative evaluation is achieved by examining how well the prototype realize the concepts against design criteria, while quantitative evaluation is based on experiments run in a controlled environments.

When the results do not meet with expectations, then it is necessary to iterative back to step 1 or 2 for invalidating the knowledge and hypothesis.

• Conclusion: The final step is concerned with formally positioning the contributions and reporting on the results found in the research process.

1.6 Contributions

There are numbers of steps that have been taken to tackle the aforementioned research questions and objectives. Collectively, as an ultimate result of this thesis, those steps have leaded to a holistic, self-aware and self-adaptive autoscaling framework that is able

to optimise the QoS and costs for all cloud-based services, with limited human intervention and design time knowledge. This framework consists of different components, each deals with a different category of research questions presented in Section 1.3. Particularly, this thesis draws several novel contributions, which are listed in Table 1.3.

Table 1.3: The Detailed Contributions of The Thesis

Contribution Addressed

RQ 1. A set of common criteria that can be used to assessed and compared existing autoscaling approach in the cloud. Additionally, a taxonomy is produced deriving from these criteria and the corresponding compar-isons. Finally, a survey that provides the key background information, strengths, weakness and categorisation of existing approaches for au-toscaling in the cloud.

2. Autoscaling architecture leverages the self-awareness principle and capabilities.

RQ 1.1. and RQ 1.2.

• A mapping between self-awareness capabilities and the important components in autoscaling by leveraging the general principle of self-awareness. This mapping justifies the need of self-awareness capability at different levels and provides a concise understanding about how self-awareness can be applied to resolve the challenges for autoscaling in the cloud.

• An autoscaling architecture that is built using self-aware patterns [39]. The proposed architecture not only describes how the self-awareness capabilities are encapsulated into components, but also ex-presses their potential interactions, which help to better consolidate different levels of self-awareness.

• By leveraging self-awareness, the autoscaling framework realises bi-directional adaptation. That is to say, it is not only able to adapt the underlying cloud-based services and VMs, but also able to fur-ther consolidate itself by acquiring the knowledge about itself and the environment through different self-awareness capabilities.

3. Self-aware and self-adaptive QoS modelling approach for autoscaling in the cloud.

RQ 2.1. to RQ 2.4.

• A fine-grained and generic QoS model, which is designed to handle dynamic and uncertain QoS sensitivity; and to incorporate information of the uncertain QoS interference caused by the cloud-based services co-located on a VM and the VMs co-hosted on a PM.

• An in-depth analysis on the correlations of selected cloud primi-tives to the model accuracy in the cloud; in particular, this analysis shows how the model accuracy can be affected by the selected cloud primitives.

• A self-aware and self-adaptive technique, namely hybrid dual-learners, to determine which and the cloud primitives correlates with the QoS on the fly using information theory [130]. This technique has been diverged into four variations, which are experimentally compared and evaluated.

• A suitability analysis of different learning algorithm for modelling QoS against different QoS attributes. Particularly, three widely used machine learning algorithms are examined, including Artificial Neural Network (ANN) [119], Auto-Regressive Moving Average with eXoge-nous inputs model (ARMAX) [22] and Regression Tree (RT) [117].

• A self-aware and self-adaptive solution, namely adaptive multi-learners, to dynamically model how the cloud primitives correlates with the QoS. The proposed solution is not only able to dynamically correlate the selected cloud primitives to the QoS, but also to adap-tively select the best learning algorithm and its resulting model during prediction in cloud.

• The QoS modelling approach is experimentally evaluated using RU-BiS [5] benchmark and FIFA 98 workload trend [14]. This is achieved by comparing to various other state-of-the-art approaches; and un-der four commonly used QoS attributes, these are: Response Time, Throughput, Reliability and Availability. The evaluation criteria have been on accuracy, stability, sensitivity to the online data size and effi-ciency.

4. Self-aware and self-adaptive mechanism that adapts the granularity of control in autoscaling.

RQ 3.1. to RQ 3.3.

• A self-aware, self-adaptive and two-phase region clustering mech-anism that clusters the QoS and cost objectives into sensitivity inde-pendent regions. The basic principle behind the notions of sensitivity independent regions is that it is possible to reach globally-optimal re-sult (with respect to the QoS and cost of all cloud-based services) by asynchronously finding locally-optimal results within each sensitivity independent region. This can eventually shrink the search space and reduce overhead.

• The mechanism is experimentally evaluated via hypothetical sce-narios, which contain different numbers of services. This is achieved by comparing with existing solutions that statically operate on dif-ferent fixed granularities of control, including cloud-level, PM-level, VM-level and service-level. The achieved globally-optimal result and the produced overhead are assessed.

5 Self-aware and self-adaptive trade-off decision making approach for autoscaling in the cloud.

RQ 4.1. to RQ 4.3.

• In light of many successful applications of metaheuristics algorithms in the cloud, we present self-aware and self-adaptive decision making process where the core is a Multi-Objective Ant Colony Optimisation (MOACO) algorithm that designed to search the optimal (or near-optimal) trade-offs decisions for autoscaling in the cloud. This ap-proach eliminates the need for specifying weights in the objective for-mulation and is able to handle trade-offs caused by naturally conflicted objectives and QoS interference. In addition, the stochastic nature of MOACO allows it to achieve good coverage in the trade-offs surface, and thus improving diversity in the trade-offs decisions. The search process in our MOACO is similar to conduct many single objective op-timisations in one run, which aims to optimise and make trade-offs for a larger number of objectives than the commonly used 2 to 4 objectives (i.e., up to 30 objectives in our experiments).

• A triple mechanism, namely compromise-dominance, for finding well-compromised trade-offs based on superiority and fairness of the decisions. The former is measured by pareto-dominance [67], and the latter is achieved via nash-dominance [108] and the distance of de-cisions measurement. The mechanism is able to dynamically achieve well-balanced improvements and degradations for the objectives, with-out being guided by weights in the objective formulation.

• The trade-off decision making approach is experimentally evalu-ated, again, using RUBiS [5] benchmark and FIFA 98 workload trend [14]. This is achieved by comparing our results to those of four widely used approaches for autoscaling: rule-based, single-objective heuristic based, single-objective randomised and multi-objective genetic algo-rithm based; and under four commonly used QoS attributes, these are:

Response Time, Throughput, Reliability and Availability. These ap-proaches are critically examined in terms of their quality of trade-offs, violations on SLA and budget requirements, over-/under-provisioning and overhead.

Documento similar