Upgrade to Pro — share decks privately, control downloads, hide ads and more …

S3界の革命児!S3 Batchのご紹介

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

S3界の革命児!S3 Batchのご紹介

Avatar for RyousukeOomae

RyousukeOomae

July 17, 2019
Tweet

More Decks by RyousukeOomae

Other Decks in Technology

Transcript

  1. 2 ⾃⼰紹介 ⼤前諒祐(oomae ryousuke) • クラスメソッド株式会社 • コンサルティング部 • 2019/05

    ⼊社 • 前職 • SIer(3年、主に Web アプリ開発) • 好きな AWS サービス • SQS, Sumerian
  2. 5 S3 Batch とは ① • 昨年の re:Invent 2018 にて発表

    • 2019/04 に Generally Available(GA) • ⼤阪リージョンを除く全リージョンで利⽤可能 https://dev.classmethod.jp/cloud/aws/s3-batch-operations/ https://aws.amazon.com/jp/about-aws/whats-new/2019/04/Amazon-S3-Introduces-S3-Batch-Operations-for-Object-Management/
  3. 8 S3 復習 ① • Amazon Simple Storage Service(S3) •

    AWS が提供するオブジェクトストレージ • 特徴 • 容量無制限 • スケーラブルで安定した性能 • 安価なストレージ • ⾼い耐久性 https://aws.amazon.com/jp/s3/ Amazon Simple Storage Service (S3)
  4. 9 S3 復習 ② • AWS を活⽤する場合、必ずどこかで使われている • オブジェクトデータの保存 •

    バックアップの保管 • ログの格納 • etc... • 格納されるデータ量は⽇々増加 • 何百、何千、何万、、、
  5. 14 S3 Batch とは ① • S3 オブジェクトに対して⼤規模なバッチオペレーションを実⾏可能 • オブジェクトのコピー

    • オブジェクトのタグ付け • ACL(アクセスコントロールリスト)の設定 • Amazon S3 Glacier からのオブジェクト復元 • AWS Lambda 関数の実⾏ ※「バッチ ≠ 定期的に実⾏される処理」ではなく「バッチ = ⼀括処理」
  6. 15 S3 Batch とは ② • ⽤語 • ジョブ •

    S3 Batch の基本単位 • オペレーション • ジョブで実⾏する単⼀のコマンド(=オブジェクトに対する操作) • タスク • ジョブの実⾏単位
  7. 17 S3 Batch やってみる • やりたいこと • 10 個のテキストファイルを持つ「akibaaws-s3-batch-source」バケット •

    空の「akibaaws-s3-batch-cptarget」バケット • S3 Batch を使って空のバケットに 10 ファイルをコピー akibaaws-s3-batch-source akibaaws-s3-batch-cptarget
  8. 20 S3 Batch やってみる – マニフェストの準備 • マニフェスト • S3

    Batch の操作対象となるオブジェクトのリスト • 「Amazon S3 インベントリ」もしくは「独⾃の CSV ファイル」が使⽤可能 • Amazon S3 インベントリはバケットのインベントリレポートを有効にすることで作成される Amazon S3 インベントリ(例)
  9. 22 S3 Batch やってみる - ジョブの作成① • ジョブを作成するリージョン マニフェストが⽰す(オペレーションの実⾏対象) オブジェクトと同じリージョンであること

    ※今回は「東京リージョン」 • マニフェストの選択 S3 インベントリレポートもしくは CSV を指定 ※今回は 「S3 インベントリレポート」
  10. 23 S3 Batch やってみる - ジョブの作成② • オペレーションの選択 オブジェクトに対してどんな操作を⾏うかを指定 ※今回は「PUT

    copy」 選択したオペレーションによって⼊⼒項⽬が変化 ex.「PUT copy」であれば「PUT コピー先バケット」
  11. 24 S3 Batch やってみる - ジョブの作成③ • 追加オプション 「説明・オプション」「ジョブの実⾏優先度」が指定可能 •

    完了レポート 完了レポートを⽣成するかどうか、それに伴う設定を指定 • アクセス許可 ジョブに対してロールを割り当てる必要あり ※AWS 公式ドキュメントに各オペレーション毎に必要となるアク セス許可ポリシーが明記
  12. 26 S3 Batch やってみる - ジョブの実⾏① • 作成後は「確認待ち」 • 「確認して実⾏」で実⾏

    → 成功すると「完了」 ※AWS CLI、AWS SDK、REST API でジョブを作成した場合は確認なしで実⾏可能 (ジョブの準備が出来次第、実⾏される)
  13. 29