39
An Online Auction Framework for Dynamic Resource Provisioning in Cloud Computing Weijie Shi*, Linquan Zhang + , Chuan Wu*, Zongpeng Li + , Francis C.M. Lau* *The University of Hong Kong + University of Calgary

An Online Auction Framework for Dynamic Resource Provisioning in Cloud Computing Weijie Shi*, Linquan Zhang +, Chuan Wu*, Zongpeng Li +, Francis C.M. Lau*

Embed Size (px)

Citation preview

An Online Auction Framework for Dynamic Resource

Provisioning in Cloud Computing

Weijie Shi*, Linquan Zhang+, Chuan Wu*, Zongpeng Li+, Francis C.M. Lau*

*The University of Hong Kong+University of Calgary

Fixed Pricing

• Amazon EC2

Why Online Auction?

• Effectively reflect market dynamics– Need no estimation– Discover the “right price”– Bring more profit than fixed pricing

Related Work

• Amazon Spot Instance– Not truthful

• When clouds meets Ebay (Infocom 2012)– Only one round

• COCA (Infocom 2013)– “A Framework for Truthful Online Auctions in Cloud

Computing with Heterogeneous User Demands”

– Only one type of VM

Properties

• Online– Users’ demands arrive over time. Provider

responds instantly, with no prior information• Combinatorial

– Multiple types of Vms– Dynamic resource provisioning

Our Contributions

• Three main modules– Translating online optimization into a series of

one-round optimization problems Aonline

– Design a truthful auction for one-round allocation problems Around

– Design an approximation algorithm for one-round optimization problems

• Social welfare competitive ratio:– In typical scenarios

Model

Datacenters

Cloud provider

Users

Valuation Quantity

Model

Datacenters

Cloud provider

Users

Allocation Decision

Model• At time slot t, user n, k-th bundle

– Specify # type m VM at each datacenter q – Valuation for this bundle

– Win at most one bundle in one round: = 0 or 1

2 VM1 + 3 VM2 + 5 VM3 $10 OR4 VM1 + 1 VM2 + 3 VM3 $8

Model

• User Budget – Connects different rounds

• Social welfare = total valuation– Maximize

The amount of resources in one bundle

Total amount of resources

Valuation

Allocation

Budget

Online Problem

• What difficulties could the budget bring?– One item each round– Greedy vs Optimal

User A Bn=$20

Round 1 $6Round 2 $7Round 3 $10

User B Bn=$20

Round 1 $3Round 2 $6Round 3 $2

Online Problem

• What difficulties could the budget bring?User A

Round 1 $6

Remaining Budget: $14

User B

Round 1 $3

Remaining Budget: $20

Online Problem

• What difficulties could the budget bring?User A

Round 1 $6Round 2 $7

Remaining Budget: $7

User B

Round 1 $3Round 2 $6

Remaining Budget: $20

Online Problem

• What difficulties could the budget bring?User A

Round 1 $6Round 2 $7Round 3 $10

Remaining Budget: $7

User B

Round 1 $3Round 2 $6Round 3 $2

Remaining Budget: $18

Online Problem

• What difficulties could the budget bring?

Greedy algorithm: social welfare $15

User A Bn=$20

Round 1 $6Round 2 $7Round 3 $10

User B Bn=$20

Round 1 $3Round 2 $6Round 3 $2

Online Problem

• What difficulties could the budget bring?

Greedy algorithm: social welfare $15Optimal solution: social welfare $22

User A Bn=$20

Round 1 $6Round 2 $7Round 3 $10

User B Bn=$20

Round 1 $3Round 2 $6Round 3 $2

Lesson Learned

• Do not exhaust users’ budgets early– Lose all the opportunities on this user– But, how to seize the best opportunity?– Classic online optimization dilemma

Budget Coefficient

• Higher priority for user with higher (remaining) budget – Original valuation × Budget coefficient1

The Online Framework Aonline

: adjusted valuation, multiplying the original valuation with

The Online Framework Aonline

Run Around based on the adjusted valuation.

Suppose Around gives us a good solution for the one-round problem

The Online Framework Aonline

Update the value of budget coefficient after each round, based on the ratio of consumed budget and the total budget.

Example

• We simulate the online framework on the previous example– Only one item, so Around simply choose the user

with largest adjusted valuation

User A Bn=$20

Round 1 $6Round 2 $7Round 3 $10

User B Bn=$20

Round 1 $3Round 2 $6Round 3 $2

Example

User A Bn=$20 xn=0

Round 1 $6Adjusted: $6*(1-0)=$6

Update: xn=0.24

User B Bn=$20 xn=0

Round 1 $3Adjusted: $3*(1-0)=$3

Example

User A Bn=$20 xn=0.24

Round 1 $6Round 2 $7Adjusted: $7*(1-0.24)=$5.32

User B Bn=$20 xn=0

Round 1 $3Round 2 $6Adjusted: $6*(1-0)=$6

Update: xn=0.24

Example

User A Bn=$20 xn=0.24

Round 1 $6Round 2 $7Round 3 $10Adjusted: $10*(1-0.24)=$7.6

Update: xn=0.76

User B Bn=$20 xn=0.24

Round 1 $3Round 2 $6Round 3 $2Adjusted: $2*(1-0.24)=$1.52

Greedy algorithm: social welfare $15Optimal solution: social welfare $22Online algorithm: social welfare $22

One-round Auction Design

• Truthfulness– No user can gain unfair utility by manipulating the

results• Payment is the key in satisfying truthfulness

– Provide monetary incentives to encourage truthful bidding

– Can be very difficult to design• VCG Auction

– A useful mechanism in achieving truthfulness

VCG Auction

• Calculate the exact optimal allocation (cannot be approximate solution)– NP-hard in our one-round allocation problem

• Decide the payment rule by opportunity cost– Guarantee truthfulness

One-round Allocation

: Adjusted valuation: Resources required in a bundle: Total resources: Decision variable, bundle allocated or not

(NP-Hard)

Fractional VCG

• Relax on • Calculate optimal fractional allocation: LP• Use the same payment rule• But, fractional allocation is infeasible

– Cannot provide 0.3 instance of VM– Decompose the fraction solution into a

combination of integer solutions– The allocation in expectation remains the same

Randomized Decomposition

User A User B User CFractional solution: 0.3 0.8 0.5

Decomposed 1 1 0 Pr = 0.3Integer solution 0 1 1 Pr = 0.5 0 0 0 Pr = 0.2

Scale-down ratio

Randomized Decomposition

• Scale-down the optimal fraction solution by some ratio– Divide the solution by a ratio (integrality gap of

the LP/IP)• Solve the dual of the decomposition problem

Randomized Decomposition

• Difficulty: too many constraints– Cannot be input directly– Simulated by an equivalent oracle

• Search for the solution: ellipsoid method– An approximation algorithm for the one-round

problem is employed as an oracle– Find a cutting plane and narrow down the ellipsoid

at each iteration– Finish in polynomial iterations

One-round AllocationDual variable of the resource constraint. Acts as the unit price of each type of resources

Divide the valuation of a bundle by the cost of a bundle. (Profit compared with cost)

Update the unit price of recourses. Higher price with larger amount of consumed resources.

Theoretical Analysis

• Around is a truthful auction with ≈λ-competitive ratio– λ is the competitive ratio of the one-round

approximation algorithm, as well as the scale-down ratio

• Aonline is a truthful auction with ≈λ-competitive ratio– A binary search process can improve the

performance in average cases

Simulation

• Simulation setup– Google cluster trace– 6 types of VMs, 3 types of resources – 3 datacenters– 3 bundles each user– 300 ~ 3000 users– 300 ~ 3000 rounds

Simulation

• With different numbers of usersAlloc: online allocation algorithm

AucBS: online auction with binary search improvement

Auc: online auction with original decomposition method

Simulation

• With different numbers of roundsAlloc: online allocation algorithm

AucBS: online auction with binary search improvement

Auc: online auction with original decomposition method

Simulation

• With different numbers of datacenters (using AucBS)

Conclusion

• Combine three algorithms– An online framework which monitors each user’s

budget– A randomized auction based on the fractional VCG

algorithm and the ellipsoid algorithm– An approximation algorithm for the one-round

problem, employed as the oracle in the ellipsoid algorithm

• Future work: auctions on bandwidth