3
2

More than 3 years have passed since last update.

【AWS】S3ストレージクラスまとめ

Last updated at Posted at 2021-02-13

AWSのS3にはいくつか種類(クラス)があるので、

・何があるのか
・どんな特徴があるのか
・代表的な用途

をまとめてみます。

S3とは

そもそも、S3って何なんでしょうか。

Amazon Simple Storage Service は、インターネット用のストレージです。また、ウェブスケールのコンピューティングを開発者が簡単に利用できるよう設計されています。
Amazon S3 とは

AWS上のストレージサービスで、頭文字をとってS3と呼ばれているんですね。

そんなS3の特徴は以下の4つです。
・耐久性:99.999999999%(イレブンナイン)
・安価:月額1GB/約3円
・安定性:データは冗長化されて保存
・安全性:データを暗号化可能

ちなみに、アップロード可能な容量は1つのデータにつき5TBまでです。(デカすぎ)

補足
1オブジェクトのサイズが最大5TBで、1回のPUTオペレーションでアップ出来るオブジェクトのサイズが5GBとなります。
5GBを超える場合には、マルチパートアップロード(分割送信)を用いて並列してアップロードを行います。

S3のストレージクラス

S3には以下のストレージクラスが存在します。

・Standard(標準)
・Standard-IA(低頻度アクセス)
・One Zone-IA(1ゾーン低頻度アクセス)
・Glacier(アーカイブ)
・Glacier Deep Archive(アーカイブ)

それぞれの特徴をみていきます。

Standard

標準的なストレージクラスです。

複数のAZにまたがってデータを複製するため、耐久性が高い(99.999999999%)です。
遅延も少なく、スループットが高いので、幅広い用途に使用できます。

代表的な用途
・クラウドアプリケーション
・動的なウェブサイト
・コンテンツ配信
・モバイルやゲームのアプリケーション
・ビッグデータ分析

Standard-IA

アクセス頻度は低いけど、必要な時にすぐに取り出したいという用途で使用するストレージクラスです。

Standardとスペックは同様なのに安価です。
しかし、こちらはデータを取り出す際に料金がかかります。

代表的な用途
・長期保存
・バックアップ
・災害対策ファイルのデータストア

One Zone-IA

Standard-IAのAZが1つになったバージョンです。

Standard-IAは複数のAZにまたがってデータを保存しますが、
こちらは1つのAZ内にのみデータを保存するため、Standard-IAよりも20%ほど安価になります。

冗長性を気にしないようなデータの保存に向いています。

代表的な用途
・セカンダリバックアップのコピー

Glacier

セキュア・高耐久性・低価格の三拍子が揃ったストレージクラスです。
オンプレのストレージと同等か、それより低いコストでデータの保存が可能です。

しかし、データの読み出しには数分〜数時間かかるため、長期間のデータアーカイブ用途がメインとなります。

代表的な用途
・メディア資産の保存
・ヘルスケア情報のアーカイブ
・規制及びコンプライアンスのアーカイブ
・科学的データのストレージ
・デジタル保存

Glacier Deep Archive

S3で最安のストレージクラスです。

1年で1回か2回しかアクセスされないようなデータの長期保存に向いています。

Glacierに保存するものよりも、よりアクセス頻度が低いものを保存するイメージです。
その分、データの読み出しにはより長い時間(12時間以内)がかかります。

代表的な用途
・磁気テープの代替
・会計データ
・学籍情報

ストレージクラスの比較

それぞれの特徴をざっくり比較してみます。

Standard Standard-IA One Zone-IA Glacier Glacier Deep Archive
冗長性
読み出し料金 なし あり あり あり あり
読み出し時間

もっと詳しく知りたい方は、公式を参照してくださいな。
Amazon S3 ストレージクラス

Intelligent-Tiering

アクセス頻度ごとに自分でストレージクラス変えないといけないの!?めんどくさ!
と思った方もいるかと思います。

そんなことはありません。ちゃんといい感じのものが用意されています。

Intelligent Tieringは、それぞれのファイルへのアクセス頻度を計測して
OneZone-IAを除く上記4つのストレージクラスへ自動的にデータを振り分けてくれます。
(手動で振り分けを設定するライフサイクルポリシーというものもありますが、今回は割愛します。)

こちらを使用することで、コスト効率を最低化することができます。

デフォルトでは、以下のようにデータを振り分けます。(アーカイブアクセス有効化時)

・データをStandardへ保存
・30日連続でアクセスされなかったものはStandard-IAへ移動
・90日連続でアクセスされなかったものはGlacierへ移動
・上記+180日連続でアクセスされなかったものはGlacier Deep Archiveへ移動

また、下層のストレージクラスへ振り分けられたデータに再度アクセスがあった際には、
自動的に高頻度のアクセス階層へ移動してくれます。

例えば、Glacierに保存されているデータにアクセスがあった場合、
GlacierからStandardへ移動してくれるなど。

データをどのぐらいの頻度で使用するかわからない場合、Intelligent-Tieringを使用するのが良いでしょう。

代表的な用途
・ストレージアクセスパターンが不明なデータセットの保存
・データレイクのように予測できないアクセスパターンを持つデータセットの保存

まとめ

S3を使用する際は、データの使用頻度に応じて適切なストレージクラスを選択しましょう。

参考

Amazon S3 とは
Amazon S3 ストレージクラス

この記事はAWS初学者を導く体系的な動画学習サービス
「AWS CloudTech」の課題カリキュラムで作成しました。
https://aws-cloud-tech.com

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2