AWSマイスターシリーズ第2回
 - Amazon Simple Storage Service (S3) -
               Shinpei Ohtani, Solutions Architect
                  Amazon Data Service Japan
Webセミナー
ほぼ週刊AWSマイスターシリーズ(全10回)
ほぼ週刊AWSマイスターシリーズ(全10回)
    9/20    EC2 & EBS
    9/28    S3
    10/5    CloudFront & Route53
    10/19   IAM & Consolidated Billing
申し込みサイト
 http://aws.amazon.com/jp/event_schedule/
自己紹介

大谷 晋平(おおたに しんぺい)
アマゾンデータサービスジャパン株式会社所属
  ソリューションアーキテクト
ソーシャルネットワーク
  Twitter: @shot6
  Facebook: facebook.com/shot6
  Mail: ohtani@amazon.co.jp
この世で最も愛しているサービス:S3
アジェンダ

Amazon Simple Storage Service(S3)
オーバービュー
S3の用語
S3 機能
S3 プライス
S3 利用事例
まとめ
Amazon Simple Storage Service とは?

 S3はWeb時代のストレージ
 AWSのコアサービスの1つ。2006年から開始
 開発者が“Webスケール”なコンピューティングを可能に
 するよう設計された
     高スケーラビリティ
     高い信頼性・堅牢性
     セキュア
     高速
     低価格
 スケーラビリティのメリットを最大限に活用
S3のスケール=クラウドのスケール

  Peak Requests:                                                     449 Billion
    290,000+
    per second
                                                       262 Billion




                                         102 Billion


                            40 Billion
2.9 Billion    14 Billion

  Q4 2006        Q4 2007      Q4 2008      Q4 2009       Q4 2010       Q2 2011




            Total Number of Objects Stored in Amazon S3
S3の用語

バケット
  オブジェクト置場。最大100/アカウント。名前がユニークな必要あり
オブジェクト
  S3に置くファイルでURLによるアドレスが付与。バケット内には無制
   限にオブジェクトを置くことが可能。1オブジェクトのサイズは5TBまで
キー
  オブジェクト毎に付与される一意なキー
ACL
  アクセスコントロールリスト
S3のネームスペース


              Amazon S3

   バケット                    バケット


オブジェクト   オブジェクト       オブジェクト   オブジェクト




                   バケット


          オブジェクト          オブジェクト
S3 –実例にあてはめてみる -
                       Amazon S3

    mculver-images                 media.mydomain.com

Beach.jpg   2009/maui/sun.jpg      img1.jpg    img2.jpg

                       public.blueorigin.com

              Installer.msi           img/pic1.jpg
S3の基本的な機能
オブジェクトの書き込み、読み込み、削除。1バイトから5TB
まで、http/httpsで可能
  基本機能は至ってシンプル
オブジェクトの数は無制限
複数のリージョンでストレージを展開
    US Standard (Northern Virginia or the Pacific Northwest)
    EU (Ireland)
    US West (Northern California)
    Asia Pacific (Singapore)
    Asia Pacific (Tokyo)
高いセキュリティを保つための認証の仕組み
S3の堅牢性
S3は非常に高い堅牢性を持つ
  複数のファシリティにまたがった複数デバイスに冗長にストア
   • スタンダードオプションであれば3箇所以上
  PUT/COPY はSUCCESSを返す前に複数のデータセンターに保存
  S3はデータロストに対して自動発見と修復
S3のストレージオプション
 2つのオプション
  Standard Storage option(デフォルト)
  Reduced Redundancy Storage (RRS)option
S3 Standard Option
 スタンダードオプション
     S3のデフォルト設定
     99.999999999%の堅牢性
     99.99%の可用性
     2つのDCで同時のデータのロストが発生したとしても耐えられる設計
S3 RRS Option(低冗長化)
 S3’s RRS Optionは:
    99.99%の堅牢性
    99.99%の可用性
    年間で0.01%のデータロストの可能性
    単一のDCでのデータロストには耐えられる設計
    コストがStandardよりも安い
S3の機能
S3マルチパートアップロード

 巨大なオブジェクトを複数のチャンク
 に分割してアップロード
  各チャンク < 5GB
  チャンクがアップロードされたら、単一オ
   ブジェクトに結合
   • 自動で結合する場合
   • 自分でsplitして、自分でコール
S3 Webサイト機能

 静的なWebサイトのホスティングをS3で!
  ファイルをアップロードして、Website機能をONするだけ!
S3バージョニング

全てのオブジェクトのバージョン管理下におき保存、検索、リストア
が可能。バージョニング中はオブジェクトは削除されない。
ユーザアクションやアプリケーションエラーから重要なデータを保
護する機能。ただし課金はバージョニングの分、かかる
S3サーバアクセスロギング

S3バケットへS3のアクセスログを保存
  デフォルトでは出力しない
API/SDKで設定可能
アクセスログのデリバリではチャージしていない
  ログの保存ではチャージ。ただしいつでも削除可能
  アクセスログへのアクセスについては若干のチャージ
S3の認証機構

S3をはじめとする全AWSサービスでセキュリティは最優先事項
認証のないアクセスからはデータは確実に保護
オブジェクトは全てフルコントロール可能
特定ユーザに対して権限を与えることも勿論可能

How?
  AWS Identity and Access Management(IAM) ポリシー
  バケットポリシー
  ACL
AWS IAM

 アカウント内で複数ユーザを作成し、セキュリティクレデンシャルや
 権限を付与する事が可能
  S3のバケットにオブジェクトのPUT/LIST/GETなど
 詳細は第4回セミナーにて!
 IAMで出来る事:
  ユーザレベルでのコントロール
    • S3に対してのお客様要件にあわせた操作の制御
 アクセスポリシー言語を記述する
  JSON format
S3バケットポリシー
 S3バケットレベルのポリシーベースの大枠のコントロール
 バケットオーナーだけが適用可能
  バケットレベルでのAllow/Deny
  バケット内のオブジェクトの権限のDeny
  バケットオーナーがオブジェクトオーナーだった場合のみオブジェクト
   に適切な権限を与える
 アクセスポリシー言語を記述する
  JSON format
バケットポリシーの一例
例:
  ユーザ(1-22-333-4444, 3-55-678-9100)に
   “mybucket” (arn:aws:s3:::mybucket/*“,)というバケットに
   対してGETリクエストの発行を許可
     { "Version":"2008-10-17",
          "Id":"aaaa-bbbb-cccc-dddd",
          "Statement" : [
                { "Effect":"Allow",
                   "Sid":"1",
                   "Principal" : {
                       "AWS":["1-22-333-4444","3-55-678-9100"]
                    },
                    "Action":["s3:GetObject*"],
                    "Resource":"arn:aws:s3:::mybucket/*",
                }
          ]
     }
S3 Access Control List
 バケットからオブジェクトへのコントロール
 バケットのACLをオブジェクトは継承しない
 作成と適用はいつでも可能
 100個ACLは作成可能:
     Owner
     Email
     Any AWS account
     Anyone
 パーミッション:
     READ – Object or bucket
     WRITE – Create, overwrite, delete objects in bucket
     READ_ACP – Read ACL for bucket or object
     WRITE_ACP – Overwrite ACL for bucket or object
     FULL_CONTROL – All of the above
AWS SDK and S3
 AWS SDK(Software Development Kit) for S3
    Java
    .NET
    Ruby
    PHP
 出来る事:
    Create/Delete bucket
    Put/Get/List/Delete object
    ACL/Bucket Policy
    バージョニング
    Webサイトホスティング機能
    マルチアップロード
AWS Import/Export

 AWSへのデータお急ぎ便。デバイスをそのままAWSへ郵送
      US Standard, US West (Northern California), EU
      (Ireland), and Asia Pacific (Singapore) Regions
 インターネット経由ではなく、Amazonの物理的な物流網を利用
   デバイスへのデータは暗号化して送付いただく
 大規模データであればコスト効果は高い
 クラウドへのデータマイグレーションの一つの手段
   DirectConnectによる専用線(Coming soon!)
 コンテンツの大量配布やディザスタリカバリには最適
S3サードパーティツール

非常に多くのS3サードパーティツールが利用可能:
  Commercial products
    •   CloudBerry
    •   Zmanda
    •   StorSimple
    •   Riverbed Whitewater
  Opensource products
    • CyberDuck
    • s3cmd
    • s3fs
S3のプライシング

 S3の価格は下記3つによって決まる
  データ保存量
  データトランスファー(AWS→クライアントへのアウトバウンドのみ)
  GETまたはPUT/POST/DELETEリクエスト数
S3の価格
       東京リージョンでの価格
                Storage                         Data Transfer                Requests
     Tier        Normal        RRS            Tier           Price        Type          Price
Frist 1 TB/mo   $0.15/GB    $0.100/GB   All transfer in   $0.00/GB    PUT, COPY,       $0.01 per
                                                                      POST, or LIST    1,000req
Next 49 TB      $0.135/GB   $0.090/GB   First 1 GB out    $0.00/GB    GET and all      $0.01 per
                                                                      other requests   10,000req
Next 450 TB     $0.120/GB   $0.080/GB   <= 10 TB out      $0.201/GB
Next 500 TB     $0.105/GB   $0.070/GB   Next 40 TB out    $0.158/GB
Next 4000 TB    $0.090/GB   $0.060/GB   Next 100 TB       $0.137/GB
                                        out
> 5000 TB       $0.065/GB   $0.044/GB   > 350 TB out      $0.127/GB
S3のよくある利用例

コンテンツの保存と配信
  メディア・エンターテイメントのコンテンツ
  ソフトウェアの配信
大規模データ分析のためのストレージ・データオリジナル
  オンラインストレージ             Amazon
  アプリケーションそのもののストレージ      EMR

バックアップやディザスタリカバリ。低価格かつ安心のテープ
の代替
  サーバのバックアップ
  個人的なバックアップ
   • 複数端末での共有
European Space Agency
データ配信用の衛星写真およびデータをS3に保存
ESRIN: center of the European Space Agency for
the Earth Observation Programs (*)
  地球の衛星写真を生成し保存
  EUの政府団体やNGOなどのデータ配信の元




            (*) Source : http://www.esa.int/esaMI/ESRIN_SITE/index.html
今後のロードマップ

一般的なストレージプロトコルのサポート
可用性、堅牢性、そしてコストのトレードオフ
データの暗号化機能
まとめ
S3は高いスケーラビリティと信頼性、セキュリティをもつ低価
格なWebストレージ
2011 Q2の段階で約4500億オブジェクトの保存。かつこれ
まで1つも無くしていない
誰でも簡単に使える非常にシンプルなインタフェースを持つ
サービス
  HTTPS経由でデータを書いて、読み、削除するだけ
  セキュリティ機能は万全
  お客様のデータはお客様のものなので、全てコントロール可能
ストア出来るオブジェクト数は無制限
顧客はどのリージョンにデータを保存するかを指定可能
参考文献
Amazon S3
  http://aws.amazon.com/jp/s3/
Amazon S3 Getting Started Guide
  http://docs.amazonwebservices.com/AmazonS3/latest/g
   sg/
Amazon S3 Developer Guide
  http://docs.amazonwebservices.com/AmazonS3/latest/d
   ev/
Amazon Web Services Japan blog
  http://aws.typepad.com/aws_japan/
お問い合わせは・・・




  http://aws.amazon.com/jp/
ありがとうございました!

 Questions?

ohtani@amazon.co.jp

S3 -ほぼ週刊AWSマイスターシリーズ第2回-