Categorizing Cloud Platforms: Beyond IaaS and PaaS
Tuesday, April 21, 2009
The most common way to categorize cloud platforms today is to split them into two chunks: Infrastructure as a Service (IaaS) and Platform as a Service (PaaS). This dichotomy is simple, which is good, and it's useful in some situations.
Still, I've become convinced that the IaaS/PaaS distinction is too limited; it hides more than it reveals. The reality is that the cloud platform world has become significantly more complex since the IaaS/PaaS split was created. We need something that does a better job of helping people decide which cloud platform is right for them.
A scenario-based approach can do this. By categorizing the kinds of applications we want to build on cloud platforms, then working out exactly what capabilities a cloud platform needs to support each of those application styles, we can better match our requirements with what the various platforms offer. The result isn't as simple as the IaaS/PaaS split, but at least in some cases, it's more useful.
I'm planning to write a paper on this sometime soon. In the meantime, here's the keynote presentation
I gave at a conference in Silicon Valley last week. Along with a few other things, this talk illustrates the scenarios I currently find most representative, then shows how the leading cloud platforms match with what each of those scenarios requires.
My goal isn't to figure out which cloud platform is best--they all have pros and cons. Instead, the intent is to help people decide which platform makes the most sense for whatever they're trying to do.
The scenarios I've chosen certainly aren't exhaustive--this is a work in progress. As always, comments are very welcome.