tl;dr:
- Glacier-the-service/“Glacier direct APIs” have been untouched for years (read: probably not going to get new features), Glacier-the-storage-class looks like the new replacement.
- I don’t think there’s any reasons to put new data into Glacier vaults, using the storage class on objects in a S3 bucket is a better experience
- Because it’s AWS, Glacier-the-service will continue to be supported indefinitely.
This post is an expanded version of my post on reddit, which I wrote after trying and failing to switch my photo backup (in a Glacier Vault) to use Glacier Deep Archive.
I didn’t realise that Glacier-the-service is distinct from Glacier-the-storage-class, despite the service being renamed to “Amazon S3 Glacier”. There’s no integration/moving between them - moving items from a Glacier Vault directly to a S3 bucket is impossible.
I ended up re-uploaded my photos to the S3 Glacier Deep Archive storage class, and purged my Glacier vault. It was inconvenient to fix my screwup from 2017, I wouldn’t recommend repeating it in 2021.
I’m pretty sure Glacier the service is in maintenance mode for a few reasons:
- Glacier Deep Archive is only available as a storage class on a S3 object, not in a Glacier Vault. It’s not “there no automated way to switch”, the “Amazon S3 Glacier pricing (Glacier API only)” page only lists the $0.004/GB price.
- The Glacier console UI hasn’t been updated in 4 years. The improved Glacier retrieval pricing (per GB instead of the weird “% of your stored data”) still isn’t reflected in the UI 4 years after the change was announced.
It prompts you to set a retrieval policy (free tier/max $ per hour/unlimited), but the policy is not enforced. I set it to free tier only, still got charged for an urgent retrieval (I expected it to get denied). - Despite the rename to “Amazon S3 Glacier”, there’s still a distinction between “Glacier direct APIs” (emphasis mine) and everything else in S3.
- Glacier isn’t listed as a standalone storage product anymore.
- The documentation indicates there’s no new functionality added since Nov 2017.
I feel like Glacier-the-service has been functionally replaced by the Glacier S3 storage classes – like SimpleDB being unofficially deprecated and functionally replaced with DynamoDB. I don’t think Glacier the service will be turned off anytime soon, but I also don’t see much point in using it over the S3 storage class at all.
That said, treating Glacier as a storage class variant in a S3 bucket is so much nicer compared to using the vault:
- There’s no more fiddling with the inventory retrieval (being able to list the bucket interactively)
- I can have ~4KB metadata files next to ~15MB RAW files in the same bucket by using different storage classes (previously not cost effective, Glacier metadata on the object is larger than the object itself)
- S3 objects are easier to understand