コース: Microsoft SQL Server:パフォーマンスチューニング
無料トライアルでこのコースを視聴する
今すぐ登録して、25,300件以上登録されている、業界エキスパート指導のコースを受講しましょう。
計測方法の使い分け
本レッスンではデュレーションや CPU の 計測方法の使い分けについて説明します。 まずリリース前は set statistics time on を 使うようにしましょう。 こちらは SSMS での検証時に 手動で実行するクエリを計測する際に 重宝します。 続いてリリース後は sys.dm_exec_query_stats を使って 計測するようにしましょう。 こちらはアプリケーションが実行している クエリを計測する際に重宝します。 ではアプリケーションから実行される クエリの計測になぜ sys.dm_exec_query_stats を使うのかについて説明します。 プロダクション環境では、 様々なパラメーターで クエリが実行されています。 またパラメーターによって 実行時間が大幅に変化する ケースもあります。 これはどういうことかというと リリース前の手動での検証時は col1=1 という where 句で1秒だったクエリが リリース後は実は col1=2 というパラメーターで 指定されることが多く、 その場合だと 10 秒かかるとします。 この場合リリース前の手動検証時に 計測した1秒という実行時間は 本番環境では 妥当ではない数字であることが わかると思います。 ここで sys.dm_exec_query_stats を使えば プロダクション環境で指定される 様々なパラメーターによって実行された 実際のデュレーションや CPU を 取得することができます。 したがってプロダクション環境での チューニングの評価方法として 妥当であるといえます。 次に計測の際の 注意点を説明していきます。 まずデュレーションと CPU は 大きく違う場合もある ということを頭に入れておいてください。 まずデュレーションの方が CPU より大幅に大きい場合、 これはロック競合などで待たされる時間が 多いと、この関係になります。 次にデュレーションよりも CPU の方が非常に大きい場合、 これは並列クエリの場合は CPU 時間の方が 大きくなることがあります。 こういった関係性があるため デュレーション、CPU は 個別に把握することが大事です。 2つ目の注意点として 評価の指標に コスト値は使わないようにしましょう。 10個プランでコストという値を…
エクササイズファイルを使って実践してみましょう。
インストラクターがコースで使用しているファイルはダウンロードできます。見て、聞いて、練習することで、理解度を深めることができます。