Amazon S3とは?機能やメリットなどをわかりやすく解説

最終更新日:2024年4月30日

Amazon S3はAWSにおける主要機能のひとつで、コストと機能性に優れたクラウドストレージです。オンプレミス環境からパブリッククラウドへの移行が進む中で、クラウドストレージに対する需要も伸びています。Amazon S3に精通することでエンジニアとしての市場価値を高められるでしょう。ここでは、Amazon S3に興味があるエンジニアに向けて、Amazon S3の機能やメリットを紹介しています。

レバテックキャリアで転職した3人に2人が年収70万円UPを実現

支援実績10年の登録者データを基にした エンジニア・クリエイター専門 年収診断 無料診断START

※2023年1月~2024年3月実績

この記事のまとめ

  • AWS S3とは、AWSのオブジェクトストレージサービスで「Amazon Simple Storage Service」の頭文字Sをとった略称
  • 他のクラウドサービスと比べても多くのメリットがあるが、デメリットもあるため特徴をおさえて使用する必要がある
  • 最上位ディレクトリを「パケット」と呼び、パケット内に作成する仮想コンテナを「フォルダ」と呼ぶ

AWSの主要機能「Amazon S3」とは?

Amazon S3は後述するAWSの中で提供されているクラウドストレージサービスです。Amazon S3はオブジェクトストレージであり、ファイルストレージやブロックストレージよりも柔軟にデータを管理できるという特徴があります。

一般的なファイルストレージでは、データを「ファイル」や「フォルダ」という単位で管理します。また、ストレージの中は階層構造状に区切られており、データの格納場所が検索や保存に影響を及ぼしていました。

これに対してオブジェクトストレージではデータをオブジェクトという単位で扱い、それぞれにメタデータ(固有のIDなど)を付与します。メタデータを付与されたデータは、格納場所に依存せずに管理できるようになるため、保存や検索の柔軟性が向上するという仕組みです。

こうした仕組みからオブジェクトストレージは階層構造を持たず、検索性や保存性に優れたストレージとして評価されています。

オブジェクトストレージは更新頻度が低く容量の大きなデータ保存に適しています。また管理や配信もしやすいため、音楽・動画・ゲームコンテンツなどの配信にマッチするでしょう。さらに、電子帳簿保存法などで保存を義務付けられているようなデータを、アーカイブとして管理する場合にも適しています。

電子商取引の増加に伴い、保存・管理を要するデータが増え続ける今、オブジェクトストレージへの需要も伸びているのです。

AWSとは

AWSは、Amazonが提供する世界最大のクラウドプラットフォームです。クラウドプラットフォームとしてはトップのシェアを誇り、2023年時点で31%に達しています。(※)

AWSは、Amazonが提供するさまざまなクラウドサービスの総称で、2024年現在、新旧合わせて200を超えるサービスが提供されています。著名なサービスとしては、仮想実行環境を提供する「Amazon EC2」、上記のクラウドストレージサービス「Amazon S3」が挙げられます。

※参考:AWS市場シェア─収益と成長、競合との比較(2023年)
関連記事:AWSとは?特徴や資格、サービスを初心者向けに解説

Amazon S3とEC2との違い

Amazon S3とEC2はそれぞれ目的の異なるサービスです。Amazon S3は前述の通りオブジェクトストレージですので、動画や写真、音楽など構造化されていないデータを保存するために使用されます。一方EC2(Elastic Compute Cloud)はAWSの仮想マシンサービスです。

ユーザーのニーズに応じて仮想マシンのスペックをカスタマイズでき、作成した仮想マシンの起動や管理ができます。そのため自身のアプリケーションに応じて柔軟な対応が可能になり、初期投資は少なく、規模が大きくなってきたら仮想マシンを強化するといった使い方ができます。

関連記事:AWSのEC2とは?利用するメリット、需要の高さを解説

Amazon S3で使用する基本的な用語

ここで、Amazon S3の基礎知識として、よく使う用語を紹介します。

バケット

オブジェクトを保存する場所を指す言葉です。バケットはグローバル単位でユニーク(一意)であることが求められ、たとえ異なるアカウントであっても同じ名称のバケットを作成することはできません。

フォルダ

パケット上に作成された仮想コンテナを指す言葉です。通常のURL同様「bucket_name/folder_name/file_name」といったURLで指定できます。

キー

オブジェクトが格納されている場所をURLで表現したパスです。前述のバケットとキーを組み合わせて一意にすることで、格納先が表現されます。

リージョン

リージョンとは、AWSがサービスを提供している地域の単位です。日本では、アジアパシフィックリージョンの一部としてサービスが提供されています。前述のバケットを作成する際には、このリージョンを指定する必要があります。

Amazon S3の機能

以下は、Amazon S3が持つ主な機能の一覧です。主な機能をあらかじめ把握しておくことで、使いこなすのに役立つでしょう。詳細は実際に使用していれば慣れていくはずなので、以下で紹介する内容はざっくりと把握しておけば問題ありません。

ストレージ機能

一般的なデータストレージとしての機能です。Aamzon S3では原則として「使用した分だけ支払う」という料金体系を採用しています。ただし、複数のストレージクラス(プラン)が設けられているため、コストやアクセス頻度によって適切なストレージクラスを選ぶことも可能です。

ライフサイクル管理

オブジェクト単位でライフサイクルを設定・管理する機能です。保存から一定期間が経過したオブジェクトを削除したり、異なるストレージクラスに移動させたりといった操作・設定が行えます。

バージョン管理(バージョニング)

バケットのバージョン(世代)を履歴情報として管理する機能です。データの上書き保存や削除といったミスがあった場合でも、簡単にロールバックを行うことができます。

Webサイトホスティング

静的コンテンツのホスティングを可能にする機能です。PHPやJavaなどを使用していない静的なWebサイトであれば、Amazon S3のみのサーバーレスな環境で構築することができます。

アクセス管理

AmazonS3では、バケット単位やオブジェクト単位で細かなアクセス制御を施すことができます。このアクセス制御は、以下3つの方法で実装することが可能です。

IAMポリシー

Amazon S3を利用するユーザー単位でのアクセス制御です。ユーザーに対して読み書き権限の付与などを行います。

バケットポリシー

バケットに対してアクセス権を設定します。ただし、オブジェクト名やファイル名でのアクセス権を付与することも可能です。

ACL(アクセスコントロールリスト)

バケットACLとオブジェクトACLにより、それぞれに細かなアクセス制御を付与することができます。

暗号化

Amazon S3では、オブジェクトを暗号化して格納することができます。バケットの標準暗号化機能を有効にすることで、オブジェクト格納時に自動で暗号化が行われます。

データ処理

AmazonS3はデータ処理機能として、「S3 Object Lambda」と「イベント通知」を用意しています。S3 Object Lambdaはデータをアプリケーションに返す際にデータを変更する機能です。具体的には、画像サイズの変更、行のフィルタリングなどができます。イベント通知は処理を実行するトリガーが発生した際に通知する機能です。

その他の機能

一般的なストレージサービスに付与されるログ機能やイベント管理機能も利用可能です。

Amazon S3を使用するメリット

Amazon S3の特徴と機能を確認したところで、ここからは使用するメリットを確認していきましょう。前述の通りAmazon S3は様々なサービスを展開しているため、他のクラウドサービスと比べても使用するメリットが複数あります。ここでは代表的なメリットを7つご紹介します。

それぞれについて詳しく見ていきましょう。

可用性や耐久性が高い

Amazon S3はアップロードしたファイルを自動で複数のストレージに保存するため、従来のサーバーと比較してヒューマンエラーや災害に強いです。

従量課金制で必要な分だけ利用できる

Amazon S3は容量、リクエスト数、データの送受信量などの項目に応じて使用料が変更されるため、事業のスモールスタートに適しています。そのためマネタイズできていないサービスを、不要な費用を払わずに運用できます。

容量無制限で利用できる

自社サーバーなどオンプレミスのサーバーだと容量の追加に手間がかかりますが、Amazon S3は簡単に上限を変更できます。更に上限に制限も無いため、想定以上に容量が増しても問題無く運用できます。

セキュリティレベルが高い

Amazon S3はデータの暗号化だけでなく、監査ログ記録やアクセス制御の詳細設定など様々なセキュリティ機能を提供しています。これらを自社サーバーで実現するとコストなどがかかるため、Amazon S3が選ばれる要因となっています。

柔軟に権限管理ができる

セキュリティとも深く関連しますが、Amazon S3は権限管理を細かく設定できます。どこまでデータを公開するか、誰のアクセスを可能とするか、など項目ごとに設定しておけば利便性とセキュリティのバランスを取りやすいです。

保管先を自由に設定できる

データを保管できるクラウドサービスは多数ありますが、保管先のサーバー、データベースをどこまで指定できるかはサービスによって異なります。指定できないサービスも多いでしょう。しかし、Amazon S3はデータの保管先まで自由に指定できます。

データの場所を指定して分散管理することで、リスク分散になります。たとえばどこかの国で災害が発生してサーバーが物理的に壊れてしまったとしても、別の国のサーバーにデータがあるのでサービスの稼働を継続できる、といったことになります。

バージョニングによるデータ保護が可能

Amazon S3では、オブジェクト単位での世代管理(バージョン管理)を行います。誤ってデータの上書きや削除が行われた場合でも、処理前のデータが別のバージョンとして残っているため、容易に処理前の状態に戻すことができます。また、2拠点を同時に喪失した場合でもデータが失われないように、高い保護性を確保している点も見逃せません。

Amazon S3を使用するデメリット

Amazon S3を使用すると多くのメリットを得られますが、同時にデメリットも存在します。ここでは代表的なデメリットを4つご紹介します。ご紹介するのは以下の4つです。


  • ・動的処理を要するWebサービスに使用できない

    ・パフォーマンスに優れているわけではない

    ・Amazon S3上でファイルの修正ができない

    ・管理者の運用コストが大きい


それぞれについて詳しく見ていきましょう。

動的処理を要するWebサービスに使用できない

前述の通り、Amazon S3は静的なWebサービスを配信できますが、動的なWebサービスには使用できません。なぜなら、サーバー側のスクリプト処理を実行する機能が無いからです。データベースなどを必要とするサービスを検討しているようでしたら、Amazon S3以外のサービスを検討しましょう。

パフォーマンスに優れているわけではない

Amazon S3はあくまでオブジェクトのストレージですので、高速な処理を求めるアプリケーションには適していません。高い処理能力を求められるサービスの場合は別の環境で作成しましょう。

Amazon S3上でファイルの修正ができない

Amazon S3はオブジェクトの保存とアップロード、ダウンロードのみを提供しているため、軽微な修正であっても、一度ダウンロードし修正してから再度アップロードしなければなりません。

管理者の運用コストが大きい

Amazon S3は自動で容量を拡張する機能があるため、意図せず費用が増す可能性があります。そのため、組織でAmazon S3を使用する場合、管理者が使用状況を管理しなければならず、運用の負荷が大きいです。

Amazon S3の使用例

ここからは、Amazon S3が実際どのように使用されているのかを確認していきましょう。前述の通りAmazon S3は様々なサービスやメリットがあるため、使われ方は多岐に渡ります。ここでは代表例を5つご紹介します。


  • ・ファイルのバックアップ・共有

    ・長期的なWebサービスの運用

    ・長期間使用されないデータの保存

    ・データ分析アプリの構築

    ・CDNの構築


それぞれについて詳しく見ていきましょう。

ファイルのバックアップ・共有

前述の通り、Amazon S3はファイルの形式を問わず格納できるオブジェクトストレージです。そのため様々な形式のファイルのバックアップが可能です。Amazon S3は超高耐候かつ高可用ですのでファイルのバックアップに最適です。また、指定したユーザーにのみファイルの共有が可能なので、組織のメンバーへのファイル共有などにも使用されています。

長期的なWebサービスの運用

Amazon S3はオンプレミスのサーバーと異なり、必要な分を必要なだけ使用できるため長期的なWebサービスの運用に使用されています。なぜなら、Webサービスの普及やアップデートで必要容量が増えてもS3の場合は課金することで自由に追加できるからです。また、バージョン管理機能や高いセキュリティも長期サービスの運用に使用される要因となっています。

長期間使用しないデータの保存

Amazon S3は通常のファイルバックアップだけでなく、長期間使用しないデータの保存にも使用されています。なぜなら、自身でサーバーを保持するよりも安い費用で安全に保存できるからです。また、従来使用されていたテープライブラリよりもデータの復元が早いため、緊急時にすぐ確認できるのも使用される要因となっています。

データ分析アプリの構築

Amazon S3は容量に制限が無いため、大量の学習データを保管する必要があるデータ分析アプリの構築にも使用されています。また、保存するデータの構造に制限が無い点もビックデータを保存する環境として適しています。

CDNの構築

CDN(コンテンツ配信ネットワーク)とは、Webコンテンツの配信品質や表示速度を改善するネットワークです。大量のユーザーがアクセスするサイトの代理サーバーを作成し、リダイレクトさせることでアクセスを分散させ、配信品質や表示速度を改善します。Amazon S3は静的なファイルを配信できるため、CDNの構築にも使用されています。

Amazon S3の利用方法

Amazon S3は以下の流れで利用します。

  • 1. バケットを作成する

    2. データをアップロードする

    3. データにアクセスする

まずバケットとはデータを保管する入れ物です。データ領域を確保するということです。そして、作成したバケットの中にデータをオブジェクトという形で保管します。オブジェクトはファイルとファイルを説明するメタデータで構成されているので、データに少しプラスアルファがくっついてオブジェクトになるというイメージです。

バケットにオブジェクトを作成したら、実際にアクセスしてみる、という流れです。それぞれの詳しい手順については画像付きで解説されているページなどがあるので、必要に応じてご確認ください。操作自体は直感的で簡単なので、予備知識がなくても扱えるものになっています。

Amazon S3のストレージクラスの種類

Amazon S3には複数種類のストレージがあり、ストレージクラスという呼び方をしています。ストレージクラスによって、用途、特徴、コストなどが異なります。

ストレージクラス選びで特に重要な基準は、アクセス頻度でしょう。なぜなら、ストレージ利用料金が高めに設定されているクラスはデータの取り出し等の料金が安い傾向にあり、逆にストレージ利用料金が低めに設定されているクラスはデータの取り出し等の料金が高い傾向にあるからです。

具体的には、以下の表のようになります。

ストレージクラス 特徴 料金目安
S3 Standard 標準的 ストレージ利用:0.025USD/GB
S3
Intelligent-Tiering
自動でコスト削減
(アクセス頻度に基づいてデータを
最も費用対効果の高いアクセス階層に自動的に移動)
ストレージ利用:0.004USD/GB ~ 0.0025USD/GB
データのモニタリング:オブジェクト 1,000 件あたり 0.0025USD
ストレージクラス 特徴 料金目安
S3 Standard-IA Standardと比較するとストレージ利用料金は低いがデータ取り出しなどに費用がかかる。
そのためアクセス頻度の低いデータに向いている。
ただしより低頻度向けのプランは複数あるのでバランス型とも言える。
ストレージ利用:0.0125USD/GB
データの取り出し等:0.01USD/GB
ストレージ利用料金:最低でも30日分の費用
S3 One-Zone IA Standardと比較すると可用性を下げてコストを抑えている。
ただしより可用性、コストの低いクラスは複数ある。
ストレージ利用:0.01USD/GB
データの取り出し等:0.01USD/GB
ストレージ利用料金:最低でも30日分の費用
S3 Glacier
Instant Retrieval
四半期に一度程度アクセスするようなデータに向いている。 ストレージ利用:0.004USD/GB
データの取り出し等:0.03USD/GB
ストレージ利用料金:最低でも90日分の費用
S3 Glacier
Flexible Retrieval
1年に1〜2回アクセスするようなデータに向いている。 ストレージ利用:0.0036USD/GB
データの取り出し等:0.03USD/GB
ストレージ利用料金:最低でも90日分の費用
S3 Glacier
Deep Retrieval
1 年に1〜2回アクセスされるようなデータに向いている。 より長期保管を想定している。 ストレージ利用:0.00099USD/GB
データの取り出し等:0.02USD/GB
ストレージ利用料金:最低でも180日分の費用

Amazon S3の料金体系

ストレージクラスごとのAmazon S3の料金は上で挙げた通りです。ストレージクラス以外にも複数の要素によってAmazon S3の料金は決まります。具体的には、以下が挙げられます。


  • ・ストレージクラス

    ・ストレージ使用量

    ・データ送受信量

    ・追加機能


以上の要素の組み合わせによって、Amazon S3の料金が決定されます。詳しい計算は、見積りツールを使用すると良いです。

参考:AWS料金見積ツール

Amazon S3に関するよくある質問

Amazon S3に関するよくある質問と回答を紹介します。Amazon S3を含むAWSは今後より普及していく可能性が高いでしょう。そのため、Amazon S3について知ることで開発や自社サーバーの管理に役立つはずです。

Q1. Amazon S3は何に使いますか?

Amazon S3は他のクラウドストレージと比べても様々な利点があるため、使用方法は多岐に渡ります。ここでは代表例を5つご紹介します。


  • ・ファイルのバックアップ・共有

    ・長期的なWebサービスの運用

    ・長期間使用されないデータの保存

    ・データ分析アプリの構築

    ・CDNの構築

Q2. Amazon S3の正式名称を教えてください

Amazon S3とは「Amazon Simple Storage Service」の頭文字Sをとった略称です。AWSの提供するサービスの1つで、オブジェクトストレージサービスになります。

Q3. S3ホスティングのデメリットは何ですか?

Amazon S3ホスティングサービスのデメリットは「動的コンテンツをホスティングできない」「任意のドメインに変更したい場合、AWS Route 53をはじめとしたDNSサービスを設定しなければならない」などが挙げられます。

Q4. Amazon S3のバケットとフォルダの違いは何ですか?

Amazon S3においてフォルダはバケットに格納されています。つまり、パケットはAmazon S3上の最上位ディレクトリ、フォルダはディレクトリ上に作成された仮想コンテナにあたります。

まとめ

AWSはAmazonが提供する世界最大のクラウドプラットフォームです。そしてAmazon S3はAWSの中で提供されているクラウドストレージサービスです。Amazon S3を利用すればクラウド環境で大規模なデータを管理できます。

クラウドストレージサービスはAmazon S3以外にもありますが、Amazon S3はサーバーの場所を選択することや、用途に合わせてストレージクラスを選べます。処理速度や動的処理には弱いといった欠点はありますが、規模が大きく利便性、コストパフォーマンスにも優れていることから、今後も利用者、利用するプロジェクトは増えていくでしょう。

ITエンジニアの転職ならレバテックキャリア

レバテックキャリアはIT・Web業界のエンジニア職を専門とする転職エージェントです。最新の技術情報や業界動向に精通しており、現状は転職のご意思がない場合でも、ご相談いただければ客観的な市場価値や市場動向をお伝えし、あなたの「選択肢」を広げるお手伝いをいたします。

「将来に向けた漠然とした不安がある」「特定のエンジニア職に興味がある」など、ご自身のキャリアに何らかの悩みを抱えている方は、ぜひ無料のオンライン個別相談会にお申し込みください。業界知識が豊富なキャリアアドバイザーが、一対一でさまざまなご質問に対応させていただきます。

「個別相談会」に申し込む

転職支援サービスに申し込む
※転職活動を強制することはございません。

レバテックキャリアのサービスについて

この記事の監修

レバテックキャリア編集部

レバテックキャリアは、IT/Web業界のエンジニア・クリエイター向けに特化した転職エージェントです。当メディアでは、エンジニア・クリエイターの転職に役立つノウハウから、日々のスキルアップや業務に活かせる情報まで、幅広いコンテンツを発信しています。

プロのアドバイザーがあなたのお悩みや疑問にお答えします

- 転職個別相談会開催中 -

相談内容を選択してください

※転職活動や求人への応募を強制することはありません

関連する記事

人気の求人特集

内定率が高い

AWSの求人・転職一覧

ITエンジニア未経験~3年目の方限定

  • ITエンジニア適職診断
  • 5年後の予想年収

簡単3分無料で診断してみる

×

今もらっている年収は高い?低い?

簡単60秒 エンジニア・クリエイター専門 年収診断 無料診断START ×

年収アップをご希望の方へ

簡単!年収診断

現在の市場価値や
年収UPの実現方法がわかる!

現在の職種はどちらですか?