我们目前遇到性能问题,因为我确信大多数数据驱动系统都会遇到同样的问题。
目前,它们基本上属于我认为单一解决方案可以解决的两个类别:
存储过程有时会在计划错误的系统中自动重新编译,导致它运行得非常慢。这样做的原因是它首先被重新编译的参数集不具有代表性/正常/最佳。这会导致存储过程运行得非常慢,需要重新编译才能获得更好的计划
由于SQL Server工作方式的动态特性,随着表的增长,系统的不同部分可能会以不同方式查询 - 索引需要更改或需要更改代码才能删除次优编码和OR一样,在WHERE条件等中起作用。
是否有任何系统表可以跟踪存储过程的成本?
我们需要创建一个脚本,该脚本应该在一周内(7天)每小时运行一次,我们需要/存储存储过程的数据(如执行时间,存储过程的成本等)。由此,我们可以识别执行情况非常糟糕且运行时间较长的存储过程列表,并生成存储过程列表。由此,我们可以对这些存储过程进行调优以提高性能。
答案 0 :(得分:0)