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 A online – Design a truthful auction for one-round allocation problems A round – Design an approximation algorithm for one-round optimization problems • Social welfare competitive ratio: – In typical scenarios
Model Valuation Quantity Cloud provider Datacenters Users
Model Allocation Decision Cloud provider Datacenters Users
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 VM 1 + 3 VM 2 + 5 VM 3 $10 OR 4 VM 1 + 1 VM 2 + 3 VM 3 $8
Model • User Budget – Connects different rounds Valuation • Social welfare = total valuation Allocation – Maximize Budget The amount Total amount of resources of resources in one bundle
Online Problem • What difficulties could the budget bring? – One item each round – Greedy vs Optimal User A B n =$20 User B B n =$20 Round 1 $6 Round 1 $3 Round 2 $7 Round 2 $6 Round 3 $10 Round 3 $2
Online Problem • What difficulties could the budget bring? User A User B Round 1 $6 Round 1 $3 Remaining Remaining Budget: $14 Budget: $20
Online Problem • What difficulties could the budget bring? User A User B Round 1 $6 Round 1 $3 Round 2 $7 Round 2 $6 Remaining Remaining Budget: $7 Budget: $20
Online Problem • What difficulties could the budget bring? User A User B Round 1 $6 Round 1 $3 Round 2 $7 Round 2 $6 Round 3 $10 Round 3 $2 Remaining Remaining Budget: $7 Budget: $18
Online Problem • What difficulties could the budget bring? User A B n =$20 User B B n =$20 Round 1 $6 Round 1 $3 Round 2 $7 Round 2 $6 Round 3 $10 Round 3 $2 Greedy algorithm: social welfare $15
Online Problem • What difficulties could the budget bring? User A B n =$20 User B B n =$20 Round 1 $6 Round 1 $3 Round 2 $7 Round 2 $6 Round 3 $10 Round 3 $2 Greedy algorithm: social welfare $15 Optimal solution: social welfare $22
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 coefficient 1
The Online Framework A online : adjusted valuation, multiplying the original valuation with
The Online Framework A online Run A round based on the adjusted valuation. Suppose A round gives us a good solution for the one-round problem
The Online Framework A online 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 A round simply choose the user with largest adjusted valuation User A B n =$20 User B B n =$20 Round 1 $6 Round 1 $3 Round 2 $7 Round 2 $6 Round 3 $10 Round 3 $2
Example User A B n =$20 x n =0 User B B n =$20 x n =0 Round 1 $6 Round 1 $3 Adjusted: Adjusted: $6*(1-0)= $6 $3*(1-0)= $3 Update: x n =0.24
Example User A B n =$20 x n =0.24 User B B n =$20 x n =0 Round 1 $6 Round 1 $3 Round 2 $7 Round 2 $6 Adjusted: Adjusted: $7*(1-0.24)= $5.32 $6*(1-0)= $6 Update: x n =0.24
Example User A B n =$20 x n =0.24 User B B n =$20 x n =0.24 Round 1 $6 Round 1 $3 Round 2 $7 Round 2 $6 Round 3 $10 Round 3 $2 Adjusted: Adjusted: $10*(1-0.24)= $7.6 $2*(1-0.24)= $1.52 Update: x n =0.76 Greedy algorithm: social welfare $15 Optimal solution: social welfare $22 Online 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 (NP-Hard) : Adjusted valuation : Resources required in a bundle : Total resources : Decision variable, bundle allocated or not
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 C Fractional solution: 0.3 0.8 0.5 Decomposed 1 1 0 Pr = 0.3 Integer 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 Allocation Dual 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 • A round is a truthful auction with ≈λ -competitive ratio – λ is the competitive ratio of the one-round approximation algorithm, as well as the scale- down ratio • A online 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 users Alloc: online allocation algorithm AucBS: online auction with binary search improvement Auc: online auction with original decomposition method
Simulation • With different numbers of rounds Alloc: 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
Recommend
More recommend