Book a Demo Free Trial

Amazon S3 vs Azure Blob Storage: Which one to choose?

Nadeem Ahamed

Nov 15, 2022

Category: Azure Storage

Amazon Web Services (AWS) and Microsoft Azure offer tiered object storage specifically to protect stored data. AWS S3 Infrequent Access (S3-IA) and Azure Cool Blob Storage (CBS) cloud storage tiers are designed for infrequently accessed workloads.

AWS S3-IA and Azure CBS are both ideal for cold tier or infrequently accessed data where performance and latency are critical. These tiers offer the best prices for long-term storage, but charge more for access. This makes them ideal for long-term media storage, backup, and disaster recovery.

In the next blog post, we look at AWS S3-IA and Azure CBS features, granularity, availability, performance, cloud scalability, security, regional availability, varying access levels, quirks and considerations and pricing.

Granularity

Granularity or granularity is the quality of granularity, the degree of detail of a particular thing. When it comes to AWS and Azure, it’s all about storing and processing data and information. Both AWS S3-IA and Azure CBS allow users to set some information to less frequent access and other information to normal frequency. However, the granularity that can be set varies.

 

AWS S3-IA

Azure Cool Blob Storage

Storage Tier Setting

Object

Storage Account

AWS has an “object-oriented” storage tier setup, and Azure has a “storage account” oriented storage tier setup. This means that in AWS you can set your objects to use S3 or S3-IA, but in Azure you need to set your entire storage account to use cool or hot storage blobs. This means that instead of Azure dealing with individual blobs (or objects), the entire Azure storage account containing the blobs is cool (for infrequent access).

Note: Changing access frequencies does incur costs for both Azure and AWS

Azure and AWS offer service license agreements (SLAs) to their customers in case the service is unavailable. This SLA provides a billing credit if the service is unavailable beyond a certain threshold in a certain month. This SLA is lower when compared to the SLA offered for higher frequency access. This is also the reason why we can offer it at a low price.

 

AWS S3-IA

Azure Cool Blob Storage

10% service credit

Less than 99%

Less than 99.0% read/write LRS*, ZRS**, GRS***, RA-GRS

& less than 99.9% read with RA-GRS

25% service credit

Less than 98%

Less than 98%

 

LRS: Locally Redundant Storage            ZRS: Zone Redundant Storage                GRS: Geo Redundant

Storage

Both AWS S3-IA and Azure Cool Blob Storage offer a 10% billing credit when availability is less than 99% and a 25% billing credit when availability is less than 98%. However, Azure Cool Blob Storage raises the bar for that 10% credit, offering read-access geo-redundant storage (RA-GRS) availability at less than 99.9%.

Performance

In terms of latency and bandwidth, both Azure Cool Blob Storage and AWS S3-IA are similar to higher frequency tiers. However, Amazon does not publish performance targets for AWS S3-IA and Microsoft has published some performance details for Azure Cool Blob Storage:

  • For a single blob: ~60 per second Up to 500 requests per megabyte (MB) or second.
  • Total request rate per storage account: Up to 20,000 IOPS with a block size of 1 kilobyte (KB).
  • LRS: 20 gigabytes (GB) input per second, 30 GB output per second per account.
  • GRS: 10 GB in, 20 GB out per second per account.

Scalability

Both AWS S3-IA and Azure Cool Blob Storage appear to be scalable at the higher frequency tier. The maximum possible scalability of AWS S3 and Azure Hot Blob storage is as follows:

Note: Azure’s limit of 100 accounts is a soft limit and can change if you request it.

Security

The security of AWS S3-IA and Azure Cool blob storage is equivalent to their higher access frequency counterparts. Let’s see how the two compare:

 

AWS S3

Azure Blob Storage

Data Pre-flight

Client side encryption library

Client side encryption library

Data in flight

TLS

TLS

Data post flight

Server side encryption (AES-256)

Not available (in preview)

Key Management

S3 managed, Key management system or customer provided.

Key Vault or customer provided.

Azure’s encryption of data post flight is still in the preview phase, however, AWS is already providing a reliable server side storage encryption. All other services provided are nearly the same.

Regional Availability

AWS S3-IA is available in all AWS regions. A clearer understanding can be deduced using this following map:

Similarly, Azure’s Cool Blob Storage (CBS) is available in the regions where Blob storage is available (more than half of the Azure regions). Current regions where Azure CBS is available:

Changing Access Tier

Changing Access Tier implies switching between higher access frequency tier and lower access frequency tier. Both AWS and Azure permit these changes, but the user is charged for those changes (depending on the change). Let’s look at what is charged and what is free:

 

AWS S3-IA

Azure Cool Blob Storage

Changing Access tier to Lower access frequency

Yes: S3 Standard, S3 Reduced Redundancy
No: Glacier
Fee per request

Yes: Hot Blob storage account
No: General purpose storage account
Free

Changing Access tier from Lower access frequency

You can change class to standard or reduced redundancy. However, you will have to copy the data. Direct transition is not possible.

The change is possible; however, it will be charged the same as reading all data in the storage account.

You can change your AWS access level from S3 Standard or Reduced Data Redundancy to S3-IA. There is a charge for modification and the object must exist in its current state for at least 30 days. Otherwise, AWS charges additional charges. To facilitate access tier changes, AWS also provides a migration tool called Object Lifecycle Management. This tool allows you to set policies for migrating objects from S3 standard S3-IA to Glacier based on time or date. Policies are set at the S3 bucket level.

Azure allows users to convert Hot Blob storage accounts to Cool Blob storage accounts for free. Migration from General Purpose storage accounts to Cool Blob storage accounts is not allowed.

AWS allows you to change objects from S3-IA to S3 standard storage or reduced redundant storage. However, this transition is not direct. S3-IA copy request and S3-IA data retrieval are required and charges apply. Switching from S3-IA to Glacier is also possible.

Azure allows you to change the frequency tier of your account from Cool Blob Storage to Hot Blob Storage. This is also paid. Changes apply to the entire storage account and all objects within it. You are charged for reading all data in your storage account.

Quirks & Considerations

Every software, hardware and technology has its quirks and it helps to know about them before investing in them. AWS S3-IA and Azure Cool Blob storage are no exception.

 

AWS S3-IA

Azure Cool Blob Storage

Backup Quirks

All EC2 snapshots go to S3 standard, not to S3-IA.

Not integrated with Azure backup vault currently

Object Size

Minimum 128 KiloBytes (KBs)

With AWS S3-IA, all EC2 storage snapshots are first migrated to S3 standard. You must stay for 30 days unless you want to move earlier. In that case, you have to pay an additional fee.Another AWS minimum object size is 128 KB. Therefore, the size of the object must be at least that much. All sizes below 128 KB are calculated with 128 KB for cloud backups.

Azure Cool Blob Storage is not currently integrated with Azure Backup Vault. However, there are third-party providers who already offer these services. However, even traditional Azure deployment models (System Center Data Protection Manager, Azure Backup, and Azure Site Recovery) currently do not integrate with Azure Cool Blob Storage.

Pricing

Note: it is recommended that you consult Amazon or Microsoft for pricing, as price structures can change from time to time and from one region to the other.

 

AWS S3-IA

Azure CBS LRS

Azure CBS GRS and RA-GRS

Data Stored

Amount of Data Stored

$0.0125 per GB per month

<30 days: Pro-rated storage charge.

$0.01 per GB per month

GRS $0.02 per GB per month

RA-GRS $0.025 per GB per mo.

Data Transferred

Data write

$0.000 (free)

$0.0025 per GB

$0.005 per GB

Data retrieval

$0.01 per GB

$0.01 per GB

$0.01 per GB

Transfer IN to cloud

$0.000 (free)

$0.000 (free)

$0.000 (free)

Transfer OUT to Internet

Same as AWS S3 Standard (max: $0.09 per GB)

Same as hot storage account (max: $0.087 per GB)

Same as hot storage account (max: $0.087 per GB)

 

     

Transfer TO another region

Same as AWS S3 Standard ($0.020 per GB)

Same as transfer out to internet

Same as transfer out to internet

Geo-Replication Data Transfer

N/A

N/A

$0.020 per GB

Requests

PUT

$0.10 p10kr

$0.10 p10kr

$0.20 p10kr

POST (AWS) / Create (Azure)

$0.10 p10kr

$0.10 p10kr

$0.20 p10kr

COPY

$0.10 p10kr

$0.01 p10kr

$0.01 p10kr

LIST

$0.01 p10kr

$0.10 p10kr

$0.20 p10kr

GET

$0.01 p10kr

$0.01 p10kr

$0.01 p10kr

DELETE

$0.000 (free)

$0.000 (free)

$0.000 (free)

Other requests

$0.01 p10kr

$0.01 p10kr

$0.01 p10kr

Lifecycle transition requests

$0.10 p10kr

N/A

N/A

The term “p10kr” is an abbreviation for “per 10,000 requests”. For easier comparison, pricing is normalized to 10,000 requests.