はじめに
今回はずっと後回しにしてきたS3ストレージクラスについて整理していきます。
サクッと整理して、適切なストレージクラスを使いこなせる用になりましょう!
なお、今回明記している料金は、2021年4月時点の東京リージョンにおける料金、かつ最初の 50 TB/月 を抜粋して記載しておりますのでご留意ください。詳細な料金の確認は公式ドキュメントを参照ください。
ストレージクラス一覧
今回確認したストレージクラスの一覧は以下の通り。
- S3 Standard
- S3 Standard-IA
- S3 Intelligent-Tiering
- S3 One Zone-IA
- S3 Glacier
- S3 GlacierDeep Archive
前提知識
- Infrequent Access (IA)
ストレージクラスに付いているIA は低頻度アクセスの略。
アクセス頻度が低いことで低い単価設定となっているが、データの取り出しには課金が発生する。
- 最小オブジェクトサイズ
課金対象となる最小のオブジェクトサイズ。
”128KB” を例に説明すると、128KB を下回るオブジェクトを格納した場合でも、128KB のオブジェクトとして課金される。
- 最小ストレージ期間
ストレージ料金が課金される最小の期間。
”30 日” を例に説明すると、30 日間以内にオブジェクトを削除、上書き、または別のストレージクラスに移行した場合は、30 日分の料金が発生する。
30 日以上保存されたオブジェクトについては、30 日の最小リクエスト料金が発生しない。
■ S3 Standard
- デフォルトのストレージクラス
- 頻繁にアクセスされるデータが対象
- 単価は $ 0.025/GB
主な用途:汎用的なストレージクラスとしての利用
■ S3 Standard-IA
- S3 Standard と同じ高い耐久性、高スループット、低レイテンシーでありながら低価格
- S3 Standard と比較した料金: 76% ($ 0.019/GB)
- ただし、データ取り出しに課金あり
- 最小適格オブジェクトサイズは 128KB
- 最小ストレージ期間は 30日
主な用途:アクセス頻度は低いが、必要に応じてすぐに取り出すことが必要なデータに利用
■ S3 Intelligent-Tiering
- アクセスパターンに基づいて、コスト効率の高いストレージ階層(下記の4つ) を自動的に選択(料金が同等のストレージクラスをカッコ内に記載)
- 高頻度アクセス階層(S3 Standard )
- 低頻度アクセス階層(S3 Standard-IA)
- アーカイブアクセス階層(S3 Glacier)
- ディープアーカイブ階層(S3 Glacier Deep Archive)
- オブジェクトの監視とストレージクラスの移動に対して料金が発生する
- オブジェクト 1,000 件あたり 0.0025USD
- 最小ストレージ期間は 30日
主な用途:新しいアプリケーションやデータレイクなど、予測できないアクセスパターンを持つデータセットに最適
■ S3 One Zone-IA
- ひとつの AZ にデータを保存する
- 可用性を下げることでコストを下げる
- S3 Standard と比較した料金: 60.8% ($ 0.0152/GB)
- データ取り出しに課金あり
- 最小オブジェクトサイズは 128KB
- 最小ストレージ期間は 30日
主な用途:存続期間が長く頻繁にアクセスされない、重要性の低いデータに利用
■ S3 Glacier
- 長期のデータアーカイブ用
- S3 Standard と比較した料金: 20% ($ 0.005/GB)
- 取得時間を設定可能 (数分~数時間、3種類の取り出しオプション)
- データ取り出しに課金あり
- 最小オブジェクトサイズは 40KB
- 最小ストレージ期間は 90日
主な用途:データの一部を数分で取得する必要があるような長期アーカイブに利用
■ S3 Glacier Deep Archive
- 長期のデータアーカイブ用
- S3 Standard と比較した料金: 8% ($ 0.002/GB)
- 取り出し時間は 12 時間以内
- Glacier より安価
- データ取り出しに課金あり
- 最小オブジェクトサイズは 40KB
- 最小ストレージ期間は 180日
主な用途:ほとんどアクセスする必要がない長期アーカイブに利用
まとめ
それぞれの用途を改めて整理
改めて主な用途を整理すると以下のような感じになります。
- S3 Standard :汎用的なストレージクラスとしての利用
- S3 Standard-IA :S3 Standard と同等の性能を求めるがアクセス頻度が低い場合に利用
- S3 Intelligent-Tiering :アクセスパターンが予測不能な場合に利用
- S3 One Zone-IA :アクセス頻度が低く、可用性よりもコストを優先させたい場合に利用
- S3 Glacier :(すばやい取り出しが必要な) 長期アーカイブに利用
- S3 GlacierDeep Archive :(すばやい取り出しが不要な) 長期アーカイブに利用
コスト比較
S3 Standard を基準として料金を比較すると、以下のような感じになります。(先頭の数字がパーセンテージ)
S3 Intelligent-Tiering については、自動選別されたストレージクラスの課金となるのでハイフンとしています。
ストレージクラス | コスト比較(%) | S3 Standard | 100 |
---|---|
S3 Standard-IA | 76 |
S3 Intelligent-Tiering | ー |
S3 One Zone-IA | 60.8 |
S3 Glacier | 20 |
S3 GlacierDeep Archive | 8 |
ふりかえり
今回ストレージクラスの整理を行う中で、初めて「最小オブジェクトサイズ」と「最小ストレージ期間」の存在を知りました。
単価が抑えれるからといってテキトーにストレージクラスを選択してしまうと、逆に高くつく場面が出てきそうなので要注意です。
また、(ただでさえコスパの良いS3料金ですが)場合によってはS3 Standard の8% ほどの料金で保管ができるのは衝撃的ですね。
適切に使いこなしてコスト削減を検討してみては如何でしょうか。
最後まで読んでいただきありがとうございます。