Characteristics of Cloud – Part III

This post will focus on the features, Rapid Elasticity and Measured Service which are the most striking features of Cloud Computing.

Rapid Elasticity:

It states, capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time.

Imagine you built a new application for flight booking and launched in the month of September. Because in the initial stage, you don’t know how great and appealing your app is for the customers, you requested for 2 resources to serve the traffic (Fig 1). Gradually traffic increased and you requested for 3 more (marked orange, Fig 2). Now, as Diwali is approaching, you are seeing the increase in traffic. Every time it increases, you need some more resources so that your application doesn’t overload any of the allotted resources and hang them up. So, you requested 3 more resources (Fig. 3). Now, you have total 9 resources allocated to your application. After Diwali, you don’t need these many as traffic is not up to peak all the time. So, you release 6 of them. (Fig. 4).

Will you explicitly request your provider to give you n number of (or any) resources every time you need it? The answer is obviously NO. Also, explicitly requesting resources to be released when not in need is a tough process. Then how can my application automatically scale up (request or scale upward) and down (release or scale downward) depending upon the traffic? This service is termed as AutoScaling, which is provided by the service provider. While you are currently requesting and releasing the resources, some other user at the same time may also be doing the same. The existence of other users is transparent. The resources released by user who is scaling down, can be allotted to you when you are scaling up. Thus, capacity to any individual user often appears unlimited.

The above is what we call, rapid elasticity.

We talked above about automatically scaling as per the traffic. So, whenever there is a significant increase or decrease in traffic, you’ll ask the provider to scale up or down. But how will you instruct your provider to do this? By sending e-mail, call? How many calls can Bob receive, to how many mails can he respond? Moreover, there is no Bob here in the cloud (Remember Bob and Sam from this post?). The provider here also provides you with the service to monitor the load on your resources, which is directly proportional to the traffic on your application. The service allows you to do monitoring on the basis of various metrics, example, CPU Utilization. The user has the flexibility to set rules, like, “assign one more resource when CPU Utilization goes above 75 %” and “release 2 resources when CPU Utilization goes below 15%“. Thus, every user sets this rule. The process running on the cloud keeps checking for the CPU Utilization and executes the rules when needed. No need of call, no need of mail, no need of Bob. Voila! Our application will now scale automatically as per the rules set. But here comes, the most important thing, money :p

Well, the service providers are good and they charge you only for what you use and for as many number of days you use. In the example above, charges will be like:

September – cost for 2 resources (Fig. 1) for a month.

October – cost(September) + cost for 3 resources (Fig. 2, marked orange) for 15 days + cost of 3 resources (Fig. 3, marked blue) for 15 days

November – cost of only 3 resources (Fig. 4, marked purple an orange)

Thus, we see, the provider charges you only for the number of days you use anything. Not more, not less!

This automatic monitoring by setting of rules, which helps you to even monitor your usage, is called Measured Service.

With this, we finish studying the characteristics of cloud. To summarize they are five, namely, On-demand self service, Broad Network Access, Resource Pooling, Rapid Elasticity and Measured Service.