Abstract
In public cloud domain, some cloud providers sell surplus resources in the form of spot instances to improve their profits. The average spot price is much cheaper than the on-demand options, which drives more and more cloud users to use spot instances to accelerate their services. However, the cloud user faces a challenge in determining the instance rental and management policy due to the unconventional pricing structure in the spot market and fluctuations in workload and spot price. In this work, we propose a dynamic bidding and resource management algorithm for the cloud user to cut down the instance rental bill in the spot market. The proposed algorithm operates in two timescales, i.e., it determines the bidding, instance rental, and job dispatching policy hourly and makes instances allocation decision in a finer granularity. The advantages of our approach are that it has a simple structure and needs no a priori statistical information of spot price and workload. We prove the optimality of the proposed algorithm and use extensive simulations to study its performance. It is shown that D-bid can save up to almost 70% of the rental cost compared to a baseline nonwork-conserving strategy.







Similar content being viewed by others
Notes
Since the cloud users are rationale and constrained by their budgets, it is unlikely for them to bid with an infinite price. Therefore, setting spot price to infinity is an unprofitable behavior for the cloud provider as no surplus resource will be sold. In practice, the upper bound \(c_j^{\max }\) can be set to an arbitrary large value. As analyzed in the following section, D-bid hardly chooses an unexpected high bidding price since its object is to minimize resource rental cost.
In this paper, t is a slot index and m is a frame index. We use “at time t” and “in time slot t” interchangeably. Time starts from the 0th slot. Since a frame contains T slots, we use mT to denote the first slot in frame m.
The capacity region \(\varLambda \) is defined as a set of arrival matrix where constraint (12) can be guaranteed by using our control framework.
Remember that a spot instance is charged only if no out-of-bid event occurs.
Here the system capacity stands for the service rate when maximum number of instances (\(x^\mathrm{o}_{\max }+x^\mathrm{s}_{\max }\)) are rented.
References
http://aws.amazon.com/ec2/purchasing-options/spot-instances/
Andrzejak A, Kondo D, Yi S (2010) Decision model for cloud computing under sla constraints. In: IEEE International Symposium on Telecommunication Systems (MASCOTS)
Ben-Yehuda OA, Ben-Yehuda M, Schuster A, Tsafrir D (2013) Deconstructing Amazon EC2 spot instance pricing. ACM Trans Econ Comput 1(3):1–16
Chaisiri S, Kaewpuang R, Lee BS, Niyato D (2011) Cost minimization for provisioning virtual servers in Amazon elastic compute cloud. In: 19th Annual IEEE International Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS)
Chen J, Wang C, Zhou BB, Lee LSYC, Zomaya AY (2011) Tradeoffs between profit and customer satisfaction for service provisioning in the cloud. In: ACM HPDC
Chen Y, Huang J, Xiang X, Lin C (2014) Energy efficient dynamic service selection for large-scale web service systems. In: IEEE International Conference on Web Services
Chohan N, Castillo C, Spreitzer M, Steinder M, Tantawi A, Krintz C (2010) See spot run: using spot instances for MapReduce workflows. In: USENIX HotCloud Workshop
Dadashov E, Cetintemel U, Kraska T (2014) Putting analytics on the spot: or how to lower the cost for analytics. IEEE Internet Comput 18(5):70–73
Li S, Zhou Y, Jiao L, Yan X, Wang X, Lyu MR (2014) Delay-aware cost optimization for dynamic resource provisioning in hybrid clouds. In: The 21st IEEE International Conference on Web Services (ICWS)
Liu H (2011) Cutting MapReduce cost with spot market. In: Proceedings of the 3rd USENIX Conference on Hot Topics in Cloud Computing (HotCloud)
Marathe A, Harris R, Lowenthal D, de Supinski BR, Rountree B, Schulz M (2014) Exploiting redundancy for cost-effective, time-constrained execution of hpc applications on Amazon EC2. In: Proceedings of the 23rd International Symposium on High-Performance Parallel and Distributed Computing (HDPC)
Neely MJ (2010) Stochastic Network Optimization with Application to Communication and Queueing Systems. Morgan & Claypool, San Rafael
Ren S, He Y, Xu F (2012) Provably-efficient job scheduling for energy and fairness in geographically distributed data centers. In: 32nd IEEE International Conference on Distributed Computing Systems (ICDCS)
Sharma B, Thulasiram RK, Thulasiraman P, Garg SK, Buyya R (2012) Pricing cloud compute commodities: a novel financial economic model. In: 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid)
Song K, Yao Y, Golubchik L (2013) Exploring the profit-reliability trade-off in Amazon’s spot instance market: a better pricing mechanism. In: IEEE/ACM 21st International Symposium on Quality of Service (IWQoS)
Song K, Yao Y, Golubchik L (2013) Improving the revenue, efficiency and reliability in data center spot market: a truthful mechanism. In: IEEE 21st International Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems (MASCOTS)
Song Y, Zafer M, Lee KW (2012) Optimal bidding in spot instance market. In: IEEE INFOCOM
Tang S, Yuan J, Li X (2012) Towards optimal bidding strategy for Amazon EC2 cloud spot instance. In: IEEE 5th International Conference on Cloud Computing (CLOUD )
Urgaonkar B, Kesidis G, Shanbhag UV, Wang, C (2013) Pricing of service in clouds: optimal response and strategic interactions. In: Workshop on Mathematical Performance Modeling and Analysis (MAMA)
Voorsluys W, Buyya R (2012) Reliable provisioning of spot instances for compute-intensive applications. In: 26th IEEE International Conference on Advanced Information Networking and Applications (AINA)
Wan J, Zhang R, Gui X, Xu B (2016) Reactive pricing: an adaptive pricing policy for cloud providers to maximize profit. IEEE Trans Netw Serv Manag 3(4):941–953
Wang D, Wang Y, Liu lichun, Xiao K, Li W, Qiu X (2013) Pricing reserved and on-demand schemes of cloud computing based on option pricing model. In: 15th Asia-Pacific Network Operations and Management Symposium (APNOMS)
Wang W, Liang B, Li B (2013) Revenue maximization with dynamic auctions in IAAS cloud markets. In: IEEE/ACM 21st International Symposium on Quality of Service (IWQoS)
Wieder A, Bhatotia P, Post A, Rodrigues R (2012) Orchestrating the deployment of computations in the cloud with conductor. In: 9th USENIX Symposium on Networked Systems Design and Implementation (NSDI)
Xu H, Li B (2013) Dynamic cloud pricing for revenue maximization. IEEE Trans Cloud Comput 1(2):158–171
Xu H, Li B (2013) A study of pricing for cloud resources. ACM Perform Eval Rev 40(4):3–12
Yao Y, Huang L, Sharma AB, Golubchik L, Neely MJ (2014) Power cost reduction in distributed data centers: a two-time-scale approach for delay tolerant workloads. IEEE Trans Parallel Distrib Syst 25(1):200–211
Yi S, Andrzejak A, Kondo D (2012) Monetary cost-aware checkpointing and migration on Amazon cloud spot instances. IEEE Trans Serv Comput 5(4):512–524
Yi S, Kondo D, Andrzejak A (2010) Reducing costs of spot instances via checkpointing in the Amazon elastic compute cloud. In: the 3rd International Conference on Cloud Computing (CLOUD), pp 236–243
Zaharia M, Borthakur D, Sarma JS, Elmeleegy K, Shenker S, Stoica I (2010) Delay scheduling: a simple technique for achieving locality and fairness in cluster scheduling. In: ACM EuroSys
Zaman S, Grosu D (2013) A combinatorial auction-based mechanism for dynamic vm provisioning and allocation in clouds. IEEE Trans Cloud Comput 1(2):129–141
Zhang Q, Zhu Q, Boutaba R (2011) Dynamic resource allocation for spot markets in cloud computing environments. In: the Fourth IEEE International Conference on Utility and Cloud Computing (UCC)
Zhao H, Pan M, Liu X, Li X, Fang Y (2012) Optimal resource rental planning for elastic applications in cloud market. In: IEEE 26th International Parallel and Distributed Processing Symposium (IPDPS)
Zhao J, Li H, Wu C, Li Z, Zhang Z, Lau FC (2014) Dynamic pricing and profit maximization for the cloud with geo-distributed data centers. In: IEEE INFOCOM
Zhou Z, Liu F, Jin H, Li B, Li B, Jiang H (2013) On arbitrating the power-performance tradeoff in saas clouds. In: Proceedings of IEEE INFOCOM
Zhou Z, Liu F, Xu Y, Zou R, Xu H, Lui JC, Jin H (2013) Carbon-aware load balancing for geo-distributed cloud services. In: IEEE 21st International Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems (MASCOTS)
Acknowledgements
This work is funded in part by the National Natural Science Foundation of China (NSFC) under Grant Nos. 61502255 and 61363052, the Inner Mongolia Provincial Natural Science Foundation under Grant No. 2014BS0607 and the Science Research Project for Inner Mongolia Universities under Grant No. NJZY14064.
Author information
Authors and Affiliations
Corresponding author
Appendices
Appendix 1: Proof of Theorem 1
Squaring the queueing dynamic (1) and using the fact that \((\max \{x,0\})^2\le x^2\), we have
Summing up the above equation over \([t, t+T-1]\) we have
Using a same reasoning we also have
Summing up Eqs. (30) and (31) over i and j, and taking expectation on both sides conditioned on queue state \(\theta (t)\), we have
Now adding \(V\mathbb {E}\left\{ \sum _j\left( x_j^\mathrm{o}(t)c_j^\mathrm{o}+x_j^\mathrm{s}(t)c_j^\mathrm{s}(t)1_j^{\mathrm{oob}}(t)\right) |\theta (t)\right\} \) to both sides completes the proof.
Appendix 2: Proof of Theorem 2
First we give a bound on future queue length in (15). Based on (1) and (8) we have
Further, from constraint (8) we have \(\sum _{k}r_{ikj}\le nr_{\max }\). Combining this with (2) we have
Hence,
Similarly we have
Taking the above two equations back to (15) we have
Rearranging the R.H.S. of (32) we obtain the result.
Appendix 3: Proof of Theorem 4
D-bid seeks to minimize the R.H.S. of (32), therefore
where \(\pi \) is any alternative policy other than D-bid which depends only on \(a_{ij}(t)\) and \(c_j^\mathrm{s}(t)\). Now letting \(\pi =\pi ^*\) and taking expectation over \(\theta (t)\) we have
Summing up the above equation over \(t=0, T,\ldots , (M-1)T\) and letting \(\delta \rightarrow 0\) we have
Dividing both sides by MV and letting \(M\rightarrow \infty \) proves part 1).
To prove part 2), observe \(\lambda +\epsilon {\mathbf {1}}\in \varLambda \) indicates the following Slater’s condition:
where \(o^{\pi '}_{\lambda +\epsilon {\mathbf {1}}}\) denotes the value of the object function under arrival matrix \(\lambda +\epsilon {\mathbf {1}}\) and control policy \(\pi '\). Plugging the above equations into the R.H.S. of (33) by letting \(\pi =\pi '\) we have
Taking expectation over \(\theta (t)\) and summing over \(t=0,T,\ldots ,(M-1)T\), and using the fact that \(\mathbb {E}\left\{ \sum _j\left( x_j^\mathrm{o}(mT)c_j^\mathrm{o}+x_j^\mathrm{s}(t)c_j^\mathrm{s}(mT)1_j^{\mathrm{oob}}(mT)\right) \right\} \ge o^*\) yields
Rearraying the terms, dividing both sides by \(MT\epsilon \), and letting \(M\rightarrow \infty \), we obtain
Since \(o^*\ge 0\) and \(o^{\pi '}_{\lambda +\epsilon {\mathbf {1}}}\le \sum _j \left( x_{\max }^\mathrm{o} c_j^\mathrm{o}+x_{\max }^\mathrm{s}c_j^{\max }\right) \), part 2) is proved.
Appendix 4: Proof of Theorem 5
Part 1. For a data center j, suppose that \(\sum _i q_{ij}(t)\le {\texttt {buffer}}_j\), we show that \(\sum _i q_{ij}(t+T)\le {\texttt {buffer}}_j\).
-
If \(\sum _i q_{ij}(t)\le \sum _i {Vc_j^\mathrm{o}\over Ts_i}\), since there are at most \(nkr_{\max }\) jobs can be routed to a data center in this frame, we have \(\sum _i q_{ij}(t+T)\le \sum _i {Vc_j^\mathrm{o}\over Ts_i}+nkr_{\max }\)
-
If \(\sum _i q_{ij}(t)> \sum _i {Vc_j^\mathrm{o}\over Ts_i}\), then at least one queue in data center j satisfies \(Vc_j^\mathrm{o}-Tq_{ij}(t)s_i<0\). According to the on-demand instance provisioning policy (24), broker j will rent \(x_{\max }^\mathrm{o}\) on-demand instances. The assumption \(\sum _i r_{\max }s_i\le Tx_{\max }^\mathrm{o} s_{\min }\) indicates that the number of served jobs is no less than the number of arrived jobs given \(x_{\max }^\mathrm{o}\) amount of on-demand instances in this frame. Combined with queue dynamic (2), we can conclude that the number of buffered jobs cannot increase in the next frame, which proves (26).
Part 2. The proof is similar to part 1. For broker j, we can see that
-
If \(\sum _i Q_{ij}(t)\le {\texttt {buffer}}_j\), then \(\sum _i Q_{ij}(t+T)\le {\texttt {buffer}}_j+Tka_{\max }\) since there can be at most \(a_{\max }\) type-i jobs arrived at broker j in each slot.
-
If \(\sum _i Q_{ij}(t)>{\texttt {buffer}}_j\), then at least one broker queue satisfies \(Q_{ij}(t)-q_{ik}(t)>0\). Using the solution framework in Sect. 5.1, and combining with the assumption \(Ta_{\max }\le r_{\max }\) and queue dynamic (1), we have (27).
Rights and permissions
About this article
Cite this article
Wan, J., Gui, X. & Zhang, R. Dynamic bidding in spot market for profit maximization in the public cloud. J Supercomput 73, 4245–4274 (2017). https://doi.org/10.1007/s11227-017-2007-9
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-017-2007-9