Amazon S3をどう使うか-容量無制限の優れたストレージサービス

Amazon S3(Amazon Simple Storage Service)は、AWSのストレージサービスです。サービスインターフェイスはシンプルで、いつでもウェブのどこからでもデータを格納および取得できます。格納容量は無制限です。スケーラブルで信頼性が高く、かつ高速で安価なデータストレージインフラストラクチャとして利用できますので、AWSを利用する人であれば必ずといっていいいほどAmazon S3を使う機会があるでしょう。今回はこのAmazon S3について解説します。

Amazon S3とは

Amazon S3は、オブジェクト(ファイルなど)を格納・管理できるストレージサービスです。ウェブサイトやアプリケーションなどのデータバックアップおよび復元、アーカイブなど、さまざまなことができます。

Amazon S3のメリット

Amazon S3のメリットは、以下の通りです。

トップクラスの可用性や耐久性

S3は、利用するストレージリソースを自由にスケールアップ・ダウンすることができます。さらに、S3は99.999999999% の高いデータ耐久性を実現するように設計されており、万一の障害やエラー、脅威などからデータを保護することができます。

料金が安くコスト効率が高い

AmazonS3は、従量課金で非常にコスト効率のいいストレージサービスですが、パフォーマンスを下げずにコストを節約してデータを保存するためのソリューションも用意されています。S3ストレージクラス分析を使用すると、アクセスパターンに基づき、低コストのストレージクラスに移動する必要のあるデータが自動検出され、ライフサイクルポリシーを設定して転送を実行することができます。こうしてコストを自動的に最適化し抑えることが可能です。

容量無制限

Amazon S3には、容量無制限でいくらでも使用することができるという非常に大きなメリットがあります。(但し保存するオブジェクトは1ファイルにつき5TBまでという制限はあります)ストレージの残容量を気にすることなく、いくらでもクラウドにデータを保存できますので、使用しているコンピュータはもちろん、複数のデバイスにデータを分けて蓄積するといったことに手間などをかける必要がありません。

優れたセキュリティ、コンプライアンス、監査機能

データを Amazon S3 に保存し、暗号化機能とアクセス管理ツールを使用して不正なアクセスからデータを保護することが可能です。S3 Block Public Accessを使用して、バケットレベルまたはアカウントレベルで、すべてのオブジェクトへのパブリックアクセスをブロックすることができます。また、 PCI-DSS、HIPAA/HITECH、FedRAMP、EU データ保護指令、 FISMA などのセキュリティやコンプライアンスの規制要件を満たしていることが示すように、さまざまな業界で利用することが可能です。また、リソースへのアクセスリクエストをモニタリングするための監査機能も多数サポートしています。

詳細なデータ管理

Amazon S3 は AWS Lambda と連携しているため、Amazon S3だけのための管理用インフラストラクチャを追加することなく、データを分類、管理、レポートし、アクティビティのログ記録、アラートの定義、ワークフローの自動化を行うことができます。

分析にすぐに活用できるクエリ

クエリ (query-in-place) サービスを使用することにより、S3 オブジェクト全体に対してクエリによるデータ分析を実行することができます。

幅広いサポート

AWS Marketplace で AWS 統合ソリューションを直接購入することもできます。AWS Marketplace には、ストレージに関する 250 以上のサービスがあります。また、実装や運用をサポートする、AWS Partner Network (APN) と呼ばれるパートナー企業 (テクノロジーとコンサルティングのクラウドサービスプロバイダーがいます) がいますので、例えば、AWSのコンサルティングパートナー企業と、システム導入や移行の目的から必要なソリューションの選定と実装について相談することができます。(特に、企業システムの場合には、Amazon S3部分以外のサポートも必要とされることが多くあります)

Amazon S3を利用するには

Amazon S3の利用方法について解説します。

主な使い方

Amazon S3 はもちろんファイルを保存するストレージ機能を提供しているサービスですが、Amazon S3 に保存したファイルはさまざまな目的で利用できます。ファイルのバックアップ、ファイル処理の加工前、あるいは加工後のファイルの保存、画像ファイルやCSSなどWebで使う静的なファイルをS3に置いて配信するなど、非常に広範囲な使い方ができます。
また、Amazon S3 へ、APIまたはAWS CLIでアクセスすること(容量無制限のファイルアップロード、ダウンロード、削除)も可能です。またIAM、アクセスコントロール、バケットポリシーなどを組み合わせることによりアクセス制御も実現できます。

基本的な使用手順

ここではS3にファイルをアップロードするところからブラウザで確認してみるところまでの、主な手順を見てみましょう。

Amazon S3の概念を理解

先述の内容を再確認するなどして、まずAmazon S3のサービス概要を、操作を行う前に理解しましょう。

AWS アカウントを設定してログイン

AWSアカウントをお持ちでなければまずアカウントを取得しましょう。すでにお持ちであればAWSコンソールよりそのままログイン別ウィンドウで開きますします。

バケットの作成

AWS リージョンの 1つにデータを保存するためのバケット(バケツのようなオブジェクトを保存する入れ物)を作成します。バケットを作成した後は、データオブジェクトをいくつでもバケットにアップロードできます。デフォルトでは、1つのAWS アカウントにつき最大で 100 個のバケットを作成できます。

オブジェクトのアップロード

オブジェクトをアップロードします。

権限の処理

S3には3種類のアクセス制御があります。

ACL
  • バケット/オブジェクトのサブリソースとしてXMLで定義できます。
  • AWS Management Console から、各バケット/オブジェクトの Properties > Permissions で設定できます。
バケットポリシー
  • バケット/オブジェクトのアクセス権をJSONで定義します。
  • AWS Management Console から、バケットの Properties > Permissions > Add(Edit) Bucket Policy で設定できます。
IAMポリシー
  • IAMのリソースに紐づき、S3を含むAWSリソースへのアクセス権をJSONで定義します。
  • AWS Management Console から、IAMのホームディレクトリでユーザ/グループ/ロールのポリシー設定ができます。
ブラウザでアクセスして表示

ウェブサイトを公開してブラウザで表示してみましょう。詳細は以下のページを参照みてください。

https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/user-guide/static-website-hosting.html別ウィンドウで開きます

主な利用例

Amazon S3は、以下のような活用ができます。

データのバックアップと復元

Amazon S3とAWS の他のサービス (例: S3 Glacier、Amazon EFS、Amazon EBS) を使用して、スケーラブルで、耐久性、安全性に優れたバックアップと復元を行うことができます。オンプレミスデータのバックアップをAWS に自動的に送信することもできます。

災害対策

Amazon S3を使えば、AWS クラウドを始め、オンプレミス環境で実行されている重要なデータ、アプリケーション、IT システムを保護することができます。バックアップを Amazon S3 に取っておくことにより、自然災害やシステム障害、人為的ミスによって発生する機能停止から復旧することができますので、BCP対策としても利用できます。

アーカイブ

S3 Glacier と S3 Glacier Deep Archive でデータをアーカイブし、オブジェクトを長期間、低コストで保持することができます。テープライブラリより遥かに高速に復元が可能で、S3 Glacier では迅速取り出しサービスを利用する場合は 1分、標準取り出しサービスを利用する場合は 3〜5 時間でアーカイブオブジェクトを復元できます。S3 Glacier からの一括データ復元と S3 Glacier Deep Archive を使用した復元はすべて 12 時間以内に完了できます。

データレイクとビッグデータの分析

Amazon S3 でデータレイク(多数のソースからのビッグデータを元のままの多様な形式で保持するストレージリポジトリ)を作成し、クエリ、分析、機械学習ツールを使用してビッグデータの分析を行うことができます。

ハイブリッドクラウドストレージ

オンプレミスアプリケーションとAmazon S3 をシームレスに接続することができます。また、AWS DataSync を使用することで、オンプレミスストレージと Amazon S3 の間のデータ転送を自動化して障害に備えることができます。AWS Transfer for SFTP (サードパーティーとの安全なファイル交換を可能にする完全マネージド型サービス) を使用して Amazon S3 間でファイルを直接転送することも可能です。

Amazon S3の料金

Amazon S3は、実際に使用した分だけ支払います。最低料金設定はありません。料金は選択する S3 バケットのロケーションによって異なり、機能性やセキュリティの面でリーズナブルな料金からスタートできます。料金には次のメニューがあります。

  • ストレージ料金
  • リクエスト料金
  • S3 ストレージマネジメント料金
  • データ転送料金

また、Amazon S3 は AWS の無料利用枠にも含まれていますので、無料で使用開始することができます。AWS に新規にサインアップすると、S3 標準ストレージクラスで 5 GB の Amazon S3 ストレージ、20,000 GET リクエスト、2,000 PUT、COPY、POST、あるいは LIST リクエスト、データ送信 15 GB を毎月、無償で 1 年間利用できます。

まとめ

Amazon S3は非常にコストパフォーマンスの高い、実質的に容量無制限で使える、トップクラスのストレージサービスです。ウェブサイトの構築やファイルのバックアップ、さらに高度なファイル処理など幅広く使えるセキュアなAWSサービスです。1年間無料で使える無償枠もあるので、まずはお試し使用をしてみてはいかがでしょうか。

Amazon Web Services(AWS)、Microsoft Azureの
導入支援サービスのご相談、お問い合わせをお待ちしております。

ページ上部へ戻る