Google Compute Engine: Hands-On Review

Google Compute Engine is a stable, reliable, and fast provider of on-demand computing resources. But it offers fewer features than rival Amazon Web Services.
The Not-As-Good Stuff

Unlike other IaaS providers, GCE will take its "zones" offline for scheduled maintenance, and that means customers should design their infrastructures for machine failure. On the one hand, this policy should force better cloud infrastructure design than seems to be the norm on AWS. On the other hand, other cloud providers do their best to avoid all scheduled maintenance, and Amazon usually gives customers at least a week-long window in which to manually reboot servers so that "scheduled maintenance" can be scheduled by the customer and not the IaaS vendor. Also, GCE's maintenance windows lead to the complete destruction of your VMs; AWS's simply require an instance reboot, which preserves your ephemeral storage.

Today, GCE's machine types are more limited than AWS; all of them are built from even multiples of "2.75 GCEU/3.75GB RAM" chunks. This is similar to SoftLayer, which has "1 CPU/1GB RAM" chunks, and Rackspace Cloud, which has both "1 CPU/1GB RAM" and "1 CPU/2GB RAM" chunks. Additionally, the amount of ephemeral disk space also goes up as the CPU/RAM goes up. The good news is that, unlike with the Rackspace Cloud, you can attach persistent storage to servers on GCE, so if you require a server with a lot of disk space but little CPU and RAM, you won't have to overpay. The bad news is that if you need a server with a lot of RAM but little CPU, or vice versa, you will overpay on GCE today.

Speaking of persistent storage, GCE's implementation leaves a number of things to be desired to those accustomed to Elastic Block Storage (EBS) on AWS. First, GCE persistent storage must be attached at instance launch. You cannot create persistent storage and then attach it to a running instance. Second, GCE does not offer snapshots of persistent storage, and so GCE does not have the disaster recovery or data-cloning benefits of EBS. So, while GCE is offering something significantly better than Rackspace Cloud with its persistent storage, GCE is behind both AWS and SoftLayer with its limited persistent storage feature set.

Impact on the IaaS Market

For almost six years, AWS has been the only large company with a robust, stable, and affordable cloud-computing-on-demand product. Competitors have either had lackluster features, performance, and/or stability (e.g., Rackspace Cloud), or they've been enterprise-only with extremely large price tags (e.g., IBM), or they've been offered by less-well-known companies (e.g., SoftLayer).

Google is the first company to take AWS on its own turf; a revolutionary Internet company leasing its own Internet-scale resources to the general public at utility prices. Amazon's virtual monopoly on powering the vast majority of Internet startups is likely now over, especially as many of those startups rely upon Google for other pieces of their infrastructure, with Gmail and Google Apps. And those companies that rely upon Microsoft for their infrastructure now have its IaaS offering coming soon, which will likely eat into Amazon's share of the market as well.

Additionally, potential customers who have avoided IaaS offerings to date because they perceived IaaS as "experimental" may be forced to look again, with the new products from (and implicit endorsement of IaaS by) two technology giants. I do not see the movement from on-premises, non-virtualized servers to public IaaS abating any time soon.

Final Thoughts

Google spent the last decade creating many of the core ideas behind robust data centers and data processing. From white-box servers to MapReduce, the programming model used for a vast number of large data-processing jobs today, Google has built an array of fabulous tools but has only been using them for itself. The rest of the world has been relying upon developers who have read Google's research papers and then built their own versions of Google's technology (e.g., Doug Cutting, creator of Hadoop, an open-source MapReduce implementation). Amazon has been capitalizing on its amazing ability to operationalize every different, useful piece of technology that has come along (e.g., Amazon's Elastic MapReduce, which uses Hadoop to deliver MapReduce technology to the masses), and has been able to sell its services in a market devoid of large, innovative competitors.

With the announcement of Google Compute Engine, Amazon finally has a competitor that has the potential to match its own ability to release groundbreaking infrastructure services on a regular basis--and historically, Google has created more technological innovations than Amazon (which seems to innovate the most by having the best inventory of products and selling them like hotcakes). And even though it is early yet, and Google has a long way to go to match the 25+ services that Amazon offers today, Google has leap-frogged other entrants in the IaaS space to become the most viable competitor to Amazon.

Editor's Note: Writer Joe Emison adds the following: "A prior version of this review ran with benchmark numbers and comments based upon pre-launch hardware that is inferior to the hardware that GCE has launched with. When the benchmarks are re-run on the new hardware, I will post them. I regret the error." Zencoder has published its own Google Compute Engine vs. Amazon EC2 benchmark study. Read a follow-up report with the new benchmark results at Google IaaS Vs. Amazon EC2: New Benchmarks.