コンピューターシステム株式会社

技術BLOG

AWS Amazon S3を使ったファイルアップロード

2021/05/31 松山担当

こんにちは。松山本社のTYです。

昨今、クラウドビジネスが発展してきています。今回は数あるクラウドサービスの中で、

「AWS(Amazon Web Service)」を取り上げます。

AWSには非常に多くの機能がありますが、基本的でメジャーなサービスである「Amazon S3」についてご紹介したいと思います。


Amazon S3とは

正式名称は「Amazon Simple Storage Service」と呼ばれます。

オブジェクトストレージサービスの一種であり、容量を気にすることなくデータを保存することができます。

ファイル単位での出し入れが可能なので、その場に応じて柔軟なデータ保存が実行できます。

例えば、大規模プロジェクトのソースコードや日次週次で発行されるドキュメントの保管など、

容量を気にしなくてもデータの分析・保管に使える媒体が欲しいときなどに便利なサービスです。


ストレージクラスについて

Amazon S3 には下記のようなストレージの種類があり、用途に応じて使い分けることができます。

S3ストレージクラス一覧

ストレージクラス データ取出時間 特徴
Standard 即時

標準ストレージクラス。

アクセス頻度の高いデータ向き。

Standard-IA

即時

アクセス頻度は低いが即時に取り出しが必要なデータ向き。

One Zone-IA

即時

ひとつのAZ(アベイラビリティーゾーン)にしかデータを保存しないため、セカンダリバックアップ等の重要でないデータ向き。

Intelligent-Tiering

-

データのアクセス頻度によって、最適なストレージクラスにデータを移行する。アクセス頻度が不明、変化するデータ向き。

Glacier

数分~

数時間

アクセス頻度が低く、データの取り出しに時間がかかっても問題ないデータ向き。

Glacier Deep Archive

12時間以内

アクセス頻度が低く、データの取り出しに半日がかかっても問題ないデータ向き。


実際に操作してみよう

説明するより触った方が早いということで、実際にAmazon S3にバケットと呼ばれる入れ物を用意して、そこにファイルをアップロードして中身を確認したいと思います。

AWSのアカウントを作成し、AWSマネジメントコンソールにログインします。


サービスの検索で、S3を検索します。


Amazon S3のコンソールが表示されますので、左側の選択欄からバケットを選択します。

そして、「バケットを作成ボタン」をクリックします。


バケットの作成画面が表示されますので、バケット名に好きな名前を入力します。

バケットはユニークでなければならないので、日付などを含めましょう。

リージョンや設定をコピーに関してはデフォルトで構いません。


次にパブリックブロックアクセス設定です。この設定を有効化すると、

インターネットアクセスが有効化となり、全世界の人たちから閲覧が可能となります。

この設定は後ほど有効化しますので、いったんパブリックアクセスをすべてブロックで設定します。


バケットのバージョニングは今回は無効としておきます。

この機能はS3を扱う上で非常に重要な機能ですが、こちらに関してはまた次回説明できたらと思います。

また、タグはバケットの識別子として使えます。今回は無しで設定したいと思います。


暗号化は有効化するのが推奨されます。

「Amazon S3 キー(SSE-S3)」チェック時:AWSサーバー側で暗号化してくれますが、ユーザー側で鍵の管理ができません。

「AWS Key Management Service キー(SSE-KMS)」チェック時:ユーザー側で鍵の管理を行えますが、鍵管理の手間が増える等の懸念があります。

特に指定がなければ、サーバーサイドの暗号化で問題ありません。用途に合わせて使い分けします。

設定を確認した上で、「バケットを作成」をクリックします。


緑色の帯で、バケット「○○」が正常に作成されました と表示されたら、作成成功です。

次に、作成したバケットの中身を見たいと思います。名前をクリックします。


作成したバケットの中身が表示されます。今は何もない空の状態です。

この画面からまずフォルダの作成をクリックします。


フォルダの作成画面が表示されますので、フォルダ名を入力します。


ここでもフォルダごとに暗号化の設定ができますので用途に合わせて設定します。

今回は「Amazon S3 キー(SSE-S3)」をチェックし、サーバーサイド暗号化で設定します。

設定内容を確認し、フォルダの作成をクリックします。


緑色の帯で、フォルダ「○○」が正常に作成されました と表示されたらフォルダの作成は成功です。

作成したフォルダ名をクリックします。


作成したフォルダの中身が表示されます。今は何もない空の状態です。

ここに、ファイルをアップロードしていきます。アップロードをクリックします。


アップロード画面が表示されますので、「ファイルを追加」からアップロードしたいファイルを選択します。


選択したファイルが一覧に表示されます。

繰り返し選択することで、複数のファイルを同時にアップロードすることも可能です。


アクセス許可や特殊な設定などは今回は行わず、内容を確認し、「アップロード」をクリックします。


緑入りの帯で、アップロードに成功しました と表示されたら、アップロード成功です。

送信先のパスをクリックして、アップロードされているか確認します。


アップロードされていることが確認できました。

アップロードしたファイルの中身は下のような感じです。


ファイル名をクリックすると、アップロードしたファイルのプロパティ画面が表示されます。

Amazon S3ではオブジェクト毎にURLが発行されます。オブジェクトURLをクリックします。


エラーとなってしまいます。先ほどパブリックブロックアクセスの設定がありましたが、そちらを有効化する必要があります。

パブリックブロックアクセスの設定を有効化し、さらに上図の右上のオブジェクトアクションから公開するを選択した上で、再度URLにアクセスします。


下のように先ほどアップロードしたファイルの中身が確認できました。


最後に

いかがでしたでしょうか。

以上が、「Amazon S3」を利用した最も基本的な操作になります。

視覚的で簡単にアップロードできることがわかっていただけたと思います。

今回は触れませんでしたが、他にもアクセス許可やバージョニングの設定など様々な機能がS3には備わっており、

ユーザーの用途に合わせてデータを保存することができます。

S3を使用するときに最も重要視されるのは、コストだと思われますが、前述した通りストレージクラスに種類があり

こちらも用途に合わせてコストを抑えることができます。

使用するデータによって最大のコストパフォーマンスを発揮するサービスを選択することが重要です。