Choosing between storage tiers
In this tutorial, we will learn about different access storage tiers. This covers Azure storage for storing blob object data in the most cost-effective manner. However, the available access tiers include:
- Firstly, Hot, for storing data that has frequent access.
- Secondly, Cool, for storing data that has frequent access and storage is for at least 30 days.
- Lastly, Archive, for storing data that less access and storage is for at least 180 days with flexible latency requirements.
Considerations applying to the different access tiers:
- Firstly, only the hot and cool access tiers can be set at the account level.
- Secondly, while uploading Hot, cool, and archive tiers can be set at the blob level.
- Thirdly, data in the cool access tier can tolerate slightly lower availability. But, still, it requires high durability, retrieval latency, and throughput characteristics similar to hot data. However, for cool data, a slightly lower availability service-level agreement (SLA) and higher access costs are acceptable trade-offs for lower storage costs.
- Lastly, Archive storage stores data offline and offers the lowest storage costs but also the highest data rehydrate and access costs.
However, data stored in the cloud grows at an exponential pace. And, for managing costs for your expanding storage needs, it’s helpful to organize your data based on attributes like frequency-of-access and planned retention period to optimize costs. The data storage in the cloud can be different based on its generation, process, and access. That is to say, some data has active access and modification throughout its lifetime. And some data has frequent access early in its lifetime. While some data remains constant in the cloud and has less access after storage.
Storage accounts for support tiering
Object storage data tiering between hot, cool, and archive only supports Blob storage and General Purpose v2 (GPv2) accounts. However, the General Purpose v1 (GPv1) accounts don’t support tiering. So, customers can easily convert their existing GPv1 or Blob storage accounts to GPv2 accounts through the Azure portal. Moreover, GPv2 provides new pricing and features for blobs, files, and queues. Some features and price cuts are only offered in GPv2 accounts.
Types of Tiers
Hot access tier
The hot access tier has more storage costs than cool and archive tiers, but the lowest access costs. Usage scenarios example for the hot access tier include:
- Firstly, data that is actively in use or to have frequent access.
- Secondly, data that are for processing and eventual migration to the Cool access tier.
Cool access tier
The cool access tier has less storage costs and higher access costs compared to hot storage. However, this tier is for data that will remain in the cool tier for at least 30 days. Usage scenarios example for the cool access tier include:
- Firstly, short-term backup and disaster recovery datasets.
- Secondly, older media content has no frequent view anymore. But it is available immediately after access.
- Lastly, large data sets that require to be stored cost-effectively while more data gathering is there for future processing.
Archive access tier
Of all the tiers, the Archive access tier has the lowest storage cost. But it has more data retrieval costs than the hot and cool tiers. However, the data must remain in the archive tier for at least 180 days or be subject to an early deletion charge. Data in the archive tier can take several hours for retrieving depending on the priority of the rehydration.
While a blob is in archive storage, the blob data is offline and can’t be read, overwritten, or modified. However, for reading or downloading a blob in an archive, you must first rehydrate it to an online tier. Also, you can’t take snapshots of a blob in archive storage. And, the blob metadata remains online and available, allowing you to list the blob, its properties, metadata, and blob index tags. For blobs in archive, the only valid operations are GetBlobProperties, GetBlobMetadata, SetBlobTags, GetBlobTags, FindBlobsByTags, ListBlobs, SetBlobTier, CopyBlob, and DeleteBlob. Usage scenarios example for the Archive access tier include:
- Firstly, long-term backup, secondary backup, and archival datasets
- Secondly, original data that must be preserved, even after it has been processed into final usable form.
- Lastly, compliance and archival data that require to be stored for a long time and is hardly ever accessed.
Account-level tiering
You should know that Blobs in all three access tiers can coexist within the same account. But, any blob that doesn’t have an explicitly assigned tier infers the tier from the account access tier setting. And, if the access tier comes from the account, then you will see the Access Tier Inferred blob property set to “true”, and the Access Tier blob property matches the account tier. However, in the Azure portal, the access tier property is shown with the blob access tier as Hot or Cool.
When the account access tier has any changes then it applies to all access tier inferred objects stored in the account. Even those which don’t have an explicit tier set. So, if you toggle the account tier from hot to cool, then you’ll be charged for write operations (per 10,000) for all blobs without a set tier in GPv2 accounts only. But, there’s no charge for this change in Blob storage accounts. You’ll be charged for both read operations (per 10,000) and data retrieval (per GB) if you toggle from cool to hot in Blob storage or GPv2 accounts.
Blob-level tiering
Blob-level tiering gives access for uploading data to the access tier of your choice using the Put Blob or Put Block List operations. Moreover, you change the tier of your data at the object level using the Set Blob Tier operation or Lifecycle management feature. You can upload data to your access tier and then easily change the blob access tier among the hot, cool, or archive tiers as usage patterns change. This is done without having to move data between accounts. As all the tier change requests happen immediately and tier changes between hot and cool are instantaneous. However, rehydrating a blob from the archive can take several hours.
Blob-level tiering billing
- When a blob is moved to the hot, cool, or archive tier, it is charged at the corresponding rate immediately upon tier change.
- And, when a blob is moved to a cooler tier (hot->cool, hot->archive, or cool->archive), the operation is billed as a write operation to the destination tier. In this, the write operation (per 10,000) and data write (per GB) charges of the destination tier apply.
- Lastly, when a blob is moved to a warmer tier (archive->cool, archive->hot, or cool->hot), the operation is billed as a read from the source tier. Here, the read operation (per 10,000) and data retrieval (per GB) charges of the source tier apply. However, rehydrating data from archives takes time and data will be charged archive prices until the data is restored online and blob tier changes to hot or cool.
The table below summarizes how tier changes are billed:
Comparing block blob storage options
This table shows a comparison of premium performance block blob storage, and the hot, cool, and archive access tiers.
Pricing and billing
You should know that all storage accounts use a pricing model for Block blob storage based on the tier of each blob. Check the billing considerations below:
- Firstly, Storage costs. The amount of data stored and the cost of storing data varies depending on the access tier. However, the per-gigabyte cost decreases as the tier gets cooler.
- Secondly, Data access costs. As the tier gets cooler the data access charges increase. However, for data in the cool and archive access tier, there are per-gigabyte data access charge for reads.
- Then, Transaction cost. For all tiers that show increases as the tier gets cooler, there are per-transaction charges for that.
- Fourthly, Geo-Replication data transfer costs. This charge only for the accounts with geo-replication configured including GRS and RA-GRS.
- After that, Outbound data transfer costs. Outbound data transfers refer to the data that is transferred out of an Azure region. The collecting of billing for bandwidth usage on a per-gigabyte basis is consistent with general-purpose storage accounts.
- Lastly, Changing the access tier. With this, it will result in tier change charges for access tier inferred blobs stored in the account.
Reference: Microsoft Documentation