無限ノック › SOA 練習問題一覧 › 問題
SOAモニタリング、ロギング、分析、修復、およびパフォーマンスの最適化

あるECサイトがAmazon DynamoDBテーブルを使用しています。最近、特定の時間帯にスロットリングエラーが急増しています。運用チームはどのパーティションキー値が最も多くのリクエストを受けているか(ホットパーティション)を特定し、問題のあるアクセスパターンを継続的に監視したいと考えています。アプリケーションコードの変更なしに最も効率的に分析できるソリューションはどれですか?

A
DynamoDBのCloudWatchメトリクスConsumedReadCapacityUnitsをパーティションキー別のディメンションとしてCloudWatchダッシュボードに表示する。
DynamoDBの標準CloudWatchメトリクスにパーティションキーのディメンションは存在しないため不正解です。
B
DynamoDBストリームを有効化し、Lambdaでストリームレコードを処理してパーティションキー別アクセス回数をカスタムメトリクスとしてCloudWatchに送信する。
DynamoDB Streamsを有効化したうえでLambda関数を新たに開発・運用する必要があり、「アプリケーションコードの変更なしに最も効率的に」という要件に対してContributor Insightsより劣ります。
C
CloudWatch Contributor InsightsをDynamoDBテーブルで有効化し、上位コントリビューター(最もリクエストの多いパーティションキー)のレポートをCloudWatchコンソールで確認する。
✓ 正解
CloudWatch Contributor Insightsはログデータを自動分析してシステムへ最大の影響を与えているエンティティ(上位コントリビューター)を特定するサービスです。DynamoDBとネイティブ統合されており、テーブルまたはGSI(グローバルセカンダリインデックス)に対してコンソールから有効化するだけで、パーティションキーやアイテムキーへのアクセス頻度ランキングをリアルタイムに可視化できます。アプリケーション変更やLambda開発が不要です。
D
AWS CloudTrailでDynamoDBのデータイベントを有効化し、CloudWatch Logs InsightsでパーティションキーごとのAPI呼び出し数を集計するクエリを定期実行する。
CloudTrailのデータイベントログをCloudWatch Logs Insightsで定期クエリする方法ですが、CloudTrailの有効化・ルール設定・クエリ作成の運用負荷が高く、リアルタイム性もContributor Insightsに劣ります。

解説

正解: CloudWatch Contributor InsightsをDynamoDBテーブルで有効化し、上位コントリビューター(最もリクエストの多いパーティションキー)のレポートをCloudWatchコンソールで確認する。 CloudWatch Contributor Insightsはログデータを自動分析してシステムへ最大の影響を与えているエンティティ(上位コントリビューター)を特定するサービスです。DynamoDBとネイティブ統合されており、テーブルまたはGSI(グローバルセカンダリインデックス)に対してコンソールから有効化するだけで、パーティションキーやアイテムキーへのアクセス頻度ランキングをリアルタイムに可視化できます。アプリケーション変更やLambda開発が不要です。 選択肢Aは、DynamoDBの標準CloudWatchメトリクスにパーティションキーのディメンションは存在しないため不正解です。 選択肢Bは、DynamoDB Streamsを有効化したうえでLambda関数を新たに開発・運用する必要があり、「アプリケーションコードの変更なしに最も効率的に」という要件に対してContributor Insightsより劣ります。 選択肢Dは、CloudTrailのデータイベントログをCloudWatch Logs Insightsで定期クエリする方法ですが、CloudTrailの有効化・ルール設定・クエリ作成の運用負荷が高く、リアルタイム性もContributor Insightsに劣ります。

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

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

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