Cloud services reduce the effort needed to manage infrastructure, provision servers and configure networks. Today the cloud market is primarily dominated by Amazon Web Services, followed by Microsoft Azure. As the new kid on the block, GCP is the newest entrant to a highly profitable and competitive landscape.
This post explores GCP from a business point of view — what you need know to make an informed decision for your organization.
Why go with Cloud computing?
For a company to remain competitive, it needs to reduce costs, increase business agility and remain flexible to handle growing needs. Infrastructure-as-a-service (Iaas) or public cloud services, are an indispensable part of your IT arsenal that allow you to focus on your core business. Here are 5 reasons to move to the cloud:
Business Efficiencies – Freeing your organization from managing a large IT department allows you to efficiently run business operations and focus on decision making that affects the future of your company. You free yourself, and your team, from worrying about how business activity impacts IT.
Reduce Staffing – Keep only the key technical specialization and engineering staff that your business requires, without adding operational personnel.
Scaling – To handle seasonal spikes, unexpected growth, or other changes in traffic, use cloud services to ramp up resources without purchasing hardware and software that goes unused during the rest of the year.
Reduce Capital Spending – Why make large capital investments for hardware, data centers, and staff when you can use the savings for business investment? Instead of risky large outlays, your cost is reduced to monthly billing.
Instant Anywhere Access – Cloud services allow your team to work anywhere with instant access. Team members only need internet connections and authorized access. This means better work conditions, a larger pool of talent (they can work remotely from anywhere) and more efficiency at getting things done.
We were invited to meet with Google at both their Chicago and Mountain View headquarters to discuss GCP from a .NET perspective. Since then, we have decided to move one of our applications from Azure to GCP, in part to see how easy it would be to migrate from one solution provider to another, and to compare performance between the two.
Although GCP is relatively new compared to AWS and Azure, Google has been beefing up their cloud offering. Not only has Google added new data centers worldwide since last year, they also offer one of the best pricing models. GCP does not require upfront payment or a lock-in commitment and offers discount for sustained usage. GCP charges you monthly for on-demand usage of instances by minutes used (minimum of 10 minutes). Google offers a sustained-use discount and publicly promised to pass along along to their customers any future price reduction. In contrast, AWS offers several pricing models; on-demand usage priced by the nearest hour, reserved instances – a commitment based pricing for a specific VM instance, and spot bidding for extra capacity available. Azure offers per minute billing with pay-as-you-go subscriptions, buying from a reseller, and an upfront usage commitment paid in advance or monthly.
Let’s talk about services. The array of storage options are impressive: from temporary and persistent disks storage for arbitrary objects (Google Cloud Storage), to relational databases (MySql, Sql Server), BigQuery (used by Google Analytics and SnapLogic), and BigTable ( “NoSql” database used by Google Search and Gmail). You have storage options for cost-efficient data storage based based on frequency of use and the geographic location of your customers.
GCP and .NET
Google also supports .NET technologies like SQL Server, Windows Servers, Visual Studio tools and offers a .NET Framework (currently in Beta) of the Windows dev stack featuring IIS, SQL Express and ASP.NET. You can also use Google’s Cloud APIs (with tons of supported libraries), Cloud Tools for Visual Studio and a even work in PowerShell using the Cloud Tools for PowerShell extension. It is impressive to see that Google is pushing for a more robust .NET environment, with help from people such as Jon Skeet and other notable developers. To learn more, check out this article: Making ASP.NET apps first-class citizens on Google Cloud Platform.
There are inherent adoption costs to consider. While cloud platforms have common features, GCP, AWS, and Azure all offer unique services which promise faster time-to-market and lower costs. For example Google’s BigTable vs. Amazon’s DynomoDB vs. Azure’s DocumentDB. And for common features that everybody offers, implementation varies.
“In theory, there is no difference between theory and practice. In practice, there is.”
On one hand, there might be little new learning if your engineers already know a specific tech stack (e.g. .NET or Java or Node.js). While cloud platforms can be accessed in a variety of programming languages, some implementations are easier to use. Google is growing it’s list of “idiomatic” client libraries that are true to the flavor of each language, particularly .NET.
Likewise, infrastructure management operations performed by IT are unique to each platform. Azure has it’s “Blades” web user interface, while AWS and GCP have a more standard web console. As Adam noted in his intro report on Google Cloud Platform, the GCP portal feels like a middle ground between Azure and AWS’s portal:
“My initial impression is that the GCP portal feels more approachable and snappier than the Azure portal. Another really impressive thing is how Google has really gone all out to make their tooling really accessible directly within the browser.”
Private servers are costly and difficult to scale, as opposed to public clouds. But you may be reluctant to give up private services and storage that are known to work well for critical applications. In this case, you might consider a hybrid cloud environment that uses a mix of public cloud with your own on-premise, private solutions. By moving the workload between the two, you can limit computing needs and manage cost more efficiently. This gives you greater flexibility and more options to deploy data when and where you need it. For example, you could use a cloud provider to host your development environment and less critical data.
An important caveat: While AWS and Azure offer hybrid cloud infrastructure, Google does not currently support a dedicated hybrid cloud solution. Physical bulk data import and export can only be done via third parties currently. However, Google does offer simple data transfer options for business migrating from AWS onto GCP through Google Stackdriver (Google’s platform for managing applications on Google Cloud Platform and AWS). If a hybrid approach is necessary for your organization, you may want to wait until GCP catches up or look into AWS or Azure for a more robust hybrid implementation.
Security is one checkbox that no organization can afford to skip. GCP has numerous International Organization for Standardization certifications for its cloud security. The standards serve as assurance that Google has taken specific internal measures to secure its users’ data and protect it from unwanted intruders. GCP has the following certifications: SSAE16 / ISAE 3402 Type II, ISO 27001, ISO 27017, ISO 27018, FedRamp ATO (Google App Engine), PCI DSS v3.1 and conducts annual audits with an independent auditor.
Planning for the future
Although Google Cloud Platform is the new entrant to the public cloud space, it offers tons of capability, resources, and competitive pricing that is attractive to businesses considering a move to the cloud or switching from AWS or Azure. Google has put strong emphasis on growing its cloud platform and we will only see improvement from here on. Anticipating the future for your business begins with making the correct business decision. The first step starts here. Why not take a free spin with Google Cloud and see the benefit for yourself?.
This post originally appeared on Falafel Blog.