为执行计数和运行时间配置SQL存储过程的步骤是什么

时间:2011-10-08 05:54:13

标签: sql sql-server sql-server-2005 testing stored-procedures

有点相关

What are the best practices in writing a sql stored procedure

问题

我已经在Microsoft SQL server express 2005中编写了一个sql-xml存储过程,现在如何找到它可以在一秒内完成的执行次数,相同的时间以及如何对其进行负载测试。是否有相同的开源工具?我可以遵循任何改善执行计数的模式吗?存储过程通常面临哪些性能瓶颈?

2 个答案:

答案 0 :(得分:2)

您可以使用SET STATISTICS TIME ON查看存储过程的持续时间。这将让您很好地了解一秒钟内可以进行多少次迭代。然后优化/调整该存储过程只需查看实际执行计划,看看存储过程中最昂贵的部分是什么。

并且会注意到您将存储过程用作数据库引擎优化顾问中的工作负载。您可能会得到一些关于缺失索引,可能的改进等的提示。

答案 1 :(得分:2)

我会检查通过设置SET STATISTICS IO ON执行的读取,而不是使用持续时间,因为这对服务器环境负载不敏感。

包括“实际执行计划”。检查计划并寻找:

  • 大表或索引扫描
  • 通过创建覆盖索引(不太宽......)可以消除的书签查找。
  • “实际行数与估计行数之间存在较大差异”(通常表明统计数据已过期)。

另见:How Can I Log and Find the Most Expensive Queries?