

# Understanding S3 Glacier storage classes for long-term data storage
<a name="glacier-storage-classes"></a>

You can use Amazon S3 S3 Glacier storage classes to provide cost-effective solutions to storing long-term data that isn't accessed often. The S3 Glacier storage classes are:
+ S3 Glacier Instant Retrieval
+ S3 Glacier Flexible Retrieval
+ S3 Glacier Deep Archive

You choose one of these storage classes based on how often you access your data and how fast you need to retrieve it. Each of these storage classes offer the same durability and resiliency as the S3 Standard storage class, but at lower storage costs. For more information about the S3 Glacier storage classes, see [https://aws.amazon.com/s3/storage-classes/glacier/](https://www.amazonaws.cn/s3/storage-classes/glacier/).

****Topics****
+ [Comparing the S3 Glacier storage classes](#glacier-class-compare)
+ [S3 Glacier Instant Retrieval](#GIR)
+ [S3 Glacier Flexible Retrieval](#GFR)
+ [S3 Glacier Deep Archive](#GDA)
+ [Understanding archival storage in S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive](archival-storage.md)
+ [How these storage classes differ from the Amazon Glacier service](#glacier-storage-vs-service)

## Comparing the S3 Glacier storage classes
<a name="glacier-class-compare"></a>

Each S3 Glacier storage class has a minimum storage duration for all objects. If you delete, overwrite, or transition the object to a different storage class before the minimum, you are charged for the remainder of that duration.

Some S3 Glacier storage classes are archival, which means the objects stored in those classes are archived and not available for real-time access. For more information, see [Understanding archival storage in S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive](archival-storage.md).

Storage classes designed for less frequent access patterns with longer retrieval times offer lower storage costs. For pricing information, see [https://www.amazonaws.cn/s3/pricing/](https://www.amazonaws.cn/s3/pricing/).

The following table summarizes the key points to consider when choosing a S3 Glacier storage class:


| S3 Glacier storage class | Minimum storage duration | Recommended access frequency | Average retrieval times | Archival? | 
| --- | --- | --- | --- | --- | 
| S3 Glacier Instant Retrieval | 90 days | Quarterly | Milliseconds | No | 
| S3 Glacier Flexible Retrieval | 90 days | Semi-annually | Minutes to 12 hours | Yes | 
| S3 Glacier Deep Archive | 180 days | Annually | 9 to 48 hours | Yes | 

## S3 Glacier Instant Retrieval
<a name="GIR"></a>

We recommend using S3 Glacier Instant Retrieval for long-term data that's accessed once per quarter and requires millisecond retrieval times. This storage class is ideal for performance-sensitive use cases such as image hosting, file-sharing applications, and storing medical records for access during appointments.

S3 Glacier Instant Retrieval storage class offers real-time access to your objects with the same latency and throughput performance as the S3 Standard-IA storage class. When compared to S3 Standard-IA, S3 Glacier Instant Retrieval has lower storage costs but higher data access costs.

There is a minimum object size of 128 KB for data stored in the S3 Glacier Instant Retrieval storage class. This storage class also has a minimum storage duration period of 90 days. 

## S3 Glacier Flexible Retrieval
<a name="GFR"></a>

We recommend using S3 Glacier Flexible Retrieval for archive data that's accessed one to two times a year and doesn't require immediate access. S3 Glacier Flexible Retrieval offers flexible retrieval times to help you balance costs, with access times ranging from a few minutes to hours, and free bulk retrievals. This storage class is ideal for backup and disaster recovery.

Objects stored in S3 Glacier Flexible Retrieval are archived and not available for real-time access. For more information, see [Understanding archival storage in S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive](archival-storage.md). To access these objects, you first initiate a restore request which creates a temporary copy of the object that you can access when the request completes. For information, see [Working with archived objects](archived-objects.md). When you restore an object, you can choose a retrieval tier to meet your use case, with lower costs for longer restore times.

The following retrieval tiers are available for S3 Glacier Flexible Retrieval:
+ **Expedited retrieval** – Typically restores the object in 1–5 minutes. Expedited retrievals are subject to demand, so to make sure you have reliable and predictable restore times, we recommend that you purchase provisioned retrieval capacity. For more information, see [Provisioned capacity](restoring-objects-retrieval-options.md#restoring-objects-expedited-capacity).
+ **Standard retrieval** – Typically restores the object in 3–5 hours, or within 1 minute to 5 hours when you use S3 Batch Operations. For more information, see [Restore objects with Batch Operations](batch-ops-initiate-restore-object.md).
+ **Bulk retrieval** – Typically restores the object within 5–12 hours. Bulk retrievals are free.

For any retrieval option, objects larger than 5 TB typically finish within 48 hours with up to 300 megabytes per second (MBps) of retrieval throughput. For more information, see [Understanding archive retrieval options](restoring-objects-retrieval-options.md).

The minimum storage duration for objects in S3 Glacier Flexible Retrieval storage class is 90 days. 

S3 Glacier Flexible Retrieval requires 40 KB of additional metadata for each object. This includes 32 KB of metadata required to identify and retrieve your data, which is charged at the default rate for S3 Glacier Flexible Retrieval. An additional 8 KB data is required to maintain the user-defined name and metadata for archived objects, and is charged at the S3 Standard rate.

## S3 Glacier Deep Archive
<a name="GDA"></a>

We recommend using S3 Glacier Deep Archive for archive data that's accessed less than once a year. This storage class is designed for retaining data sets for multiple years to meet compliance requirements and can also be used for backup or disaster recovery or any infrequently accessed data that you can wait up to 72 hours to retrieve. S3 Glacier Deep Archive is the lowest-cost storage option in Amazon.

Objects stored in S3 Glacier Deep Archive are archived and not available for real-time access. For more information, see [Understanding archival storage in S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive](archival-storage.md). To access these objects, you first initiate a restore request which creates a temporary copy of the object that you can access when the request completes. For information, see [Working with archived objects](archived-objects.md). When you restore an object, you can choose a retrieval tier to meet your use case, with lower costs for longer restore times.

The following retrieval tiers are available for S3 Glacier Deep Archive:
+ **Standard retrieval** – Typically restores the object within 12 hours, or within 9–12 hours when you use S3 Batch Operations. For more information, see [Restore objects with Batch Operations](batch-ops-initiate-restore-object.md).
+ **Bulk retrieval** – Typically restores the object within 48 hours at a fraction of the cost of the Standard retrieval tier.

The minimum storage duration for objects in S3 Glacier Deep Archive storage class is 180 days. 

S3 Glacier Deep Archive requires 40 KB of additional metadata for each object. This includes 32 KB of metadata required to identify and retrieve your data, which is charged at the default rate for S3 Glacier Deep Archive. An additional 8 KB data is required to maintain the user-defined name and metadata for archived objects, and is charged at the S3 Standard rate.

# Understanding archival storage in S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive
<a name="archival-storage"></a>

S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive are archival storage classes. This means that when you store an object in these storage classes that object is archived, and cannot be accessed directly. To access an archived object, you submit a restore request for it, and then wait for the service to restore the object. The restore request restores a temporary copy of the object, and that copy is deleted when the duration you specified in the request expires. For more information, see [Working with archived objects](archived-objects.md).

The transition of objects to the S3 Glacier Deep Archive storage class can go only one way.

If you want to change the storage class of an archived object to another storage class, you must use the restore operation to make a temporary copy of the object first. Then use the copy operation to overwrite the object specifying S3 Standard, S3 Intelligent-Tiering, S3 Standard-IA, S3 One Zone-IA, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval, or Reduced Redundancy Storage as the storage class.

**Note**  
The Copy operation for restored objects isn't supported in the Amazon S3 console for objects in the S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes. For this type of Copy operation, use the Amazon Command Line Interface (Amazon CLI), the Amazon SDKs, or the REST API.

You can restore archived objects in these storage classes with up to 1,000 transactions per second (TPS) of [object restore requests](https://docs.amazonaws.cn/AmazonS3/latest/API/API_RestoreObject.html) per account per Amazon Web Services Region.

## Cost considerations
<a name="before-deciding-to-archive-objects"></a>

If you are planning to archive infrequently accessed data for a period of months or years, the S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive storage classes can reduce your storage costs. However, to ensure that the S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage class is appropriate for you, consider the following:
+ **Storage overhead charges** – Each archived object requires 40 KB of additional metadata. This includes 32 KB of metadata required to identify and retrieve your data, which is charged at the default rate for that storage class. An additional 8 KB data is required to maintain the user-defined name and metadata for archived objects, and is charged at the S3 Standard rate.

  If you are archiving small objects, consider these storage charges. Also consider aggregating many small objects into a smaller number of large objects to reduce overhead costs.
+ **Multipart upload pricing** – Objects in S3-storage-class-glacier; and S3 Glacier Deep Archive are billed at S3 Standard storage class rates when you upload them using multipart uploads. For more information, see [Multipart upload and pricing](mpuoverview.md#mpuploadpricing).
+ **Minimum 30 day storage charges** – S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive are long-term archival solutions. The minimal storage duration period is 90 days for the S3 Glacier Flexible Retrieval storage class and 180 days for S3 Glacier Deep Archive. Deleting data that is archived to these storage classes doesn't incur charges if the objects you delete are archived for more than the minimal storage duration period. If you delete or overwrite an archived object within the minimal duration period, Amazon S3 charges for the remainder of that duration. 
+ **Data retrieval charges** – When you restore an archived objects to S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive there are per-request data retrieval charges. These charges vary based on the retrieval tier you choose when you initiate a restore. For pricing information, see [Amazon S3 pricing](http://www.amazonaws.cn/s3/pricing/). 
+ **S3 Lifecycle ** – When you restore an archived objects to S3 Glacier Flexible Retrieval and S3 Glacier Deep Archive there are per-request data retrieval charges. These charges vary based on the retrieval tier you choose when you initiate a restore. For pricing information, see [Amazon S3 pricing](http://www.amazonaws.cn/s3/pricing/). 

## Restoring archived objects
<a name="restore-glacier-objects-concepts"></a>

Archived objects aren't accessible in real time. You must first initiate a restore request and then wait until a temporary copy of the object is available for the duration that you specify in the request. After you receive a temporary copy of the restored object, the object's storage class remains S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive. (A [https://docs.amazonaws.cn/AmazonS3/latest/API/RESTObjectHEAD.html](https://docs.amazonaws.cn/AmazonS3/latest/API/RESTObjectHEAD.html) or [https://docs.amazonaws.cn/AmazonS3/latest/API/RESTObjectGET.html](https://docs.amazonaws.cn/AmazonS3/latest/API/RESTObjectGET.html) API operation request will return S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive as the storage class.) 

**Note**  
When you restore an archive, you are paying for both the archive (S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive rate) and a copy that you restored temporarily (S3 Standard storage rate). For information about pricing, see [Amazon S3 pricing](http://www.amazonaws.cn/s3/pricing/). 

You can restore an object copy programmatically or by using the Amazon S3 console. Amazon S3 processes only one restore request at a time per object. For more information, see [Restoring an archived object](restoring-objects.md).

## How these storage classes differ from the Amazon Glacier service
<a name="glacier-storage-vs-service"></a>

The S3 Glacier storage classes are part of the Amazon S3 service and store data as objects in S3 buckets. You can manage objects in these storage classes using the S3 console or programmatically using the S3 APIs or SDKs. When you store objects in S3 Glacier storage classes, you can use S3 features such as advanced encryption, object tagging, and S3 Lifecycle configurations to help manage data accessibility and cost. 

**Important**  
We recommend using the S3 Glacier storage classes within the Amazon S3 service for all of your long-term data.

The Amazon Glacier service is a separate service that stores data as archives within vaults. This service doesn't support Amazon S3 features and doesn’t provide console support for data upload and download operations. We don't recommend using the Amazon Glacier service for your long-term data. Data stored in this service isn't accessible from the Amazon S3 service. If you are looking for information on the Amazon Glacier service, see the [Amazon Glacier Developer Guide](https://docs.amazonaws.cn/amazonglacier/latest/dev/introduction.html). To transfer data from the Amazon Glacier service to a storage class in Amazon S3 see [Data Transfer from Amazon Glacier Vaults to Amazon S3](https://www.amazonaws.cn/solutions/implementations/data-transfer-from-amazon-s3-glacier-vaults-to-amazon-s3/) in the Amazon solutions library.