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

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

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

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