One More Time: What is PaaS?
Wednesday, May 01, 2013
Defining Platform as a Service is hard. I've written about this previously
, but as cloud platforms advance, it's getting even harder. Going forward, it's possible that the idea of PaaS will become so blurry, so loosely defined, that it loses its value as a technology category.
Look at what Amazon Web Services offers today, for instance. EC2 provides basic Infrastructure as a Service. (In fact, an accurate way to define IaaS is to say that it's what EC2 does.) AWS Elastic Beanstalk provides a service that most people would categorize as PaaS. But AWS also provides options in between these two. CloudFormation lets you define and manage groups of resources together, such as virtual machines, databases, and queues. Another AWS service, OpsWorks, provides a more powerful way to group and manage resources, including the ability to specify behaviors using Chef.
Is OpsWorks PaaS? Is CloudFormation PaaS? There's no clear answer to these questions, since there's no real definition of PaaS. Amazon calls OpsWorks a DevOps solution, latching onto a more current buzzword than PaaS, but how is DevOps different from PaaS? PaaS fans have sometimes categorized it as "NoOps", one step further down the line from DevOps, but again, these categories aren't well-defined.
Whatever they're called, both OpsWorks and CloudFormation provide useful services that build on top of IaaS, making life easier for people who build, deploy, and manage applications. This is exactly what PaaS does, although the details vary across different offerings.
So what is PaaS? The honest answer is that nobody knows. And when nobody knows what a term means, that term's value is bound to shrink.