Q29 — AWS SAA-C03 第3章

第 29/65 問 | ← 第3章

Q159. ある会社では、アプリケーションが毎時数百個の .csv ファイルを Amazon S3 バケットに配置しています。各ファイルのサイズは 1GB です。ファイルがアップロードされるたびに、同社はそのファイルを Apache Parquet 形式に変換し、出力ファイルを S3 バケットに配置する必要があります。これらの要件を、最も少ない運用オーバーヘッドで満たすソリューションはどれですか?

正解: D. CSV ファイルを Parquet 形式に変換し、出力ファイルを S3 バケットに配置する AWS Glue の抽出・変換・読み込み(ETL)ジョブを作成します。各 S3 PUT イベントに対して AWS Lambda 関数を作成し、その関数から ETL ジョブを呼び出します。

解説

数百個の .csv ファイルを Apache Parquet 形式に変換し、出力ファイルを S3 バケットに配置するという要件を、最も少ない運用オーバーヘッドで満たすには、単一の AWS Glue ETL ジョブを作成してファイル変換と出力先配置を実行するのが最適です。したがって、正解は選択肢 D です。選択肢 A では、各 S3 PUT イベントごとに AWS Lambda 関数を呼び出すため、大量のファイル処理時に運用負荷とコストが大幅に増加します。選択肢 B では、Apache Spark ジョブの実行に追加のインフラストラクチャ管理が必要となり、比較的小規模なファイル群の変換には過剰な複雑さを伴います。選択肢 C では、AWS Glue と Amazon Athena を組み合わせるアプローチにより、不要な複雑さが追加され、本シナリオでは必要ありません。一方、AWS Glue ETL ジョブは、入力データのサイズや変換の複雑さに応じて自動的にスケールアップ/スケールダウン可能であり、各ファイルごとに Lambda を起動する必要がなく、運用オーバーヘッドを最小限に抑えながら、スケーラブルかつコスト効率の高いソリューションを提供します。