Choosing a cloud computing deployment model and a reliable cloud provider can be a daunting task. Especially nowadays where we are witnessing a price war that is shaking the public cloud marketplace. What we're about to see is the beginning of the Cloud 2.0 age, where cloud resources become more like commodities and real innovation dictates market share for service providers.
Google has put forward a strong value proposition and has momentum in its favor. Whether you're planning to get started with your business on the cloud or evaluating a change in your current cloud deployment strategy, here are three good reasons why you should consider Google Cloud Platform for you business:
Google Cloud Platform offers a large array of services that can be tuned to your business specific needs. Google has been known for taking research projects that have been proof-tested internally and making them available to their public cloud customers. For the sake of competitiveness, they might not have all the features that underpin Google's own infrastructure, but they carry some of the most advanced, reliable, and flexible technologies in the market today.
- Compute Engine: Google's infrastructure-as-a-service (IaaS) play allows you to deploy your workload on virtual machines and take full control on how your infrastructure scales as your business grows, paying only for what resources you use.
- App Engine: Develop and run your applications without the burden of installing and maintaining infrastructure requirements. It is a Platform-as-a-Service (PaaS) offering that allows developers to focus on code. Also provides a nice Auto-Scaling framework that can scale Google Compute Engine instances up or down as demand increases or decreases.
- Cloud Storage: Keep your application and user data available and protected using scalable storage services such as Object storage service, fully-managed MySQL and NoSQL databases.
- Big Query: Here you can leverage some of Google's internal big-data analytics engine to run interactive SQL-like asynchronous queries on your multi-TB data on a scalable infrastructure, zero setup or configuration burden. Load and export operations are free, you only pay for the data storage and queries.
- Distributed DNS, DDOS attack protection, programatic translation, and machine learning services: Cover a larger audience and keep you business up and running with minimal disturbance.
Google provides a kind of "swiss army knife" command line adminstration toolset called Google Cloud SDK
Google Cloud SDK is an extensive set of tools and libraries that facilitates otherwise tedious tasks of resource creation and management on cloud environments. In fact, it's much more than that. Together with the RESTful APIs provided by all cloud services listed above, the SDK commands enable users to build their application's full development lifecycle on the cloud, making development more agile and productive.
In addition to the SDK there are also some upcoming new features like Push-to-Deploy and Google Cloud Deployment Manager, currently under Preview mode, that can help you get even more automated and optimized workflows to run your business application or infrastructure.
Google Cloud Deployment Manager provides a simple templating framework to programatically define complex virtual environments and deploy them with a single command, which helps you declare, deploy, and maintain complex applications. For instance, you can deploy multiple Nginx servers and PHP using a Deployment Manager Template and API.
When it comes to the financial considerations for cloud computing the debate sure heats up. The three biggest cloud providers today (Amazon, Google, and Microsoft) have slightly different pricing models and users must be careful to make a fair, apples-to-apples, comparison. The important thing to remember here is the more understanding you have about your business application requirements, usage patterns, and peak demands, the higher the saving opportunities are. And that is often not trivial to estimate, specially with new businesses or without proper measuring tools.
With that said, I have to give kudos to Google for recently adopting a simplified and reduced pricing option for its services, in an attempt to adjust virtualized hardware costs to follow the decrease in cost of the underlying real hardware, as dictated by Moore's Law. Prices for pay-as-you-go services were slashed by 30-85% and sustained-use discounts for steady-state workloads were introduced.
Sustained-Use discounts roll out automatically when you use a VM for over 25% of the month. When you use a VM for an entire month, you save an additional 30% over the new on-demand prices, for a total reduction of 53% over the original prices.
What followed Google's announcement was a wave of pricing reductions for Amazon AWS and Microsoft Azure instances, making a clear statement that we're just at the beginning of the cloud price wars. So with price leveled, what still makes Google Cloud Platform more attractive than others from a financial perspective?
Although AWS has an edge in many cases if you happen to use their reserved instances (RIs), they require upfront payments, therefore creating a vendor lock-in. AWS RIs are bound by one- or three-year contracts for the same instance type series with the same operating system in the same region, meaning you will typically miss any price reductions even if rates for on-demand drop significantly
That's where Google's sustained-use discount shines: it's calculated as a percentage of the on-demand rate. If baseline rates decrease, sustained-use prices drop too. In the current scenario, where price wars seem to have just started, Google customers can immediately benefit from on-demand price reductions.