Regions and zones
Nearly all AWS products are deployed within globally positioned regions. Each region will have a group of data centers that are in relatively close proximity to each other. Amazon then divides each region into two or more availability zones. Not surprisngly in a similar way , Google Cloud divides its service availability into regions and zones that are located around the world.
To view the full mapping of Amazon and Google Cloud’s global regions and zones, see Google Cloud Locations and Amazon Cloud Locations.
In addition to the Zones, some Google Cloud services are also 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, multi-regional locations are only available in the United States, Europe, and Asia.
AWS by design, has it’s region 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. Google Cloud’s regions are designed similarly in that they isolated from each other for availability reasons. However, Google Cloud has built-in functionality that enables regions to synchronise data across regions, according to the needs of a given Google Cloud service.
AWS and Google Cloud 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.
- Google Cloud uses POPs to provide Google Cloud CDN (Cloud CDN) and to deliver built-in edge caching for services such as Google App Engine and Google Cloud Storage.
Google Cloud’s POPs connect to data centers through Google-owned fiber. This unimpeded connection means that Google Cloud-based applications have fast, reliable access to all of the services in Google Cloud.
A summary is below showing the location terms and mapping of Amazon AWS and Google Cloud
|CONCEPT||AWS TERM||GOOGLE CLOUD 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, organisations can emulate a standard organisational billing structure.
Similarly, Google Cloud requires you to set up a Google account to use its services. However, Google Cloud 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 organisational 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 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 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 Google Cloud 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 Google Cloud calculator to see which configuration provides the best value in terms of flexibility, scalability, and cost.
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
Google Cloud’s baseline services include:
- Compute: Google Compute Engine and Google App Engine
- Storage: Google Cloud Storage
- Networking: Google Virtual Private Cloud
- Databases: Google Cloud SQL, Google Firestore, and Google Cloud Bigtable
- Each platform then builds other higher-level services on top of these services. Typically, these higher-level services can be categorised as one of four types:
- Application services: Services designed to help optimise applications in the cloud. Examples include Amazon SNS and Google Pub/Sub.
- Big data and analytics services: Services designed to help process large amounts of data, such as Amazon Kinesis and Google Dataflow.
- Management services: Services designed to help you track the performance of an application. Examples include Amazon CloudWatch and Google Cloud Monitoring.
- Machine learning services: Services designed to help you incorporate perceptual AI such as image or speech recognition, or to train and deploy your own machine learning models. Examples include Amazon SageMaker and Google AI Platform.
The following table provides a side-by-side comparison of the various services available on AWS and Google Cloud.
|Service Category||Service||AWS||Google Cloud|
|Compute||IaaS||Amazon Elastic Compute Cloud||Compute Engine|
|PaaS||AWS Elastic Beanstalk||App Engine|
|Containers||Amazon Elastic Container Service||Google Kubernetes Engine|
|Containers without infrastructure||AWS Fargate||Cloud Run|
|FaaS||AWS Lambda||Cloud Functions|
|Managed Batch Computing||AWS Batch||N/A|
|Network||Virtual Networks||Amazon Virtual Private Cloud||Virtual Private Cloud|
|Load Balancer||Elastic Load Balancer||Cloud Load Balancing|
|Dedicated Interconnect||Direct Connect||Cloud Interconnect|
|Domains and DNS||Amazon Route 53||Google Domains, Cloud DNS|
|CDN||Amazon CloudFront||Cloud CDN|
|Storage||Object Storage||Amazon Simple Storage Service||Cloud Storage|
|Block Storage||Amazon Elastic Block Store||Persistent Disk|
|Reduced-availability Storage||Amazon S3 Standard-Infrequent Access, Amazon S3 One Zone-Infrequent Access||Cloud Storage Nearline and Cloud Storage Coldline|
|Archival Storage||Amazon Glacier||Cloud Storage Archive|
|File Storage||Amazon Elastic File System||Filestore|
|Database||RDBMS||Amazon Relational Database Service, Amazon Aurora||Cloud SQL, Cloud Spanner|
|NoSQL: Key-value||Amazon DynamoDB||Firestore, Cloud Bigtable|
|NoSQL: Indexed||Amazon SimpleDB||Firestore|
|Big Data & Analytics||Batch Data Processing||Amazon Elastic MapReduce, AWS Batch||Dataproc, Dataflow|
|Stream Data Processing||Amazon Kinesis||Dataflow|
|Stream Data Ingest||Amazon Kinesis||Pub/Sub|
|Analytics||Amazon Redshift, Amazon Athena||BigQuery|
|Workflow Orchestration||Amazon Data Pipeline, AWS Glue||Cloud Composer|
|Application Services||Messaging||Amazon Simple Notification Service, Amazon Simple Queueing Service||Pub/Sub|
|Management Services||Monitoring||Amazon CloudWatch||Cloud Monitoring|
|Logging||Amazon CloudWatch Logs||Cloud Logging|
|Deployment||AWS CloudFormation||Cloud Deployment Manager|
|Machine Learning||Speech||Amazon Transcribe||Speech-to-Text|
|Vision||Amazon Rekognition||Cloud Vision|
|Natural Language Processing||Amazon Comprehend||Cloud Natural Language API|
|Translation||Amazon Translate||Cloud Translation|
|Conversational Interface||Amazon Lex||Dialogflow Enterprise Edition|
|Video Intelligence||Amazon Rekognition Video||Video Intelligence API|
|Auto-generated Models||N/A||AutoML (beta)|
|Fully Managed ML||Amazon SageMaker||AI Platform|
Resource management interfaces
AWS and Google Cloud each provide a command-line interface (CLI) for interacting with the services and resources. AWS provides the Amazon CLI, and Google Cloud provides the Cloud SDK. Each is a unified CLI for all services, and each is cross-platform, with binaries available for Windows, Linux, and macOS. In addition, in Google Cloud, you can use the Cloud SDK in your web browser by using Google Cloud Shell.
AWS 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/.
The answer of course cannot be answered as simply as that, your decision making process should involve a full review of what your environment looks like today, what is the company strategy for the business and IT as a whole, and which solution is best to meet your business and application needs.
For more information on how our Semantic Technology Consultants can help your business build a strategy for a Digital Transformation Journey, contact us today
We will arrange an initial call back, talk through options and discuss the next steps
- What is an SSL Certificate
- Capital Allowances Tax Relief – What does it mean
- Contaminated Land Tax Relief – We can help
- R&D Tax Credits – What is it and are you entitled to claim?
- New services available August 2020
- Enabling and managing remote working effectively
- Not for Profit Netsuite ERP and CRM Solution
- Procurement differences in Not for Profit vs Profit Organisations
- How we help Schools with independent IT strategy and governance
- What is a Phoenix Company