Amazon S3とは
AWS(Amazon Web Services)の中のサービスの1つ、Amazon Simple Storage Serviceのことを指します。Sが3つだからS3ですね。
名前の通りクラウド型のストレージ機能を提供するサービスとなります。ただ、単なるストレージとしての機能だけではなく、バージョン管理やイベント機能もあるみたいです。
容量は無制限で、1GB使用する毎に料金が加算されていきます。つまりストレージにファイルを入れた分だけ課金されます。
記事執筆時点での料金は1GBあたり0.025ドル(東京リージョン、スタンダードストレージ)となっています。安い。
ウェブのどこからでもデータ格納と取得が可能のようです。データは動画や画像ファイルなど殆どのデータを預けることが可能で、ファイルそのものへのセキュリティも担保されています。各地にある物理的なデータセンターに分散して保存をしているので、障害にも強いようです。
他のAWSサービスとの連携も容易にできるので、AWS触ってる人はS3もガンガン使うのだろうと思います。
S3の機能(さらっと確認程度)
バージョン管理
バージョニングを有効にしておくことで、オブジェクト毎のバージョンを残すことができます。誤った操作しても元に戻すことができるsvnみたいな使い方ができそうですね。
ライフサイクル
オブジェクト毎にライフサイクルを設定でき、「一定期間経ったら削除・低価格帯のストレージに移動」ということができるようです。Jenkinsとかで使ったら便利そう。
ログ記録
svnみたいな感じだと思うんですが、ログを残せるみたいです。
イベント
オブジェクトに操作が行われた場合にイベントを発火させる機能があるみたいです。ここで言うイベントは多分データ分析とかですかね。
アクセス権限
デフォルトでは全オブジェクトのアクセス権がプライベートになっており、所有者+管理者以外はアクセスできません。ここに認証したユーザーのみ操作を許可するなど、細かく設定することができます。
暗号化
オブジェクトをS3に保存すると、データを暗号化しておくことができます。 サーバーサイド、クライアントサイド、それぞれの暗号化に対応しているらしいです。
オブジェクトへのアクセスツール
WindowsならWinSCP、MacならCyberDuckが良さそう?
Unityでの活用方法
以下のスライドが参考になりそう
https://www.slideshare.net/UnityTechnologiesJapan002/unite-tokyo-2019aws-for-unity-developers
ゲーム内写真をアップロードしてサーバー側でサムネイル画像の作成が行われたり。
以下の記事も。
UnityからAmazon S3にファイルをアップロードし、公開状態にする