29.11.2012 Views

2nd USENIX Conference on Web Application Development ...

2nd USENIX Conference on Web Application Development ...

2nd USENIX Conference on Web Application Development ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Resp<strong>on</strong>se time (ms)<br />

Resp<strong>on</strong>se time (ms)<br />

800<br />

700<br />

600<br />

500<br />

400<br />

300<br />

200<br />

Add a DB<br />

at 160EBs<br />

SLO<br />

Add an App<br />

at 270EBs<br />

100 Add a DB Add a DB<br />

0<br />

at 90EBs at 210EBs<br />

0 50 100 150 200 250 300 350 400 450<br />

800<br />

700<br />

600<br />

500<br />

400<br />

300<br />

200<br />

EBs<br />

(a) First group<br />

Add a DB<br />

at 130EBs<br />

SLO<br />

Add a DB<br />

at 300EBs<br />

100<br />

0<br />

Add a DB<br />

at 60EBs<br />

Add an App<br />

at 220EBs<br />

0 50 100 150 200 250 300 350 400 450<br />

EBs<br />

(b) Sec<strong>on</strong>d group<br />

Figure 9: Provisi<strong>on</strong>ing TPC-W under increasing workload<br />

ing the SLO. We also record the instance c<strong>on</strong>figurati<strong>on</strong>s<br />

at each adaptati<strong>on</strong>. Figure 10(a) shows the throughputs<br />

achieved by each provisi<strong>on</strong>ing technique during a single<br />

run of the system under increasing workload and the corresp<strong>on</strong>ding<br />

instance c<strong>on</strong>figurati<strong>on</strong>s at each adaptati<strong>on</strong>.<br />

The three provisi<strong>on</strong>ing systems use the exact same instances<br />

in the same order so their respective performance<br />

can be compared.<br />

“Worst-case Provisi<strong>on</strong>ing” decides to provisi<strong>on</strong> the applicati<strong>on</strong><br />

server tier at each adaptati<strong>on</strong> and finally supports<br />

around 150 EBs with 5 instances. “Homogeneous<br />

Provisi<strong>on</strong>ing” and “Adaptive Provisi<strong>on</strong>ing” both decide<br />

to provisi<strong>on</strong> new instances to the database server tier at<br />

the first and sec<strong>on</strong>d adaptati<strong>on</strong>. However, they achieve<br />

different throughput at the first two adaptati<strong>on</strong>s. The<br />

throughput difference is caused by the different load balancing<br />

capability of adapting to heterogeneous instances<br />

used in each provisi<strong>on</strong> technique. At the third adaptati<strong>on</strong>,<br />

“Adaptive Provisi<strong>on</strong>ing” decides to assign the new instance<br />

to the applicati<strong>on</strong> server tier while “Homogeneous<br />

Provisi<strong>on</strong>ing” decides to assign the same new instance<br />

to the database server tier. After the third adaptati<strong>on</strong>,<br />

“Adaptive Provisi<strong>on</strong>ing” supports around 420 EBs while<br />

0<br />

0 2 4 6 8 10<br />

Number of instances<br />

(a) Throughput comparis<strong>on</strong> of single round<br />

<str<strong>on</strong>g>USENIX</str<strong>on</strong>g> Associati<strong>on</strong> <strong>Web</strong>Apps ’11: <str<strong>on</strong>g>2nd</str<strong>on</strong>g> <str<strong>on</strong>g>USENIX</str<strong>on</strong>g> <str<strong>on</strong>g>C<strong>on</strong>ference</str<strong>on</strong>g> <strong>on</strong> <strong>Web</strong> Applicati<strong>on</strong> <strong>Development</strong> 59<br />

Throughput (number of EBs)<br />

Throughput (number of EBs)<br />

600<br />

500<br />

400<br />

300<br />

200<br />

100<br />

600<br />

500<br />

400<br />

300<br />

200<br />

100<br />

Adaptive Provisi<strong>on</strong>ing<br />

Homogeneous Provisi<strong>on</strong>ing<br />

Worst-case Provisi<strong>on</strong>ing<br />

2AS+3DB<br />

20% throughput gain<br />

1AS+3DB<br />

1AS+4DB<br />

1AS+3DB<br />

1AS+2DB<br />

1AS+2DB<br />

3AS+1DB<br />

1AS+1DB 2AS+1DB 4AS+1DB<br />

Adaptive Provisi<strong>on</strong>ing<br />

Homogeneous Provisi<strong>on</strong>ing<br />

Worst-case Provisi<strong>on</strong>ing<br />

0<br />

0 1 2 3 4 5 6<br />

Number of instances<br />

(b) Statistical comparis<strong>on</strong> of throughput over multiple rounds<br />

Figure 10: Throughput comparis<strong>on</strong> of three provisi<strong>on</strong>ing<br />

techniques<br />

“Homogeneous Provisi<strong>on</strong>ing” supports around 350 EBs.<br />

This represents a 20% gain in throughput.<br />

We then run the same experiment 5 rounds, each with<br />

a different set of EC2 small instances. Within each<br />

round, we measure the throughput achieved by each provisi<strong>on</strong>ing<br />

technique using a certain number of instances.<br />

The throughputs achieved in different rounds are different<br />

due to the performance heterogeneity of small instances.<br />

Figure 10(b) shows the average and standard<br />

deviati<strong>on</strong> of the throughput achieved by each provisi<strong>on</strong>ing<br />

technique across multiple rounds. As previously,<br />

the “Worst-case Provisi<strong>on</strong>ing” behaves as the statistical<br />

lower bound of the achievable throughput of TPC-W <strong>on</strong><br />

EC2. When taking the first adaptati<strong>on</strong>, “Adaptive Provisi<strong>on</strong>ing”<br />

and “Homogeneous Provisi<strong>on</strong>ing” behave similar<br />

in terms of achieved throughput. However, when taking<br />

more adaptati<strong>on</strong>s, “Adaptive Provisi<strong>on</strong>ing” supports<br />

17% higher throughput than “Homogeneous Provisi<strong>on</strong>ing”.<br />

This dem<strong>on</strong>strates that our system makes more<br />

efficient use of heterogeneous instances in Cloud and<br />

achieves higher throughput using the same resources.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!