Q22 — AWS SAA-C03 第17章

第 22/89 問 | ← 第17章

Q1322. ある企業は、数百万台の接続デバイスをセキュリティ脅威に対してスキャンするアプリケーションを保有しており、そのスキャンログを Amazon S3 バケットに送信しています。毎週合計 70 GB のデータが生成され、企業は歴史的レポート作成のために 3 年分のデータを保存する必要があります。また、この Amazon S3 上のデータを処理・集計・エンリッチメントし、複雑な分析クエリおよび結合(JOIN)を最短時間で実行しなければなりません。集計後のデータセットは Amazon QuickSight のダッシュボードで可視化されます。これらの要件を満たすために、ソリューションアーキテクトは何を推奨すべきでしょうか?

正解: A. AWS Glue で ETL ジョブを作成・実行し、Amazon S3 からデータを処理して Amazon Redshift にロードします。集計クエリは Amazon Redshift 上で実行します。

解説

毎週 70 GB のセキュリティスキャンログ(3 年間保存=約 10 TB)を処理・集計・エンリッチメントし、複雑な分析クエリおよび結合(JOIN)を最短時間で実行するという要件を満たすには、以下の選択肢が最も適しています。 正解:A.AWS Glue で ETL ジョブを作成・実行し、Amazon S3 からデータを処理して Amazon Redshift にロードし、集計クエリを Amazon Redshift 上で実行する。 ■ なぜこれが最適なソリューションなのか? 1. Amazon Redshift は複雑な分析クエリに最適化されています。 Redshift は、高速な集計(GROUP BY)、結合(JOIN)、ウィンドウ関数などに特化した、列指向・ペタバイト規模のデータウェアハウスです。多数のノードにクエリを分散実行する MPP(Massively Parallel Processing)アーキテクチャにより、実行時間を大幅に短縮できます。 → 適している用途:大規模な集計処理、3 年分の履歴データ(約 10 TB)の分析、Amazon QuickSight とのネイティブ連携によるダッシュボード表示。 2. AWS Glue は構造化/半構造化データ向けの効率的な ETL を提供します。 Glue はサーバーレスの ETL サービスで、以下を実現します: ・S3 上のデータをクロールしてスキーマを自動推定(またはカスタムスキーマ指定) ・フィルタリング、エンリッチメント、正規化などの変換処理 ・Redshift などへのデータロード → 適している用途:S3 から Redshift へのデータパイプラインの自動化、日次/週次の増分ロード対応。 3. Amazon QuickSight と Redshift の統合性 QuickSight は Redshift とネイティブ連携しており、追加のデータ移動なしに高速なダッシュボード表示が可能です。Redshift の列指向ストレージおよびマテリアライズドビューにより、可視化向けクエリのパフォーマンスが向上します。 ■ 他の選択肢が不適切な理由 B.Lambda + DynamoDB を用いた集計 DynamoDB は NoSQL データベースであり、分析クエリには非最適です。 → 制限点:ネイティブの JOIN や GROUP BY 機能なし、スキャン操作のコストが高額、10 TB 規模の履歴データには不向き。 C.Lambda + Aurora MySQL を用いた集計 Aurora MySQL はトランザクション処理(OLTP)向けであり、大規模分析には設計されていません。 → 制限点:10 TB データに対する複雑な JOIN/集計のパフォーマンスが劣る、分析ワークロードでは Redshift よりコスト高、列指向ストレージ非採用(スキャン性能が低い)。 D.AWS Glue + Athena を用いた S3 直接クエリ 部分的には妥当ですが、以下の点で最適ではありません: → 繰り返し実行される複雑な集計クエリでは、Athena が毎回 S3 の生データをスキャンするため、コストと遅延が増大します。 → Redshift のように結果をキャッシュできるマテリアライズドビューが存在しません。 → 適している用途:偶発的なアドホッククエリ。ただし、日常的/定期的な集計やダッシュボード表示には Redshift の方が優れています。 ■ このシナリオにおける最適アーキテクチャ ・取り込み:スキャンログは Amazon S3(低コスト・高スケーラビリティのオブジェクトストレージ)に保存。 ・ETL:AWS Glue がデータを処理・変換(例:JSON 解析、フィルタリング、エンリッチメント)。 ・ロード:Glue が変換済みデータを Amazon Redshift にロード(分析に最適化)。 ・クエリ・可視化:Redshift で集計クエリを実行し、QuickSight でダッシュボードを構築。 ■ コストとパフォーマンスの観点 ・Redshift は、DynamoDB/Aurora と比較して大規模分析ワークロードにおいてコスト効率が高く、パフォーマンスも優れます。 ・Athena は偶発的なクエリには安価ですが、10 TB 規模のデータに対して頻繁にスキャンを実行するとコストが急増します。 ・Glue ETL はサーバーレスであるため、使用量に比例した課金となり、柔軟かつ経済的です。 ■ 結論 3 年分のセキュリティログに対して高速かつスケーラブルな分析を実現するには、選択肢 A(AWS Glue + Amazon Redshift)が最適です。他の選択肢は、分析パフォーマンス(B、C)または反復クエリ時のコスト・遅延(D)の点で不十分です。