無限ノック › DEA 練習問題一覧 › 問題
DEAデータオペレーションとサポート

あるデータエンジニアリングチームは、AWS Glue ETLジョブを使用して毎日顧客トランザクションデータをAmazon S3からAmazon Redshiftにロードしています。 データソースの品質が不安定で、必須フィールドのNull値や数値の範囲外データが混入することがあります。 ETLパイプラインの中でデータ品質チェックを自動化し、問題のあるレコードを隔離しながら正常なデータのみをRedshiftにロードする方法として最も適切なものはどれですか?

A
AWS Glue Data QualityにDQDLルールを定義してGlueジョブに統合し、不合格レコードを別のS3パスに自動的に書き出す
✓ 正解
AWS Glue Data QualityはDQDL(Data Quality Definition Language)でNull値チェックや値範囲ルールを宣言的に定義し、Glueジョブ内にインライン統合が可能です。不合格レコードを別のS3パスに書き出すquarantineパターンを標準サポートしており、正常データのみを下流に流す要件に最適です。
B
S3イベント通知でAWS Lambda関数をトリガーしてカスタムバリデーションを実行し、検証済みレコードのみをGlueジョブに引き渡す
AWS Lambda関数によるカスタムバリデーションは実装可能ですが、大量レコードの逐次検証は処理効率が低下します。宣言的なルール管理やquarantineパターンの標準サポートがなく、Glue Data Qualityに比べて構成が複雑になるため適切ではありません。
C
Amazon AthenaでSQL検証クエリをS3のステージングデータに実行し、問題レコードを特定してAWS Step Functionsで隔離フローを起動する
Amazon Athenaはインタラクティブなアドホッククエリサービスです。ETLパイプラインへのインライン組み込みや問題レコードの自動隔離を標準でサポートしておらず、Step Functionsとの組み合わせも構成が複雑になりインパイプライン品質チェックには不適切です。
D
Amazon CloudWatchカスタムメトリクスにデータ品質スコアを記録し、しきい値を下回った際にAmazon SNSで管理者に通知する
Amazon CloudWatchカスタムメトリクスはデータ品質スコアの可視化やアラーム通知には活用できますが、問題レコードを自動的に別パスへ隔離する機能はありません。管理者への通知にとどまるため、自動隔離という要件を満たせません。

解説

選択肢AのAWS Glue Data Qualityは、ETLパイプライン内にデータ品質チェックを組み込むためのマネージドサービスです。DQDL(Data Quality Definition Language)を使用して「Completeness(完全性)」「ColumnValues(値の範囲)」などのルールを宣言的に定義し、Glueジョブに統合することでデータ処理中にリアルタイムで品質評価を実行できます。品質チェックに不合格なレコードを別のS3パスに書き出すquarantineパターンを標準でサポートしており、パイプラインを停止させることなく問題データを自動隔離できます。 選択肢BのAWS Lambdaは個別レコードの検証に使えますが、大量データの逐次処理は非効率で、宣言的なルール管理やquarantineパターンの標準サポートがありません。 選択肢CのAmazon Athenaはアドホック分析ツールであり、GlueジョブへのインラインなETLパイプライン内品質チェックや自動隔離を標準サポートしていません。 選択肢DのAmazon CloudWatchカスタムメトリクスは監視・アラームには活用できますが、問題レコードの自動隔離機能はなく管理者通知にとどまります。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDEAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DEA の問題一覧に戻る