AWS認定資格 WEB問題集&徹底解説

データエンジニア-アソシエイト

正解 D問題
分野1:データの取り込みと変換 タスクステートメント1.2:データの変換と処理
合格に向けて、もっと深く学習する
豊富な問題と詳細なAWSサービス解説を、24時間無料でお試しいただけます
プレミアム会員機能を無料で試す ❯
問題文と選択肢
あるマーケティング分析会社では、開発・検証・リリース前検証の3つの環境それぞれで、データクレンジング用のAWS Glueジョブを毎日実行しています。これらのジョブは毎日実行される必要がありますが、開始時刻や終了時刻に関する制約は一切ありません。同社はこれらのジョブにかかる費用を削減する方法を検討しています。

最も推奨される対応はどれですか。
  • 実行クラスを STANDARD に設定したまま、専用リソースを確保して安定した実行時間を優先する
  • ジョブのワーカータイプ設定でスポットインスタンスを明示的に指定する
  • ジョブの実行スケジュールを電力需要の低い深夜のオフピーク時間帯に変更する
  • Glue ジョブの実行クラスを FLEX に設定する
解説 頻出度★★★★
この問題は、「毎日実行するが開始・終了時刻に制約がない × 開発/検証系のジョブ × コスト削減」の要件で、AWS Glue の実行クラス FLEX(空きキャパシティを使う低単価の実行方式)を選べるかがポイント

A. 実行クラスを STANDARD に設定したまま、専用リソースを確保して安定した実行時間を優先する

実行クラス STANDARD は専用のキャパシティを確保して即座にジョブを開始し、実行時間の予測可能性を優先する方式で、料金単価も FLEX より高い。
本問は「毎日実行できればよく、開始・終了時刻の制約は一切ない」という前提のため、予測可能性のために高い単価を払い続ける理由がない
現状維持であり、コスト削減という要件をまったく満たさない。

B. ジョブのワーカータイプ設定でスポットインスタンスを明示的に指定する

AWS Glue はサーバーレスの ETL サービスで、利用者がジョブの基盤に使うインスタンスの購入オプション(オンデマンド/スポット)を指定することはできない。
ワーカータイプ(G.1X、G.2X など)で指定できるのは1 ワーカーあたりのメモリ・vCPU 規模であり、スポットインスタンスの明示指定という設定項目自体が存在しない。
「空きキャパシティを安く使う」という発想を Glue のマネージドな形で提供しているのが FLEX 実行クラスであり、選択肢 D に置き換えられる。

C. ジョブの実行スケジュールを電力需要の低い深夜のオフピーク時間帯に変更する

AWS Glue の料金は使用した DPU 時間に対する従量課金で、実行する時間帯によって単価が変わる仕組みは存在しない。
電力需要のオフピークで安くなるのはオンプレミスのデータセンター運用の発想であり、AWS のマネージドサービスの料金体系には当てはまらない。
スケジュールをずらしても請求額は 1 円も変わらないため、コスト削減策にならない。

正解

D. Glue ジョブの実行クラスを FLEX に設定する

実行クラスを FLEX にすると、ジョブはAWS の空きキャパシティ(非専有リソース)上で実行され、STANDARD より低い DPU 単価が適用される。
その代わり実行の開始が遅れたり、リソースの回収により中断・リトライが発生し得るため、完了時刻に SLA のある本番の時間制約付きジョブには向かない
本問は開発・検証・リリース前検証という非本番環境のクレンジングジョブで、しかも「開始時刻や終了時刻に関する制約は一切ない」と明記されており、FLEX の想定ユースケースにそのまま合致する。設定を切り替えるだけで実現でき、最も推奨される対応。

これだけ覚える(記憶フック)
急がないジョブは Glue の実行クラスを FLEX に。「時刻の制約なし」はほぼ FLEX を指す合図。
正解への思考ルート 問題文から要件を抽出し、選択肢の適否を判断するのがポイントです。
要件 判断ポイント
開始時刻・終了時刻に関する制約が一切ない 完了時刻を保証しない代わりに単価が安い FLEX 実行クラスを選べる条件。裏を返せば STANDARD の予測可能性に対価を払う必要がない
→選択肢(D)が正解、選択肢(A)を消す
対象は開発・検証・リリース前検証の 3 環境(非本番) 中断・リトライが許容できる非クリティカルなワークロードであり、FLEX の想定ユースケースに合致する
→選択肢(D)が正解
ジョブにかかる費用を削減したい Glue の料金はDPU 時間の従量課金で時間帯による単価差がない。スケジュール変更では請求は変わらない
→選択肢(C)を消す
AWS Glue はサーバーレスの ETL サービス 基盤インスタンスは AWS が管理し、ワーカータイプで指定できるのは規模だけ。スポットインスタンスを明示指定する設定は存在しない
→選択肢(B)を消す
ひっかけポイント
  • 選択肢 B の「スポットインスタンスを指定」は EC2 や EMR の常識を Glue に持ち込ませる罠。Glue で空きキャパシティを安く使う手段は FLEX 実行クラスであり、購入オプションの指定ではない
  • 「オフピーク時間帯に移す」はオンプレミス的なコスト削減発想。AWS のマネージドサービスの料金に時間帯別単価はない(例外的に Spot 価格は変動するが、それは Glue の設定項目ではない)
  • 選択肢 A は「安定した実行時間」という一見よさそうな価値を掲げるが、問題文が「時刻の制約は一切ない」と明言している時点で不要な価値であり、コスト削減の要件に反する
  • FLEX は安い代わりに開始の遅延・中断が起こり得る。「毎日決まった時刻までに完了させたい」と条件が付いた瞬間に FLEX は選べなくなる点をセットで覚える
出題バリエーション 同じ知識が本番では条件を変えて出題されます。
問題文がこう変わったら 正解はこう変わる
「ジョブは毎朝 8 時までに必ず完了させる必要がある」 FLEX は使えず、STANDARD 実行クラスのまま自動スケーリングやワーカータイプ見直しでの最適化が正解軸に。
データ量の変動が大きく、ワーカー数の設定が難しい」 AWS Glue の自動スケーリング(Auto Scaling)が正解に浮上する。
「処理は小規模で Spark が不要、単純な Python スクリプトで足りる」 Python シェルジョブ(0.0625 / 1 DPU)でのコスト削減が問われる。
Hadoop エコシステムを自前で調整しつつ安く回したい」 Amazon EMR + スポットインスタンス(タスクノード)の構成が正解軸に。
関連サービスの解説 AWS Glue
リファレンス この問題を解くために必要な知識を扱う公式ドキュメントです。
知識項目 公式ドキュメント
AWS Glue のジョブ実行クラス(FLEX と STANDARD) AWS Glue の FLEX 実行クラス
+ 質問 / コメント
解答・解説に疑問がある場合や、よりよい解説がある場合など、お気軽にコメントください。ただし、短文コメントは表示されません。また、中傷などコメントの内容によっては、会員機能を停止させて頂きます。教え学び合える場になれば嬉しいです。(コメント投稿にはログインが必要です)
正答率 0%
No.8 解説
あるマーケティング分析会社では、開発・検証・リリース前検証の3つの環境それぞれで、データクレンジング用のAWS Glueジョブを毎日実行しています。これらのジョブは毎日実行される必要がありますが、開始時刻や終了時刻に関する制約は一切ありません。同社はこれらのジョブにかかる費用を削減する方法を検討しています。

最も推奨される対応はどれですか。
  • 実行クラスを STANDARD に設定したまま、専用リソースを確保して安定した実行時間を優先する
  • ジョブのワーカータイプ設定でスポットインスタンスを明示的に指定する
  • ジョブの実行スケジュールを電力需要の低い深夜のオフピーク時間帯に変更する
  • Glue ジョブの実行クラスを FLEX に設定する

(会員限定)当問題の評価をお願いします。改善に活用します。