1

最適化しようとしているストアド プロシージャがあります。スクリプトの最初に追加した実行にどれくらいの時間が費やされたかを知るために:

use MyDatabase
go
CHECKPOINT; 
GO 
DBCC DROPCLEANBUFFERS; 
GO

2 回の実行の間に、クエリの実行時間が減少していることがわかります。スクリプトの実行を高速化できるのはキャッシュだけだと思っていましたが、SQL Server にそのトリックを実行する他のメカニズムはありますか?

ありがとう、

4

1 に答える 1

2

ストアド プロシージャを初めて実行すると、クエリ プランが計算されてコンパイルされます。これには通常 20 ミリ秒かかりますが、長い手順の場合はもう少し長くなる可能性があります。

クエリを 1 回実行する前checkpoint; dbcc dropcleanbuffers;に、プランをキャッシュする必要があります。

于 2012-06-27T07:47:57.930 に答える