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

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

正解 C問題
分野2:データストアの管理 タスクステートメント2.4:データモデルとスキーマ進化の設計
合格に向けて、もっと深く学習する
豊富な問題と詳細なAWSサービス解説を、24時間無料でお試しいただけます
プレミアム会員機能を無料で試す ❯
問題文と選択肢
ある製薬会社では、臨床試験に関するデータを Amazon S3 のデータレイクに保管し、Amazon SageMaker の処理ジョブで匿名化や集計といった複数段階の加工を行って分析用データセットを作成しています。規制当局の監査に備え、個々の分析用データセットについて「どの入力データが、どの処理ステップを経て生成されたのか」という経路を後からたどって提示できるようにする必要があります。追跡の仕組みを自前で作り込むことは避けたいと考えています。

この要件を最も少ない運用負荷で満たす方法はどれですか。
  • AWS Glue クローラーを定期実行し、データレイク上のテーブル定義とパーティション情報を AWS Glue Data Catalog に最新化する
  • 対象のバケットで Amazon S3 のバージョニングを有効化し、保持されたオブジェクトの世代を突き合わせて生成経路を再構成する
  • Amazon SageMaker ML Lineage Tracking を使用し、処理ステップと入出力アーティファクトの関係をリネージエンティティとして記録し、系統をたどって照会する
  • AWS CloudTrail のデータイベントを有効化し、S3 オブジェクトに対する API 呼び出しの記録を Amazon Athena でクエリする
解説 頻出度★★★★★
この問題は、「入力データと処理ステップの関係を後からたどる(データリネージ) × 監査対応 × 追跡の仕組みを自作しない」の要件で、Amazon SageMaker ML Lineage Tracking を選べるかがポイント

A. AWS Glue クローラーを定期実行し、データレイク上のテーブル定義とパーティション情報を AWS Glue Data Catalog に最新化する

AWS Glue クローラーが AWS Glue Data Catalog に登録するのは、「今そこにあるデータ」のスキーマ・パーティション・格納場所といったメタデータです。
あるデータセットがどの入力から、どの処理を経て生まれたのかという上流・下流の関係は記録されません。
カタログは「データを見つけるため」の仕組みであり、生成経路をたどるための仕組みではないため、本問の監査要件を満たせません。

B. 対象のバケットで Amazon S3 のバージョニングを有効化し、保持されたオブジェクトの世代を突き合わせて生成経路を再構成する

Amazon S3 のバージョニングは、同一キーに対するオブジェクトの世代(上書き前の内容)を保持する機能です。
異なるバケット・異なるキーに出力された加工結果と、その元になった入力データを結び付ける情報は一切持ちません。
「世代を突き合わせて経路を再構成する」には結局、タイムスタンプ照合などの独自の追跡ロジックを作り込むことになり、自前実装を避けたいという要件にも反します。

正解

C. Amazon SageMaker ML Lineage Tracking を使用し、処理ステップと入出力アーティファクトの関係をリネージエンティティとして記録し、系統をたどって照会する

Amazon SageMaker ML Lineage Tracking は、データ準備からモデルデプロイまでのワークフローをアーティファクト・アクション・コンテキストといったリネージエンティティのグラフとして自動的に記録する機能です。
処理ジョブやトレーニングジョブの入力データセットと出力アーティファクトの関係が保持されるため、任意のデータセットを起点に上流をさかのぼり、「どの入力が、どの処理ステップを経て生成されたか」を照会できます。
記録は自動で行われ、系統グラフの照会 API も提供されるため追跡の仕組みを自前で作り込む必要がなく、監査時の証跡提示と再現性の確保という本問の要件をそのまま満たします。

D. AWS CloudTrail のデータイベントを有効化し、S3 オブジェクトに対する API 呼び出しの記録を Amazon Athena でクエリする

AWS CloudTrail のデータイベントは、S3 オブジェクトに対する GetObject / PutObject といった個々の API 呼び出しの記録です。
誰がいつどのオブジェクトを読み書きしたかは分かりますが、「この読み取りとこの書き込みが同じ加工ステップの入出力である」という関係付けは行われません
膨大なイベントを時刻や実行ロールで突き合わせて経路を復元する独自ロジックが必要になり、「仕組みを自前で作り込むことは避けたい」という要件に反します。

これだけ覚える(記憶フック)
系統(リネージ)追跡は SageMaker ML Lineage Tracking。データカタログや監査ログでは代用できない。
正解への思考ルート 問題文から要件を抽出し、選択肢の適否を判断するのがポイントです。
要件 判断ポイント
入力データと処理ステップの関係(生成経路)を後からたどりたい 求めているのはデータリネージそのもの。メタデータ登録や API 監査ログとは目的が異なる
→選択肢(C)が正解
SageMaker 処理ジョブによる複数段階の加工 SageMaker のジョブは入出力アーティファクトがリネージエンティティとして自動記録される
→選択肢(C)が正解
追跡の仕組みを自前で作り込むことは避けたい バージョン照合やログ突き合わせは独自ロジックの作り込みが前提になる
→選択肢(B・D)を消す
規制当局の監査に対して経路を提示する必要がある 必要なのは系統グラフの照会であり、現在のスキーマ定義の最新化ではない
→選択肢(A)を消す
ひっかけポイント
  • AWS Glue Data Catalog は「データの台帳」だが、記録するのは現在の構造と場所だけ。「どこから来たか」は持たない点がリネージとの決定的な違い
  • S3 バージョニングは同じキーの上書き履歴にすぎず、入力バケットと出力バケットをまたいだ関係は追えない
  • CloudTrail は「誰が呼んだか」の監査には強いが、入出力の因果関係は記録されない。監査という言葉に引きずられて選ばせる典型的なひっかけ
  • 「ML」という語から機械学習専用に見えるが、SageMaker 処理ジョブによる前処理・加工も追跡対象。匿名化や集計のパイプラインでも使える
出題バリエーション 同じ知識が本番では条件を変えて出題されます。
問題文がこう変わったら 正解はこう変わる
データの所在とスキーマを分析者が検索できるようにしたい」 AWS Glue クローラー + Data Catalog(あるいは DataZone のカタログ)が正解に。
誰がどのオブジェクトを読み書きしたかを監査証跡として残したい」 CloudTrail データイベント + Athena による分析が正解軸に。
「AWS Glue の ETL ジョブ間の列レベルのリネージを可視化したい」 Amazon DataZone / SageMaker Catalog のデータリネージ機能が正解軸に移る。
「誤って上書き・削除したファイルを元の内容に戻したい S3 バージョニング(+ MFA Delete / オブジェクトロック)が正解に。
「学習に使ったデータとモデルの対応を示してモデルを再現したい」 同じく ML Lineage Tracking(+ SageMaker Model Registry)が問われる。
関連サービスの解説 Amazon SageMaker
Amazon Simple Storage Service (Amazon S3)
リファレンス この問題を解くために必要な知識を扱う公式ドキュメントです。
知識項目 公式ドキュメント
SageMaker によるデータリネージの追跡 Amazon SageMaker ML システム追跡
+ 質問 / コメント
解答・解説に疑問がある場合や、よりよい解説がある場合など、お気軽にコメントください。ただし、短文コメントは表示されません。また、中傷などコメントの内容によっては、会員機能を停止させて頂きます。教え学び合える場になれば嬉しいです。(コメント投稿にはログインが必要です)
正答率 0%
No.20 解説
ある製薬会社では、臨床試験に関するデータを Amazon S3 のデータレイクに保管し、Amazon SageMaker の処理ジョブで匿名化や集計といった複数段階の加工を行って分析用データセットを作成しています。規制当局の監査に備え、個々の分析用データセットについて「どの入力データが、どの処理ステップを経て生成されたのか」という経路を後からたどって提示できるようにする必要があります。追跡の仕組みを自前で作り込むことは避けたいと考えています。

この要件を最も少ない運用負荷で満たす方法はどれですか。
  • AWS Glue クローラーを定期実行し、データレイク上のテーブル定義とパーティション情報を AWS Glue Data Catalog に最新化する
  • 対象のバケットで Amazon S3 のバージョニングを有効化し、保持されたオブジェクトの世代を突き合わせて生成経路を再構成する
  • Amazon SageMaker ML Lineage Tracking を使用し、処理ステップと入出力アーティファクトの関係をリネージエンティティとして記録し、系統をたどって照会する
  • AWS CloudTrail のデータイベントを有効化し、S3 オブジェクトに対する API 呼び出しの記録を Amazon Athena でクエリする

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