AWS Hands-On | S3 Introduction | S3 Storage Classes
📌 Notice
This is a hands-on tutorial accompanying the blog post:
🔹 Focus: Practical implementation of Amazon S3.
🔹 For theoretical concepts and exam-style questions, please refer to the main blog post (link to parent blog).
Here’s a step-by-step guide to working with S3 Storage Classes, based on the provided content:
Objective: Understand different S3 storage classes, how to assign them during upload, how to change them for existing objects, and how to automate transitions using lifecycle rules.
Prerequisites:
✔ An AWS account with access to Amazon S3.
✔ A sample file (e.g., coffee.jpeg) to upload.
Step 1: Create a New S3 Bucket
- Navigate to S3: Go to the Amazon S3 console.
- Create Bucket: Click “Create bucket”.
- Configure Bucket Details:
- Bucket name:
s3-storage-classes-demos-2025
(or a unique name of your choice). - AWS Region: Choose any region you prefer.
- Leave other settings as default for this demo.
4. Create Bucket: Click “Create bucket”
Step 2: Upload an Object and Assign a Storage Class
- Navigate to the New Bucket: Go to your newly created bucket (
s3-mino-storage-classes-demos-2025
). - Upload Object: Click “Upload”, then “Add files”, and select
coffee.jpeg
(or your chosen file). - Review “Properties” (Optional but Recommended): Before uploading, click “Options” or “Properties” next to your file.
- Choose Storage Class: Under “Storage class”, observe the various options:
- S3 Standard: Default, highly available, frequently accessed.
- S3 Intelligent-Tiering: Automatically moves data between tiers based on access patterns.
- S3 Standard-IA: Infrequently accessed, but with low latency retrieval.
- S3 One Zone-IA: Infrequently accessed, stored in a single Availability Zone (AZ) — lower cost, but data loss risk if AZ fails.
- S3 Glacier Instant Retrieval: Archival for milliseconds retrieval.
- S3 Glacier Flexible Retrieval: Archival for minutes to hours retrieval.
- S3 Glacier Deep Archive: Lowest cost archival for hours retrieval.
- Reduced Redundancy: Deprecated.
5. Select a Storage Class: For this step, choose S3 Standard-IA.
- Complete Upload: Click “Upload”.
Observation: After the upload, you’ll see
coffee.jpeg
listed in your bucket with its "Storage class" clearly indicated asStandard-IA
.
Step 3: Change an Existing Object’s Storage Class
- Select the Object: In your bucket, select the
coffee.jpeg
object by checking its box. - Go to “Properties”: Click on the “Properties” tab.
- Edit Storage Class: Scroll down to the “Storage class” section and click “Edit”.
- Choose New Storage Class: From the dropdown, select S3 One Zone-IA.
- Save Changes: Click “Save changes”.
Observation: The object’s storage class will now update to
One Zone-IA
in the S3 console. You can repeat this process to change it to other classes likeGlacier Instant Retrieval
orIntelligent-Tiering
.
Step 4: Automate Storage Class Transitions with a Lifecycle Rule
- Go to “Management” Tab: In your bucket (
s3-mino-storage-classes-demos-2025
), click the "Management" tab. - Create Lifecycle Rule: Under “Lifecycle rules”, click “Create lifecycle rule”.
- Configure Rule Details:
- Lifecycle rule name:
DemoRule
(or a descriptive name). - Rule scope: Choose “Apply to all objects in the bucket”.
- Lifecycle rule actions
Lifecycle rule actions
- Check “Transition current versions of objects between storage classes”.
- Click “Add transition”.
Transition 1:
- Choose storage class: Select
Standard-IA
. - Days after creation: Enter
30
. (This means after 30 days, the object moves from its current tier to Standard-IA). - Click “Add transition” again.
Transition 2:
- Choose storage class: Select
Intelligent-Tiering
. - Days after creation: Enter
60
. (This means after 60 days, the object moves from the previous tier to Intelligent-Tiering). - Click “Add transition” again.
Transition 3:
- Choose storage class: Select
Glacier Flexible Retrieval
. - Days after creation: Enter
180
. (This means after 180 days, the object moves to Glacier Flexible Retrieval).
4. Create Rule: Click “Create rule”.
Explanation: This rule automatically moves your objects through different storage classes over time, optimizing cost based on assumed access patterns without manual intervention.
Conclusion:
You have successfully explored Amazon S3 storage classes by:
- Assigning a specific storage class during object upload.
- Manually changing the storage class of an existing object.
- Creating a lifecycle rule to automate transitions between storage classes over time. This demonstrates the flexibility and cost-optimization capabilities offered by S3’s diverse storage options.