Updated Aug 16, 2019
This set of articles is designed to help professionals who are familiar with Microsoft Azure familiarize themselves with the key concepts required in order to get started with Google Cloud. The guide compares Google Cloud with Azure and highlights the similarities and differences between the two. In addition, the guide provides quick-reference mappings of Azure products, concepts, and terminology to the corresponding products, concepts, and terminology on Google Cloud.
This document doesn't attempt to compare the syntax and semantics of the SDK, APIs, or command-line tools provided by Azure and Google Cloud.
Why Google Cloud?
For over 15 years, Google has been building one of the fastest, most powerful, and highest-quality cloud infrastructures on the planet. Internally, Google uses this infrastructure for several high-traffic and global-scale services, including Gmail, Maps, YouTube, and Search. Because of the size and scale of these services, Google has put a lot of work into optimizing its infrastructure and creating a suite of tools and services to manage it effectively. Google Cloud puts this infrastructure and these management resources at your fingertips.
Regions and zones
As with Azure, Google Cloud products are deployed within regions located around the world. Each region consists of one or more data centers that are in geographical proximity to each other. Both Azure and Google Cloud further divide availability into zones, which are isolated locations within a region.
In addition, some Google Cloud services, such as App Engine and Cloud Storage Multi-Regional Storage, replicate and serve data at a multi-regional level rather than at the more granular region or zone levels. Google Cloud also provides a dual-region replication model for Cloud Storage and Compute Engine. As of April 2019, this feature is in beta.
For more details on zonal, regional, and multi-regional services, see Geography and regions.
Isolation and availability
By design, Azure pairs regions that are in the same continent and that are physically isolated from each other by at least 300 miles into availability sets. Azure encourages users to architect their systems and applications around these pairs, creating an active-active recovery setup for availability and isolation purposes. In addition, some Azure services, such as Blob Storage, have replication options that automatically replicate data across paired regions.
Google Cloud employs a similar strategy for isolation and availability, isolating regions from each other for availability reasons. Google Cloud does not prescribe specific regional pairings. However, as with Azure, you must architect your application across multiple regions if you want to achieve high availability. Also as with Azure, some Google Cloud services such as Cloud Storage Multi-Regional Storage and Cloud Storage dual-regional storage classes have built-in multi-region synchronization.
Accounts and quotas
To use an Azure service, you must either sign up for an Azure account or add Azure to your existing Microsoft Account. After you set up your Azure account, you can create a subscription within the account, and then launch services within that subscription. Each Azure account can support multiple subscriptions, and each subscription can use its own billing account if needed.
The Google Cloud model is similar to that of Azure. You get access to Google Cloud services by setting up a Google Account, and you launch services within projects, which are functionally similar to subscriptions on Azure. You can group your projects by organization as well. Folders are an additional grouping mechanism on top of projects. You are required to have an Organization resource as a prerequisite to use folders. Folders and projects are all mapped under the Organization resource. For more information, see Cloud platform resource hierarchy.
Azure and Google Cloud both have default soft limits on their services for new accounts. These soft limits are not tied to technical limitations for a given service. Instead, they help prevent fraudulent accounts from using excessive resources. These soft limits also help limit risk for new users, keeping them from spending more than intended as they explore the platform. If you find that your application has outgrown these limits, Azure and Google Cloud provide ways to get in touch with the appropriate teams to raise the limits on their services.
Because pricing tends to change more often than core features or services, this set of articles avoids pricing specifics where possible. However, each article discusses the pricing model behind each service wherever that's helpful. For up-to-date price comparisons for your solution, use the Azure pricing calculator and Google Cloud price calculator to see which configuration provides the best value in terms of flexibility, scalability, and cost.
Both Azure and Google Cloud provide discounts for a subset of their respective services, but through different mechanisms.
You can get discounts on some Azure services through your Microsoft Enterprise Agreement by committing to a base-wide installation of one or more Microsoft Server or Cloud components with full Software Assurance coverage. If you don't have a Microsoft Enterprise Agreement, you might also be able to get discounted rates through a reseller.
Google Cloud provides sustained-use discounts on a per-service basis based on your monthly usage. For example, Google Compute Engine offers sustained-use discounts based on the cumulative number of hours that a given virtual machine runs in a given month. If your resource usage is steady and predictable, you can also get heavily discounted rates through committed-use discounts. Committed-use discounts allow you to purchase a specific number of virtual CPUs (vCPUs) and a specific amount of memory at a discount over full prices, depending on the duration you commit to.
Azure and Google Cloud approach their support plans in different ways. Azure bundles their support levels into five subscription tiers. For more information on the available Azure support plans, see Azure Support Plans. As with Azure, Google Cloud provides basic account support and online help resources free of charge. Additionally, you can purchase Google Cloud paid support services. For more information on available support plans, see Google Cloud support plans.
Resource management interfaces
Azure and Google Cloud each provide command-line interfaces (CLIs) for interacting with services and resources. Azure provides both the Azure CLI, which is a cross-platform tool, and a set of Azure PowerShell cmdlets that you can install and use through Windows PowerShell. Google Cloud provides a set of command-line tools and PowerShell cmdlets through the Cloud SDK, a cross-platform toolkit.
Azure and Google Cloud also provide web-based consoles. Each console allows users to create, manage, and monitor their resources. The console for Google Cloud is located at https://console.cloud.google.com/. You can also use the Cloud SDK in your web browser by using Google Cloud Shell.
Cloud platforms provide a set of core services: compute, storage, networking, and database services. Azure's core services include the following:
- Compute: Azure virtual machines, Azure App Service, Azure Kubernetes Service
- Storage: Azure Blob Storage, Azure Managed Disks
- Networking: Azure Virtual Network (VNet)
- Databases: Azure Cloud SQL Database, Azure SQL Data Warehouse, Azure Table Storage, CosmosDB
Google Cloud's core services include the following:
- Compute: Compute Engine, App Engine, Google Kubernetes Engine
- Storage: Cloud Storage, Compute Engine persistent disks
- Networking: Virtual Private Cloud (VPC)
- Databases: Cloud SQL, Firestore, Cloud Bigtable, Cloud Spanner
Each platform then builds other offerings on top of these services. Typically, the higher-level services can be categorized as one of the following types:
- Application services: Services designed to help optimize applications in the cloud. Examples include Azure Service Bus and Google Pub/Sub.
- Big data and analytics, AI, and IoT services: Services designed to help process, interpret, and derive insights from large amounts of data, such as Azure HDInsight and Google Dataflow.
- Management services: Services designed to help you manage your application and track its performance. Examples include Azure Application Insights and Google Cloud Monitoring.
The following tables provide a side-by-side comparison of the services available on Azure and Google Cloud.
For a detailed listing of Google Cloud products, visit Products and services.
|IaaS||Virtual Machines||Compute Engine|
|PaaS||App Service, Cloud Services||App Engine|
|Containers||Azure Kubernetes Service, Azure Service Fabric||Google Kubernetes Engine|
|Serverless functions||Azure Functions||Cloud Functions|
|Virtual networks||Azure VNets||Virtual Private Cloud|
|Load balancer||Azure Load Balancer, Application Gateway||Cloud Load Balancing|
|Dedicated interconnect||ExpressRoute||Cloud Interconnect|
|DNS||Azure DNS||Cloud DNS|
|CDN||Azure CDN||Cloud CDN|
|Object storage||Azure Blob Storage||Cloud Storage|
|Block storage||Disk Storage||Persistent Disk|
|File storage||Azure File Storage||Filestore
|Reduced-availability storage||Azure Cool Blob Storage||Cloud Storage Nearline and Cloud Storage Coldline|
|Archival storage||Azure Archive Blob Storage||Cloud Storage Archive|
|RDBMS||SQL Database||Cloud SQL, Cloud Spanner|
|NoSQL: key-value||Table Storage||Firestore, Cloud Bigtable|
|NoSQL: indexed||Cosmos DB||Firestore|
Big data and analytics
|Batch data processing||HDInsight, Batch||Dataproc, Dataflow|
|Stream data processing||Stream Analytics||Dataflow|
|Stream data ingestion||Event Hubs, Service Bus||Pub/Sub|
|Analytics||Data Lake Analytics, Data Lake Store||BigQuery|
|Messaging||Service Bus, Storage Queues||Pub/Sub|
|API management||API Management||Apigee, Cloud Endpoints|
|Web firewall||Azure WAF||Google Cloud Armor|
|DDoS protection||Azure DDoS Protection||Google Cloud Armor|
|Caching||Azure Cache for Redis||Memorystore|
Security and identity
|Secret management||Azure Key Vault||Secret Manager|
|Key encryption||Azure Key Vault||Cloud Key Management Service|
|Resource monitoring||Azure Monitor||Cloud Asset Inventory|
|Threat detection||Azure Advanced Threat Protection||Event Threat Detection (beta)|
|IAM||Azure Active Directory, Azure Active Directory B2C, Azure Active Directory Domain Services||Cloud Identity and Access Management, Managed Service for Microsoft Active Directory|
|Monitoring||Application Insights||Cloud Monitoring|
|Logging||Log Analytics||Cloud Logging|
|Deployment||Azure Resource Manager||Cloud Deployment Manager|
|Auto-generated models||Automated Machine Learning||AutoML|
|Speech||Cognitive Services - Speech||Speech-to-Text|
|Vision||Cognitive Services - Computer Vision||AutoML Vision|
|Natural language processing||Cognitive Services - Language||Cloud Natural Language API|
|Video intelligence||Video Indexer||Video Intelligence API|
|Fully managed ML||Cognitive Services, Automated Machine Learning||AI Platform Prediction|
|Managed IoT||Azure IoT Hub||IoT Core|
|IoT on Edge||Azure IoT Edge||Cloud IoT Edge TPU|
Check out the Google Cloud for Azure Professionals articles for each service type: