2

列ストア インデックスのバッチ実行に影響を与える DB サーバー プロパティを特定できる人はいますか?

4

1 に答える 1

1

尋ねられたように、質問は広くする方法です。バッチの実行に影響を与える多くの「DB サーバー」プロパティがあります。注目すべき明らかなものは、データベースの互換性レベルであり、バッチ実行に対するドキュメントの影響です。

レベル120で:

  • 列ストア インデックスを持つテーブルの並べ替えは行モードです

  • ウィンドウ関数集計は、LAG や LEAD などの行モードで動作します。

  • 行モードで操作される複数の異なる句を含む列ストア テーブルに対するクエリ

  • MAXDOP 1 で実行されているクエリ、または行モードで実行されたシリアル プランで実行されているクエリ

レベル130で

  • 列ストア インデックスを持つテーブルの並べ替えがバッチ モードになりました

  • ウィンドウ集計は、LAG や LEAD などのバッチ モードで動作するようになりました

  • 複数の個別の句を含む列ストア テーブルに対するクエリは、バッチ モードで動作します

  • Maxdop1 またはシリアル プランで実行されているクエリは、バッチ モードで実行されます

これは氷山の一角にすぎません。「DB サーバー プロパティ」の別の例はtraceflag 4199です。これは多くのクエリ オプティマイザーの修正に影響し、一部はバッチ モードに関連しています。使用可能なサーバー メモリは、バッチ モードに影響します。使用可能な CPU の数は、バッチ モードに影響します。データ サイズとカーディナリティの見積もりは、バッチ モードに影響します。

したがって、実際には、質問を具体的なものに絞り込む必要があります。

タイトルの質問である「列ストア スキャンを改善する方法」に関して言えば、費用対効果が最も高いのはセグメントの削除です。セグメント消去についてをお読みください。

ただし、何よりもまず、パフォーマンスの問題をトラブルシューティングする方法を理解してください。SQL Server のパフォーマンスを分析する方法を参照してください。問題の根本原因。別のインデックスではなく、より多くの RAM が必要になる可能性があります。測定。

于 2016-06-09T09:05:43.930 に答える