AWS認定資格 WEB問題集&徹底解説
データエンジニア-アソシエイト
問題文と選択肢
この要件を満たす方法として適切なものはどれですか。(2つ選択してください)
- 必要なライブラリをインストール済みの Amazon EC2 インスタンスを、そのまま EMR クラスターの起動に使用する
- インストールスクリプトを Amazon S3 に配置し、EMR クラスターのカスタムブートストラップアクションとして実行する
- 必要なライブラリを AWS Systems Manager のドキュメントとして登録し、クラスター起動後に Run Command を手動実行してマスターノードにインストールする
- Amazon Linux ベースの Amazon EC2 インスタンス上で必要なライブラリをインストールし、そのインスタンスから作成した AMI を使って EMR クラスターを起動する
- インストールスクリプトを Amazon DynamoDB に保存し、EMR クラスターの起動時に自動的に読み込ませて実行する
A. 必要なライブラリをインストール済みの Amazon EC2 インスタンスを、そのまま EMR クラスターの起動に使用する
Amazon EMR のノードは、クラスター作成時に EMR 自身がプロビジョニングするインスタンスで構成されます。すでに稼働している任意の EC2 インスタンスを、そのままクラスターのノードとして組み込む仕組みはありません。
ライブラリを導入済みのインスタンスを活用したいのであれば、そこから AMI を作成して EMR の起動時に指定する(選択肢 D)必要があります。
「作った EC2 をそのまま使える」と誤認させる誤答です。
B. インストールスクリプトを Amazon S3 に配置し、EMR クラスターのカスタムブートストラップアクションとして実行する
ブートストラップアクションは、Amazon S3 に置いたスクリプトをクラスターの各ノードの起動時(Hadoop などのアプリケーション起動前)に自動実行する EMR の標準機能です。
クラスター定義(コンソール・CLI・API・テンプレート)に含められるため、新しいクラスターを起動するたびに GDAL などのライブラリが全ノードへ自動的に導入され、手作業が完全になくなります。
「起動のたびに同じセットアップを流したい」という本問の要件に対する第一候補です。
C. 必要なライブラリを AWS Systems Manager のドキュメントとして登録し、クラスター起動後に Run Command を手動実行してマスターノードにインストールする
AWS Systems Manager の Run Command でインストール自体は可能ですが、クラスター起動後に手動実行する時点で「手作業をなくす」という要件を満たしていません。
さらにマスターノードだけに導入しても、実際の分散処理を担うコアノード/タスクノードでライブラリが不足し、ジョブが失敗します。
自動化の体裁を装いつつ、実態は現状の手順とほぼ変わらない誤答です。
D. Amazon Linux ベースの Amazon EC2 インスタンス上で必要なライブラリをインストールし、そのインスタンスから作成した AMI を使って EMR クラスターを起動する
Amazon EMR は、Amazon Linux ベースの独自 AMI(カスタム AMI)を指定してクラスターを起動できます。あらかじめ GDAL などを焼き込んだ AMI を用意しておけば、起動直後からライブラリが利用可能です。
ブートストラップアクションと違い起動のたびにインストール処理が走らないため、依存関係が多い場合はクラスターの起動時間短縮にもつながります。
OS レベルの設定やライセンス済みソフトウェアを含めたい場合にも有効な、正解のもう一方です。
E. インストールスクリプトを Amazon DynamoDB に保存し、EMR クラスターの起動時に自動的に読み込ませて実行する
Amazon DynamoDB に置いたスクリプトを EMR が起動時に自動で読み込んで実行する、という機能は存在しません。
ブートストラップアクションのスクリプト配置先として EMR がサポートするのは Amazon S3 です。
「S3 を DynamoDB に置き換えただけ」の、サービスの役割を取り違えさせる誤答です。
EMR の事前セットアップはブートストラップアクションかカスタム AMI。起動後の手作業は答えにならない。
正解への思考ルート
問題文から要件を抽出し、選択肢の適否を判断するのがポイントです。| 要件 | 判断ポイント |
|---|---|
| クラスター起動のたびの手作業をなくしたい | クラスターの起動プロセスに組み込める仕組みだけが答えになる。起動後の手動操作は要件を満たさない →選択肢(C)を消す |
| S3 に置いたスクリプトをノード起動時に自動実行したい | ブートストラップアクションが該当。全ノードに対しアプリケーション起動前に実行される →選択肢(B)が正解 |
| ライブラリを事前に環境へ焼き込んでおきたい | Amazon Linux ベースのカスタム AMI を EMR クラスター起動時に指定できる →選択肢(D)が正解 |
| EMR のノードは誰が用意するか/スクリプトはどこに置くか | ノードは EMR がプロビジョニングし、既存 EC2 の転用は不可。スクリプト配置先は S3 で、DynamoDB から自動実行する機能はない →選択肢(A・E)を消す |
ひっかけポイント
- 「マスターノードにだけ入れる」発想(選択肢 C)に注意。分散処理ではコアノード/タスクノード側にもライブラリが必要
- Run Command は自動化の道具だが、選択肢 C は「手動実行」と明記されている。手段の名前ではなく実行方法を読む
- ブートストラップアクションはアプリケーション起動前に走る。クラスター起動後に処理を流したい場合はステップ (Step) を使う、という使い分けが問われる
- カスタム AMI はAmazon Linux ベースであることが前提。任意の OS イメージを持ち込める話ではない
出題バリエーション
同じ知識が本番では条件を変えて出題されます。| 問題文がこう変わったら | 正解はこう変わる |
|---|---|
| 「クラスターの起動時間そのものを短縮したい(依存ライブラリが大量)」 | 毎回インストールが走るブートストラップよりカスタム AMI が優位、という比較が論点に。 |
| 「クラスター起動後に ETL 処理を順番に実行したい」 | EMR ステップ (Step) や Step Functions によるオーケストレーションが正解軸に。 |
| 「ジョブごとに異なる Python ライブラリを持ち込みたい」 | EMR Serverless の仮想環境パッケージングや EMR on EKS のカスタムイメージが正解軸に。 |
| 「同じ構成のクラスターをいつでも再現したい」 | AWS CloudFormation / EMR のクローン機能によるクラスター定義のコード化が論点に。 |
| 「Apache Spark 用の追加 JAR をジョブ実行時にだけ読み込ませたい」 | spark-submit の --jars / --packages 指定や設定分類 (configuration classification) が正解軸に。 |
この要件を満たす方法として適切なものはどれですか。(2つ選択してください)
- 必要なライブラリをインストール済みの Amazon EC2 インスタンスを、そのまま EMR クラスターの起動に使用する
- インストールスクリプトを Amazon S3 に配置し、EMR クラスターのカスタムブートストラップアクションとして実行する
- 必要なライブラリを AWS Systems Manager のドキュメントとして登録し、クラスター起動後に Run Command を手動実行してマスターノードにインストールする
- Amazon Linux ベースの Amazon EC2 インスタンス上で必要なライブラリをインストールし、そのインスタンスから作成した AMI を使って EMR クラスターを起動する
- インストールスクリプトを Amazon DynamoDB に保存し、EMR クラスターの起動時に自動的に読み込ませて実行する
次の問題前の問題
会員機能
お役立ち情報
- プレミアム会員のご紹介
- 「徹底解説」のご紹介
- 「模擬試験」のご紹介
- 収録問題と試験ガイドの対応
- 会員機能のご紹介
- おすすめの勉強方法
- AWSサービスの解説
- AWS認定資格の種類・対象者・受験料・合格ライン
- スマホのホーム画面に登録する方法
姉妹サイト
- CLF:AWS 認定クラウドプラクティショナー
- SAA:AWS 認定ソリューションアーキテクト-アソシエイト
- AIF:AWS 認定AIプラクティショナー
- SOA:AWS 認定CloudOpsエンジニア-アソシエイト
- DVA:AWS 認定デベロッパー-アソシエイト
- DEA:AWS 認定データエンジニア-アソシエイト
- MLA:AWS 認定機械学習エンジニア-アソシエイト
- SAP:AWS 認定ソリューションアーキテクト-プロフェッショナル
- DOP:AWS 認定DevOpsエンジニア-プロフェッショナル
- AIP:AWS 認定生成AIデベロッパー-プロフェッショナル
- SCS:AWS 認定セキュリティ-専門知識
- AZ-900:Microsoft Azure Fundamentals
- AI-900:Microsoft Azure AI Fundamentals