AI SQLチューニングガイドの活用
SQL詳細画面ではクエリの実行統計と計画がすでに表示されていますが、画面を初めて見るユーザーやDBAでない運用者にとっては、「どこが問題なのか」 を判断するのは難しいものです。WhaTapの AI SQLチューニングガイド は、現在のクエリ状態を自動的に分析し、具体的な性能改善方向 を提示します。DBAでなくても非効率なクエリの原因と対応策を素早く得られます。
事前準備
- プロジェクトの メンバー 以上の権限
- 分析するクエリが収集されている(リアルタイム監視・Top SQL・クエリ一覧から確認可能)
利用方法
経路: SQL詳細 画面 > 右下の チューニングガイド アイコン
- リアルタイム監視・Top SQL・クエリ一覧から分析するクエリを選択してください。
- SQL詳細画面に進んでください(左: SQL本文 / 右: 実行統計・指標)。
- 右下の チューニングガイド アイコンをクリックしてください。
- AIがクエリと実行計画を分析し、5つの領域で結果を提示します。
- 主要な問題と最適化推奨事項 セクションから確認し、予想短縮率で優先度を判断してください。
分析結果の構造
AIがクエリと実行計画を分析し、以下の5つの領域で結果を提示します。
表 | AI分析結果の構造
| 領域 | 内容 |
|---|---|
| クエリとプランのサマリー | クエリの目的・実行回数・累計実行時間・DB全体の負荷比率 |
| 実行計画の非効率な箇所 | テーブルの全件スキャン、非効率な条件処理、インデックス未使用などを自動検出 |
| 性能分析 | 性能スコア+CPU・ディスク・キャッシュ・待機時間などのリソース使用量に基づくボトルネック可視化 |
| 主要な問題と最適化推奨事項 | 条件文の改善、インデックス追加、実行計画の見直しなど具体的なチューニング方向 |
| 参考情報 | 改善案を適用した場合の予想実行時間と短縮率 |
予想実行時間・短縮率 まで提示されるため、チューニングの効果を適用前に見積もれます。
使うべき場面
DBボトルネックの原因把握(最も有用)
DBリアルタイム監視シナリオ で特定した上位負荷クエリをそのまま分析できます。
- リアルタイム監視・Top SQLから疑わしいクエリを選択してください。
- SQL詳細画面に進んでください。
- 右下の チューニングガイド アイコンをクリックしてください。
- AIが提示する 実行計画の非効率な箇所 と 推奨事項 を確認してください。
- 改善案の予想短縮率を見てチューニングの優先度を決定してください。
リリース検証時
デプロイ後にDB負荷が跳ねた時点のクエリをAIで分析すると、回帰の原因が 新しく追加されたクエリ自体の問題 なのか、実行計画の変化 なのかを素早く区別できます。リリース検証シナリオ の ② 急性回帰検出で活用してください。
定期的なDB性能レビュー
四半期ごとに上位N件のクエリでAIチューニングガイドを実行し、Medium/Lowレベルの改善機会をバックログとして確保してください。性能レポーティングシナリオ の振り返りに組み込めます。
AI分析の限界を理解して使う
AIの出力は 一次仮説 であり、最終結論 ではありません。次のように活用してください。
- AIが提案したインデックスや条件文の改善は、ステージングで適用・検証 してから本番に反映する
- 予想実行時間・短縮率は 統計ベースの推定 のため、実環境では差が出る可能性がある
- ビジネス的な文脈(データ分布の変化、トラフィックイベント)はAIには見えない — DBAと突き合わせ確認を推奨
- 繰り返し分析しても結果が一貫しないことがある(LLM特性) — 実際の実行時間・負荷指標で最終検証する
関連するAI分析機能
表 | 関連するAI分析機能
| 機能 | 使う場面 |
|---|---|
| AIアクティブスタック分析 | トランザクショントレースでボトルネック区間を特定 — AIアクティブスタック分析 |
| AIスレッドダンプ分析 | インスタンスのスレッドのブロッキング・ロック競合を解釈 — AIスレッドダンプ分析 |
| AI SQLチューニングガイド(本ガイド) | 非効率なクエリの特定+実行計画に基づく改善提案 |
| AIブラウザエラー・スタック分析 | フロントエンドエラーのコードレベルの原因を提示 — RUM と補完 |
| WhaTap AI チャットボット / MCP | 自然言語でWhaTapデータ全般を問い合わせ — MCP連携 |
次のステップ
- DBリアルタイム監視の全体フロー → DBリアルタイム監視
- 上位負荷クエリの追跡 → データベースモニタリング
- リリース回帰検出のフロー → リリース検証シナリオ
- 自然言語でDB指標を問い合わせる → MCP連携