Q56 — AWS SAA-C03 第16章
第 56/100 問 | ← 第16章
Q1256. ある会社では、複数のAWSアカウントから出力されるAWS CloudTrailログを、中央管理用のAWSアカウント内のAmazon S3バケットに送信しています。この会社は、CloudTrailログを保存し、いつでもクエリを実行できるようにする必要があります。これらの要件を満たすソリューションはどれですか?
- A. CloudTrailログをAmazon S3バケットに保存します。CloudTrailログを含むAmazon Athenaテーブルを作成し、Athenaからログをクエリします。 ✓
- B. Amazon Neptuneインスタンスを構成してCloudTrailログを管理します。Neptuneを使用してCloudTrailログをクエリします。
- C. CloudTrailを設定して、ログをAmazon DynamoDBテーブルに送信します。Amazon QuickSightでダッシュボードを作成し、テーブル内のログをクエリします。
- D. Amazon Athenaを使用してAthenaノートブックを作成します。CloudTrailを設定して、ログをこのノートブックに送信します。その後、Athenaでログをクエリします。
正解: A. CloudTrailログをAmazon S3バケットに保存します。CloudTrailログを含むAmazon Athenaテーブルを作成し、Athenaからログをクエリします。
解説
正解はAです。CloudTrailログをAmazon S3バケットに保存し、CloudTrailログを含むAmazon Athenaテーブルを作成して、Athenaからログをクエリします。 解説: この会社は、複数のAWSアカウントから生成されたCloudTrailログ(JSON形式のファイル)を中央管理用のS3バケットに保存し、必要に応じて随時クエリ可能な状態にする必要があります。最適なソリューションは以下の条件を満たす必要があります: ・CloudTrailログをS3に保存(CloudTrailのネイティブな保存先)。 ・サーバーレスなクエリサービス(Athena)を活用し、インフラストラクチャ管理なしでログを分析可能。 ・構造化データ(JSON形式)に対するアドホッククエリをサポート。 ■ オプションAが正しい理由: Amazon Athenaは、S3上に格納されたデータをSQLでインタラクティブに分析できるサーバーレスなクエリサービスです。CloudTrailログはデフォルトでS3に保存されるため、Athenaは追加のデータ移動やロードなしで直接クエリできます。また、Athenaは自動的にスケールし、実行したクエリに対してのみ課金されるため、運用負荷が低く、コスト効率も優れています。さらに、CloudTrailログはJSON形式であり、AthenaはJSONパースをネイティブにサポートします。S3バケットを指すAthenaテーブルを作成するだけで、すぐにクエリが可能になります。 ■ 他の選択肢が不適切な理由: B:Amazon Neptuneはグラフデータベースであり、CloudTrailログ(構造化されたJSONデータ)の分析には不向きです。ログ分析という用途に対してグラフDBを運用するのは過剰かつ非効率です。 C:CloudTrailはDynamoDBをログの送信先としてネイティブにサポートしておらず、対応しているのはS3およびCloudWatch Logsのみです。また、DynamoDBはNoSQLデータベースであり、アドホックなログクエリ(例:期間指定での検索、フィルタリングなど)には最適化されていません。QuickSightは可視化ツールであり、ログの直接クエリには使用できません。 D:Athenaはログを「受信」するサービスではなく、あくまでS3に保存済みのデータをクエリするサービスです。CloudTrailはAthenaノートブックにログを送信することはできず、送信先はS3またはCloudWatch Logsのみです。この選択肢はAthenaの役割を誤解しており、技術的に実現不可能です。 結論:オプションAが最も効率的かつコスト効果の高いソリューションです。理由は以下の通りです: ・CloudTrailログは既にS3に保存されているため、追加のストレージ設定は不要。 ・Athenaにより、JSON形式のログをサーバーレスでSQLクエリ可能。 ・NeptuneやDynamoDBのようなインフラストラクチャ構築・管理が不要。 ・「保存」と「クエリ実行」の両方の要件を完全に満たします。 最終的な正解:A