最近、いくつかの興味深いインデックスの問題がある一連のデータベースの保守に携わってきました。私を最も悪化させるものの1つは、開発、テスト、モデル、および生産マシン間のインデックスの違いです。違いによりクエリのチューニングが難しくなるため、クエリの同期は私の最初のプロジェクトの1つです。
テスト環境とモデル環境を比較したところ、モデル環境のほとんどのインデックスがSTATISTICS_NORECOMPUTE
設定されているのON
に対し、テスト環境のインデックスはそうではないことに気付きました。すべての環境で、すべてのデータベースの統計を更新する夜間ジョブがあります。
私はこれまでに対処したことがないSTATISTICS_NORECOMPUTE
ので、ここに私の質問があります。この設定を扱う際のベストプラクティスはありますか?1日の終わりに統計の更新を行っている場合STATISTICS_NORECOMPUTE
、すべての環境ですべてのインデックスをオンにするのが最善ですか?それとも、正当な理由がないのですか?
編集:私はここでこの件に関するキンバリートリップのブログの1つを見つけましたが、それSTATISTICS_NORECOMPUTE
はせいぜい控えめに使用する必要があることを示唆しているようです。しかし、私はまだそれをグローバルにオフにすることを心配しています。誰かがこれを試しましたか、そして彼らは何を経験しましたか?