观察SQL运行查询

时间:2012-07-18 19:31:53

标签: sql sql-server

观看特别针对大量数据插入或类似查询运行查询的性能。

举个例子:

如果您要选择 - 在大约数百万条记录上插入一个非常简单的查询

,可以选择什么

是否可以选择使用CountDown性能计时器查看每千条记录需要多长时间?

基于代码的实践或基于工具的实践

你有什么建议?

赞赏有关这些的任何信息。

2 个答案:

答案 0 :(得分:2)

除非您构建一种机制来向您的查询提供反馈,否则您可能无法分析每个1k记录需要多长时间才能动态插入。即你可以做一个循环并按批量的1k记录进行,或者你可以定期从另一个线程中选择语句来对表进行计数并查看差异,尽管我对该方法的尝试并不总是完美的。

如果你想要一个比SQL Server附带的更好的探查器(在我看来),你可以在这里免费获得一个:http://anjlab.com/en/projects/opensource/sqlprofiler。这个分析器的好处在于,您可以实际对结果进行排序,因为它们仍然存在,而您无法使用Microsoft的分析器。我在上一份工作中经常使用这个来识别我们的应用程序中我们没有缓存数据的位置,并且不必要地一遍又一遍地运行相同的查询。

答案 1 :(得分:1)

SQL Server Profiler将详细介绍正在运行的各个SQL语句的资源消耗情况。 SSMS的“显示执行计划”选项将分解单个SQL语句,并向您显示有关SQL Server如何选择优化语句的内部详细信息。

如果我理解正确(并且我不确定),您可能最好使用Profiler来跟踪一般性能。