坂の上の雲

ITと出逢った本に関するブログ

キャッシュのクリア

性能測定をする前に、必ず実施するコマンド。 よく忘れるのでメモ。

データバッファキャッシュのクリア

DBCC DROPCLEANBUFFERS 

 SQL Serverはクエリが発行されると、 まずは近場のキャッシュにデータが残っていないか見に行く。

ここにデータがあるかないかで速度が大幅に変わってくるので、 測定を行う前には必ずクリーンにする。

プロシージャキャッシュのクリア

DBCC FREEPROCCACHE

 SQL Serverの習性(機能)として、 実行したクエリのプランをキャッシュに保存する。 同じクエリを再実行すると、 実行プランを再利用しようとするので、 ここでも測定前には消しておく必要がある。

  2017.11.22 追記 Amazon RDSの場合だと、データのキャッシュはクリアできるが、 プロシージャキャッシュはクリアできない模様。

 

絵で見てわかるSQL Serverの内部構造 (DB Magazine Selection)

絵で見てわかるSQL Serverの内部構造 (DB Magazine Selection)