Day - 63 of DevOps

Day - 63 of DevOps

Amazon S3 Storage Classes

Welcome to Day 63 of the #100DaysOfDevOps Challenge! Today we will see the Amazon S3 Storage Classes

In the previous article, we had carried out a detailed discussion on Amazon S3, its features, and its working mechanism. While discussing one of the features of Amazon S3 i.e. Storage Classes

Amazon S3 provides a number of impressive features and knowing each of them is very important for being able to utilize Amazon S3 effectively and efficiently for various use cases. In fact, first and foremost, one should emphasize on gaining comprehensive knowledge on the Storage Classes feature of Amazon S3 before moving on to other features. It is because having sound knowledge of Amazon S3 Storage Classes would build a solid foundation to understand the remaining features with ease. Moreover, it would help us get through a most commonly faced challenge i.e. utilizing Amazon S3 in such a way that the storage requirements of our workloads are best addressed with cost optimization.

So, what are we waiting for? Without further ado, let’s dive straight into Amazon S3 Storage Classes.

S3 Storage Classes. In this article, we will be discussing… | by Tadaka  Surya Teja | Medium

Amazon S3 Storage Classes

Amazon S3 provides a range of storage classes that we can choose from based on the data access, resiliency, and cost requirements of our workloads. S3 storage classes are built in such an efficient manner that they can address almost any of our use cases, be it performance needs or data residency requirements or variable/unknown/infrequent access patterns or archival storage or low cost and so on. To acquire an even more clear picture of S3 storage classes, let's have a look into each storage class offered by AWS.

1. S3 Standard

★ S3 Standard is the default storage class provided by AWS.
★ If we don’t specify the storage class while uploading an object in S3, Amazon S3 automatically assigns the object to S3 Standard storage class.
★ It is suitable for frequently accessed data as it delivers low latency and high throughput.
★ It is also the most expensive storage class among the available storage classes.

2. S3 Intelligent Tiering

★ S3 Intelligent Tiering is designed as an intelligent storage class.
★ S3 intelligent tiering is designed in such a way that it analyzes the access frequency of the stored data and automatically moves the data to the most cost-effective access tier, without performance impact, retrieval charges or operational overhead.
★ It offers three types of Access Tiers, namely, Frequent Access Tier, Infrequent Access Tier, and Archive instant Access Tier.
★ Similar to S3 Standard Storage Class, it delivers milliseconds latency and high throughput. But, unlike S3 Standard which is suitable for frequently accessed data, S3 Intelligent Standard Tiering is suitable for frequently, infrequently as well as rarely accessed data because of its possession of three types of access tiers.
★ The infrequent Access tier saves up to 40% on storage costs.
★ Archive Instant Access tier saves up to 68% on storage costs.
★ If some objects have not been accessed for 30 consecutive days, it moves them to the infrequent access tier. Also, if those objects are accessed after being moved to the infrequent access tier, they are again moving back to the frequent access tier.
★ It is suitable for storing long-lived data where access patterns are unknown.

3. S3 Standard-IA

★ S3 Standard-IA (S3 Standard — Infrequent Access) is suitable for data that is accessed less frequently, but requires rapid access when needed.
★ Similar to S3 Standard, it offers a high throughput and low latency, but with a low per GB storage price and per GB retrieval charge.
★ Due to the low cost and high-performance storage, S3 Standard-IA can be used for long-term storage, backups, and as a data store for disaster recovery files.

4. S3 One Zone-IA

★ S3 One Zone — IA (S3 One Zone — Infrequent Access) is similar to S3 Standard-IA in terms of use case i.e. it is also suitable for data that is accessed less frequently and which requires rapid access when needed.
★ Similar to S3 Standard-IA, it also offers a high throughput and low latency.
★ S3 One Zone-IA stores the object data in only one Availability Zone, unlike rest of the storage classes which store object data redundantly across multiple geographically availability zones.
★ Since the data is stored in a single availability zone, the cost to store the data is somewhat less in comparison to other storage classes.
★ But, storage of data in single availability zone means that the stored data is not resilient to the physical loss of the availability zone that may occur due to natural calamities such as flood, earthquake and so on.
★ Also, storage of data in single availability zone results in less availability (99.5%) in comparison to other storage classes (99.999999999%).
★ Our data will be lost if the availability zone where the data is stored is destroyed or damaged due to some reason.
★ Hence, we can use S3 One Zone-IA storage class only if we have the flexibility to re-create the data in case of failure of the availability zone.

5. S3 Glacier

★ S3 Glacier is suitable for archive data that is accessed once or twice per year and is retrieved asynchronously.
★ It is best-fit for data archiving, long-term backup, and disaster recovery use cases when occasionally large sets of data need to be retrieved in minutes, at no cost.
★ Retrieval times range from a few minutes to hours.

6. S3 Glacier Deep Archive

★ S3 Glacier Deep Archive is the lowest-cost Amazon S3 storage class that supports long-term retention and digital preservation of data that will be retained for 7–10 years and that may be accessed once or twice per year.
★ Similar to S3 Glacier, it is also suitable for data archiving, back up and disaster recovery use cases.
★ But, retrieval time of data stored in S3 Glacier Deep Archive is more in comparison to S3 Glacier. Retrieval time is generally in hours (default retrieval time is 12 hours)
★ We can reduce the retrieval costs even more by using bulk retrieval, which returns data within 48 hours.

Side-by-Side Comparison Between Amazon S3 storage classes

If you have reached this section, I believe that now you have pretty clear idea on each of Amazon S3 Storage Classes. Also, I believe that you feel confident that you will be able to choose a right storage class that would best address the storage requirements of your workloads. But, before deciding the storage class for you workloads, I strongly suggest you to have a look at the table below, which showcases the granular comparison between each storage class. If you study the comparison table below carefully, you would surely be able to decide the right storage class for your workloads even more easily.

If you are preparing or planning for taking AWS Certified Cloud Practitioner (AWS CCP) Exam, then, I assure you that reading this article will be very beneficial for you. In AWS CCP exam, it is certain that you will recieve at least one question from AWS S3 Storage Classes.

Conclusion

Storage Classes is undoubtedly one of the most important features of Amazon S3, which provides us the ability to adopt Amazon S3 as a storage solution in such a way that the requirements of our storage workload are perfectly addressed. Also, Amazon S3 offers several storage classes which are designed in such a way that almost all the possible use cases that a user can have are addressed. Meanwhile, due to the availability of several storage classes, one can have confusions in choosing the right storage class that would satisfy their storage requirement. And, the only solution to get through such confusion is to gain thorough understanding of each of the storage class. Once you do so, you would easily able to choose a storage class that is best-fit for your storage workload.