web-dev-qa-db-ja.com

DTAは統計を作成することを推奨します

DTAを介してT-SQLクエリを実行したところ、SQLコードファイルの多くのクエリの一部である列の1つで統計を作成することをお勧めします。

私の質問は、統計はパフォーマンスにどのように役立つのですか?

10
anon

統計は、クエリ実行プランが作成されたときに使用されます。

クエリ最適化の統計は、テーブルまたはインデックス付きビューの1つ以上の列の値の分布に関する統計情報を含むオブジェクトです。クエリオプティマイザーはこれらの統計を使用して、クエリ結果のカーディナリティまたは行数を推定します。これらのカーディナリティの見積もりにより、クエリオプティマイザーは高品質のクエリプランを作成できます。たとえば、クエリオプティマイザーは、カーディナリティの見積もりを使用して、リソースを集中的に使用するインデックススキャン演算子の代わりにインデックスシーク演算子を選択し、その結果、クエリのパフォーマンスを向上させることができます。

詳細は http://msdn.Microsoft.com/en-us/library/ms190397.aspx を参照してください。

7
Alex_L

DTAが単一列統計を推奨する場合、統計の自動作成をオフにする必要がありますか?自動作成は、述語で使用されているすべての列の統計を自動的に作成するため、通常はオンのままにしておくことをお勧めします。このデータベースの自動更新のステータスを確認します。これも通常はオンになっているはずです。

DTAの最適な使用法の1つは、欠落している複数列の統計を特定することです。自動作成では作成されません。ただし、単一の列の場合、自動作成がそれらを処理します。

7