+ All Categories
Home > Documents > Proactive Prediction Models for Web Application Resource Provisioning in the Cloud...

Proactive Prediction Models for Web Application Resource Provisioning in the Cloud...

Date post: 17-Dec-2015
Category:
Upload: domenic-phelps
View: 217 times
Download: 1 times
Share this document with a friend
Popular Tags:
23
Proactive Prediction Models for Web Application Resource Provisioning in the Cloud _______________________________ Samuel A. Ajila & Bankole A. Akindele
Transcript

Proactive Prediction Models for Web Application Resource Provisioning in the Cloud

_______________________________

Samuel A. Ajila & Bankole A. Akindele

Presentation Outline

Introduction to Problem Area Motivation Goals and Scope Contributions Related work Machine learning algorithms Implementation setup Evaluation metrics Selected results Conclusion

2

Introduction

Cloud computing refers to both the applications delivered as services over the Internet and the hardware and systems software in the data centers that provide those services (SaaS, PaaS and IaaS)

Challenges include: Data security threats, performance unpredictability and prompt (quick) resource scaling

Accurate Virtual machine (VM) resource provisioning: • under and over-provisioning

Current techniques like Control theory, Constraint programming and Machine learning

3

Motivation

VM instantiation (scaling) takes time and ranges from 5 to 12 minutes

Challenges that can result from the instantiation duration:• Possibility of Service Level Agreement (SLA) violations -

Cloud providers• Poor customer’s Quality of Experience (QoE) – Cloud client• Reputation loss – Cloud client/providers

Presently, monitoring metrics made available to clients are limited to CPU, Memory and Network utilization

The motivation is to “predict resource usage so that cloud providers can make adequate provisioning ahead of time”

To extend the monitoring metrics by including Response time and Throughput

4

Goals and Scope

Design and develop a cloud client prediction model for cloud resource provisioning in a Multitier web application environment

The model would be capable of forecasting future resource usage to enable timely VM provisioning

To achieve this goal, SVM, NN and LR learning techniques are analysed using the Java implementation of TPC-W (workload)

The scope of this work is limited to IaaS Prediction model is built around the web server tier. It is

possible to extend to other tiers

5

Contributions

Design and development of a cloud client prediction model that uses historical data to forecast future resource usage

The evaluation of the resource usage prediction capability of SVM, NN and LR using three benchmark workloads from TPC-W

The extension of the prediction model to include Throughput and Response time, thus providing wider and better scaling decision options for cloud clients

The comparison of the prediction capability of SVM, NN and LR models under random and steady traffic patterns

6

Related works

Table 1: Auto-scaling techniques

7

Technique Class CommentsThreshold/Rule based

Reactive Reacts to system changes but do not anticipate them

Control theory Reactive/Proactive Except where used with a proactive approach it suffers reactive issues

Queuing theory Reactive As complexity of system grows, the analytic formulas become difficult

Reinforcement learning

Reactive/Proactive Good but converging at optimal policy can be unfeasibly long (state –action pairs)

Time series analysis Proactive Good and promising

Machine learning algorithms

Linear Regression The linear regression model has the form: (1) is the input data ’s are the unknown parameters estimated from the training data.

Estimation is done using the least squares method. The coefficients are picked to minimize the residual (difference

between the actual and predicted value) sum of squares : is the actual value

8

Machine learning algorithms (cont’d)

Neural Network A two-stage regression or

classification model represented by a network diagram

Derived features are created from linear combinations of the input after which the target is modeled as a linear combination of

Like Linear regression, unknown parameters called weights are sought to make the model fit the training data well

9Figure 1 : Single hidden layer, feed forward neural network

Machine learning algorithms (cont’d)

Support Vector Regression The goal of SVR is to find a function that has at most (the precision by

which the function is to be approximated) deviation from the actual obtained target for all training data

Mathematically, Input data is mapped to higher dimensional feature space via the

kernel function, then a linear regression is performed Goal is to find optimal weights and threshold

10

Architecture

11Figure 2 Implementation architecture

Implementation setup (cont’d)

Time (minutes) 1-7 56-63 154-161 350-357 490-497 504-511

Shopping mix users

84 168 16 180 248 160

Browsing mix users

52 112 36 320 192 160

Ordering mix users

52 108 28 224 268 160

Total user Requests

188 388 80 724 708 480

12

Total length of experiment was about 10 hours Selected experimental workload mix

Evaluation metrics

13

Evaluation is done on the 60% training and 40% held out test dataset

The held out dataset is used to forecast to a maximum interval of 12 minutes (VM instantiation time reported by other authors)

Performance metrics and their calculations

Metric Calculation MAPE (Mean Absolute Percentage Error)

1𝑛 σ | 𝑎𝑖−𝑝𝑖|𝑎𝑖𝑛𝑖=1 where 𝑎𝑖 and 𝑝𝑖 are the actual and predicted values

respectively RMSE (Root Mean Square Error)

√σ ( 𝑎𝑖−𝑝𝑖) 2𝑛𝑖=1 𝑛

MAE (Mean Absolute Error) 1𝑛 σ |𝑝𝑖 − 𝑎𝑖|𝑛𝑖=1

PRED 25 No. of observations with relative error ≤ 25% / No. of observation

CPU Training & Testing Performance

14

CPU Utilization Training and Testing Performance Metric for LR, NN, and SVR

LR (Linear Regression) Model MAPE RMSE MAE PRED(25) LR Training 113.31 14.70 11.11 0.51 LR Testing 36.19 22.13 15.98 0.36 NN (Neural Network) Model MAPE RMSE MAE PRED(25) NN Training 105.63 14.08 9.48 0.59 NN Testing 50.46 31.08 19.82 0.34 SVR(Support Vector Regression) Model MAPE RMSE MAE PRED(25) SVR Training 107.80 15.48 10.09 0.64 SVR Testing 22.84 11.84 8.74 0.64

Selected results (cont’d)

15

CPU utilization test performance metric

Model MAPE RMSE MAE PRED(25)LR 36.19 22.13 15.98 0.36NN 50.46 31.08 19.82 0.34SVR 22.84 11.84 8.74 0.64

Figure 5 CPU Utilization Actual and Predicted test model results

Selected results (cont’d)

16

Throughput test performance metric

Model MAPE RMSE MAE PRED(25)LR 24.62 3.72 2.87 0.63NN 38.90 6.12 4.46 0.47SVR 22.07 3.22 2.41 0.67

Figure 6 Throughput Actual and Predicted test model results

Selected results (cont’d)

17

Response time test performance metric

Model MAPE RMSE MAE PRED(25)LR 12.35 1.39 1.11 0.91NN 17.84 2.02 1.64 0.75SVR 9.92 1.21 0.87 0.93

Figure 7 Response time Actual and Predicted test model results

CPU - Comparison of Prediction Models

18

Throughput – Comparison of Prediction Models

19

Sensitivity Measurement Using Little’s Law

20

Data Consistency Measurement Using Little’s Law

Time (minute) 1-7 56-63 154-161

350-357

490-497

498-503

504-511

Average total user requests

27 (188/7)

55 (388/7)

11 (80/7)

103 (724/7)

101 (708/7)

95 (664/7)

69 (480/7)

Average Throughput (Requests/second)

5.29 10.52 2.47 15.92 10.00 12.23 13.27

Average time spent (seconds)

5.10 5.23 4.45 6.47 10.01 7.77 5.2

Measured time spent 4.66 4.92 9.92 7.53 9.06 9.01 9.45 Time variance (%) 9.44 6.31 55.14 14.08 10.49 13.76 44.97

Conclusion

SVR displayed superior prediction accuracy over both LR and NN in a typically nonlinear, not defined a-priori workload by:

In the CPU utilization prediction model, SVR outperformed LR and NN by 58% and 120% respectively

For the Throughput prediction model, SVR again outperformed LR and NN by 12% and 76% respectively; and finally,

The Response time prediction model saw SVR outperforming LR and NN by 26% and 80% respectively.

Based on this experimental results SVR may be accepted as the best prediction model in a nonlinear, not defined a-priori system

21

Future works

SVR and other machine learning algorithms are good for forecasting, however• training and retraining is a challenge• Parameter selection is still empirical

Combination of SVR and other predicting techniques may mitigate this challenge

Other future direction include• Inclusion of database tier for a more robust scaling

decision• Resource prediction on other non-web application

workload

22

Questions

23

Thank You


Recommended