概要
S3はAmazon Simple Storage Serviceの略であり、オブジェクトを保存することができる。 オブジェクトは自動的に3つ以上のアベイラビリティーゾーンにレプリケーション(複製)される。これにより99.99%の可用性と99.999999999の耐久性を実現している。
ファイルなどのデータをS3にアップロードするとオブジェクトとして扱われる。オブジェクトを変更・追記することはできず、変更する場合は同じファイル名でアップロードする必要がある。
S3の使い方
S3の主な使い方として以下の3つがある。
- 
	
静的なコンテンツ(HTML,js,css等)の配信
 - データの保存
	
- jsonやcsvなどのデータを保存する。
 - 保存したデータはAWSの別のサービスで分析することができる。
 
 - バックアップ
	
- 可用性・耐久性ともに高いため重要なデータのバックアップ先として使用できる
 - 後述のストレージクラスを変更することでコストを抑えることもできる
 
 
S3の料金
S3は主に保存しているオブジェクトの容量に対するストレージ料金とリクエスト料金、データ転送料金に対して課金される。 ストレージ料金とリクエスト料金は使用するストレージクラスによって異なる。
ストレージクラス
ストレージクラスとして以下がある。
標準
- 
	
標準
- アクセス頻度の高いデータを保存するのに使用する
 - 低レイテンシー・高スループットのため静的なコンテンツの配信・ビッグデータの分析等幅広い用途に使用することができる
 
 - Intelligent-Tiering
	
- アクセスパターンが不明または変化するデータの保存に使用することでコストの削減ができる
 - レイテンシとスループットは標準と同じパフォーマンス
 - アクセスパターンをモニタリングし、アクセスされていないオブジェクトを自動で低コストの階層の階層に移動せせる
 - 階層は高頻度アクセスに最適化された階層、低頻度アクセスに最適化された階層、めったにアクセスされないデータに最適化された階層の3階層に分かれている。
 - 30日間連続してアクセスされなかったオブジェクトは低頻度アクセス階層、90日間アクセスがなければめったにアクセスされないデータに最適化された階層に移動する。
 - ストレージ料金は階層によって異なり、低頻度アクセスに最適化された階層では最大40%,めったにアクセスされないデータに最適化された階層では最大68%節約することができる。
 
 - Express One Zone
	
- リクエスト数が多く、レイテンシーが少ないアプリケーションを構築する際に使用する
 - リージョンを指定するのではなく、アベイラビリティーゾーンを指定して作成することができる
 - リクエストレイテンシーは1 桁ミリ秒
 - 標準と比較してアクセス速度が10倍向上し、リクエストコストが50%削減される
 
 
低頻度アクセス(IA)
- 
	
標準 – IA
- 
		
アクセス頻度は少ないが、すぐに取り出す必要があるデータを保存するのに使う
 - パフォーマンスは標準と変わらない
 - ストレージ料金及び取り出し料金が標準と比べると低くなっている
 
 - 
		
 - One Zone-IA
	
- アクセス頻度は少ないが、すぐに取り出す必要があるデータを保存するのに使う
 - One Zone IAでは1つのアベイラビリティーゾーンのみにデータを保存するためコストが安い
 - 上記の理由により可用性・耐久性は下がる
 - パフォーマンスは標準と変わらない
 
 
アーカイブ
- 
	
Glacier Instant Retrieval
- 
		
年に数回しかアクセスしないが、瞬時にアクセスしたいデータを保存するのに使う
 - ストレージ料金を抑えることができる
 - パフォーマンスは標準と変わらない
 
 - 
		
 - Glacier Flexible Retrieval
	
- 1年に1~2回アクセスされるデータを保存するのに使用する
 - データの取り出しに数分から数時間かかるが、ストレージ料金が安い
 - データを取り出すときにコストはかからない
 
 - Glacier Deep Archive
	
- S3の中でストレージ料金が一番安い
 - データの取り出しに最大で12時間かかる
 
 
各ストレージクラス料金についてはAmazon S3 の料金を参照
その他の機能
代表的なS3の機能について紹介する。
- 
	
マルチパートアップロード
- 1つのオブジェクトが大きい(100MB以上)の場合はマルチパートアップロードも可能である。
 - この機能を使用することでファイルを1つのパートに分けてS3にアップロードすることができる。
 - アップロード完了後は1つのオブジェクトとなる。
 - 複数のパートを並列でアップロードするため帯域幅を効率的に使用できる
 - 一部のパートでアップロード失敗した場合は失敗したパートのみを再試行することができる
 
 - バージョニング
	
- デフォルトでは無効になっている
 - 有効にすると同じ名前でオブジェクトをアップロードしたときに新しいバージョンが作成させる
 
 - レプリケーション
	
- リージョンに関係なくS3バケット同士でレプリケーションが設定できる。
 - レプリケーションを行うためにはバージョニングを有効にする必要がある
 
 
参考
- Amazon S3 ストレージクラス
 - 山下光洋. 要点整理から攻略する AWS認定 ソリューションアーキテクト・アソシエイト. 株式会社 マイナビ出版, 2023/01/25.
 
- 閲覧数 26
 
    
コメントを追加