ITシステムに関係している方であれば、Amazon Web Services(AWS)という名前を聞いたことがある方は多いのではないでしょうか?
しかし、そのAWSの中にどのような具体的なサービスがあるのか、そのサービスでは何ができるのかについて説明を求められると難しいものです。
この記事では、AWSが提供するサービスの一つであるオブジェクトストレージサービス「Amazon S3」についてご紹介します。
自社にAWSを導入しようとお考えの担当者様や、ストレージサービスをお探しの方はぜひご一読ください。
Amazon S3とは
Amazon S3とはAmazon Simple Storage Serviceの略で、AWSが提供するオブジェクトストレージサービスです。
サービスインターフェイスはシンプルで、いつでもウェブのどこからでもデータを格納および取得できます。
容量無制限で利用でき、耐久性・可用性が高いなどの特長を持ち、サーバーのストレージ領域としての活用からデータバックアップや機械学習などで利用するデータの保存場所など、幅広い用途に対応し、高速で安価なデータストレージインフラストラクチャとして利用できます。
既存のAWSサービスと連携させることで非常に広範囲な使い方ができ、AWSを利用する人であれば必ずといっていいほど使う機会があるサービスです。
Amazon S3のメリット
耐久性・可用性に優れている
S3は保存したデータを最低3つのデータセンターへの冗長化を自動的にしており、99.999999999%(イレブンナイン)の高いデータ耐久性を実現できるように設計がされています。これはAmazon S3に1000万個のオブジェクトを保存したとして、そのうちの1つが障害によって失われるのに平均で1万年ほどかかるレベルです。万一の障害やエラー、脅威などからデータを保護できます。
また、S3 Standardの可用性は年間で99.99%とされています。膨大なデータを取り扱う場合でも安全に継続的に使えるシステムとなっています。
コスト効率が高い
「ストレージ容量」「リクエスト数」「データ転送量」といった使用量に応じて料金が算出される従量課金制で利用でき、コストを意識した利用が可能となります。
将来的な利用を想定して容量を確保する必要もないため、無駄なコストをかける必要もありません。
また、S3ストレージのアクセスパターンに基づき、必要に応じて一部のデータを低コストのストレージクラスに移動するよう、S3ライフサイクルポリシーを設定することが可能です。
容量が無制限
S3には容量制限がなく、1ファイルあたり5TBまでであれば自由にデータをアップロードすることができます。
現在の空き容量があと何GBなのかといった心配や、容量確保のためのデータ削除など、ビジネスの拡大に伴うストレージ容量問題に悩まされることはありません。
これにより、ウェブサイトやモバイルアプリケーション、バックアップと復元など、広範囲な利用用途において、データを容量に関係なく保存して保護することが可能になります。
セキュリティレベルが高い
Amazon S3では、データの保護を目的とした暗号化機能が提供されており、デフォルトではデータはサーバーサイドで自動的に暗号化することでセキュリティレベルを強化しています。また、特定のユーザーやアプリケーションに対して必要なアクセス権限を付与することで、アクセス許可の無い利用者によるデータへのアクセスブロックを行うなど緻密なアクセス制御を実装することができ、セキュリティレベルをコントロールすることが可能です。
サーバー不要で静的コンテンツのWebサイト公開が可能
様々な機能を持つAmazon S3ですが、なかでも便利な機能の1つが「静的ウェブサイトホスティング」です。これは、HTMLファイルなどの静的なコンテンツに対してアクセス可能なエンドポイント(URL)を発行する機能で、Webサーバを立てることなく、静的コンテンツで構成されるWebサイトを公開できます。
細やかなデータ管理が可能
Amazon S3 は AWS Lambda と連携しているため、Amazon S3だけのための管理用インフラストラクチャを追加することなく、データを分類、管理、レポートし、アクティビティのログ記録、アラートの定義、ワークフローの自動化を行うことができます。
また、アップロードしたファイルなどを一定期間後に異なるストレージクラスへの移動や削除をする「ライフサイクル」を設定できたり、データの公開範囲や、アクセス権限などを細かく設定することも可能で、細やかなデータ管理をすることが可能です。
Amazon S3の料金とストレージクラス
ここではAmazon S3の料金体系や、その料金にも影響するストレージクラスについて解説します。
Amazon S3の料金
Amazon S3の料金は多くのAWSのサービスと同様、従量課金制となっています。
料金は以下の6つの要素によって決定します。
・ストレージ
バケットにオブジェクトを保存するための料金。容量や期間、ストレージクラスによって異なる。
・リクエストとデータ取り出し
バケットとオブジェクトに対するリクエスト・データ取り出しにかかる料金。
・データ転送
S3に出入りするすべての帯域幅にかかる料金。
インターネットからS3に転送されるデータなど、一部の転送は除く
・管理と分析
有効になっているストレージ管理機能や分析機能の料金。
・レプリケーション
S3バケット間でオブジェクトを自動的にコピーできるレプリケーションにかかる料金。
・S3 Object Lambda
AWS Lambda関数を使用して、S3へのGETリクエストにプログラムコードを追加して、データを変更および処理できる機能を使う場合の料金。
Amazon S3ストレージクラスの種類
Amazon S3のストレージクラスとは、用途に合わせて特徴の異なるストレージの種類のことで、以下のようなストレージクラスがあります。
低頻度アクセスのストレージクラスは費用が安くなる一方で、データの取り出しに料金がかかることもあり、使い方によっては標準ストレージよりも料金が高くなることもあり、目的に合わせて適するストレージクラスを選択するようにしましょう。

Amazon S3のユースケース
様々なメリットがあるAmazon S3ですが、それらの特徴を生かすためのよくみられるユースケースや便利な活用法をご紹介します。
バックアップ・ログデータの保存
Amazon S3の主な利用方法として、ほかのAWSサービスのバックアップやログデータの保存が挙げられます。
仮想サーバサービス「Amazon EC2」やロードバランサ―「ELB」、CDNサービス「Amazon CloudFront」などから出力するログデータなど、各種ログの保存先として利用されます。
また、クラウドにある既存のデータをバックアップしたり、AWS Storage Gatewayを使用して、オンプレミスデータのバックアップを AWS に自動的に送信することも可能です。
データアーカイブ先
取り出すことのないデータの長期保存にも、S3を活用することができます。
オンプレミスではストレージが有限でデータの保管場所に悩むことがありますが、Amazon S3であれば容量は無制限で利用でき、オンプレミスで保存しきれないものを長期保存することが可能です。
Amazon S3はストレージの種類によって料金も変わるため、例えば「閲覧頻度が数年に1度程度、データの取り出しは要求から1日後でも問題ない」といったデータであれば、Amazon S3 Glacierを選ぶことでさらにコストを抑えることができます。
静的Webサイトのホスティング
メリットでもご紹介したように、静的ウェブサイトホスティング機能によるWebサイトの公開に使用することも可能です。
基本的な構成としては、コンテンツ配信サービス「Amazon CloudFront」と組み合わせることで、Amazon S3に保存したHTMLコンテンツなどをWebサイトとして公開します。
また、動的コンテンツはAmazon EC2上のサーバに配置し、画像などの静的コンテンツをAmazon S3に配置するといった利用ケースもあります。画像などは容量が大きいものが多いため、容量単価が安く、高い耐久性・可用性のAmazon S3に配置することで、コストを抑えて安定した運用を行うことができます。
データレイク
S3でデータレイク(様々なソースから収集したデータを、一元管理で貯めておけるリポジトリ)を作成することもできます。
AWSには多数のデータ分析アプリケーション(Athena、EMR、Glueなど)があり、それらはS3のデータレイクのデータにアクセスが可能です。データレイクのデータはビッグデータの分析に活用できます。
データレイクについては、下記の記事で解説しておりますので、より詳しく知りたい方はぜひご確認ください。

まとめ
AWSでは、S3以外にも多種多様な機能・サービスを提要しておりクラウド上で様々なシステムを構築することが可能です。
無料利用可能なサービスもありますので、ご興味を持たれた方はぜひ一度お試しされてみてはいかがでしょうか。本記事が、AWSを検討されている方の参考になれば幸いです。
株式会社KUIXではAWSを用いたシステムの開発やコンサルティングを行っております。本格的なAWS環境の構築・導入をご検討される際は、ぜひ一度ご連絡ください!お問い合わせはこちらから

