Today, most organizations either want to move away from their infrastructure from on-premises to the cloud or use a hybrid model. According to Gartner, by 2022 the public cloud computing market value will grow up to $331.2 billion. It's no surprise that, in the future, every company will use one of the cloud services for their applications at some point. However, if you are looking for the best cloud service provider for your application, here are some aspects that you must consider. This blog will give you an overview of storage services being offered by top cloud service providers-- Google Cloud Platform (GCP) and AWS.
|Storage Services by GCP||Storage Services by AWS|
|GCP Cloud Storage Regional and Multi-Regional||Amazon S3|
|GCP Cloud Storage Nearline||Amazon EBS|
|GCP Cloud Storage Cold line||Amazon EFS|
|GCP Persistent Disk||Amazon Glacier|
|GCP Filestore||Amazon FSx for Lustre|
|Amazon FSx for Windows File Server|
Rather than understanding every service offering by Google Cloud and AWS separately, let’s go through the situations where these services are best suited. Here are some general scenarios:
Do you want to save a large amount of highly available data, scalable, and low latency (in fetching the data) for your application? You have Google Cloud storage (Regional and Multi-regional) and Amazon Simple Storage Service (S3) services for such situations.
Both these Google Cloud and AWS storage services store data in the form of buckets and objects. These services treat the files stored in the system as atomic units. It means that you cannot overwrite a particular section of the file; you can only perform ‘create’ or ‘delete’ operations. Both these services support object versioning and lifecycle management. Another advantage of these services is that you can notify the other service when a file is uploaded or deleted.
In terms of cost, both these services charge you for the amount of data stored every month by network egress for API requests made to the cloud storage based on the data storage region. These services give you the flexibility to store large amounts of data without worrying about the underlying infrastructure.
Here are the summarized features of Google Cloud Platform (Regional and Multi-regional) vs. Amazon Simple Storage Service (S3) services.
|Features||GCP Regional and Multi-regional||Amazon Simple Storage Service (S3) Services|
|Unit of Deployment||Bucket||Bucket|
|Deployment Identifier||Globally Unique Key||Globally Unique Key|
|File System Emulation||Limited||Limited|
|Object Lifecycle Management||Yes||Yes|
Virtual machines (VM) are one of the key resources in cloud computing. VM uses internal memory to store the application data. You can use a storage service that is attached to a VM over a network or directly. In such cases, cloud service providers may offer you block storage. Google Cloud calls it a ‘Persistent Disk,’ and ‘AWS’ calls it an ‘Amazon Elastic Block Storage (EBS).
You can use Persistent Disk to mount to a Compute Engine (GCP VMs) and Amazon EBS to mount to Amazon EC2 (AWS VMs). These block-storage services can scale up to 64 TB (for Persistent disk) and 16 TIB (for Amazon EBS). You can attach block storage to a VM in two different ways in both services: locally or over the network.
If your application needs high IOPS (Input/Output Operations Per Second), it is better to use locally-attached block storage. When your application can compromise on IOPS, then you can choose network-attached block storage. Another advantage of block storage is that you can attach multiple disks to a single VM. The maximum number of disks attached to a single Compute Engine is 128 and to Amazon EC2 is 40. In both the services, Google Cloud and AWS, you can create a backup of disk volume by creating a snapshot to provision a new VM with the same data later.
Here are the summarized features of Google Cloud Platform Persistent Disk vs. Amazon EBS.
|Features||GCP Persistent Disk||Amazon EBS|
|Volume Types||Zonal standard disks (HDD), regional disks, zonal SSD disks, regional SSD disks||EBS General Purpose SSD, Cold HDD, EBS Provisioned IOPS SSD, Throughput Optimized HDD.|
|Attached Volumes Per Instance||Maximum 128||Maximum 40|
|Volume Attachment||Read-only volumes can be attached with multiple instances, while read-write volumes can be attached to only one instance at a time.||It can be attached to only one instance.|
|Max Volume Size||64 TB||16 TIB|
Prices of both EBS and Persistent Disks are based on per-GB-per-month usage. In addition to this, EBS prices can vary depending on the region.
If you want to use a traditional standard file system instead of a block and object storage, Google Cloud offers Cloud Filestore, and AWS offers Amazon Elastic File System (EFS) and Amazon FSx.
With these services, you can mount the filesystem to the VMs through a network-attached storage (NAS). These services offer high throughput, low latency, and high IOPS. GCP offers two types of Cloud Filestores: standard and premium. Besides EFS, Amazon offers Amazon FSx Luster and Amazon FSx for Windows file servers. FSx Luster is used for performing heavy compute-intensive loads, such as machine-learning, heavy computing, etc., and FSx for Windows File server offers more advanced features to fit your windows application.
Here are the summarized features of Google Cloud Filestore vs. Amazon Elastic File System (EFS).
|Features||GCP Cloud Filestore||Amazon Elastic File System (EFS)|
|Tiers/Modes||Standard and premium modes||General Purpose and Max I/O. Each mode supports either Bursting Throughput or Provisioned Throughput mode.|
|Deployment Locality||Based on Zone||Based on Region|
|Encryption||Enabled at rest and in transit by default.||At rest and in transit. Needs to be enabled.|
|Max File Size||16TB||47.9TB|
For these services, Google Cloud and AWS charge on a per-GB-per-month basis, and the price may change depending on the region.
To store your application data that is not being used cost-effectively, Google Cloud offers Cloud Storage Nearline storage service, and AWS offers Amazon S3 Standard-IA and One Zone-IA.
These services are enhanced versions of cloud storage in Google Cloud and Amazon S3 in AWS that can reduce the storage cost. These storage services make backups wherein you can access data once a month. Google Cloud Storage Nearline can deploy data at a multi-regional and regional level, but AWS uses S3 Standard-IA for regional deployments and S3 One Zone-IA for zonal deployments.
Here are the summarized features of Google Cloud Storage Nearline storage service vs. Amazon S3 Standard-IA and One Zone-IA.
|Features||GCP Cloud Storage Nearline Storage Service||Amazon S3 Standard-IA and One Zone-IA|
|First-byte Latency||Milliseconds (identical to Cloud Storage Standard)||Standard-IA: Milliseconds (identical to Amazon S3 standard)
One Zone-IA: Milliseconds (identical to Amazon S3 standard)
One Zone-IA: Yes
|Minimum Storage Period||30 days||Standard-IA: 30 days
One Zone-IA: 30 days
|Deployment Locality||Multi-Regional or Regional||Standard-IA: Regional
One Zone-IA: Zonal
Pricing follows the same pattern as the previous two types of storage services. However, a significant setback for AWS services is that you would need to store at least 128 KB of data. If your storage is lower than 128 KB, AWS will still charge you for 128 KB. In AWS, if you delete your data before the minimum storage time, i.e., 30 days, you will be charged for 30 days, whereas GCP doesn’t charge you for the remaining days.
When you want to store the files that are accessed once in three months, you can opt for Google Cloud Storage Coldline and AWS Amazon Glacier.
These services are used to store log data of an application for future purposes. Data stored in these services are retrieved as quickly as possible. GCP and AWS will charge you to retrieve data per GB.
Here are the summarized features of Google Cloud Storage Coldline vs. Amazon Glacier.
|Features||GCP Cloud Storage Coldline||Amazon Glacier|
|First-byte Latency||Milliseconds (identical to Cloud Storage Standard)||Minutes to hours|
|Deployment Locality||Multi-Regional or Regional||Regional|
|Minimum Storage Period||90 days||90 days|
Both Google Cloud and AWS will charge you based on the amount of data stored per month. For instance, in AWS, when you store data for five days, it will still charge you for 90 days (which is the minimum storage period), but Google Cloud Platform will charge you for five days only.
Every cloud service provider offers different storage services that fit your cloud application requirements. Hence, you must choose the best storage service to help your application run smoothly and provide valuable services to the users. Your cloud service choice can significantly reduce your spending since not all the data needs to be accessed frequently; hence it does not require high-speed data processing.