UpdateBatchSizeを設定するときに何を見て
-
09-09-2019 - |
質問
私は、行(10,000)の多くを持つ2つのDataTableをマージされた.NETアプリケーションを持っています。 DataAdapter.Updateコマンドを使用している場合、SQLテーブルに実行するために、更新/挿入の数が多いのは良いチャンスがあります。
は、今、私は200 VSに設定するアダプタUpdateBatchSizeプロパティを持っている、それはパフォーマンスが低下する可能性があるため、高すぎると、この値を設定することに対して警告しています。落とし穴、[OK]をクリックします。
賢明なパフォーマンス、私は、このプロパティを設定するときのために何を見てする必要がありますか?何があって、行の更新多くは時間の束を負いません。私のマシン(またはDBサーバー上の)上でそれを実行すると、その多くの時間を取るために-seem-が、私は、システムが他の項目をやってダウンロードされたときに確信していない、これが問題になることがあります。
私はプロファイラで検索できるものはありますか?標準のプロファイリングを行って、所要時間は通常0ですが、たまには(全体的な多分20回)1または2に当たり、約20,000の更新プログラムのうち、3-4は20 CPUが1-2のヒット夫婦以外の0であるヒットです。 10程度に上がる2つのレコードがありますが常に2であり、書き込みは常に0で読み込みます。
解決
最初の事はあなたがコンパイルすることなく、種々の値をテストすることができますので、私は、この設定は設定可能作ると思います。次の事はあなたのバッチ全体の所要時間を監視することです。パフォーマンスでご満足している場合は、それを変更しないでください。パフォーマンスであなたの不幸場合は、それがどのように動作するかを確認するために、設定を試してみて、増加または減少します。