列ストア インデックスのバッチ実行に影響を与える DB サーバー プロパティを特定できる人はいますか?
1 に答える
尋ねられたように、質問は広くする方法です。バッチの実行に影響を与える多くの「DB サーバー」プロパティがあります。注目すべき明らかなものは、データベースの互換性レベルであり、バッチ実行に対するドキュメントの影響です。
レベル120で:
列ストア インデックスを持つテーブルの並べ替えは行モードです
ウィンドウ関数集計は、LAG や LEAD などの行モードで動作します。
行モードで操作される複数の異なる句を含む列ストア テーブルに対するクエリ
MAXDOP 1 で実行されているクエリ、または行モードで実行されたシリアル プランで実行されているクエリ
レベル130で
列ストア インデックスを持つテーブルの並べ替えがバッチ モードになりました
ウィンドウ集計は、LAG や LEAD などのバッチ モードで動作するようになりました
複数の個別の句を含む列ストア テーブルに対するクエリは、バッチ モードで動作します
Maxdop1 またはシリアル プランで実行されているクエリは、バッチ モードで実行されます
これは氷山の一角にすぎません。「DB サーバー プロパティ」の別の例はtraceflag 4199です。これは多くのクエリ オプティマイザーの修正に影響し、一部はバッチ モードに関連しています。使用可能なサーバー メモリは、バッチ モードに影響します。使用可能な CPU の数は、バッチ モードに影響します。データ サイズとカーディナリティの見積もりは、バッチ モードに影響します。
したがって、実際には、質問を具体的なものに絞り込む必要があります。
タイトルの質問である「列ストア スキャンを改善する方法」に関して言えば、費用対効果が最も高いのはセグメントの削除です。セグメント消去についてをお読みください。
ただし、何よりもまず、パフォーマンスの問題をトラブルシューティングする方法を理解してください。SQL Server のパフォーマンスを分析する方法を参照してください。問題の根本原因。別のインデックスではなく、より多くの RAM が必要になる可能性があります。測定。