Cloud Computing: What You Need to Know About PaaS
PaaS, or Platform as a Service, development offerings bring tremendous power and productivity to IT departments, along with a host of new challenges. Bernard Golden explains what CIOs need to know about this nascent segment of the cloud computing market.
Thu, September 08, 2011
Cloud computing discussions invariably begin with the "IPS" taxonomy: Infrastructure as a Service, Platform as a Service and Software as a Service. This taxonomy has the virtue of being comprehensible and neatly partitioning assessment requirements:
- Want an application? Look to a SaaS provider for a single purpose application (HR, financials, printing, etc.)
- Want to write your own application? Look to an IaaS provider that lets you create your own custom application.
- Want to understand the concept of leveraging someone else's software smarts to manage the plumbing while you focus on application functionality? Then look at something like Google App Engine to get an idea of what PaaS could be.
This latter category was always kind of an afterthought because it lacked very strong entrants. However, that's changing—big time. I wrote about this a few weeks ago in my blog, where I noted "PaaS is where it's at."
Cloud providers of every stripe are converging on what will be the development battleground of tomorrow—PaaS. They've clearly identified this as a crucial market—one in which the victors will enjoy huge spoils. It's also a market that will present significant challenges to users.
The evidence of this convergence is all around us. Amazon, by far the most successful IaaS provider, has steadily been surrounding its core services with additional functionality that, while not announced as "platform," has the undeniable effect of providing a set of services that help build applications faster and manage collections of resources easier. Think RDS for managing and scaling databases; direct connect for securing external application access; virtual private cloud to segregate applications within AWS (Amazon Web Services) data centers; and CloudFormation for application management.
At last week's Dreamforce event, Salesforce outlined its PaaS offering based on the recent acquisition of Heroku. While once a Ruby on Rails-oriented offering, Heroku has been extended to support Java. It's also been integrated with Salesforce's Database.com. And it's supported by the Database Rights Option, which integrates on-premise data with Salesforce applications. Salesforce may call it "the social enterprise," but the collective offering is clearly aimed at providing a generalized platform for application development.
Of course, it's not just big players staking a claim here. A number of small firms have recently been funded, each providing a slightly different framework for building cloud-based applications. While each of them (including one from VMware, which is certainly no startup) claims to be open and multi-cloud, it remains to be seen how well they deliver. Just as likely, in my view, is that cloud providers will adapt (aka "improve") each platform in a way that hampers its vision of application portability.
The net effect of this is that the neat IPS taxonomy is rapidly breaking down into a much more complicated cloud computing world in which every provider is seeking to offer a solution that covers a large proportion of customer computing needs. Your SaaS provider wants to help you write your own applications. Your IaaS provider wants to surround its infrastructure with useful functionality that makes your developers more productive. In this new cloud computing combo plate world it's far more difficult to easily discern just what a provider brings to the table, and that ambiguity presents definite challenges for enterprises.
The Challenges PaaS Presents
Why would one call PaaS a significant challenge for users? Simply because the undoubted power and productivity of these platforms brings a new set of issues to enterprises that they may not realize until well after they've deployed a number of applications.