Now two years old, App Engine has finally matured.
I wrote last week that the time might be right for Amazon Web Services to launch its own platform-as-a-service (PaaS) offering, if only to preempt any competitive threat from other providers’ increasingly business-friendly PaaS offerings. Despite some clouderati backlash on Twitter over my assertion that a commoditized infrastructure-as-a-service (IaaS) market isn’t entirely in Amazon Web Services’ best interests, my stance hasn’t changed. In fact, it’s firmer than ever now that Google has introduced to the world App Engine for Business, further advancing the value proposition for PaaS.
Historically (if we can say that in such a new market), PaaS offerings have been the epitome of cloud computing in terms of automation and abstraction, but they left something to be desired in terms of choice. Sure, applications scaled on demand without being programmed to do so, but they were developed using a predetermined language, a provider-specific API and, sometimes, a provider-specific database (e.g, BigTable). With solutions like App Engine for Business, however, the idea of choice in PaaS offerings isn’t so laughable. Python or Java. BigTable or SQL. It’s not AWS (not that any PaaS offering really can be), but it’s a big step in the right direction.
The other reason App Engine for Business is such a big deal is the parties involved. First and foremost is Google, which often is cited as a cloud computing leader, but has yet to deliver a truly legitimate option for computing in the cloud. Mindshare and a legit product make Google dangerous to cloud providers of all stripes, including AWS. At the very least, potential customers will give App Engine for Business a look, and they might like what they see.
Furthermore, Google has achieved economies of scale at least on par with what Amazon has done (in the first quarter, Amazon made $299 million on $7.13 billion in revenue, while Google made $1.96 billion on $6.77 billion in revenue), so users might not even have to pay too much of a premium for the convenience of PaaS. In fact, initial pricing for individual enterprise (non-publicly accessible) applications is capped at $1,000 per month and includes computing, base-level storage and, from what I can tell, bandwidth. A similar environment in AWS requires paying for all three, as well as CloudWatch to enable Auto Scaling, and Elastic Load Balancing. Depending on instance size, number of servers, storage capacity and bandwidth used, an application could exceed $1,000 per month.
This week, Google also opened for limited preview its cloud-storage service. It’s slightly more expensive than standard S3 pricing at the moment, but Google is giving developers 100GB of storage and 300GB of bandwidth for free.
Then there is the VMware connection, by way of SpringSource. The integration of the Spring Framework in App Engine for Business means that customers have the option of easily porting Java applications to a variety of alternative environments — from on-premise VMware or Appistry environments to VMforce or AWS in the public cloud. Rumor had it (pre-VMware’s SpringSource acquisition) that Spring might also be coming to Microsoft Windows Azure. Yes, AWS supports Spring, but the point is that Google is now on board with what is fast becoming the de facto Java framework for both internal and external cloud environments.
In the IaaS market, AWS is busy trying to distinguish itself on the services level now that bare VMs are becoming commodities. Pricing models vary, but, when broken down to computing, storage and bandwidth, standard instances from GoGrid, Rackspace, Slicehost and Joyent all compare closely with standard AWS instances. Thus, we get what we saw this week, with AWS cutting storage costs for customers who don’t require high durability (a move some suggest was in response to a leak about Google’s storage announcement), and increasing RDS availability with cross-Availability-Zone database architectures. It’s all about differentiation around capabilities, support and services, and every IaaS provider is engaged in this one-upmanship (see, e.g., Rackspace’s list of differentiating characteristics, or GoGrid’s list).
So, I ask again: If PaaS is destined to become the preferred cloud-computing model, and if the IaaS market is becoming a rat race of sorts, why not free cloud revenues from the IaaS shackles and the threat of PaaS invasion? Even AWS, with its dominant IaaS market, can’t afford to ignore PaaS forever, especially now that Google is looking to become an enterprise-class player.