Amazon S3 Glacierの使いどころについて紹介します
2023年1月30日 富士通株式会社 官公庁事業本部 関 宏樹
はじめに
近年デジタルデータの流通量は増大しており、政府・行政機関の情報システムをはじめとする公共システムにおいても情報活用の推進が見込まれる中、デジタルデータを適正なコストで保存し活用できる事は重要なテーマとなっています。(注1)
Amazon S3 は、高いスケーラビリティ、データ可用性、セキュリティ、およびパフォーマンスを提供するオブジェクトストレージサービスです。様々な用途がありますが、ここでは長期データ保存におけるコスト最適化について、Amazon S3のストレージクラスの1つであるS3 Glacierに着目しご紹介します。
S3 Glacierはアーカイブに適した低コストのストレージですが、用途によっては想定外の費用が発生してしまい、コスト増となる場合があります。そのため、ユースケースによって適切なストレージを選択する必要があります。本記事ではいくつかのユースケースでコストを試算し、S3 Glacierに適する用途を検討します。
- (注1)デジタル社会の実現に向けた重点計画」2022年6月7日閣議決定
P15: 包括的データ戦略の推進
https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/5ecac8cc-50f1-4168-b989-2bcaabffe870/40b7eb9b/20220607_policies_priority_outline_03.pdf
ストレージクラスの種類
Amazon S3にはいくつものストレージクラスが存在するため、まず改めて以下の表に整理します。
サービス名 | 特徴 |
---|---|
S3 標準 | アクセス頻度の高いオブジェクトのストレージクラスで、デフォルトのストレージクラス。 |
S3 Intelligent - Tiering | アクセスパターンが不明または変化するデータのストレージコストを最小限に抑える場合に最適なストレージクラス。 |
S3 Standard – IA | 存続期間が長く、アクセス頻度の低いデータ用に設計されたストレージクラスで、複数のアベイラビリティーゾーン間でデータを重複して保存する。 |
S3 1 ゾーン - IA | 存続期間が長く、アクセス頻度の低いデータ用に設計されたストレージクラスで、1つのアベイラビリティーゾーンのみでデータを保存する。 |
S3 Glacier Instant Retrieval | オブジェクトのアーカイブに適したストレージクラスで、ミリ秒単位の取得が必要なデータに適している。 |
S3 Glacier Flexible Retrieval | オブジェクトのアーカイブに適したストレージクラスで、数分で取得する必要があるデータに適している。 |
S3 Glacier Deep Archive | オブジェクトのアーカイブに適したストレージクラスで、ほとんどアクセスする必要がないデータに適している。標準取り出しオプションの場合は、通常12時間以内の取り出しとなる。 |
S3 Glacierのユースケース
S3 Glacierの代表的な使用方法はオブジェクトのアーカイブ、たとえばログデータの長期保管が当てはまります。お客様の要件によっては数年間保存する場合もあり、AWS Well-Architectedの6つの柱の1つであるコスト最適化の柱への影響が大きく出ます。ここではS3標準とS3 Glacier Flexible Retrievalを比較し、どのようなコストメリットがあるか示します。(2022年12月、東京リージョンでの料金で試算。ストレージ料金とデータ取り出し料金のみを使用し簡易的に算出しているため、実際の料金とは異なります。)
ユースケース1:3か月保存したあと削除
毎月1TBのログデータを保管し、3か月経過したあとに削除するログローテーションを実施します。保存されるデータは最大3TBとなるため、S3 標準、S3 Glacierを利用した際の料金は次のようになります。
6か月のトータルコストはS3標準が384USD、S3 Glacier が69USDとなり、S3 Glacierのコストメリットが発揮される結果となりました。
ユースケース2:1か月保存したあと削除
毎月1TBのログデータを保管し、1か月経過したあとに削除するログローテーションを実施します。S3 標準、S3 Glacierを利用した際の料金は次のようになります。
6か月のトータルコストはS3標準が154USD、S3 Glacier が83USDとなります。S3 Glacierのほうが利用料は安いですが、ユースケース1よりも利用料の差が小さくなっています。またS3 Glacierの利用料はユースケース1よりも高くなっています。
これはS3 Glacierに設定されている最低ストレージ期間(90日)が影響しています。最小ストレージ期間が経過する前にオブジェクトが削除された場合、残りの日数分のストレージ料金に等しい日割り料金が発生します。今回は1か月経過時点でログを削除しているため、残りの2か月分の料金が発生します。
ユースケース3:6か月保存したあと削除、毎月直近3ヶ月のログをダウンロード
毎月1TBのログデータを保管し、6か月経過したあとに削除するログローテーションを実施します。また毎月1回、直近3ヶ月分のログをダウンロードします。S3 標準、S3 Glacierを利用した際の料金は次のようになります。
6か月のトータルコストはS3標準が538USD、S3 Glacier が604USDとなります。4か月目まではS3 Glacierの利用料のほうが高くなる結果となりました。S3 Glacierは 1~5 分でデータを取り出せる迅速取り出しのオプションを使用した場合で試算しています。これは取り出すデータ量により価格が決定されますが、S3標準では発生しない利用料となるため、上記の結果となりました。
この結果から、S3 Glacierは短期間かつ定期的にアクセスするデータを格納するサービスとして適さない場合があることがわかります。このユースケースではログをモニタリングするサービスであるAmazon CloudWatch LogsやS3標準などを組み合わせ、ログの保存期間にあわせて保存場所を変更する運用によりコスト最適化の実現を目指します。
おわりに
S3 Glacierのユースケースをご紹介しましたがいかがでしたでしょうか。ログデータの保存先として候補にあがるS3 Glacierですが、保存期間が短い場合や、保存した後にアクセスする場合は最適なコストパフォーマンスとならない場合があります。どのようにデータを保存するか、どのような期間保存するか、どのような利用をするかといったデータのライフサイクル全体を考慮して、最適な保存方法を選択しましょう。
最後までお読みいただき、ありがとうございました。