Q47 — AWS SAA-C03 第4章
第 47/105 問 | ← 第4章
Q242. ある会社は、毎日同じ時刻に実行される AWS Glue の抽出・変換・ロード(ETL)ジョブを運用しています。このジョブでは、Amazon S3 バケット内の XML 形式のデータを処理します。新しいデータは毎日その S3 バケットに追加されます。ソリューションズアーキテクトが確認したところ、AWS Glue は各実行時にすべてのデータ(既存の旧データを含む)を処理していました。AWS Glue が過去のデータを再処理しないようにするには、ソリューションズアーキテクトは何を行うべきでしょうか?
- A. ジョブを編集して、ジョブブックマークを使用するようにします。 ✓
- B. ジョブを編集して、データ処理後にデータを削除するようにします。
- C. ジョブを編集し、NumberOfWorkers フィールドを 1 に設定します。
- D. FindMatches 機械学習(ML)トランスフォームを使用します。
正解: A. ジョブを編集して、ジョブブックマークを使用するようにします。
解説
AWS Glue が過去のデータを再処理しないようにするには、ジョブを編集してジョブブックマークを有効にする必要があります。したがって、正解は選択肢 A です。 デフォルトでは、AWS Glue はジョブ実行のたびに入力ロケーションにあるすべてのデータを処理します。これにより、不要な処理オーバーヘッドやコスト増加が発生する可能性があります。ジョブブックマークを活用すると、AWS Glue は前回処理した最後のレコードを記憶し、次回の実行時にそのレコードから処理を再開できます。これにより、前回実行以降に追加された新規データのみを対象に処理することが可能になります。 選択肢 B は、処理後にデータを削除するという方法を提案しています。この手法は一見有効に思えますが、データが他の目的で保持される必要がある場合や、法的・規制上の要件(例:データ保存期間の義務)がある場合には適しません。 選択肢 C は、NumberOfWorkers を 1 に設定するという方法を提案しています。これは並列度を下げるものであり、旧データの再処理を防ぐ目的には合致しません。ジョブブックマークの利用こそが、この課題を正確かつ効果的に解決する手段です。 選択肢 D は、FindMatches 機械学習(ML)トランスフォームの利用を提案しています。これはデータ内の類似レコードを検出するための機能であり、旧データの再処理防止という課題には関係ありません。 AWS Glue ETL ジョブにジョブブックマークを導入することで、各実行時に新規データのみを処理できるようになり、処理オーバーヘッドとコストを最小限に抑えつつ、ジョブの正確な動作を保証できます。