Bird
Raised Fist0
AWScloud~20 mins

S3 storage class optimization in AWS - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
S3 Storage Class Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding S3 Storage Classes for Cost Efficiency

You have a dataset that is accessed frequently for the first 30 days after upload, then rarely accessed but must be retained for years. Which S3 storage class is the best fit to optimize cost while meeting access needs?

AS3 Intelligent-Tiering with automatic tiering between frequent and infrequent access
BS3 One Zone-Infrequent Access for all data
CS3 Glacier Deep Archive immediately after upload
DS3 Standard for all data retention period
Attempts:
2 left
💡 Hint

Think about a storage class that adapts automatically to changing access patterns.

❓ Architecture
intermediate
2:00remaining
Designing Lifecycle Policies for S3 Data

You want to automate moving objects from S3 Standard to S3 Glacier after 60 days and then delete them after 2 years. Which lifecycle policy configuration achieves this?

ATransition to Glacier after 60 days; No expiration
BTransition to Glacier after 730 days; Expire after 60 days
CExpire after 60 days; Transition to Glacier after 730 days
DTransition to Glacier after 60 days; Expire after 730 days
Attempts:
2 left
💡 Hint

Think about the order: first move to cheaper storage, then delete later.

❓ security
advanced
2:00remaining
Securing S3 Data with Storage Class and Access Controls

You have sensitive data stored in S3 Glacier Deep Archive. You want to ensure only authorized users can restore and access this data. Which combination of settings best enforces this?

AUse bucket policies to restrict restore actions and enable encryption with AWS KMS
BDisable all encryption and rely on IAM roles only
CUse public read ACLs and rely on storage class for security
DAllow all users to restore but restrict download via VPC endpoint policies
Attempts:
2 left
💡 Hint

Think about combining encryption and access policies for sensitive data.

❓ service_behavior
advanced
2:00remaining
S3 Intelligent-Tiering Behavior on Access Patterns

You upload objects to S3 Intelligent-Tiering. After 45 days, some objects are not accessed at all. What happens to these objects automatically?

AObjects are deleted automatically after 30 days
BObjects remain in the frequent access tier indefinitely
CObjects are moved to the infrequent access tier to reduce cost
DObjects are moved to Glacier Deep Archive immediately
Attempts:
2 left
💡 Hint

Consider how Intelligent-Tiering optimizes cost based on usage.

✅ Best Practice
expert
3:00remaining
Optimizing S3 Storage Costs for Large, Rarely Accessed Data Sets

Your company stores petabytes of data that are rarely accessed but must be retained for compliance. You want to minimize storage costs while ensuring data durability and occasional retrieval within hours. Which storage class and strategy best meet these requirements?

AUse S3 Standard storage class only to avoid retrieval delays
BUse S3 Glacier Flexible Retrieval with lifecycle policy transitioning data after 30 days from Standard
CUse S3 Glacier Deep Archive with no lifecycle transitions and retrieve data on demand
DUse S3 One Zone-Infrequent Access for all data to save cost
Attempts:
2 left
💡 Hint

Think about balancing cost, durability, and retrieval time.

Practice

(1/5)
1. What is the main benefit of using S3 storage class optimization in AWS?
easy
A. It increases the speed of data retrieval from S3 buckets.
B. It creates backups of S3 data in multiple regions.
C. It automatically encrypts all files stored in S3.
D. It reduces storage costs by moving data to cheaper classes based on usage.

Solution

  1. Step 1: Understand the purpose of storage class optimization

    S3 storage class optimization is designed to save money by moving data to cheaper storage classes when it is less frequently accessed.
  2. Step 2: Compare options to the purpose

    Only It reduces storage costs by moving data to cheaper classes based on usage. describes cost saving by moving data based on usage. Other options describe different features not related to storage class optimization.
  3. Final Answer:

    It reduces storage costs by moving data to cheaper classes based on usage. -> Option D
  4. Quick Check:

    Cost saving by data movement = B [OK]
Hint: Focus on cost saving by data movement between storage classes [OK]
Common Mistakes:
  • Confusing optimization with encryption or backup features
  • Thinking it improves retrieval speed primarily
  • Assuming it automatically creates backups
2. Which of the following is the correct syntax to create a lifecycle rule in an S3 bucket to transition objects to the STANDARD_IA storage class after 30 days?
easy
A. {"Rules": [{"Status": "Enabled", "Transitions": [{"Day": 30, "StorageClass": "STANDARD_IA"}]}]}
B. {"Rules": [{"Status": "Enabled", "Transitions": [{"Days": 30, "StorageClass": "STANDARD_IA"}]}]}
C. {"Rules": [{"Status": "Active", "Transitions": [{"Days": 30, "StorageClass": "STANDARD_IA"}]}]}
D. {"Rules": [{"Status": "Enabled", "Transition": [{"Days": 30, "StorageClass": "STANDARD_IA"}]}]}

Solution

  1. Step 1: Identify correct lifecycle rule syntax

    The correct key for multiple transitions is "Transitions" (plural), and the status must be "Enabled" to activate the rule.
  2. Step 2: Check each option for syntax errors

    {"Rules": [{"Status": "Enabled", "Transitions": [{"Days": 30, "StorageClass": "STANDARD_IA"}]}]} uses "Transitions" and "Status": "Enabled" correctly. {"Rules": [{"Status": "Enabled", "Transition": [{"Days": 30, "StorageClass": "STANDARD_IA"}]}]} uses "Transition" (singular) which is invalid. {"Rules": [{"Status": "Active", "Transitions": [{"Days": 30, "StorageClass": "STANDARD_IA"}]}]} uses "Status": "Active" which is incorrect. {"Rules": [{"Status": "Enabled", "Transitions": [{"Day": 30, "StorageClass": "STANDARD_IA"}]}]} uses "Day" instead of "Days" which is invalid.
  3. Final Answer:

    {"Rules": [{"Status": "Enabled", "Transitions": [{"Days": 30, "StorageClass": "STANDARD_IA"}]}]} -> Option B
  4. Quick Check:

    Correct lifecycle JSON syntax = D [OK]
Hint: Remember plural 'Transitions' and 'Status' must be 'Enabled' [OK]
Common Mistakes:
  • Using singular 'Transition' instead of 'Transitions'
  • Setting status to 'Active' instead of 'Enabled'
  • Using 'Day' instead of 'Days' key
3. Given this lifecycle rule JSON snippet, what will happen to objects older than 60 days?
{"Rules": [{"Status": "Enabled", "Transitions": [{"Days": 30, "StorageClass": "STANDARD_IA"}, {"Days": 60, "StorageClass": "GLACIER"}]}]}
medium
A. Objects older than 60 days will be deleted automatically.
B. Objects older than 60 days will remain in STANDARD_IA storage class.
C. Objects older than 60 days will be moved to GLACIER storage class.
D. Objects older than 60 days will be moved back to STANDARD storage class.

Solution

  1. Step 1: Analyze the lifecycle transitions

    The rule transitions objects to STANDARD_IA after 30 days, then to GLACIER after 60 days.
  2. Step 2: Determine final storage class after 60 days

    Objects older than 60 days will be moved to GLACIER, which is a colder, cheaper storage class.
  3. Final Answer:

    Objects older than 60 days will be moved to GLACIER storage class. -> Option C
  4. Quick Check:

    Lifecycle transitions move objects to GLACIER after 60 days = A [OK]
Hint: Check the last transition day and storage class [OK]
Common Mistakes:
  • Thinking objects stay in STANDARD_IA after 60 days
  • Confusing transition with deletion
  • Assuming objects move back to STANDARD
4. A user created this lifecycle rule but objects are not transitioning to GLACIER after 90 days:
{"Rules": [{"Status": "Enabled", "Transitions": [{"Days": 90, "StorageClass": "GLACIER"}], "Expiration": {"Days": 365}}]}

What is the most likely reason?
medium
A. The rule is missing a filter to specify which objects to apply to.
B. GLACIER storage class is deprecated and cannot be used.
C. The Expiration setting prevents transitions to GLACIER.
D. The 'Days' value must be less than 30 for transitions.

Solution

  1. Step 1: Check lifecycle rule requirements

    Lifecycle rules require a filter or prefix to specify which objects the rule applies to. Without a filter, the rule may not apply to any objects.
  2. Step 2: Evaluate other options

    GLACIER is still valid, expiration does not block transitions, and 'Days' can be any positive number.
  3. Final Answer:

    The rule is missing a filter to specify which objects to apply to. -> Option A
  4. Quick Check:

    Missing filter causes no transitions = A [OK]
Hint: Always include a filter or prefix in lifecycle rules [OK]
Common Mistakes:
  • Assuming GLACIER is deprecated
  • Thinking expiration blocks transitions
  • Believing 'Days' must be under 30
5. You manage a large S3 bucket with mixed access patterns. You want to optimize costs by automatically moving files to cheaper storage classes but keep frequently accessed files in STANDARD. Which lifecycle rule setup best achieves this?
hard
A. Transition objects to STANDARD_IA after 30 days and to GLACIER after 90 days, with a filter excluding files accessed in last 30 days.
B. Transition all objects to GLACIER immediately after upload to save costs.
C. Delete objects after 30 days to save storage costs.
D. Keep all objects in STANDARD storage class to ensure fastest access.

Solution

  1. Step 1: Understand access patterns and cost goals

    Frequently accessed files should stay in STANDARD. Less accessed files should move to cheaper classes like STANDARD_IA and GLACIER.
  2. Step 2: Evaluate lifecycle rule options

    Transition objects to STANDARD_IA after 30 days and to GLACIER after 90 days, with a filter excluding files accessed in last 30 days. uses transitions with a filter to exclude recently accessed files, optimizing costs while keeping frequent files fast. Transition all objects to GLACIER immediately after upload to save costs. moves all files immediately to GLACIER, causing slow access. Delete objects after 30 days to save storage costs. deletes files, which may lose data. Keep all objects in STANDARD storage class to ensure fastest access. keeps all files in STANDARD, not optimizing costs.
  3. Final Answer:

    Transition objects to STANDARD_IA after 30 days and to GLACIER after 90 days, with a filter excluding files accessed in last 30 days. -> Option A
  4. Quick Check:

    Use transitions with filters to balance cost and access = C [OK]
Hint: Use filters to exclude recent files from transitions [OK]
Common Mistakes:
  • Moving all files to GLACIER immediately
  • Deleting files instead of transitioning
  • Keeping all files in expensive STANDARD class
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard