Tuesday, April 14, 2009

Demand Aggregation in Cloud Computing

This is a slightly enhanced version of a section of more detailed post I made about the cost structure of cloud computing.  I noticed from incoming Google searches that there is a lot of interested in the demand aggregation side.  If you use this, I hope you will cite it.  

Key to the value proposition offered by utility computing is the ability to share resources across multiple users, or the principle of demand aggregation. If the peak computing requirements of a customer are not correlated, then the total peak demand will smooth out.   

Demand Aggregation Example

G.A. Paleologo’s explained in well in his paper paper. He illustrates the phenomena with a simple example. Imagine a customer whose demand oscillates between 5 and 10 service units per day, with an average of 7.5. If the customer were to build their own computing system, they would need 10 service units per day to meet the peak demand. The average utilization of the system is 7.5/10, or 75%. If there are 8 customers running the same system with the same demand profile, a utility can aggregate them. The total demand would be smoothed, and the capacity required would be 66, to serve an average demand of 60. The average utilization is 60/66, or 91%, a 16% gain. (Paleologo, 2004)

In modeling businesses that do have variations, there will be a gamut of profiles. Obviously, a relatively established business will differ from a new business (for example, a venture-backed startup). In stochastic modeling, the potential large variation in demand that goes hand-in-hand with some of the dynamics of the Internet must be taken into account. Established businesses, as well as overall aggregate demand, will have some cyclical profile to the demand curves.

Customer Demand Variation

Joe Weinman suggests a few other customer profiles on his ComplexModels.com website that can help smooth out demand.   Joe is one of the best thinkers on this topic and I recommend you read his work.  If nothing out, check out the 10 Laws of Cloudonomics article at GigaOM.

Gamer Demand: Weinman suggests gamers will tend to have day jobs and will be more active nights and weekends. This means that it will make sense for companies that are building high capacity to support enterprise processing that will primarily happen during the work day to recruit recreationally oriented customers to help smooth capacity and increase utilization during non-working hours.

Event Demand: Computer power providers with extra capacity can single out event demand. Examples are a concert, a one-time promotion or perhaps an annual event. These users should have a relatively high willingness to pay, since it makes little sense to deploy a large scale hardware solution for a single event.

Constant Demand Profiles: A substantial portion of the demand for computing services will have constant demand profiles without the peaks and valleys of typical business users. These users include bioinformatics processing and other scientific simulations that will run around the clock. Sellers of utility computing services would do well to segment these customers out and offer them lower prices. First off, since their demand is easily forecast and stable, the value proposition of being able to smooth out demand peaks does not apply to these customers. 

As such, their willingness to pay should be lower per unit of computing power. They will still benefit from shorter time to deployment, disaster recovery and other benefits of utility computing. These customers offer a significant potential advantage for utility computing vendors – they will provide consistent utilization at lower demand times of the day and year. In many cases, they may be able to shift their usage to maximize capacity utilization (for example, some customers may need X units per day performed and are indifferent to whether there is one processing node running all day or a number of them running in parallel during off peak hours).

Flexible Demand: One other offshoot is that enterprises that can design their systems so that their demand for computer power is flexible should get better pricing as the economics work out.  I think CTO should be thinking about how to do this.  For instance, batch jobs that are not time sensitive can be run for cheaper at 3 AM than if they are processed constantly through the day.  If you are running millions of transactions, this could save your company a lot of money.  Just another idea to create value.  


Arthi said...

Wonderful blogging about the Cloud Computing. Now a days most of them looking for the Cloud Computing Jobs.

Blogger said...

Bluehost is one of the best hosting company for any hosting plans you need.