Subscribed unsubscribe Subscribe Subscribe

20150422のAWS Black Belt Techシリーズ(Amazon S3)

AWS クラウドサービス活用資料集 | アマゾン ウェブ サービス(AWS 日本語)

www.slideshare.net

何点かピックアップします。

他のストレージサービスとの違い

Glacier→保管義務があるが、取り出すことはないデータ用
EBS→EC2からマウントできるディスクサービス
EFS→複数のEC2からマウントできる共有ファイルストレージ

※S3は静的リソースやコンテンツ配信やログの保管用と考えていいです
※大量のGETリクエストが発生する場合はCloud Frontを使用します

料金

4円/GB

※安い

バケット

バケット名はグローバルでユニーク
バケットはリージョンに作成される

※バケットはリージョン内です。VPC内にはありません。

S3のData Consistency Model

Eventual Consistency Read Model

※オブジェクトのロックは行われずにタイムスタンプが新しいものが優先されます

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

Multipart Upload機能でオブジェクトをチャンクに分割して並列アップロード

※巨大なオブジェクトのアップロードがタイムアウトした場合はワロエナイ
※各種SDKAWS::S3::MultipartUploadを使用する

アクセス管理

デフォルトは作成したAWSアカウントのみアクセス可能
↓
ユーザーポリシー
バケットポリシー
ACL(バケット単位)
ACL(オブジェクト単位)

暗号化

KMSを使用する

この時間帯だけアクセス許可したい

Pre-Signed Object URLを使う
※GET,PUTのみ

docs.aws.amazon.com

独自ドメイン

Route53のAliasレコードを使ってください

静的サイトホスティング

Cloud Frontを使用してください

CORS

<CORSConfiguration>
 <CORSRule>
   <AllowedOrigin>http://www.example1.com</AllowedOrigin>

   <AllowedMethod>PUT</AllowedMethod>
   <AllowedMethod>POST</AllowedMethod>
   <AllowedMethod>DELETE</AllowedMethod>

   <AllowedHeader>*</AllowedHeader>
 </CORSRule>
 <CORSRule>
   <AllowedOrigin>http://www.example2.com</AllowedOrigin>

   <AllowedMethod>PUT</AllowedMethod>
   <AllowedMethod>POST</AllowedMethod>
   <AllowedMethod>DELETE</AllowedMethod>

   <AllowedHeader>*</AllowedHeader>
 </CORSRule>
 <CORSRule>
   <AllowedOrigin>*</AllowedOrigin>
   <AllowedMethod>GET</AllowedMethod>
 </CORSRule>
</CORSConfiguration>

※バケットごとに設定できます

バージョン管理したい

docs.aws.amazon.com

バケットにイベントが発生したとき

SNS,SQS,Lambdaのいずれかをしようしてください

※それぞれS3への権限を与えてください

データ分析基盤として使う

生のデータはS3でEMRでETLして、S3に保管
分析、可視化にはRedshiftを使用

総論

  • S3の理解に必要なもの
・用途
・バケットとリージョンとVPC
・Cloud Front
・アクセス管理
・ログ解析基盤としてどのように使うか