What Is S3 Glacier in Databases?
On This Page
What do you want to do?
Quick Definition
S3 Glacier is a cloud storage service from Amazon Web Services that stores data very cheaply but is intended for information you don't need to access often. It is perfect for backups, legal records, or old files that must be kept for a long time. Retrieving data takes a few minutes to several hours because the low price means slower access. You can think of it as a digital deep-freeze where you store your data until you need it again.
Common Commands & Configuration
aws s3api restore-object --bucket my-bucket --key my-archive.zip --restore-request '{"Days":3,"GlacierJobParameters":{"Tier":"Expedited"}}'Restores an object from S3 Glacier Flexible Retrieval using Expedited tier, making it available for 3 days.
Tests knowledge of RestoreObject API syntax, Days parameter, and tier selection. Expect questions where you must choose the correct tier based on urgency.
aws s3api put-bucket-lifecycle-configuration --bucket my-bucket --lifecycle-configuration file://lifecycle.jsonApplies a lifecycle policy stored in a JSON file to transition objects to Glacier after 90 days.
Common exam topic: understanding that lifecycle policies are applied via JSON and that transitions require minimum ages (e.g., 30 days for Glacier Instant Retrieval).
aws s3api put-object-lock-configuration --bucket my-bucket --object-lock-configuration '{"ObjectLockEnabled":"Enabled","Rule":{"DefaultRetention":{"Mode":"COMPLIANCE","Days":365}}}'Enables Object Lock on a bucket with Compliance mode, default retention of 365 days for all objects.
Tests that Object Lock must be enabled at bucket creation and that Compliance mode prevents deletion by any user, including root.
aws s3 cp s3://source-bucket/file.zip s3://dest-bucket/file.zip --storage-class DEEP_ARCHIVECopies a file directly to S3 Glacier Deep Archive using the copy command.
Demonstrates that you can upload directly to Glacier classes using the --storage-class flag. Exam may ask how to store data in Deep Archive on initial upload.
aws s3api list-parts --bucket my-bucket --key large-file.zip --upload-id exampleUploadIdLists uploaded parts for a multipart upload to Glacier, useful for large archives.
Multipart uploads to Glacier are charged per part and have a minimum part size of 5 MB. Questions about upload failures often involve part size or incomplete multipart uploads.
aws s3api head-object --bucket my-bucket --key my-archive.zip --query "StorageClass"Checks the current storage class of an object to confirm it is in a Glacier class.
Useful for verifying lifecycle transitions. In exams, you may need to distinguish between storage class names like 'GLACIER' (Flexible Retrieval) and 'DEEP_ARCHIVE'.
aws s3api put-object --bucket my-bucket --key archive.log --body archive.log --storage-class GLACIER_IRUploads a file directly to S3 Glacier Instant Retrieval storage class.
Tests that you can specify GLACIER_IR as a storage class. Instant Retrieval is the only Glacier class with millisecond retrieval.
S3 Glacier appears directly in 20exam-style practice questions in Courseiva's question bank — one of the most-tested concepts on CLF-C02. Practise them →
Must Know for Exams
S3 Glacier appears frequently in AWS certification exams, especially the AWS Cloud Practitioner, AWS Developer Associate, and AWS Solutions Architect Associate exams. It is a primary topic in AWS Cloud Practitioner (CLF-C02) under Domain 2: Cloud Security and Compliance, and Domain 3: Cloud Technology and Services. Questions typically ask you to identify the correct storage class for a given scenario.
For example, a scenario might describe a company that needs to store financial records for 10 years, accessed only once per year, and wants the lowest cost. The correct answer is S3 Glacier or S3 Glacier Deep Archive. They might also test your knowledge of retrieval times: Expedited (1–5 min), Standard (3–5 hours), Bulk (5–12 hours).
In AWS Developer Associate (DVA-C02), you may see questions about lifecycle policies and how to programmatically transition objects to Glacier using the AWS SDK. They might ask about the cost implications of early deletion (if you store an object for less than 90 days, you pay a prorated fee). In the Solutions Architect Associate (SAA-C03) exam, Glacier is often combined with S3 Object Lock and Vault Lock policies.
A typical question might be: which storage class should you use for data that must be encrypted at rest and cannot be modified during a 7-year retention period? The answer is S3 Glacier with Vault Lock or Object Lock. For Azure exams (AZ-104, Azure Fundamentals), the counterpart is Azure Blob Storage Archive Tier, so while S3 Glacier itself is not tested, the concept of archival storage is similar, so understanding Glacier helps you understand Azure’s offerings.
The Google Cloud Digital Leader and Google ACE exams do not directly test S3 Glacier but may ask about cold storage options like Google Cloud Storage Archive. However, knowing AWS Glacier gives you a mental model that applies across clouds. The main trap in exams is confusing S3 Glacier with S3 Standard-IA or S3 One Zone-IA.
Standard-IA has lower cost than Standard but still has immediate retrieval. Glacier is the only one with a delay. Another trick is mixing up retrieval times. Memorize: Expedited = minutes, Standard = hours, Bulk = up to 12 hours.
Also, remember that Glacier Deep Archive has even longer retrieval times (Standard within 12 hours, Bulk within 48 hours). The exams love to test the trade-off between cost and retrieval speed. When you see a question about “archival data” and “lowest cost,” think Glacier or Deep Archive.
When the question says “accessible in milliseconds,” rule out Glacier.
Simple Meaning
Imagine you have a big box of old tax documents from the past ten years. You don’t need to look at them every day, but you have to keep them by law just in case the government asks for them. Putting them in a regular office filing cabinet wastes expensive space that you could use for current projects.
Instead, you rent a small storage unit in a climate-controlled warehouse across town. That unit costs much less per month than your office space. But if you need a specific document, you have to drive to the warehouse, find the box, and bring it back.
The whole trip takes a few hours. That is exactly how Amazon S3 Glacier works. It is a place in the cloud where you can keep huge amounts of data for a very low monthly fee. The catch is that when you want that data back, you have to wait, sometimes minutes, sometimes hours, sometimes even overnight, before you can download it.
This trade-off makes sense for archived data. Think about medical records, scientific research data, or old surveillance footage. You almost never need them, but if you lose them, the consequences could be huge.
S3 Glacier is built for that exact scenario. It offers three retrieval options: Expedited (1–5 minutes), Standard (3–5 hours), and Bulk (5–12 hours). The faster you need the data, the more you pay per retrieval.
But the storage cost remains remarkably low, often a fraction of a cent per gigabyte per month. This makes S3 Glacier one of the most cost-effective solutions for long-term data retention in the cloud. For businesses that must comply with regulations like GDPR or HIPAA, S3 Glacier also provides encryption at rest and in transit, along with features like S3 Object Lock to prevent deletion or modification of files.
So while it is not suitable for active data, it is the perfect home for your digital attic.
Full Technical Definition
Amazon S3 Glacier is a storage class within the Amazon S3 ecosystem, designed specifically for data archiving with retrieval times ranging from minutes to hours. It is part of the S3 Intelligent-Tiering family but is a distinct storage class optimized for long-term, infrequent access. S3 Glacier stores data as objects within S3 buckets, and you can transition objects into Glacier either directly by specifying the storage class at upload, or through lifecycle policies that automatically move older data from S3 Standard or S3 Standard-IA into Glacier after a defined period.
Under the hood, S3 Glacier uses a distributed, redundant storage architecture. Data is automatically replicated across at least three Availability Zones within the same AWS Region, ensuring 99.999999999% durability (eleven 9s). This means that even if an entire data center fails, your data remains safe. The service also supports server-side encryption with either S3-managed keys (SSE-S3), AWS Key Management Service keys (SSE-KMS), or customer-provided keys (SSE-C). You can enable S3 Object Lock to enforce a write-once-read-many (WORM) model, which is critical for compliance with regulations like SEC Rule 17a-4.
Retrieval is not instant. Glacier offers three retrieval tiers: Expedited (1–5 minutes, higher cost), Standard (3–5 hours, moderate cost), and Bulk (5–12 hours, lowest cost). Each tier has a different pricing model based on the speed of access. You can initiate a retrieval request through the AWS Management Console, AWS CLI, or SDK. Once the request is submitted, AWS prepares a copy of the data in a temporary staging area, and you can download it from there. You are not charged for data transfer into Glacier, but you are charged for data transfer out to the internet, as well as for retrieval requests and early deletion fees if you delete an object within 90 days of uploading it.
S3 Glacier also supports vaults and archives for the Glacier API (as distinct from the S3 API). In the Glacier API, a vault is a container for archives, similar to a bucket for objects. However, in practice, most users interact with Glacier through the S3 API, where Glacier is simply another storage class. AWS recommends using the S3 API for new projects because it provides a unified experience and access to advanced features like lifecycle policies, replication, and event notifications.
One important technical detail is the concept of "restore." When you request data from Glacier, it is not immediately available. Instead, you initiate a restore operation that copies the data to a temporary S3 storage class, such as S3 Standard. After the restoration completes, you can access the object via the S3 endpoint. You can specify how long the temporary copy should be kept (e.g., 30 days), after which it is automatically deleted. This process decouples the permanent archival storage from the temporary retrieval layer, keeping costs low while still allowing access when needed.
For IT professionals, implementing Glacier involves setting up lifecycle rules in S3. For example, you might configure a rule that moves objects older than 365 days from S3 Standard to S3 Glacier. You can also set up a transition to S3 Glacier Deep Archive for data that must be kept for 5+ years but accessed extremely rarely. Automation through AWS Lambda and EventBridge can notify administrators when restores complete or when data transitions between storage classes.
Security is built in at every layer. Data in transit is protected by TLS/SSL. Data at rest is encrypted by default. Access is controlled through IAM policies, bucket policies, and S3 Access Points. You can also enable S3 Access Logs to audit who accessed what and when. Glacier also supports VPC endpoints for private network access, and AWS Config can track configuration changes to your Glacier vaults and retrieval policies.
In terms of performance, the latency of retrieval depends on the tier and the size of the archive. Large archives take longer to restore because they need to be reassembled from multiple chunks. AWS uses a queuing system to handle retrieval requests, so during peak demand you might experience slightly longer wait times. For Expedited retrievals, you can also provision a certain amount of capacity (in MB/s) to guarantee faster access, which is useful for disaster recovery scenarios where you need a specific file quickly.
Finally, Glacier integrates with AWS Backup, Amazon S3 Lifecycle Management, and AWS Storage Gateway, making it a versatile option for hybrid cloud architectures. On-premises backup software, like Veeam or NetBackup, can also write directly to Glacier via the S3 API, enabling offsite vault copies for disaster recovery.
Real-Life Example
Imagine you are a librarian at a huge city library. The main reading room has shelves filled with books that people borrow every day. That is like S3 Standard storage, fast access, but expensive per gigabyte.
Now, in the basement, there is a large storage room for books that haven’t been checked out in years. Maybe old reference books from the 1980s, historical newspapers, and special collections. The basement room is much cheaper to maintain because it uses simple metal shelves and has no heating or air conditioning for the most part.
That is like S3 Glacier. You can store a lot of books there for very little cost. However, if a researcher asks for a specific newspaper from 1985, you cannot just walk to the basement and grab it.
You need to request the book, a staff member goes down, finds the box, and brings it up. That takes a few hours. If the researcher is in a rush, you can pay extra for a dedicated person to run down immediately.
That is Expedited retrieval. If they can wait until the end of the day, it costs less (Standard retrieval). If they are not in a hurry at all, they can wait a full day and pay the lowest fee (Bulk retrieval).
Your library also has rules. Some books cannot be removed from the library at all. That is like S3 Object Lock for compliance. You can set a retention period, so even the library director cannot delete a book until the retention date passes.
This helps with legal or historical preservation requirements. Also, the library makes three copies of each rare book and stores them in three different basement rooms. If one room floods, the other two are safe.
That mirrors Glacier’s eleven nines durability by replicating data across three Availability Zones. The library also labels each book with a barcode and a metadata tag saying when it was added and who donated it. S3 Glacier tags objects with metadata too, which you can search using S3 Inventory or Athena.
Finally, if someone tries to donate a moldy book, the library checks it first. Glacier automatically checksums every upload to ensure data integrity. If a file arrives corrupted, it fails the upload and alerts you.
So overall, S3 Glacier is just a very organized, very secure, very patient basement storage room for your digital belongings.
Why This Term Matters
In the real world of IT, data grows exponentially every year. Companies generate terabytes of logs, emails, backups, and media files. Keeping all of that on expensive SSDs or even traditional hard drives would cost a fortune.
S3 Glacier matters because it gives organizations a legally compliant, highly durable, and drastically cheaper alternative for data that does not need immediate access. For example, healthcare providers must retain patient records for 7–10 years after the last visit. Storing those records on active storage would cost tens of thousands of dollars monthly.
Moving them to Glacier after a few months of activity can reduce storage costs by 80% or more. Financial institutions similarly need to keep transaction records for regulatory audits. Many use Glacier with Object Lock to automatically prevent deletion during the retention period.
E-commerce companies also use Glacier to archive old customer orders and invoices. While customers rarely request an invoice from three years ago, the company must keep the data for tax purposes. Glacier makes that economically viable.
Glacier is elastic. You do not need to forecast how much archival space you will need in ten years. You simply upload data as it ages, and AWS handles the capacity. The practical implementation often involves lifecycle policies.
For instance, a company might keep logs on S3 Standard for 30 days, move them to Standard-IA for 90 days, then transition to Glacier for 7 years. At the end of the 7-year period, the logs automatically expire and are deleted. This entire process requires minimal human intervention, saving time and reducing errors.
Glacier also enables hybrid cloud backup. Using AWS Storage Gateway, you can point your on-premises backup software to an S3 bucket that transitions data to Glacier. If your office burns down, your archives are safe in the cloud and accessible from anywhere.
Without Glacier, many small and medium businesses would be forced to keep expensive tape backup systems or risk losing critical data. So, S3 Glacier is not just a storage service; it is a fundamental tool for cost management, compliance, and data lifecycle automation in modern IT.
How It Appears in Exam Questions
In AWS certification exams, questions about S3 Glacier typically fall into three categories: scenario-based, configuration-based, and comparison-based. In scenario-based questions, you are given a description of a company’s data usage pattern and need to choose the right storage class. For example: A financial firm must retain three years of transaction logs.
The logs are accessed only once a year for auditing. Which storage class provides the lowest cost while meeting retrieval needs? The answer is S3 Glacier, because retrieval within hours is acceptable and cost is the priority.
Another scenario: A media company needs to archive raw video footage for five years. Occasionally, an editor needs a specific clip within 5 minutes to respond to a court order. Which retrieval tier should they choose?
Expedited retrieval, because speed is critical. Configuration-based questions involve lifecycle policies. You might see a JSON snippet of a lifecycle rule and you have to identify what it does.
For instance, a rule that transitions objects to Glacier after 30 days and expires them after 365 days. The question might ask: How long does the object stay in Glacier? 335 days (365 - 30).
Or they might ask: When will the object be deleted? After 365 days. Troubleshooting questions are rare but possible. For example: A user receives an error when trying to download an object directly from Glacier without restoring it first.
The answer is that you cannot read an object directly from Glacier storage; you must first initiate a restore, wait for the copy to be available in S3 Standard, and then download. Another pattern uses retrieval costs: An object stored in Glacier for 45 days is deleted. How much will the customer be charged?
They will be charged an early deletion fee because the minimum storage duration is 90 days. So, the exam will test your knowledge of the 90-day commitment. In Azure exams (AZ-104), while Glacier is not directly used, you may see similar questions about Azure Blob Archive tier, which also has a delay in retrieval (with rehydration times).
The same principles apply. For Google Cloud exams, you might compare Coldline vs Archive vs Standard storage classes, and the logic is identical. Always remember: if data must be instantly available (milliseconds), it cannot be Glacier or any cold storage class.
If cost is the top priority and access is very rare, Glacier or Deep Archive is correct.
Practise S3 Glacier Questions
Test your understanding with exam-style practice questions.
Example Scenario
You work for a healthcare software company that stores medical images like X-rays and MRIs. By law, you must keep these images for at least 10 years after the patient’s last visit. However, after the first year, the images are rarely accessed.
Your boss wants to reduce cloud storage costs because the current S3 Standard bills are very high. You propose moving older images to S3 Glacier after 12 months. To do this, you create an S3 Lifecycle rule on the bucket that stores the images.
The rule says: transition objects to S3 Glacier after 365 days, and delete them after 3,650 days (10 years). For new images, you set the default storage class to S3 Standard for the first year. When a doctor needs an old image, they search the medical record system, which triggers an AWS Lambda function that initiates a Standard retrieval from Glacier.
The function sends a notification to the doctor that the image will be available in about 3 to 5 hours. After restoration, the image is accessible for 7 days before it is automatically returned to Glacier. This solution reduces monthly storage costs by 70% while still meeting all legal and clinical requirements.
You also enable S3 Object Lock with a retention period of 10 years to meet HIPAA compliance, preventing any accidental deletion of patient data. The doctors are initially frustrated by the wait time, but after a few weeks they accept the trade-off because the money saved allows the hospital to purchase better diagnostic equipment. This scenario is exactly the type of use case that appears in the AWS Certified Solutions Architect exam.
You must understand that Glacier is not for active data, but for "cooling down" older data in a cost-efficient way.
Common Mistakes
Thinking S3 Glacier provides immediate access to data like S3 Standard
S3 Glacier is designed for archival storage and requires you to initiate a restore operation before you can download the data. Access times range from minutes to hours.
Always associate Glacier with the need to "restore first." If a scenario requires instant access (milliseconds), Glacier is the wrong choice.
Assuming S3 Glacier is only available through the Glacier API
While there is a standalone Glacier API, AWS recommends using the S3 API for new projects. You can set the storage class to Glacier directly in S3 and manage it with S3 lifecycle policies.
Understand that Glacier is a storage class within S3. You can use the S3 console, CLI, or SDK to upload objects to Glacier.
Believing data in S3 Glacier is less durable than data in S3 Standard
All S3 storage classes, including Glacier, provide the same 99.999999999% durability (eleven 9s) by replicating data across multiple Availability Zones.
Durability is the same across all S3 storage classes. The difference is availability (access time) and cost.
Ignoring the minimum storage duration and early deletion fees
S3 Glacier charges a pro-rated fee if you delete an object within 90 days of uploading it. Many people assume they can delete anytime without penalty.
Always check the minimum storage period (90 days for Glacier, 180 days for Glacier Deep Archive). If you delete early, you pay the rest of the period.
Confusing retrieval times across tiers: Expedited, Standard, and Bulk
Learners often mix up the numbers. Expedited is 1-5 minutes, Standard is 3-5 hours, Bulk is 5-12 hours (up to 48 hours for Deep Archive).
Create a simple mnemonic: Expedited = Extra fast (minutes), Standard = Several hours, Bulk = Big wait (up to half a day).
Thinking you can upload directly to Glacier without going through S3
While you can use the Glacier API directly, the most common and recommended method is to upload to S3 with the storage class set to Glacier, or use lifecycle transitions.
Use the S3 interface. Choose the storage class during upload or automate with lifecycle rules.
Exam Trap — Don't Get Fooled
{"trap":"The exam provides a scenario where a company needs to store data for 7 years and must be able to access any piece of data within a few seconds. The options include S3 Glacier, S3 Standard-IA, and S3 Glacier Deep Archive.","why_learners_choose_it":"Learners see \"long-term storage\" and \"low cost\" and immediately think Glacier, forgetting that the requirement for \"a few seconds\" access contradicts Glacier's retrieval times."
,"how_to_avoid_it":"Always read the access speed requirement carefully. If they say \"instant,\" \"milliseconds,\" or \"a few seconds,\" cross out Glacier and Glacier Deep Archive. The correct answer would be S3 Standard-IA (Infrequent Access) which gives immediate access at a moderate cost."
Commonly Confused With
S3 Standard-IA is designed for data that is accessed less frequently but needs immediate retrieval (milliseconds). S3 Glacier requires a restore operation with a delay of minutes to hours. Standard-IA is more expensive per GB per month than Glacier but has no retrieval delay.
If you have backup files you might need to restore within a minute, use Standard-IA. If those backups are only needed once a year and waiting 3 hours is fine, use Glacier.
Glacier Deep Archive is even cheaper than Glacier but has longer retrieval times: Standard retrieval within 12 hours, Bulk up to 48 hours. It also has a minimum storage period of 180 days. Use Deep Archive for data that truly will rarely be accessed, like regulatory archives for 10+ years.
Store old tax documents that you need to keep for 15 years and will likely never look at again. That’s Deep Archive. If you think you might need them once a year, choose Glacier.
S3 One Zone-IA stores data in only one Availability Zone, so it is less durable (99.99%) compared to Glacier (99.999999999%). It is designed for non-critical, re-creatable data. It offers immediate access and lower cost than Standard, but does not have the archival retrieval delay. It is not a replacement for Glacier.
Store thumbnails for a website that can be regenerated from the original images. That’s a good One Zone-IA use case. Do not put medical records there.
S3 Intelligent-Tiering automatically moves data between access tiers based on usage patterns. It does include an Archive Access tier that transitions data to Glacier if not accessed for 90 days, but you pay a monthly monitoring fee. With regular Glacier, you manually define lifecycle rules and pay no monitoring fee.
If you have unpredictable access patterns, Intelligent-Tiering saves you from micromanaging storage classes. If you know data will be archived after 1 year, set a lifecycle rule directly to Glacier.
Step-by-Step Breakdown
Identify the data to be archived
Determine which datasets are rarely accessed but must be retained for compliance or business reasons. Examples include transaction logs older than 1 year, medical records, or security camera footage older than 90 days.
Create an S3 bucket
Create an S3 bucket in your desired AWS Region. Configure the bucket with appropriate permissions, encryption settings, and versioning if needed. The bucket is the container for all your objects, including those destined for Glacier.
Choose the storage class at upload or set a lifecycle policy
You have two options. Option A: Upload objects directly with the storage class set to Glacier. Option B: Upload to Standard or Standard-IA and use an S3 Lifecycle rule to transition them to Glacier after a specified number of days. Most organizations choose Option B for automated data aging.
Configure the lifecycle rule
In the S3 console, go to the bucket and add a lifecycle rule. Define a rule name, filter by prefix or tags, and then add transitions. For example, transition to S3 Standard-IA after 30 days, then transition to Glacier after 365 days. You can also add an expiration action to delete the object after a certain period.
Enable S3 Object Lock (if required for compliance)
If your data must be immutable (cannot be deleted or overwritten), enable S3 Object Lock on the bucket before uploading any data. Set a retention mode (GOVERNANCE or COMPLIANCE) and a retention period. This works with Glacier-archived objects as well.
Upload or allow data to age into Glacier
Over time, as lifecycle rules execute, objects transition to Glacier. You can monitor the storage class of objects using S3 Inventory reports or the AWS Console. Objects in Glacier are still visible in the bucket but with a storage class of GLACIER.
Retrieve data when needed
To access a Glacier object, select it in the console and click 'Initiate Restore'. Choose the retrieval tier (Expedited, Standard, Bulk) and specify how long the temporary copy should be kept (e.g., 1 day). Once the restore is complete, the object is available in S3 Standard for download during the specified period.
Manage costs and audit
Use AWS Cost Explorer to monitor Glacier storage costs. Set up AWS Config rules to ensure that lifecycle policies are applied correctly. Use S3 Access Logs to audit who initiates restores and downloads. Regularly review and adjust lifecycle rules to optimize cost.
Delete objects at end of life
When the retention period expires, lifecycle rules can automatically delete objects. If you need to delete them manually, remember the 90-day minimum storage charge. Use S3 Batch Operations to delete large numbers of objects if needed.
Practical Mini-Lesson
S3 Glacier is not just a place to dump files; it requires planning and ongoing management. As an IT professional, you need to understand how lifecycle policies work in detail. A lifecycle policy is a set of rules that define when objects transition between storage classes and when they expire.
Each rule can have multiple transitions and a single expiration action. The transitions happen once per day, so if you set a transition to Glacier after 30 days, the object moves to Glacier sometime after the 30th day, not exactly at midnight. This is fine for most use cases.
You must also be aware of cost implications. For example, transitioning from S3 Standard to Glacier after 30 days means you pay Standard pricing for 30 days, then Glacier pricing thereafter. There is also a lifecycle transition request fee per object.
If you have millions of small objects, these request fees can add up. In practice, many organizations combine objects into larger archives before moving them to Glacier to reduce the number of objects. Another practical consideration is encryption.
By default, S3 Glacier encrypts data at rest using SSE-S3. If you need to use your own keys (SSE-KMS), you can. However, remember that KMS has request costs, and each retrieval will incur KMS API calls.
This can significantly increase cost if you restore many small objects frequently. Monitoring is also key. Set up CloudWatch metrics for S3 buckets, such as 'NumberOfObjects' and 'BucketSizeBytes' per storage class.
This helps you track how much data is in Glacier and forecast costs. Use S3 Inventory to get detailed reports of object metadata, including storage class, last modified date, and encryption status. You can query this inventory with Amazon Athena for advanced analytics.
Finally, always test your restore process. Set up a non-production environment, upload a few files to Glacier, initiate a restore, and measure how long it actually takes. This ensures your service level agreements (SLAs) are realistic.
In production, consider using S3 Event Notifications with AWS Lambda to automate notifications when a restore completes. For example, send an email to the user who requested the file. This creates a seamless user experience despite the delay.
S3 Glacier Storage Classes and Retrieval Speeds
Amazon S3 Glacier is a family of storage classes within Amazon Simple Storage Service (S3) designed for long-term data archiving and backup. The Glacier family includes three distinct classes: S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval (formerly simply S3 Glacier), and S3 Glacier Deep Archive. Each class is optimized for a different balance of access frequency, retrieval time, and cost. Understanding the differences is critical for architects and developers selecting the right class for compliance, regulatory, or cost optimization needs.
S3 Glacier Instant Retrieval is the fastest of the Glacier classes, offering retrieval times in the range of milliseconds. It is designed for data that is accessed once a quarter or less but still requires immediate availability when needed. This class is ideal for long-lived, rarely accessed data such as medical records, financial archives, or media assets that may be needed on short notice. The storage cost is higher than Glacier Flexible Retrieval but lower than Standard-IA. The retrieval cost is also higher, reflecting the instant access capability. For exams like the AWS Certified Solutions Architect Associate, you need to know that Instant Retrieval is the only Glacier class with sub-minute retrieval and that it still uses the same S3 API operations (like RestoreObject) but with a different underlying cost structure.
S3 Glacier Flexible Retrieval is the original Glacier class, with retrieval times configurable from 1 minute to 12 hours. The default expedited retrieval returns data in 1 to 5 minutes, but you can also use standard (3-5 hours) or bulk (5-12 hours) retrievals for lower cost. This class is best for backup data that may be needed for disaster recovery or for archives where retrieval speed is not critical but still manageable. The storage cost is lower than Instant Retrieval, but the retrieval cost increases with speed. A common exam scenario is choosing Flexible Retrieval for data that must be restored within a few hours during a disaster, while using Deep Archive for data that can wait up to 48 hours.
S3 Glacier Deep Archive is the most economical storage class in S3, designed for data that is accessed only once or twice a year and can tolerate retrieval times of 12 to 48 hours. This class is ideal for regulatory archives, email archives, or historical data that must be retained for years but rarely accessed. The storage cost is the lowest across all S3 classes, but the minimum storage duration is 180 days (compared to 90 days for Flexible Retrieval and 30 days for Instant Retrieval). Deep Archive also has a per-GB retrieval fee, which is higher than Flexible Retrieval but still low for infrequent access. In exams, you may be asked to recommend Deep Archive when the access pattern is once per year and retrieval within 48 hours is acceptable, or to identify that Deep Archive cannot be used for data that may need immediate access.
All three Glacier classes are configurable through S3 Lifecycle policies, which can transition objects from Standard to Standard-IA, then to Glacier classes based on age. Understanding the transition windows (e.g., minimum 30 days for Instant Retrieval, 90 days for Flexible Retrieval, 180 days for Deep Archive) is a common exam topic. You must also know that objects stored in S3 Glacier are not directly readable via GET; they must first be restored using the RestoreObject API, which copies the data to a temporary location for a specified duration. The restoration process incurs both data retrieval charges and the cost of temporary storage. This is frequently tested in the context of cost optimization and data lifecycle management.
Finally, all Glacier classes support server-side encryption (SSE-S3, SSE-KMS, SSE-C) and S3 Object Lock for Write Once, Read Many (WORM) compliance. Data durability is the same 99.999999999% (11 nines) across all S3 classes. When answering exam questions, pay attention to the retrieval speed requirement and minimum storage duration to select the correct Glacier class. For example, if a question specifies that data must be available within minutes after a restore request, Glacier Instant Retrieval is the only correct choice. If the question mentions a 40-hour retrieval time and lowest cost, Deep Archive is appropriate.
Lifecycle Policies and Transition Rules for S3 Glacier
Lifecycle policies in Amazon S3 are a powerful mechanism to automate the transition of objects between storage classes, including the Glacier family, based on time or other rules. For S3 Glacier, lifecycle policies are essential for optimizing costs by moving data that is no longer frequently accessed to colder tiers. The policies can be defined as transition actions or expiration actions. Transition actions move objects from one storage class to another, while expiration actions delete objects after a specified number of days. Understanding the constraints and behaviors of these policies is critical for exam success.
A common lifecycle policy pattern is to transition objects from S3 Standard to S3 Standard-IA after 30 days, then to S3 Glacier Instant Retrieval after 60 days, then to S3 Glacier Flexible Retrieval after 120 days, and finally to S3 Glacier Deep Archive after 180 days. However, there are minimum age requirements for transitions. For example, objects cannot be transitioned from Standard to Standard-IA within the first 30 days. Similarly, transition from Standard-IA to Glacier classes requires the object to be at least 30 days old for Glacier Instant Retrieval, 30 days for Glacier Flexible Retrieval (but the object must be at least 30 days old from the last modification, and the transition must occur at least 30 days after the object was created), and 180 days for Deep Archive. The minimum storage duration charges also apply: if you delete an object within the minimum duration (e.g., 180 days for Deep Archive), you are charged for the full duration. Exams often test your ability to calculate the cost impact of early deletion.
Another important aspect is the use of lifecycle policies with versioning. When a bucket has versioning enabled, lifecycle policies apply to both current and noncurrent versions. You can set separate transitions for noncurrent versions, for example moving noncurrent versions to Glacier after 30 days and deleting them after 365 days. This is commonly used to manage deleted objects that become noncurrent versions. In exam scenarios, you may be asked to design a policy that archives deleted objects to Glacier while keeping current versions in Standard for immediate access. The key is to use the NoncurrentVersionTransition action.
Lifecycle policies also support date-based rules, allowing you to specify a literal date (e.g., January 1, 2025) for transitions or expirations. However, most exams focus on day-based rules because they are more common. You must also know that lifecycle policies are evaluated once per day and that transitions are not instantaneous. If you need to force an immediate transition, you must manually change the storage class via the S3 Console, CLI, or SDK. Understanding the asynchronicity of lifecycle transitions is a frequent exam trick: a question might suggest that a transition happens immediately, but the correct answer acknowledges the daily evaluation cycle.
lifecycle policies can be used in conjunction with S3 Object Lock. If Object Lock is enabled, lifecycle expiration actions can still delete objects, but they must comply with retention settings. For example, if an object has a retention period of 90 days, a lifecycle rule that expires the object after 30 days will not take effect until the retention period ends. This interaction is tested in scenarios involving regulatory compliance where data must be retained for a minimum period.
Finally, note that lifecycle policies apply only to objects stored in S3. They cannot move objects from S3 Glacier back to Standard automatically. Restoring an object from Glacier creates a temporary copy in the Standard class, but the original object remains in Glacier. To permanently move an object out of Glacier, you must copy it to a new object in the desired class. This is a common misconception: many assume lifecycle policies can upgrade storage classes, but they only downgrade colder. For exam preparation, focus on the age constraints, versioning behavior, and interaction with Object Lock. Always check the minimum days for each transition and whether the question involves current or noncurrent versions.
Restore Operations and Data Retrieval Costs in S3 Glacier
Retrieving data from S3 Glacier is fundamentally different from reading data from other S3 storage classes. While objects in Standard or Standard-IA can be directly accessed using a GET request, objects in Glacier classes are archived and must first be restored to a temporary staging area in the Standard class before they can be read. This restore operation is performed via the RestoreObject API, which initiates an asynchronous job that makes a copy of the object available for a specified number of days. Understanding the restore process, cost implications, and available options is crucial for both exam questions and real-world cost management.
The restore operation allows you to specify the number of days the restored copy should be available (1 to 365 days). During this period, you are charged for both the original Glacier storage and the temporary Standard storage. Retrieval charges apply based on the amount of data restored. For S3 Glacier Flexible Retrieval, you can choose from three retrieval tiers: Expedited (1-5 minutes), Standard (3-5 hours), and Bulk (5-12 hours). Each tier has a different per-GB retrieval cost, with Expedited being the most expensive. For S3 Glacier Deep Archive, only Standard (12 hours) and Bulk (48 hours) tiers are available; there is no Expedited tier. S3 Glacier Instant Retrieval does not require restore because it provides millisecond access, but it has higher storage costs and a per-request retrieval charge.
Costs associated with restore operations include data retrieval fees (per GB restored), data transfer out fees (if you read the restored data to the internet), and temporary storage charges for the restored copy. Data retrieval fees vary by Glacier class and retrieval tier. For example, retrieving 1 TB of data from Glacier Flexible Retrieval using the Standard tier will incur a retrieval fee, while the same retrieval using the Bulk tier costs less per GB. Exams frequently ask you to compare the total cost of retrieval with different tiers or to recommend a tier based on urgency and budget. A common scenario: a disaster recovery test that requires data within 2 hours would need Expedited retrieval, but if the test can wait 5 hours, Standard is cheaper.
A critical exam detail is that restore operations are not free. Even if you use the Bulk tier, you still pay for data retrieval and temporary storage. Also, the restored copy counts against your bucket's quota and can be deleted after the specified days, but you are charged for the entire duration you set. If you delete the restored copy before the end date, you still pay for the full period. Restoring the same object multiple times incurs multiple retrieval charges. This is important in scenarios where data is frequently restored for audit purposes; you might consider moving it to a warmer class instead.
Another important concept is that restore requests have a limited number of concurrent jobs per account. By default, you can have up to 10 expedited retrievals in progress at once, though this can be increased by contacting AWS Support. For Bulk retrievals, there is no limit, but they are processed at a lower priority. In exam questions, you might be asked to identify why a restore operation is taking longer than expected, and the answer could be the concurrent request limit or that the account has a low service quota.
Finally, the restore operation can be automated using S3 Batch Operations, which can restore millions of objects in a single job. This is cost-effective for large archives. You can use S3 Object Lambda to transform data during restore, though that is more advanced. For the exam, remember that restoring data from Glacier is an asynchronous, billable operation with tier-specific speeds and costs. Always check the retrieval speed requirement and the cost tolerance before selecting a tier. The key takeaway: if your application requires immediate access, use Glacier Instant Retrieval or keep a copy in Standard; if you can wait hours, use Flexible Retrieval; if you can wait a day or two, Deep Archive is the cheapest.
Compliance and Security: Using S3 Object Lock with Glacier
Amazon S3 Glacier storage classes are often used to store data that must be retained for regulatory, legal, or compliance reasons. To meet these requirements, S3 Object Lock can be enabled on a bucket that contains Glacier objects, providing Write Once, Read Many (WORM) protection. Object Lock ensures that objects cannot be overwritten or deleted for a specified retention period, either fixed (retention mode) or indefinite (legal hold). Understanding how Object Lock interacts with Glacier classes is essential for exam scenarios involving data immutability, compliance, and audit trails.
Object Lock offers two retention modes: Governance mode and Compliance mode. In Governance mode, most users cannot delete an object, but users with special permissions (like the s3:BypassGovernanceRetention permission) can. In Compliance mode, no one can delete the object, not even the root user, until the retention period expires. Both modes can be applied to objects stored in any Glacier class. For exams, a common question is to recommend Compliance mode for data that must not be altered under any circumstances, such as financial transaction logs or medical records. Governance mode is suitable for situations where an administrator may need to override the lock for legal reasons.
When using Object Lock with Glacier, the retention period starts when the object is created. If you transition an object from Standard to Glacier via a lifecycle policy, the retention period from the original object's creation date applies. If you apply Object Lock to the Glacier object itself (by putting the object directly into Glacier), the retention period starts from the upload date. A critical exam detail is that lifecycle expiration actions cannot delete an object that is under Object Lock until the retention period expires. This means if you have a compliance rule that requires a 10-year retention, a lifecycle policy set to delete after 30 days will be ignored. This is frequently tested in scenarios where a company must retain data for a minimum period but also wants to automate deletion after that period.
Another important aspect is that Object Lock can only be enabled when a bucket is created; it cannot be enabled on an existing bucket. This is a common trick in exam questions: an administrator wants to add WORM protection to an existing bucket but must create a new bucket and migrate the data. Object Lock is a bucket-level setting, but retention settings can be applied per object. When you restore an object from Glacier to Standard, the restored copy does not inherit the Object Lock settings of the original object unless you explicitly apply them. This means you could unintentionally delete a restored copy even if the Glacier original is locked. Understanding this nuance can appear in troubleshooting questions.
For security, Glacier classes support the same encryption options as other S3 classes: SSE-S3 (Amazon S3-managed keys), SSE-KMS (AWS Key Management Service), and SSE-C (customer-provided keys). SSE-KMS is often required for compliance with frameworks like HIPAA or FedRAMP. When you restore an object from Glacier, the restored copy can use a different encryption key if you specify it during the restore request. This can cause confusion if the downstream application expects the original key. In exams, you might be asked to identify that the restored object must be encrypted with the same key for successful decryption.
Finally, S3 Glacier also integrates with AWS CloudTrail for logging all restore operations, bucket-level actions, and Object Lock modifications. This audit trail is crucial for demonstrating compliance during audits. For the AWS Certified Solutions Architect Associate and Security Specialty exams, you should know how to configure CloudTrail to log all S3 events, including those for Glacier. The combination of Object Lock, encryption, and logging makes Glacier a solid choice for regulated industries. When answering questions, focus on the retention mode selection, the interaction with lifecycle policies, and the pre-requisite of enabling Object Lock at bucket creation.
Troubleshooting Clues
RestoreRequestError: The operation is not valid for the object's storage class
Symptom: When trying to restore an object that is already in Standard or Standard-IA, the restore command fails.
RestoreObject API is only applicable to objects stored in Glacier and Deep Archive classes. Objects in Standard, Intelligent-Tiering, or Standard-IA can be read directly without restore.
Exam clue: Exam may present a scenario where a developer tries to restore an object from Standard-IA and gets an error. The correct action is to use GET instead of restore.
Insufficient permissions to restore object
Symptom: Restore request returns AccessDenied error even though the user has s3:GetObject permissions.
Restoring an object requires both s3:GetObject and s3:RestoreObject permissions. Also, if the bucket has a bucket policy denying restore, or if SSE-KMS encryption is used, the user needs kms:Decrypt permission.
Exam clue: Common in IAM policy questions: ensure both permissions are granted. Also, check if KMS key policies allow the user.
Expedited retrieval not available for this object
Symptom: When requesting Expedited tier for a Glacier object, you get a message that Expedited is not available.
Expedited retrieval is only supported for S3 Glacier Flexible Retrieval, not for Deep Archive (which only has Standard and Bulk tiers). Also, the account may have a low concurrent expedited retrieval quota (default 10).
Exam clue: Exam tests that Deep Archive does not have Expedited tier. Also, check the quota before assuming Expedited works.
Lifecycle transition not occurring after specified days
Symptom: Objects remain in Standard storage class past the transition day defined in the lifecycle policy.
Lifecycle policies are evaluated once per day. If the object was created after the daily evaluation, it may take an additional day. Also, the object may be less than the minimum age (e.g., 30 days for Standard-IA to Glacier).
Exam clue: Knowing that lifecycle evaluation is daily is a common exam trick. Also, check for minimum age constraints.
Restored object appears empty or corrupted
Symptom: After restoring a Glacier object, the restored S3 object has 0 bytes or is corrupted.
The restore operation creates a temporary copy. If the original object was encrypted with SSE-C (customer-provided key), the restored copy must use the same encryption key. Also, if the object was multipart uploaded, the restore may fail if parts are missing.
Exam clue: SSE-C handling is a frequent topic: restore must include the same encryption key. Multipart upload restore issues appear in advanced scenarios.
Cannot delete object under Object Lock
Symptom: Attempting to delete an object returns AccessDenied even as root user.
If the object has a compliance retention mode set, no one can delete it until the retention period expires. For governance mode, users with s3:BypassGovernanceRetention can delete, but root cannot bypass compliance.
Exam clue: The distinction between Governance and Compliance modes is key. Exam may ask why deletion fails; answer likely involves Compliance mode.
S3 Sync command not transitioning objects to Glacier
Symptom: Using aws s3 sync with --storage-class GLACIER creates new objects in Glacier, but existing objects are not moved.
Exam clue: Tests understanding of sync vs. lifecycle. A common wrong answer is to rely on sync for ongoing transitions.
Memory Tip
Glacier: the cold storage you need to "thaw" first. Remember the "G" stands for "Gotta wait."
Learn This Topic Fully
This glossary page explains what S3 Glacier means. For a complete lesson with labs and practice, see the topic guide.
Covered in These Exams
Current Exam Context
Current exam versions that test this topic — use these objectives when studying.
ACEGoogle ACE →CDLGoogle CDL →AZ-104AZ-104 →AZ-900AZ-900 →CLF-C02CLF-C02 →SAA-C03SAA-C03 →DVA-C02DVA-C02 →220-1101CompTIA A+ Core 1 →DP-900DP-900 →PCAGoogle PCA →Related Glossary Terms
A 2-in-1 laptop is a portable computer that can switch between a traditional laptop form and a tablet form, usually by detaching or rotating the keyboard.
The 24-pin motherboard connector is the main power cable that connects the computer's power supply unit (PSU) to the motherboard, supplying electricity to the motherboard and its components.
Two-factor authentication (2FA) is a security method that requires two different types of proof before granting access to an account or system.
A 3D printer is a device that creates physical objects by depositing layers of material based on a digital model.
5G is the fifth generation of cellular network technology, designed to deliver faster speeds, lower latency, and support for many more connected devices than previous generations.
The 8-pin CPU connector is a power cable from the power supply that delivers dedicated electricity to the processor on a computer's motherboard.
802.1Q is the networking standard that allows multiple virtual LANs (VLANs) to share a single physical network link by tagging Ethernet frames with VLAN identification information.
802.1X is a network access control standard that authenticates devices before they are allowed to connect to a wired or wireless network.
Quick Knowledge Check
1.A company needs to archive financial records that are accessed at most once per year. Retrieval can take up to 48 hours. Which S3 storage class is the most cost-effective?
2.A developer needs to retrieve a single 1 GB file from S3 Glacier Flexible Retrieval within 10 minutes for an audit. Which retrieval tier should be used?
3.An administrator enabled a lifecycle policy to transition objects to S3 Glacier Deep Archive after 30 days, but after 60 days the objects are still in Standard. What is the most likely reason?
4.A security team wants to prevent any deletion of audit logs stored in S3 Glacier, including by the root user. Which Object Lock mode should be enabled?
5.An application needs immediate access to archived data stored in S3 Glacier. Which approach minimizes retrieval latency?
Frequently Asked Questions
Can I retrieve a single file from S3 Glacier without restoring the entire vault?
Yes. If you are using Glacier through S3, you can select a single object in the console or via API, initiate a restore for that specific object, and then download it. You do not need to restore all objects in the vault.
How much does S3 Glacier cost compared to S3 Standard?
Glacier typically costs about one-fifth to one-tenth of S3 Standard per gigabyte per month, but the exact cost depends on the AWS Region. You also pay retrieval fees per request and per GB retrieved. Always check the AWS Pricing Calculator for your specific region.
Is S3 Glacier suitable for backup that needs to be restored quickly?
No. If you need to restore data within minutes on a regular basis, consider S3 Standard-IA. Glacier is best for data that can tolerate hours of retrieval time. For disaster recovery, you can use Expedited retrieval to get data within 1–5 minutes, but the cost per retrieval is higher.
Can I use S3 Glacier to store data that must never be deleted?
Yes. Use S3 Object Lock in compliance mode. Once locked, even the root user cannot delete the object until the retention period expires. This is ideal for regulatory records.
Do I need to change my application code to use Glacier?
If you use S3 lifecycle policies, you do not need to change your application code at all. Your application can continue to upload to the same S3 bucket, and the lifecycle rules will automatically move objects to Glacier after a specified time. To retrieve, you only need to initiate a restore, which can be done with the AWS SDK.
What happens if I delete an S3 bucket that contains objects in Glacier?
You cannot delete a non-empty S3 bucket. You must first delete all objects, including those in Glacier. Before deletion, you must restore any Glacier objects that you want to keep, or the data will be permanently lost. After all objects are deleted, you can delete the bucket.
Does S3 Glacier support cross-region replication?
S3 Glacier does not support replication natively. However, you can replicate objects to another S3 bucket in a different region first (to Standard or Standard-IA), and then let a lifecycle rule transition the replicas to Glacier. Alternatively, use S3 Batch Operations to copy objects manually.
Summary
Amazon S3 Glacier is a specialized storage class within Amazon S3 that offers extremely low-cost storage for data that is rarely accessed. It is designed for long-term archiving, backup, and compliance data. The key trade-off is cost versus access speed: storage is very cheap, but retrieving data requires a restore operation that can take from 1 minute to 12 hours, depending on the retrieval tier you choose.
S3 Glacier provides the same 99.999999999% durability as all S3 classes, thanks to geographic replication across multiple Availability Zones. It also supports encryption in transit and at rest, access control through IAM, and immutability through S3 Object Lock.
For IT professionals, Glacier is most commonly implemented via S3 Lifecycle policies, which automate the transition of aging data from active storage to archival storage, and eventually to deletion. This lifecycle management is a core competency for AWS Solutions Architects and DevOps engineers. In certification exams, Glacier appears as a scenario-based choice where the key differentiator is retrieval time.
Always remember: if the scenario requires instant access, it is not Glacier. If it says "lowest cost for archival data," Glacier is likely the answer. By mastering the trade-offs between cost, retrieval speed, and durability, you can confidently choose the right storage class for any data lifecycle need.