Updated June 29, 2016
This guide is designed to equip professionals who are familiar with Amazon Web Services (AWS) with the key concepts required to get started with Google Cloud Platform. The guide compares Cloud Platform with AWS and highlights the similarities and differences between the two. In addition, the guide provides quick-reference mappings of AWS products, concepts, and terminology to the corresponding products, concepts, and terminology on Cloud Platform.
Why Google Cloud Platform?
For the past 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 Platform puts this infrastructure and these management resources at your fingertips.
Regions and zones
Nearly all AWS products are deployed within regions located around the world. Each region comprises a group of data centers that are in relatively close proximity to each other. Amazon divides each region into two or more availability zones. Similarly, Cloud Platform divides its service availability into regions and zones that are located around the world. For a full mapping of Cloud Platform's global regions and zones, see Cloud Locations.
In addition, some Cloud Platform services are located at a multi-regional level rather than the more granular regional or zonal levels. These services include Google App Engine and Google Cloud Storage. Currently, the available multi-regional locations are United States, Europe, and Asia.
By design, each AWS region is isolated and independent from other AWS regions. This design helps ensure that the availability of one region doesn’t affect the availability of other regions, and that services within regions remain independent of each other. Similarly, Cloud Platform's regions are isolated from each other for availability reasons. However, Cloud Platform has built-in functionality that enables regions to synchronize data across regions according to the needs of a given Cloud Platform service.
AWS and Cloud Platform both have points of presence (POPs) located in many more locations around the world. These POP locations help cache content closer to end users. However, each platform uses their respective POP locations in different ways:
- AWS uses POPs to provide a content delivery network (CDN) service, Amazon CloudFront.
- Cloud Platform uses POPs to provide Google Cloud CDN and to deliver built-in edge caching for services such as App Engine and Cloud Storage.
Cloud Platform's POPs connect to data centers through Google-owned fiber. This unimpeded connection means that Cloud-Platform-based applications have fast, reliable access to all of the services on Cloud Platform.
To summarize, AWS's location terms and concepts map to those of Cloud Platform as follows:
|Concept||AWS term||Google Cloud Platform term|
|Cluster of data centers and services||Region||Region|
|Abstracted data center||Availability Zone||Zone|
|Edge caching||POP (just CloudFront)||POP (multiple services)|
Accounts, limits, and pricing
To use an AWS service, you must sign up for an AWS account. After you have completed this process, you can launch any service under your account within Amazon's stated limits, and these services are billed to your specific account. If needed, you can create billing accounts, and then create sub-accounts that roll up to them. In this way, organizations can emulate a standard organizational billing structure.
Similarly, Cloud Platform requires you to set up a Google account to use its services. However, Cloud Platform groups your service usage by project rather than by account. In this model, you can create multiple, wholly separate projects under the same account. In an organizational setting, this model can be advantageous, allowing you to create project spaces for separate divisions or groups within your company. This model can also be useful for testing purposes: once you're done with a project, you can delete the project, and all of the resources created by that project will be deleted as well.
AWS and Cloud Platform 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 are in place to help prevent fraudulent accounts from using excessive resources, and to 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, AWS and Cloud Platform provide straightforward ways to get in touch with the appropriate internal teams to raise the limits on their services.
Because pricing tends to change more often than core features or services, this set of articles will avoid pricing specifics where possible. However, each article will discuss the pricing model behind each service wherever helpful. For up-to-date price comparisons for your specific solution, use the Amazon pricing calculator and Cloud Platform calculator to see which configuration provides the best value in terms of flexibility, scalability, and cost.
Resource management interfaces
AWS and Cloud Platform each provide a command-line interface (CLI) for interacting with the services and resources. AWS provides the Amazon CLI, and Cloud Platform provides the Cloud SDK. Each is a unified CLI for all services, and each is cross-platform, with binaries available for Windows, Linux, and Mac OS X. In addition, in Cloud Platform, you can use the Cloud SDK in your web browser by using Google Cloud Shell.
AWS and Google Cloud Platform also provide web-based consoles. Each console allows users to create, manage, and monitor their resources. The console for Google Cloud Platform is located at https://console.cloud.google.com/.
At a high level, cloud platforms begin by providing a set of baseline services: compute, storage, networking, and database services. AWS's baseline services include:
- Compute: Amazon Elastic Compute Cloud (EC2)
- Storage: Amazon Simple Storage Service (S3) and Amazon Elastic Block Store (EBS)
- Networking: Amazon Virtual Private Cloud (VPC)
- Databases: Amazon Relational Database Service (RDS) and Amazon DynamoDB
Cloud Platform's baseline services include:
- Compute: Google Compute Engine and Google App Engine
- Storage: Google Cloud Storage
- Networking: Google Cloud DNS and Google Cloud Interconnect
- Databases: Google Cloud SQL, Google Cloud Datastore, and Google Cloud Bigtable
Each platform then builds other higher-level services on top of these services. Typically, these higher-level services can be categorized as one of three types:
- Application services: Services designed to help optimize applications in the cloud. Examples include Amazon SNS and Google Cloud Pub/Sub.
- Big data and analytics services: Services designed to help process large amounts of data, such as Amazon Kinesis and Google Cloud Dataflow.
- Management services: Services designed to help you track the performance of an application. Examples include Amazon's CloudWatch and Google's Stackdriver Monitoring.
The following table provides a side-by-side comparison of the various services available on AWS and Cloud Platform.
|Service Category||Service||AWS||Google Cloud Platform|
|Compute||IaaS||Amazon Elastic Compute Cloud||Compute Engine|
|PaaS||AWS Elastic Beanstalk||App Engine|
|Containers||Amazon Elastic Compute Cloud Container Service||Kubernetes Engine|
|Serverless functions||AWS Lambda||Cloud Functions|
|Network||Load Balancer||Elastic Load Balancer||Cloud Load Balancing|
|Peering||Direct Connect||Cloud Interconnect|
|DNS||Amazon Route 53||Cloud DNS|
|Storage||Object Storage||Amazon Simple Storage Service||Cloud Storage|
|Block Storage||Amazon Elastic Block Store||Compute Engine Persistent Disks|
|Cold Storage||Amazon Glacier||Cloud Storage Nearline|
|File Storage||Amazon Elastic File System||ZFS / Avere|
|Database||RDBMS||Amazon Relational Database Service||Cloud SQL|
|NoSQL: Key-value||Amazon DynamoDB||Cloud Datastore, Cloud Bigtable|
|NoSQL: Indexed||Amazon SimpleDB||Cloud Datastore|
|Big Data & Analytics||Batch Data Processing||Amazon Elastic MapReduce||Cloud Dataproc, Cloud Dataflow|
|Stream Data Processing||Amazon Kinesis||Cloud Dataflow|
|Stream Data Ingest||Amazon Kinesis||Cloud Pub/Sub|
|Application Services||Messaging||Amazon Simple Notification Service||Cloud Pub/Sub|
|Management Services||Monitoring||Amazon CloudWatch||Stackdriver Monitoring|
|Deployment||AWS CloudFormation||Cloud Deployment Manager|
Check out the Google Cloud Platform for AWS Professionals articles for each service type: