みなさん、こんにちは。新人のRenです。今日はAmazon S3についてお伝えします!

Amazon S3とは

AWSには様々なサービスがありますが、その中でもファイルの倉庫のようなものがAmazon S3(以下略:S3)です。S3とは、「Simple Storage Service」の略称です。S3を利用することで、大量のデータを保存することが出来ます。S3は、バケットにオブジェクトを保存します。簡単に言うと、とても大きなバケツのようなものにデータを入れて置いておく感じです。S3にアップロードしたファイルのことをオブジェクトといいます。データを取り出したいときには、あらかじめ設定したバケット名とオブジェクト のキーを含むURLでインターネットからアクセス可能です。ただし本来は、データ保管という観点からパブリックアクセスを禁止して機密性を高めています。また、AWSのベストプラクティス的にはパブリックアクセスはNGなので覚えておいてください。

Amazon S3にはどんな種類がある?

S3の料金は「何ギガバイト格納していたのか(ストレージ料金)」、「取り出した回数」、「データの転送量」によって決まります。そのため、利用方法に応じたストレージクラスが用意されています。S3のストレージクラスには、S3標準、S3標準-IA、S3 1 ゾーン-IA、S3 Intelligent-Tiering、S3 Glacier、S3 Glacier Deep Archiveなどがあります 。S3標準を基準としてそれぞれの特徴は、標準-IAはストレージ料が安くて取り出し料が高いのでアクセス頻度が低いデータに適しています。1ゾーン-IAは単1のAZにデータを保存します。Intelligent-Tieringは、変化に対応できるのでアクセスパターンが不明なデータに最適です。GlacierとGlacier Deep Archiveは、低コストだがデータの取り出しに数時間かかるという特徴があります。これらの特徴を踏まえ、よく取り出すデータなのか、アーカイブとして残しておきたいデータなのか、いつアクセスするのかわからないデータなのかなど、状況に応じて利用することで、コストを抑えて便利にS3を利用できます。また、S3には最低利用料がないので気楽に始められることも特徴の1つです。

S3の特徴

S3には高い耐久性があります。これは、「イレブンナイン」と呼ばれており、99.999999999%の耐久性が実現できるようになっています。そのため、安心してデータを保存することが出来ます。ストレージも自動的に拡張・収縮されるため、コストの無駄がありません 。また、容量が実質無制限であったり、複数のクラスオプションから最適なものを選んだりすることが出来るのも特徴です。他にもS3には、暗号化オプションというものがあります。これにはSSE-S3、SSE-KMS、SSE-C、CSEの4種類あります。これらは暗号化する場所、暗号鍵の提供者、暗号鍵の管理者に違いがあります。
S3 にはモニタリング機能というというものがあります。CloudTrail、CloudWatch Logsの2種類があります。余剰リソースの有無やレスポンス速度などをモニタリングすることでパフォーマンス向上、コスト最適化に繋がっています。
バージョニング機能というものについて紹介します。バージョニング機能とは、単1のオブジェクトの複数のバージョンを保持できるようにするものです。バージョニングをすることで、操作ミスにより誤って削除してしまったデータに対しても簡単に復旧できる手段を提供してくれます。バージョニングのステータスは無効、有効、停止の3つで、デフォルトでは無効になっているのでバケット作成時に有効にする必要があります。

その他

S3には、ストレージクラス分析やライフサイクルポリシーといったツールが備わっています。これらは、ストレージアクセスパターンを分析してくれたり、ライフサイクルを通じてコスト効率が高い方法で保存してくれたりしてくれます。このようなツールと連携することが出来ることもS3の便利さ・使いやすさに繋がってきます。

まとめ

S3を上手に活用することで、データの業務利用が安く便利に行えるようになります。S3は特に静的コンテンツの保存に向いています。安全に安く大量のデータを扱うことが可能なので、是非利用してみてはいかがでしょうか。