CloudWatch Database Insights対応のRDSでCPU使用率が高いが、原因となるSQLが分からない。
DB負荷をSQLや待機イベント別に分析したい。
最も適切な機能はどれか。
CloudWatch Database InsightsでDB負荷をSQLや待機イベント別に調査する。旧Performance Insightsのコンソール機能はDatabase Insightsへ移行している。
詳細解説
DBインスタンス設定などの管理操作の監査であり、SQL実行中のDB負荷を分解する分析ではない。
DB負荷をSQLや待機イベントなどのディメンションで絞り込み、負荷の主な寄与要因を調査できる。
OSプロセスの状態は確認できるが、要求されたSQL・待機イベント別のDB負荷分析を代替しない。
CPU負荷は確認できるが、その値だけでは原因のSQLや待機イベントを識別できない。
公式資料で確認する
以下の項目を公式資料の記述と照合して確認します。
CloudWatch Database InsightsとRDSのDB負荷分析に関する公式説明を確認する。
参考にした公式資料
確認できる内容
インフラメトリクスとDB内部ロード分析を使い分けられる。
理解のポイント
- Database Insights
- DBロード
- SQL分析
確認時の注意
- 確認環境: AWS公式SOA-C03試験ガイドとAWS公式ドキュメントの確認
- AWS公式SOA-C03試験ガイドと各サービスの公式ドキュメントを確認する。
基礎のおさらい
CPUメトリクスとDB負荷
CPUUtilizationはホスト側の症状を示す。Database InsightsではDB負荷をSQL・待機イベントなどで分け、どの処理や待ちが負荷に寄与しているかを調査する。CPUが高いという情報だけでSQLを断定しない。
現在の機能名と対応範囲
旧Performance Insights利用者はDatabase Insightsへ移行している。SQL・待機別のDB負荷分析はStandardとAdvancedの両モードが対応するが、エンジン・リージョン・インスタンスクラスの対応は公式資料で確認する。