生成SQL查询计划需要5分钟,查询本身以毫秒为单位运行.这是怎么回事?

前端之家收集整理的这篇文章主要介绍了生成SQL查询计划需要5分钟,查询本身以毫秒为单位运行.这是怎么回事?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
sql Server 2008上运行的存储过程,我有一个相当复杂(或丑陋,取决于你如何看待它).它具有一个pk表和一个fk表视图的大量逻辑. fk表被连接到pk表略多于30次(fk表设计不佳 – 它使用名称值对,我需要展平,不幸的是,它是第三方,我不能改变它).

无论如何,它已经运行了好几个星期,直到我定期注意到需要3-5分钟的跑步.事实证明,这是生成查询计划所需的时间.一旦查询计划存在并被缓存,存储过程本身就非常有效地运行.事情运行顺利,直到有理由重新生成并再次缓存查询计划.

有没有人看到这个?为什么需要这么长时间来制定计划?有没有办法让它更快地提出计划?

解决方法

您可以尝试使用 Plan Guide.计划生成仍将持续一段时间,但应显着缩短.
原文链接:https://www.f2er.com/mssql/75354.html

猜你在找的MsSQL相关文章