Introduction
Unless you’ve been living under a rock for the last several years, you know that
Amazon Web Services
(AWS) is the pioneer in cloud computing as we know it. Started in 2006, AWS’s aim, according to Jeff Bezos, was to provide the “application developers a set of a set of dependable tools and a reliable infrastructure that they could build products on top of”. If you are interested in the history, check out this Quora
link
, it has great answers from Werner Vogels, Amazon CTO & excerpts from a Jeff Bezos interview.
What started with infrastructure blocks like S3 and EC2 in 2006 is today a set of far reaching services that are quite diverse: ranging from the traditional building blocks of Compute, Storage & Networking to higher level services like Database as a service, Identity & Access Management & Analytics. There are even higher level services/platforms like: Artificial Intelligence, Machine Learning and Internet of Things (IoT). As a result, AWS today is a
$10+ billion business
that is still growing at 50+% Y/Y, which is staggering growth on such a large base!
AWS Services (Source: aws.amazon.com)
AWS: IaaS or Paas?
A question that often gets asked is: is AWS an Infrastructure as a Service(IaaS) or a Platform as a Service (PaaS)? The short answer is that it straddles both ends, has a lot in the middle and is beginning to provide services that go beyond the prototypical generic PaaS. Read on for the longer answer.
IaaS
: There are many definitions, but I like the one provided by
Microsoft Azure
: IaaS is an instant computing infrastructure, provisioned and managed (typically) over the Internet. Quickly scale up and down with demand, and pay only for what you use. Computing infrastructure includes: compute, storage, networking etc.
PaaS
: A platform is the combination of hardware and software components required to run an application. Platform as a Service (PaaS) abstracts the individual components (Infrastructure, OS and middleware layers like: databases, BI services etc.) and provides a complete development and deployment environment for web applications and services. PaaS is a higher level service than IaaS, whose higher level abstractions and programming constructs free up developers from worrying about administration tasks.
AWS Services Stack
AWS: Covering IaaS, PaaS and the vast divide in the middle
It’s clear that AWS, with its building blocks of EC2, EBS, S3 etc has the IaaS functionality, in fact AWS is by far the leader in those categories. From there on, rather than adopting a discrete, binary approach of IaaS vs PaaS, AWS has done a great job of viewing it as a continuum and has introduced several services in the middle:
DBaaS
: Database as a Service
FSaaS
: File system as a Service
IAMaaS
: Identity and Access Management as a Service
The above 3 are examples of 3 horizontal mid-level services, but there are several other specialized mid-level services like: IoT as a service, Machine Learning as a service, Artificial Intelligence as a service, Image Recognition as a service as well. Some of these could actually be classified as specialized Platforms as a Service!
One could argue that with Elastic Beanstalk, AWS can provide a full-fledged horizontal Platform as a Service as well. PaaS purists like Pivotal may argue that their platform architecture is more fleshed out with the microservices etc. Perhaps the question whose PaaS is better is irrelevant as the reality is that PaaS is still very new and what PaaS is or isn’t will likely get decided in the marketplace. There are many possible outcomes but for now, we are in a world of co-existence of many horizontal PAAS offerings as well as vertical specific PaaS (e.g. Salesforce’s Force.com PaaS that specializes in the CRM and related spaces).
Conclusion
AWS doesn’t seem to be concerned about the IaaS vs PaaS debate. Rather, they seem to have adopted a view that there is a mammoth market opportunity to deliver pretty much every piece of IT functionality as a Service (aaS), which can be consumed on its own, so that developers can build applications with a lot more speed, flexibility and while reducing cost and complexity. So far, the market is proving them right.