A Performance-Based Scheme for Pricing Resources in the Cloud
aa r X i v : . [ c s . G T ] O c t A Performance-Based Scheme forPricing Resources in the Cloud
Kamal JainFaira [email protected]
Tung MaiGeorgia Tech [email protected]
Vijay V. VaziraniGeorgia Tech [email protected]
Abstract
With the rapid growth of the cloud computing marketplace, the issue of pricing resources inthe cloud has been the subject of much study in recent years. In this paper, we identify and studya new issue: how to price resources in the cloud so that the customer’s risk is minimized, whileat the same time ensuring that the provider accrues his fair share. We do this by correlatingthe revenue stream of the customer to the prices charged by the provider. We show that ourmechanism is incentive compatible in that it is in the best interest of the customer to provide histrue revenue as a function of the resources rented. We next add another restriction to the pricefunction, i.e., that it be linear. This removes the distortion that creeps in when the customerhas to pay more money for less resources. Our algorithms for both the schemes mentioned aboveare efficient.
Introduction
The cloud computing marketplace is the fastest growing market on the Internet today [3, 11].Indeed, with most large companies rapidly moving their computation into the cloud and startupsfollowing suit, most projections predict that this market will dwarf all other Internet markets,including the multi-billion dollar Adwords market of search engine companies [11]. Markets on theInternet form a sizable fraction of the economy. They are characterized not only by their huge sizeand easy scalability, but also by their innovativeness, e.g., markets such as the Adwords marketand auction markets of eBay and Yahoo! are based on very different economic principles thantraditional markets. In keeping with these trends and their massive success, it is quintessential tounderstand the idiosyncrasies of the cloud computing market and design mechanisms for its efficientoperation. Indeed, in recent years many researchers have studied the issue of pricing resources inthe cloud (see Section 1.1).In this paper, we propose a performance-based pricing scheme for resources in the cloud. Assumethat Amazon is providing resources in the cloud and a small startup, say X, is one of its customers.The revenue stream of X is neither steady nor predictable and hence its profits — and losses —fluctuate considerably over time. In the face of these realities, an important consideration for it isto ensure that its losses do not mount up to the extent that it goes bankrupt. The question weaddress in this paper is whether Amazon can adopt a pricing scheme that minimizes the risk ofX going under. Our pricing scheme enables Amazon to trade away company X’s risk while at thesame time ensuring that its expected revenue is not hurt. Indeed, if company X survives as a resultof lower risk, Amazon’s expected revenue will only increase in the long run. The fluctuations inAmazon’s revenue may increase as a result of our pricing mechanism; however, since it is a verylarge company and deals with numerous customers at the same time, this will not be of muchconsequence to it. Our mechanism involves correlating the prices that Amazon charges to therevenue stream, i.e., performance, of company X. Although this idea and its details were conceivedin the context of cloud computing, it can be easily be seen to be quite general and applicable tomany other situations in which customers rent resources whose amounts vary frequently.The
Elastic Cloud Computing (EC2) market of Amazon is the biggest provider of cloud com-puting resources today, with other big players being Microsoft and IBM. The EC2 market rents outa number of different types of resources – virtual machines (VM) with different kinds of capabili-ties, e.g., compute optimized, storage optimized, memory optimized and general purpose. We notethat at present, Amazon and other providers use fairly straightforward mechanisms for renting outthese resources, e.g., EC2 rents out resources in one of three ways [13]. The first is Pay-As-You-Go(PAYG) under which the user has full flexibility to use any resources at the time they are needed.The second is a Reserve market under which the user books resources in advance, and the third isthe spot market under which all resources not currently in use by customers of the first two cate-gories are allocated via an auction – Amazon announces rates of renting, which change as demandand supply change, and customers who bid more than the rate get the resource but are evicted assoon as the rate exceeds their bid (giving them a couple of minutes to save their data). The ratescharged are decreasing across these three methods, with the ratio of the first and the third beingas high as a factor of five. Clearly, as this market grows in size and complexity, better mechanismsthat are steeped in sound economic theory and the theory of algorithms will be called for.Currently, the market of cloud computing is dominated by a few big players and hence oligopolis-tic pricing applies, i.e., prices are higher than competitive prices. However, as more companies rentresources in the cloud, this will become a commodity market with very low profit margins. The1ay out of this for companies is to offer value-added services, smart pricing being one of them.The power of pricing mechanisms is well explored in economics, and it is well understood forthe case of equilibrium pricing, which are prices under which there is parity between demand andsupply [17, 16]. It is known that this method allocates resources efficiently since prices send strongsignals about what is wanted and what is not, and it prevents artificial scarcity of goods while atthe same time ensuring that goods that are truly scarce are conserved. Hence it is beneficial toboth consumers and producers. An equilibrium-based mechanism for replacing the spot market forcloud computing resources is proposed in [12].
As mentioned above, many researchers have studied the issue of pricing resources in the cloud, e.g.,see [15, 1, 18, 2, 3, 20, 14, 5, 9, 4, 6]. We describe several of these issues below. We note howeverthat the issue identified and studied in this paper is very different from these.The three tiered market of EC2 described above is sometimes viewed as the use of price dis-crimination, a well-studied mechanism in economics [17, 16]. The idea here is that by a smalldifferentiation in the product sold, one can distinguish between customers who can pay a lot fromthose who cannot. A very successful use of this concept arises in airline ticket sales, where byimposing conditions like Saturday overnight stay, the airlines can distinguish between businesstravelers and casual travelers and hence charge them different fares. Of course, in the three tiersdescribed above for EC2, the nature of services offered is quite different and one can argue thatdifferent rates should apply. However, a ratio of five-to-one on the price charged smacks of the useof price discrimination.Another issue explored in pricing is whether cloud resources should be rented on a metered basisor on a flat fee basis. In the past, very prominent industries went from one extreme to the other asthe industry grew and the cost of basic resources dropped, a case in point being telephone charges[19], which started in a strict metered manner, with a small fee for connection, to the current flatcharges. In the case of cloud resources, metered charges make the most sense at present; however,as computing, storage and bandwidth costs drop, it is conceivable that pricing will take a hybridform of some kind.At present, three very distinct resources are rented in the cloud: computing power, storage andbandwidth. An issue being studied is whether these three resources should be rented separately orin suitable bundles.
As stated above, we provide a pricing scheme which enables Amazon to trade away the risk experi-enced by company X without decreasing its own expected revenue. We furthermore show that ourscheme is incentive compatible.The scheme is as follows. Company X declares to Amazon the number, m , of types of resourcesit may rent and the set of possible resources which it may rent. For each combination of resourcesit may rent on a day, it also provides Amazon with the revenue it will accrue on that day (we showthat it is in company X’s best interest to reveal this information correctly). Amazon and companyX jointly agree on the probability distribution from which its requests arrive, by observing historicaldata. Hence, Amazon knows the expected daily cost X should be charged for renting the resources.The question is what is the most effective way for Amazon to retrieve this cost.2e give a scheme whereby Amazon is able to retrieve this cost in such a way that the dailyvariance in the profit of X, i.e., the difference of revenue and price paid, is minimized. Indeed, ourscheme simultaneously minimizes not only the second moment of deviation from mean profit butalso the ρ -th moment, for any ρ >
1. Moreover we show that such a function is unique it alsomaximizes the minimum profit of X. We note that there are numerous definitions of risk, withoutthere being a single standard one. Our scheme minimizes risk for all definitions of risk referredto in the previous claim. It also ensures that prices and the profit are always non-negative. Ouralgorithm is linear time, modulo log factors. We provide an intuitive description of our algorithmusing the idea of filling water in a trough with a warped bottom.We next add another restriction to the price function, i.e., that it be linear. This removes thedistortion that creeps in when the customer has to pay more money for less resources. Once againwe ensure that prices are non-negative. Our algorithm involves lifting the points (revenue as afunction of resources rented) into a higher dimensional space so that the function being handled ishomogeneous and hence each point can be given an appropriate weight. The algorithm then makesjust one call to a non-negative least squares solver, for which highly optimized implementations areavailable, on the set of preprocessed points.
In this section, we give a simple example that captures the essence of our idea. Consider a businessmodel involving two agents, in which agent A has a fair coin and provides a “coin toss service”for agent B. Specifically, agent B pays $1 to agent A for a coin toss and earns $3 from an outsidesource if it comes up head and $0 if it comes up tails. Clearly, the business is profitable for agentB since he makes 50 cents per toss in expectation. However, there is a risk that he might lose aconsiderable amount of money if he gets a string of tails. Even worse, if his budget is small, hemight go bankrupt and cannot keep the business running. Such an outcome is also undesirable forA since he loses a customer.To deal with this issue, A comes up with an alternative pricing scheme that is favorable forboth agents. The proposed scheme is that instead of charging $1 for each toss, he will charge $2for a head and nothing for a tail. As a consequence, B will gain $1 if a head shows up, and losenothing if a tail shows up. Although he still makes a profit of 50 cents per toss in expectation, thebusiness is now risk-free for him in the sense that he never loses money. From agent A’s point ofview, the proposed scheme is also beneficial for him in the long run despite the fact that there isno guarantee of making $1 per toss. The reason is that he will have B as his customer forever andstill make $1 per toss in expectation.Note that in the above example, we assume that A can generate coin tosses at no cost. However,if there is a cost and the cost is insignificant compared to A’s budget, it can be seen that the schemeis still favorable to him by a similar argument. Another remark is that if we insist that all pricesmust be non-negative and the variance on profit of B is minimized then the proposed pricing schemeis unique. Later on, we will show that such prices can be computed algorithmically and that theygive an even stronger guarantee on the profit of B.3
Model and definitions
We give a formal description of the model on which our results are based. The model involves twoagents: a provider (called Amazon above) who sells resources and a customer (named X above)who uses resources to make profit from an outside source. The customer has a distribution on hisdemand which both agents agree upon. For example, they can obverse the history of usage of thecustomer over a period of time. Moreover, we assume that the customer has a revenue function,which is a function of resources consumed and must report it (truthfully or not) to the provider. Toanalyze, we take on the role of the provider and propose a pricing scheme for the customer based onhis reported revenue function. We will show that our pricing scheme minimizes the deviation of thecustomer’s profit. Therefore, the customer who is assumed to be rational and wants to minimizehis risk, will report his revenue function truthfully.Let m be the number of resources and let r = ( r , r , . . . , r m ) be a demand vector of thecustomer on the resources. We assume that r follows a discrete distribution with probability massfunction f ( r ) : S → R where S = { r (1) , . . . , r ( N ) } is a discrete domain of size N . Let q ( r ) : S → R be our original starting price function. In other words, q ( r ) denotes the price that we are willingto charge for r . Finally, let v ( r ) : S → R be the revenue function of the customer on r .We are interested in price functions where the expected price is exactly equal to the expectedstarting price. Definition 3.1. A fair price function is a price function p ( r ) such that X r ∈ S p ( r ) f ( r ) = X r ∈ S q ( r ) f ( r ) . Next, we are also interested in price functions that assume only non-negative values.
Definition 3.2. A non-negative price function is a price function p ( r ) such that p ( r ) ≥ ∀ r ∈ S .Moreover, the target price function must give a guarantee on the customer’s profit that it shouldnot deviate too much from the expected value. Since the customer has revenue v ( r ) and cost p ( r )on r , his net profit is v ( r ) − p ( r ). For a fair price p ( r ), the expected profit µ is given by X r ∈ S ( v ( r ) − p ( r )) f ( r ) = X r ∈ S ( v ( r ) − q ( r )) f ( r ) . Definition 3.3. A steady-profit price function is a fair and non-negative price function that mini-mizes X r ∈ S ( v ( r ) − p ( r ) − µ ) ρ f ( r )over all such functions for all ρ > In this section, we present an algorithm for computing a price with the following properties:4.
Fairness:
The target price function is a fair price function, i.e., the customer has to pay thesame amount compared to the starting price in expectation.2.
Risk-freeness:
The customer’s profit is non-negative in the whole domain, i.e., he never losesmoney.3.
Non-negativity:
The price is non-negative on the whole domain, i.e, we never pay the cus-tomer.4.
Stability:
The price function is a steady profit price, i.e., the ρ -moment of the profit deviationfrom the mean value is minimized for any ρ > WaterlevelPricing , is given in Figure 1. At a high level,it can be viewed as raising prices such that the profit values are as equal as possible until the pricefunction becomes a fair function. An intuitive illustration of the algorithm is flipping the revenuefunction up side down and start raising prices as if they are water flowing in the function’s surface. p ( r ) = WaterlevelPricing ( f ( r ) , q ( r ) , v ( r )) Input:
Distribution function f ( r ), starting price function q ( r ), revenue function v ( r ). Output:
Steady-profit price function p ( r ).1. Define v L ( r ) : S → R as follows: v L ( r ) = ( v ( r ) − L if v ( r ) > L, . Use binary search to find L such that v L ( r ) is a fair price function. In other words, wefind L such that X r ∈ S v L ( r ) f ( r ) = X r ∈ S q ( r ) f ( r ) .
2. Return p ( r ) = v L ( r ).Figure 1: Algorithm for Computing a Steady-profit Price Function.We give the following lemma, which is needed for the proof of the main theorem. Lemma 4.1.
Let a, b, ρ be positive real constants and ρ > . Let x and x be two real variablessuch that x > x . There exists ∆ such that for all δ < ∆ , if we decrease x by δ and increase x by aδb , then the value of Φ = ax ρ + bx ρ will decrease.Proof. Assume that ax + bx = c for some fixed value c . We can write x as ( c − ax ) /b . Substitutinggives Φ( x ) = ax ρ + ( c − ax ) ρ b ρ − . x gives ∂ Φ( x ) ∂x = ρax ρ − − ρa ( c − ax ) ρ − b ρ − = ρa ( x ρ − − x ρ − ) . Since ρ > a > ρa ( x ρ − − x ρ − ) > x > x . It follows that for all δ < ∆ = ( x − x ) ba + b we must have x − δ > x + aδb , and thus Φ( x − δ ) > Φ( x ). The lemma thenfollows. Theorem 4.2.
Given probability mass function f ( r ) , starting price function q ( r ) and revenuefunction v ( r ) , WaterlevelPricing returns a steady-profit price function in time O ( N log V ) ,where V = max r ∈ S v ( r ) is the maximum value of the revenue function on the domain S . Moreover,such a function is unique and with respect to it, customer’s profit is always non-negative and theminimum profit is maximized.Proof. From the definition of v L ( r ), it is easy to see that P r ∈ S v L ( r ) f ( r ) increases when L de-creases. Also, V = max r ∈ S v ( r ) is an upper bound on L . It follows that using binary search, wecan find L such that X r ∈ S v L ( r ) f ( r ) = X r ∈ S q ( r ) f ( r ) . in O (log V ) steps, where each step involves computing a summation in O ( N ) time.It remains to show that the returned function is a steady-profit price function. We will provethat a steady-profit price function p ( r ) is obtained only at a non-negative fair price function wherethe profit values are as equal as possible. By as equal as possible, we mean the profit is equal toa same value everywhere except at points r such that p ( r ) = 0, where the profit is less than thatvalue. It will then follow that such a function is unique and v L ( r ) is the desired function (withprofit L at every r such that v L ( r ) > p ( r ) is a non-negative fair price function such that with respect to p ( r ), the profitis not as equal as possible. We show that p ( r ) can be modified such that the ρ -moment X r ∈ S ( v ( r ) − p ( r ) − µ ) ρ f ( r ) . decreases for all ρ > h ( r ) = v ( r ) − p ( r ) − µ be the deviation of the customer’s profit from the mean value.Since p ( r ) does not make the profit as equal as possible, ∃ r , r such that h ( r ) = h ( r ) and p ( r ), p ( r ) are both positive. Without loss of generality, we may assume that h ( r ) > h ( r ). ByLemma 4.1, there exists a ∆ such that for all δ < ∆, decreasing h ( r ) by δ and increasing h ( r )by δf ( r ) /f ( r ) will result in a decrease the quantity h ( r ) ρ f ( r ) + h ( r ) ρ f ( r ) for all ρ > δ = min(∆ , p ( r ) f ( r ) /f ( r )), and consider the following modification on p ( r ):1. p ( r ) ← p ( r ) + δ ,2. p ( r ) ← p ( r ) − δf ( r ) /f ( r ),3. p ( r ) ← p ( r ) for all r = r , r . 6t is easy to see that with the modification, p ( r ) is still fair and non-negative. Moreover, h ( r )decreases by δ and h ( r ) increases by δf ( r ) /f ( r ). It follows that for all ρ >
1, the ρ -moment P r ∈ S h ( r ) ρ f ( r ) decreases as desired.Since WaterlevelPricing computes a fair, risk-free and steady-profit price function, thereasonable customer will report his revenue function truthfully. We obtain the following corollaryimmediately.
Corollary 4.3.
The pricing scheme
WaterlevelPricing is incentive compatible.
In the previous section, we presented an alternative pricing scheme that is favorable for both agentsin the model. We also showed that the scheme has some desirable properties such as the customer’sprofit is always non-negative and its deviation from the mean value is minimized. Despite thatfact, the pricing function can be quite unnatural. For instance, it can happen that the customerhas to pay more money for less resources. In this section, we prevent such unwanted outcomesfrom happening by adding a reasonable assumption on the price function. To be precise, we insistthat the price function must be a linear function of the resources, that is, it must be of the form p ( r ) = P mi =1 a i r i + a for non-negative a i s. Remark 5.1.
It is a common practice to write a linear function p ( r ) = P mi =1 a i r i + a as p ( r ) = a T r where r = 1 for all r . The above convenience trick allows us to ignore the constant term in thelinear function. Throughout this section, we will adopt this representation and assume that r isan ( m + 1)-dimensional vector with r = 1.Not surprisingly, with the new restriction, the target function cannot satisfy all properties ofthe function introduced in the previous section. Specifically, we cannot have the property that thecustomer’s profit is always non-negative. Instead, our goal is to find a linear price function withnon-negative coefficients such that the variance of the profit is minimized. To be precise, we areinterested in price function with the following properties:1. Fairness:
The target price function is a fair price function.2.
Linearity:
The target price function is a linear function.3.
Non-negativity:
The target price function is non-negative in the whole domain.4.
Stability:
The target price function minimizes the profit variance subject to the above 3conditions.We give an algorithm for computing a desired price function in Figure 2. Our algorithm uses anoracle that solves non-negative least squares, a constrained version of the normal least squares prob-lem where the coefficients of the linear function are not allowed to be negative. For the details of non-negative least squares solvers, please see [10, 8, 7]. The definition of
NonNegativeLeastSquares oracle is given below. 7 efinition 5.2.
NonNegativeLeastSquares ( X , y ) is an oracle that, on input X ∈ R n × m and y ∈ R n , returns a non-negative vector a ∈ R m such that y = X a + ǫ , and k ǫ k is minimize. p ( r ) = LinearPricing ( f ( r ) , q ( r ) , v ( r )) Input:
Probability mass function f ( r ), starting price function q ( r ) and revenue function v ( r ). Output:
Linear price function p ( r ) with non-negative coefficients that minimizes the profitvariance.1. Compute µ = P Nk =1 (cid:0) v (cid:0) r ( k ) (cid:1) − q (cid:0) r ( k ) (cid:1)(cid:1) f (cid:0) r ( k ) (cid:1) .
2. For 1 ≤ k ≤ N , let y ( k ) = (cid:16) v (cid:0) r ( k ) (cid:1) − µ (cid:17) q f (cid:0) r ( k ) (cid:1) , x ( k ) = r ( k ) q f (cid:0) r ( k ) (cid:1) .
3. Let M be a big number, and y ( N +1) = M N X k =1 (cid:16) v (cid:0) r ( k ) (cid:1) − µ (cid:17) f (cid:0) r ( k ) (cid:1) , x ( N +1) = M N X k =1 r ( k ) f (cid:0) r ( k ) (cid:1) .
4. Let a ← NonNegativeLeastSquares ( X , y ) where X = x (1) T ... x ( N +1) T and y = y (1) ... y ( N +1) .
5. Return p ( r ) = a T r .Figure 2: Algorithm for Computing a Linear Price Function.We give the main theorem of the section and its proof. Theorem 5.3.
Given probability mass function f ( r ) , starting price function q ( r ) and revenuefunction v ( r ) , LinearPricing returns a fair price function p ( r ) = a T r such that a is non-negative and P r ∈ S ( v ( r ) − p ( r ) − µ ) f ( r ) is minimized among all such functions. roof. Recall that y = X a + ǫ . Rearranging gives k ǫ k = N +1 X k =1 (cid:16) y ( k ) − a T x ( k ) (cid:17) . Let y = N X k =1 (cid:16) v (cid:0) r ( k ) (cid:1) − µ (cid:17) f (cid:0) r ( k ) (cid:1) , x = N X k =1 r ( k ) f (cid:0) r ( k ) (cid:1) . We may assume M is sufficiently large to guarantee that for an optimal solution a returned by NonNegativeLeastSquares ( X , y ), y − a T x must go to 0.This condition ensures that p ( r ) is a fair price function, that is, the expected price is equal tothe expected starting price. We have y − a T x = N X k =1 (cid:16) v (cid:0) r ( k ) (cid:1) − µ (cid:17) f (cid:0) r ( k ) (cid:1) − a T N X k =1 r ( k ) f (cid:0) r ( k ) (cid:1) = N X k =1 (cid:16) v (cid:0) r ( k ) (cid:1) − µ − a T r ( k ) (cid:17) f (cid:0) r ( k ) (cid:1) = 0 . It follows that µ = µ N X k =1 f (cid:0) r ( k ) (cid:1) = N X k =1 (cid:16) v (cid:0) r ( k ) (cid:1) − p ( r ( k ) ) (cid:17) f (cid:0) r ( k ) (cid:1) . By construction, µ = N X k =1 (cid:16) v (cid:0) r ( k ) (cid:1) − q ( r ( k ) ) (cid:17) f (cid:0) r ( k ) (cid:1) . Therefore, N X k =1 p ( r ( k ) ) f (cid:0) r ( k ) (cid:1) = N X k =1 q ( r ( k ) ) f (cid:0) r ( k ) (cid:1) as desired.Moreover, since M is sufficiently large, minimizing k ǫ k is equivalent to minimizing N X k =1 (cid:16) y ( k ) − a T x ( k ) (cid:17) y − a T x = 0, i.e., subject to p ( r ) being a fair price function. We have N X k =1 (cid:16) y ( k ) − a T x ( k ) (cid:17) = N X k =1 (cid:18)(cid:16) v (cid:0) r ( k ) (cid:1) − µ (cid:17) q f (cid:0) r ( k ) (cid:1) − a T r ( k ) q f (cid:0) r ( k ) (cid:1)(cid:19) = N X k =1 (cid:16) v (cid:0) r ( k ) (cid:1) − µ − a T r ( k ) (cid:17) f (cid:0) r ( k ) (cid:1) = N X k =1 (cid:16) v (cid:0) r ( k ) (cid:1) − p (cid:0) r ( k ) (cid:1) − µ (cid:17) f (cid:0) r ( k ) (cid:1) . Therefore, the minimized quantity is precisely the variance of profit.Since
NonNegativeLeastSquares ( X , y ) returns a non-negative vector a , the linear function p ( r ) = a T r has non-negative coefficients as claimed.The following corollary follows immediately from the fact that LinearPricing returns a fair,linear and non-negative price such that the profit variance is minimized.
Corollary 5.4.
Assume that the starting price function q ( r ) is a non-negative and linear, thepricing scheme LinearPricing is incentive compatible.
The reason to seek a pricing function that is linear in the resources rented is to remove the distortionthat a customer has to pay more money for less resources. We note that linearity is not essentialfor ensuring this, in fact any monotone function will also suffice. This motivates the followingquestion: find a price function that is monotome in the resources rented so that it is non-negativeand minimizes the variance of the profit among all such functions. We believe that a variant of ourwater-filling algorithm should solve this problem.One feature of the linear pricing function is that it is robust to mistakes in the reported revenuefunction in the sense that price function will not change much as a result of altering a few points.Furthermore, this method does not need the revenue functions at all values of resources rented, itworks even if some of these points are missing. 10 eferences [1] Vineet Abhishek, Ian A. Kash, and Peter B. Key. Fixed and market pricing for cloud services.in arXiv, 2012.[2] J Anselmi, D Ardagna, J C Lui, A Wierman, Y Xu, and Z Yang. The economics of the cloud:Price competition and congestion. In
Proceedings of NetEcon , 2013.[3] M Armbrust, A Fox, R Griffith, A Joseph, R Katz, A Konwinski, G Lee, D Patterson,A Rabkin, I Stoica, and M Zaharia. Above the clouds: A Berkeley view of cloud comput-ing, 2009.[4] Hitesh Ballani, Keon Jang, Thomas Karagiannis, Changhoon Kim, Dinan Gunawardena, andGreg O’Shea. Chatty tenants and the cloud network sharing problem. In
Proc. 10th UsenixConf. Networked Systems Design and Implementation , 2013.[5] Orna Agmon Ben-Yehuda, Muli Ben-Yehuda, Assaf Schuster, and Dan Tsafrir. DeconstructingAmazon EC2 spot instance pricing.
ACM Trans. Economics and Computation , 2013.[6] G Blocq, Y Bachrach, and P Key. Game and applications to pricing in cloud computing. In
Proc. 2014 Intl Conf. Autonomous Agents and Multi-Agent Systems , 2014.[7] C Boutsidis and P Drineas. Random projections for the nonnegative least-squares problem.
Linear Algebra and its Applications , (431):2009.[8] R Bro and S De Jong. A fast non-negativity-constrained least squares algorithm.
Journal ofChemometrics , (11), 1997.[9] S Ceppi and I Kash. Personalized payments for Storage-as-a-Service. In
Proc. 10th Workshopthe Economics of Networks, Systems, and Computation , 2015.[10] D Chen and R J Plemmons. Nonnegativity constraints in numerical analysis. In
Proceedingsof the Symposium on the Birth of Numerical Analysis , 2009.[11] Louis Columbus. Roundup of cloud computing forecasts and market estimates, 2016. Forbes.[12] N. Devanur, J. Garg, R. Mehta, V. V. Vazirani, and S. Yazdanbod. A market for scheduling,with applications to cloud computing. in arXiv, 2016.[13] AWS Inc. Amazon EC2 Pricing. https://aws.amazon.com/ec2/pricing/ .[14] N Jain, I Menache, J Naor, and J Yaniv. A truthful mechanism for value-based scheduling incloud computing.
Theory of Computing Systems , 2014.[15] Ian A. Kash and Peter B. Key. Pricing the cloud.
Internet Economics , 2016.[16] D M Kreps. A course in microeconomic theory, 1990.[17] A Mas-Colell, M Whinston, and J Green. Microeconomic theory, 1995.[18] D Niu, C Feng, and B Li. Pricing cloud bandwidth reservations under demand uncertainty.In
Proceedings of ACM SIGMETRIC , 2012.1119] A Odlyzko. Internet pricing and the history of communications.
Computer Networks , 2001.[20] H Xu and B Li. A study of pricing for cloud resources.