Question: A Hammer is to Nails as Cloud computing is to…?
a) Cost reduction
b) Fast time to market
c) Problems of scale
Full disclosure – I cheated. I could have given you option (d) all of the above. Read on to see why that is not the best answer.
If you’ve been listening to all of the buzz about cloud computing, you might think the correct answer is (a). The question you have to ask when considering whether the cloud will reduce your costs is “compared to what?” Human resources and process are more fundamental to the cost of IT operations than are the infrastructure itself. And even if the analysis yields a result that indicates that moving to a hosted solution makes sense, it may still be the case that traditional outsourcing solutions are more cost effective.
Similarly, while there is much talk about how quickly infrastructure can be provisioned in the cloud, that part of the application development and deployment process is, in reality, minor. The real challenge most organizations face is the sheer burden of their own processes. And as with the cost discussion, there are many traditional outsourcing providers that allow infrastructure to be provisioned rapidly.
Cloud computing does not uniquely solve problems of cost or agility. And if a technology is not bringing something new to the table, why discuss it? Let’s talk about the unique value cloud computing brings to the conversation. Mainly answer (c), as cloud computing is to problems of scale.
What is meant by “problems of scale”? Until the rise of the World Wide Web, enterprise applications defined large scale. It’s almost quaint to think of how those were ever considered big problems by today’s standards. Customers were measured in thousands and transactions in millions. Compare that to the task Google set for itself of examining and indexing every word in every page on the internet. This introduced the concept of “web scale”. Netflix is another example of a web scale application. But scaled in a different direction. Rather than Google’s massive number of small data points that are collected and searched in seconds, Netflix stores a relatively modest number of video files, but those files are very large and need to be streamed on demand to a large number of users over a large geography. Google’s scale is about storage and compute. Netflix is about storage and geography with tight latency requirements.
In addition to the scale of the resources themselves, the cloud also helps address another variable: time. Time as in the application requires different amounts of resource at different points in time. And how predictable is that need? Most large enterprises struggle with what is referred to as “capacity and characterization”. In other words, how much do we need and when do we need it? Imagine the complexity of that problem at web scale. There are cases where the resource requirement is understood, but it is periodic. We need it for five hours five days a week. We need it for two hundred hours once a quarter. Traditionally, this meant having a tremendous amount of idle infrastructure to support these workloads. The cloud enables the sharing of resources.
Other applications suffer from a lack of predictability by their very nature. Ecommerce companies know that at certain times of year there will be a significant increase in demand. While experience tells them something about the when, it tells them very little about the how much. Other applications like the delivery of weather forecast data or news information suffer from both a lack of predictability in time and scope. This leads to an even higher level of inefficient utilization or a failure to properly deliver the expected user experience. All of these outward facing scenarios represent significant economic risk to an organization as disappointed consumers are poor candidates for return engagements.
Cloud computing provides the first economically viable solution to these large scale problems. Just as the PC enabled many workloads that were simply impractical when computing horsepower was being doled out in units labeled ‘mainframe’ and ‘mini-computer’ with price tags measured in millions and tens of thousands, we now have the opportunity for organizations of all sizes to practically tackle these problems. It is no coincidence that two of the most significant internet age companies, Google and Amazon, are also leading cloud computing providers. Those companies would not exist without the technology that is cloud computing.
Mark Eisenberg is a Cloud Visionary and Former Member of Windows Azure Sales Team