我有一个很大的存储过程,它在100%的CPU上运行2-3秒。这不是什么大问题,如果SP运行一段时间,但是这个特定的SP每秒运行一次。因此,您可以立即了解整个处理器的使用情况。
此存储过程包含大量查询、临时表、一个或两个游标和一些动态查询。
调优我的SP的最佳解决方案是什么,以及不同的方法。
在编写SP时,我们一般需要记住哪些要点?
请帮帮我。
发布于 2011-10-03 20:57:34
要调优存储过程,您需要分别处理其中包含的每个查询和进程。确保索引设置正确,并检查使用临时表和动态SQL的方法是否合适。此外,请确保您没有滥用其他存储的过程和视图,这些过程和视图可能被设计为直接使用,而不是在较大的过程中用作齿轮。
很难提出更多的建议,但是,从您对存储过程中需要什么以及它运行的频率的描述来看,这听起来像是您系统中的一个关键进程,并且涉及的数据可能是denormalization的候选者。如果您不规范化数据,那么您将重写存储的proc来查询数据库的该部分,以获得更好的性能。
https://stackoverflow.com/questions/7635176
复制相似问题