pei fan*, ji wang, zibin zheng, michael r. lyu toward optimal deployment of communication-intensive...
TRANSCRIPT
Pei Fan*, Ji Wang, Zibin Zheng, Michael R. Lyu
Toward Optimal Deployment of Communication-Intensive Cloud Applications
1
ContentIntroduction
Related work
System Architecture
Cluster-Based Method
Experiments
Conclusion and Future Work
2
Introduction (1/4)Similar to traditional component-based
systems , the cloud service provider need to select a number of cloud nodes to user for deploying a cloud application in a cloud.
How to make optimal deployment of cloud applications is a challenging and urgent required research problem.
3
Introduction (2/4)There are two types of common cloud applications:
computation-intensive and communication-intensive applications
Computation-intensive: cloud nodes do not communicate with each other frequently (e.g., BONIC). Ranking-based can select a set of optimal cloud nodes for optimal deployment purpose.
Communication-intensive: use ranking-based or other methods selecting optimal cloud nodes for communication-intensive application is not proper, since communication performance between cloud nodes needs to be considered.
4
Introduction (3/4)An example Assuming a user wants to deploy a MPI program on a cloud
and needs to select two cloud nodes for this MPI application. As illustrated in Figure 1, there are totally four available cloud nodes in the cloud
Figure 1. Cloud Node Ranking by Average Response Time
If we rank these available node candidates via their average response time, then nodes A and D will be selected as the best performing nodes for the MPI application. However, the responsetime between A and D is 3 seconds, and not the optimal select.5
Introduction (4/4)The contribution of this paper is two-fold:
We identify the critical problem of selecting optimal cloud nodes for communication-intensive cloud applications and propose a clustering-based method to address this problem. Based on our method, optimal cloud nodes can be efficiently and effectively determined for communication-intensive cloud applications.
Real-world experiments are conducted to compare our method with other methods. We deploy several well known MPI programs on a real-world cloud, PlanetLab The experimental results show the effectiveness of our proposed approach.
6
Related Work Based on the cloud node QoS performance, a number of selection and schedule strategies have been proposed in the recent literature. The major approaches can be divided into three types:
Random appraoches (use random methods to select nodes)
Ranking or rating approaches (cloud nodes is ranked by the order of QoS performance).
Matching approaches (matching algorithms are employed to compare the users’requirements and the QoS values of cloud nodes).
7
System Architecture (1/2)The cloud node selection problem as shown in Figure 2:
Figure 2. cloud nodes selection
8
System Architecture (2/2)The optimal cloud nodes selection framework as
shown
in Figure 3:
Figure 3. cloud nodes selection Architecture
Details of steps please see in paper.9
Cluster-Based Method (1/8)Cluster-Based Method designed as a three-phase
process:
Step 1: Selecting initial centroids
Step 2: Clustering Analysis
Step 3: Selection
Details of these phase are presented in the following.
10
Cluster-Based Method (2/8)Select Initial Centroids
Choosing proper initial centroids is a key step of the cluster
analysis procedure. Although it is easy to choose initial centroids
randomly, the cluster results are often poor.
p1p1
p2p2
p3p3
In general, in a data space, dataobjects in lower density area areusually regarded as noise objects.As shown in Figure 3. p1, p2 and p3 are noise points.
Figure 3. High and low-density areas11
Cluster-Based Method (3/8)Select Initial Centroids
In our approach, we use the response time between two nodes to represent the distance between them.
Definition 1: The neighborhood of a cloud node p, denoted by N(p), is defined by N(p)={q∊ D|dist(p,q)<DIST}, where DIST is a threshold of response time between two cloud nose. D is a set of existing cloud nodes. dist(pi, pj) denotes the distance between two cloud nodes.
Definition 2: A cloud node p that in the high density ara should satisfy the following condition
Num(N(p))>NUMBERWhere NUMBER is a threshold of the number of neighborhood nodes.
12
Cluster-Based Method (4/8)Select Initial Centroids
Let H={yi|1 ≤i ≤m} be the set of cloud node in the high-density areas. The initial centroids will be selected from H.
The cloud node which has the largest number of neighbors is selected as the centroid z1, and should satisfy the following condition:
Num(N(z1)) ≥ max{Num(N(yi))|yi ∈ H}. (1)
We select second centroid z2 is the node that has the greatest distance from z1, and the third one z3 has satisfy the below condition:
min{dist(z3, z1), dist(z3, z2)} =max{min{dist(yi, z1), dist(yi, z2)}|yi ∈ H}.
Similarly, the kth centroid zk needs to satisfy:
min{dist(zk, zi)|1 ≤ i < k} =max{min{dist(yj, zi)|1 ≤ i < k}|yj ∈ H}. ( 2)
13
Cluster-Based Method (5/8)Clustering analysis
In our approach, we divide the cloud nodes into different clusters based on the response time between different nodes. The response times between nodes can be represented as an n by n matrix.
Figure . 4 response time matrix
We use pi to represent the vector of response times from node i to other nodes. i.e., pi = (xi1, xi2, . . . , xin).
14
Cluster-Based Method (6/8)Clustering analysis
A cluster analysis algorithm is designed to divide the cloud nodes into K clusters, denoted by C = {C1, C2, . . . , CK}
In our approach, we use the average distance between pi and all the cloud nodes of one cluster to represent the distance between a node and a cluster. The average distance calculate by Eq. (3)
Kj Cpj
ij Kkxd
E:
1 ,1
(3)
where d is the number of cloud nodes in the k-th cluster Ck.
15
Algorithm 1: The algorithm of cluster analysis16
Cluster-Based Method (8/8)Selection After clustering, these cloud nodes are assigned to
different clusters. Therefore, we can select the cluster by the RTT of every cluster that user require. RTT calculated by:
n
nikiC
nRTT
1(4)
After selecting clusters, we can rank the nodes in selectedcluster by their performance.
perf=λ×calc+(1-λ) ×comm (5)
17
Experiments (1/7)Experiment Setup
We have deployed our experiments on PlanetLab. Our experimental environment consists of 100 distributed nodes
which serve as cloud nodes. The schedule node and database server are also deployed on PlanetLab nodes. The parameter of experiment shown in Table 1.
Cluster number 4
λ 0.5
DIST 100 ms
NUMBER 25
18
Experiments (2/7)Experiments Setup
In the experiments, we run different cloud node selection approaches for a MPI benchmark, called NASA NPB. To compare the performance of Cluster-based method against other schedule algorithm, we use the following metric via NPB:
Makespan: The makespan of a job is defined as the duration between sending out a job and receiving a correct result
Throughput: The throughput of a job is defined as the total million operations per second rate (Mop/s) rate over the number of processes.
19
Experiments (3/7)Performance Comparison
To study the cluster-based method performance, we compare our method with the following four methods:
Random: Random-based cloud nodes selection method.
RankRes: Ranking cloud nodes with respect to the free
memory and CPU time
RankComm: Ranking cloud nodes with respect to communication performance.
RankAll: ranking cloud nodes with respect to both the computing power and communication ability.
20
Table 2 and Table 3 show the running of the different benchmarks. The numbers 8,16 indicate the numbers of the used cloud nodes
Experiments (4/7)
Table 2. Comparison of makespan
Table 3. Comparison of Throughput
21
Experiments (5/6)Compare of initial centroids selection method
Table 4. Comparison of centroids selection method
22
Impact of parameters
1) Impact of Class number: In this section, we will analyze the impact of different number of clusters by vary it from 2 to 10 with the step value 1. Figure .5 shown the results
Experiments (6/7)
Figure 5. Makespan of different cluster number23
Experiments (7/7) Impact of parameters
1) Impact of λ : We change the value of λ from 0 to 1 with a step value of 0.1. The results shown in Figure 6.
Figure 6. Makespan of different λ values24
Conclusion and Future Work In this paper, we propose a clustering-based cloud node
selection approach for communication-intensive cloud applications. By taking advantage of the cluster analysis, our approach not only considers the QoS values of cloud nodes, but also considers the relationship (i.e., response time) between cloud nodes.
Our future work include consider the topology structure of cloud node , the load balance for cloud nodes and fault tolerant cluster
25
ThanksQ&A
26