Amazon S3(Simple Storage Service)
保存容量が無制限のオブジェクトストレージサービス(SaaSのサービス)
オブジェクトストレージとは、データを固有のIDを持つ「オブジェクト」として扱う、ディレクトリのような階層構造を持たないストレージのこと。
オブジェクトに割り当てられる固有のIDは「オブジェクトキー」と呼ばれ、各データはオブジェクトキーによって一意に特定できる。
オブジェクトが保存される領域を「バケット」と呼ぶ。一つのバケットにはオブジェクト数が無制限で保存でき、バケット名はグローバルで一意にする必要がある。
作成したバケットのバケット名は変更できないので注意。
一つのオブジェクトには一つのURLが付与され、URLにはリージョン、バケット名、オブジェクトのファイル名が付く。
・ストレージクラス
S3のストレージは、利用者が目的に合わせて選択できるよう複数の種類(ストレージクラス)がある。
ストレージクラスは、大きく分けて「可用性」と「遅延の度合い」によって分けられ、可用性が高く、データ取得時の遅延が低いストレージクラスほど利用料金が高く設定されている。
オブジェクトアップロード時のデフォルトのストレージクラスは「S3 Standard」。
・ライフサイクルポリシー
S3バケット内のデータに対して、ストレージクラスの変更やオブジェクトの削除を自動化する機能。指定した期間が経過したデータを自動的に、よりコストパフォーマンスの高いストレージへ移動したり、保管期限の過ぎたデータを削除することができる。アクセス頻度が予測できるデータや、保管期間が決められているデータのバケットに設定することで、コスト削減の効果が期待できる。
・バージョニング
オブジェクトの世代管理をしたい場合にバケット単位で有効にする。バージョニングを有効にすると、オブジェクトの更新時に更新前と更新後の両方のオブジェクトが保存され、各オブジェクトに固有のバージョンIDが割り当てられる。オブジェクトの削除時には、オブジェクトを完全に削除する代わりに削除フラグを意味する削除マーカーが付与され、それが最新のバージョンとなる。バージョニングを使うことで、ユーザーが誤ってデータの上書きや削除をしてしまっても元のデータを復元できます。
・MFA Delete
S3のバージョニング機能で世代管理されているオブジェクトを削除する際に、MFAデバイス認証が必要となる機能。
MFA(Multi-Factor Authentication:多要素認証)とはIDやパスワードと同時に、指紋などのバイオメトリクスやワンタイムパスワードを利用する認証方法。
MFA Deleteでは、ルートアカウント(AWSとの契約を行ったアカウント)と紐付いたMFAデバイスによる認証が求められます。MFA Deleteが有効になったバケットのオブジェクトを完全に削除する際は、ルートアカウントにてMFA認証した上で削除したいオブジェクトのバージョンIDを指定。