AWS changing PaaS before our eyes
The week after Thanksgiving, I attended the Amazon Web Services (AWS) re:Invent conference in Las Vegas. This was AWS’s first global developers’ conference and was attended by 6,000 people from 60 countries. Some of the milestones reported by AWS and its partners were impressive.
In its sheer scale, AWS is turning the vision of “computing as a utility” — just like the power grid — into a reality. Amazon can provide compute capacity in nearly unlimited quantities, cheaper and faster than you can do it in-house; and metered so you pay only for what you use. AWS Elastic Compute Cloud (EC2) is a robust computing utility. While there are a few skirmishes to be fought, AWS is clearly winning the infrastructure-as-a-service (IaaS) war and has graduated in that contest from being the 800-pound gorilla to a 2,000-pound T-Rex.
But the real story is the growing ecosystem of development services around those virtual servers. It's about a vendor building on its success to climb the cloud services stack and turn its infrastructure offerings into a robust development platform. Now let’s explore the AWS ecosystem and how it equates to a new style of platform-as-a-service (PaaS).
The AWS ecosystem can be divided into three distinct axes: application services, software development kits and vertical solutions. The application services give developers the ability to communicate, coordinate and architect EC2 instances into a working IT system. For example, there are services that provide message queuing, workflow, caching, e-mail delivery, notification and, of course, many flavors of storage. These services can be knit together into a complete IT system.
On top of these services, AWS offers deployment and management services that provide common solutions as templates for reusable, off-the-shelf solutions. In my opinion, the sessions that demonstrated the architecting and development of robust cloud-based solutions running on top of AWS EC2 were the main purpose of the conference. In other words, build the AWS developer base to grow beyond a cloud-computing infrastructure provider to a cloud-computing development platform. Feeding into that is the second axis of the AWS ecosystem, which is the software development kits that expose Amazon services via Application Programming Interfaces. There are SDKs for multiple programming languages, smart phones and development environments.
The third axis for AWS is packaged vertical solutions that take on a particular domain where Amazon can offer a pre-packaged solution. Currently, AWS provides vertical solutions for big data and data warehousing. For big data, AWS offers the ability to spin up Hadoop clusters (of any size) in a service called Elastic MapReduce. For data warehousing, AWS can spin up to 100 node database clusters with each node containing two to 16 terabytes of storage.
Each of these platform axes are expanding rapidly and AWS plans to roll out many more services in 2013.
What is the ramification of all this for government IT managers? In a previous article, I talked about cloud granularity and how it impacts the design of cloud architecture. What we see occurring with AWS is a shift in the definition of PaaS to a more loosely coupled architecture. Given this evolution, government IT managers should refrain from PaaS implementations until it shakes out, or suffer vendor lock-in. In the meantime, hang on to your seats because cloud computing is growing and evolving before our eyes.