-1

大量のデータ挿入または同様のクエリで特別にクエリを実行するパフォーマンスを監視します。

例として:

約数百万のレコードに対して非常に単純なクエリを選択して挿入する場合、どのようなオプションがありますか

CountDown パフォーマンス タイマーを使用して、それぞれの数千のレコードにかかる時間を確認するオプションはありますか?

コードベースのプラクティスまたはツールベースのプラクティス

何を指示してるんですか ?

これらに関する情報をいただければ幸いです。

4

2 に答える 2

2

クエリにフィードバックを提供するメカニズムを構築しない限り、1k レコードごとにその場で挿入するのにかかる時間を分析することはおそらくできないでしょう。つまり、ループを実行して 1k レコードのバッチで実行するか、別のスレッドから select ステートメントを定期的に実行してテーブルのカウントを実行し、違いを確認することができますが、その方法での私の試みは常に完全に機能するとは限りません。

SQL Server に付属しているプロファイラーよりも優れた (私の意見では) プロファイラーが必要な場合は、http: //anjlab.com/en/projects/opensource/sqlprofilerから無料で入手できます。このプロファイラーの優れた点は、Microsoft のプロファイラーではできないことですが、結果がまだ入っているときに実際に結果を並べ替えることができることです。私は前の仕事で、データをキャッシュしておらず、同じクエリを不必要に何度も実行していたアプリ内の場所を特定するために、これを頻繁に使用しました。

于 2012-07-18T19:47:18.700 に答える
1

SQL Server プロファイラーは、実行中の個々の SQL ステートメントのリソース消費に関する詳細な内訳を提供します。SSMS の [Show Execution Plan] オプションは、個々の SQL ステートメントを分割し、SQL Server がステートメントを最適化するためにどのように選択しているかに関する内部の詳細を表示します。

私があなたのことを正しく理解していれば (そして、私が理解しているかどうかはわかりませんが)、一般的なパフォーマンスを追跡するために Profiler を使用することをお勧めします。

于 2012-07-18T19:46:49.913 に答える