The first part of Weinman’s lecture discussing the basic “go to the cloud” and demonstrating cloud environments’ loads of different corporations’ web applications. In this part we will bring 6 scenarios presented by Weinman, each includes a brief analysis and proof of its cost and benefits.
First lets start with several assumptions and definitions:
> > > 5 Basic assumptions Pay-per-use capacity model:
- Paid on use – Paid for when used and not paid for when not used.
- No depend on time – The cost for such capacity is fixed. It does not depend on the time or use of the request.
- Fixed unit cost – The unit cost for on-demand or dedicated capacity does not depend on the quantity of resources requested (you don’t get discount for renting 100 rooms for the same time).
- No other costs – There are no additional relevant costs needed for the analysis.
- No delay – All demand served without any delay.
> > > Definitions:
D (demand): Resources demand in a specific time interval. D is characterized by mean A (average) and a maximum P (peak) . T (time) is the time duration in which the demand existed {D(t) ,0<t<T}. For example the average demand A can be 5 CPU cores with a peak P demand of 20 CPU cores.
Define C (cost) to be the unit cost per unit time of fixed capacity.
Define U to be the relation between the cost of resources in the cloud (pay-per-use) and a pure dedicated IT solution.
The following six cases presented by Weinman are part of the total eight cases presented in his article “Mathematical Proof of the Inevitability of Cloud Computing”:
Case 1: U < 1
The simplest case where utility cost less than dedicated ==> Pure pay-per-use solution costs less than a pure dedicated solution.
Proof: The cost of the pay-per-use solution is A (average) * U (premium) * c (unit cost per time) * T (time of use), A*U*c*T. The cost of a dedicated solution built to peak is P(peak of D)*c*T. Since and A<=P and U<1 ==> A*U*c*T < P*c*T
Explanation: It is intuitively understood that if the cloud is less expensive per unit per time period, then the total solution based on paying only for the demand is a less expensive one.
Case 2 : U = 1 and A = P
The utility premium is the same as the dedicated, and demand is flat (no peak) ==> a pay-per-use solution costs is equal to dedicated solution built to peak
Proof: The cost of the pay-per-use solution is A*U*c*T. The cost of a dedicated solution built to peak is P*c*T. Since U=1 and A=P, ==> A*U*c*T = P*c*T
Explanation: If there is no variability in the demand and the cost is the same, both alternatives have the same cost. That being said, we should remember the assumptions we are under, the very narrow scenario and the fact that we are not considering financial risks.
Case 3 : U = 1 and A < P
Pure pay-per-use solution costs less ==> a pure dedicated solution.
Proof: The cost of the pay-per-use solution is A*U*c*T. The cost of a dedicated solution built to peak is P*c*T. Since U=1 and A< P, Then: A*U*c*T = P*c*T
Explanation: This is very important for the understanding of the benefits for pay-per-use: if there is an element of variability, there is a major benefit to choosing this approach. Now let’s find out what happens in the case that the utility cost is greater than the fixed utility cost.
Case 4 : 1 < U < P/A
If the utility premium is greater than 1 and it is less than the peak-to-average ratio P/A, that is, 1<U<P/A then a pure pay-per-use solution costs less than a pure dedicated solution.
Proof: The cost of the pay-per-use solution is A*U*c*T. The cost of a dedicated solution built to peak is P*c*T. Since U<P/A, Than: A*U*c*T < A*PA*c*T = P*c*T
Explanation: What this means is that the utility unit cost can be higher than a fixed solution up to a certain point and still be the right economical choice. That point is a variable of the variation of the demand. In simple terms, we save money by not possessing unused resources when the demand is low.
Case 5 : U > 1 and TpT < 1U
Lets add some definitions to the ones above:
- Tp (peak duration) to be the duration where the demand was at peak
- ε to be the gap between the actual peak and the per-defined peak (that is, if the resources demand exceeds (P – ε) we’ll use the cloud for our resources).
If U stands for how much more expensive the cloud is versus a fixed solution, in this case it will be easier to look at the Inverse of U (how much the fix solution is more expensive than the cloud). This case means that the percentage duration of the peak is less than the inverse of the utility premium, than a hybrid solution costs less than a dedicated solution.
Proof: The hybrid solution consists of (P – ε) internal resources and the rest, ε will be handle on-demand by pay-per-use Tp of the time. The total cost equation is:
Given [(P – ε) * T * c]+ [ ε * Tp * c * U ] and Our assumptions were: TpT < 1/U ==> Tp * U < T and [ε * Tp * c * U] < [ε * T * c] ==> combine those ==> [(P – ε) * T * c]+ [ ε * Tp * c * U ] < [(P – ε) * T * c]+ [ε * T * c] ==> A dedicated solution cost is: [(P – ε) * T * c]+ [ε * T * c] = P * T * c
Explanation: What that means is that there might be a less expensive way than internal fixed solutions if there is some variation of demand. Obviously an optimal solution should be according to its your own characteristics of demand.
Case 6 : “Long Enough” Non-Zero Demand
Lets define:
- The total duration of non-zero demand to be TNZ. TNZ is the sum of all periods where the demand was above zero.
- Define ε to be the dedicated resources.
If the utility premium is greater than the dedicated and the percentage duration of non-zero demand is greater than the inverse of the utility premium, i.e., U > 1, and TNZT > 1/U than a hybrid solution costs less than a pure pay-per-use solution.
Proof – (This proof is the mirror image of the prior one). The cost of serving this demand with utility resources is: ε * TNZ * U * c. The cost of serving the demand with dedicated resources is: ε * T * c. Since TNZT > 1/U than T < TNZ * U Than ε * T * c < ε * TNZ * U * c
Explanation: This means that you’ll need to consider using the cloud even if it’s more expensive to satisfy a portion of the demand and the baseline of your demand you use dedicated resources.
Let’s Summarize –
The analysis Weinman does is basic including very strict assumptions. It ignores cloud enhanced pricing options (such as AWS spot and reserved instances). It is important to add that those options still doesn’t provided by most IaaS vendors hence this should be taken in mind when selecting an IaaS vendor. Nevertheless, this important research gives us an excellent opportunity to understand the overall approach and mechanisms which affect out cloud architecture decision.
It is the the enterprise leader’s responsibility to treat their cloud establishment as part of the organization strategy including its architecture decision. From our experience and study of this evolving trend we found that sometimes the cloud decision might be taken by the operational leader (i.e. IT manager) without any intervention of the enterprise higher management. This is totally wrong, going forward the company will find itself suffer from huge cloud expenses and issues (such as security and availability) and will need to reorganize hence reinvest and hope it is not to late. In this post we presented another option for cloud deployment when a mixture of resource allocation from within the enterprise and from the cloud might be the best economic solution. We also saw that it depends on several factors like the variation of the demand and its prediction.
This is only a sneak peek to Weinman’s complete article “Mathematical Proof of the Inevitability of Cloud Computing” . To Learn more about the above scenarios and more, we strongly suggest to read it.