DP300-MON#21-2
【シナリオ】
あなたは Azure SQL Database General Purpose 8 vCore で運用している EC サイト のクエリ性能 後退 を 調査 します。先週 まで 平均 100ms で 完了 していた 商品 検索クエリが 突然 5000ms 以上 に 後退 しました。Query Store は 有効 化 済みで 過去 30 日分 のデータが 保管 されています。
【ステートメント】
特定した過去の 良い Plan を sp_query_store_force_plan で 強制 することで 即時 性能 回復 できる。
解説
【正解: はい】の理由
EXEC sp_query_store_force_plan @query_id = N, @plan_id = M で 過去の 良い Plan を 強制 すると 次回 実行 時 から この Plan が 適用 され 即時 (数秒〜数分) で性能 回復 できます。Microsoft 推奨の Plan Regression 対処 手法 です。
【不正解の選択肢の場合】
「いいえ」と判定すると Plan Force の効果 を否定することになりますが Force した Plan は 即時 適用 され 数秒 〜 数分 で性能 回復 が 確認 できます。
【シリーズ全体の正解一覧】
| 問 | ステートメント | 正解 |
|---|---|---|
| 問1 | Query Store の「Regressed Queries」ビューで 性能 後退 した クエリ と 過去 の 良い Plan を 特… | はい |
| 問2 | 特定した過去の 良い Plan を sp_query_store_force_plan で 強制 することで 即時 性能 回復 できる。 | はい |
| 問3 | Plan Force だけ で 永続的解決 となり 根本 原因 (統計情報 古い / Index 不足 等) の調査 は 不要 である。 | いいえ |

コメント