sql-server – 急切的假脱机表示什么问题

目前正在sql Server 2008 R2上运行

我试图提高UPDATE语句的性能.我注意到showplan中出现了一个Eager Spool操作.我对假脱机操作的理解非常基础 – 它们在更新期间为表创建临时存储.

我也知道,虽然它们阻止了更糟糕的执行时间,但是急切的线程通常表示表结构和/或查询语句的潜在问题.

我的问题非常简单:当您在查询计划中看到Eager Spool时,您首先要解决的问题是什么?

我将分析我们系统的每个部分以提高性能 – 我只是在寻找关于我应该从哪里开始的指导.

解决方法

I am attempting to increase performance of an UPDATE statement. I notice an Eager Spool operation in the showplan popping up.

可能出于各种原因添加Eager Spools,包括避免Halloween Protectionoptimize I/O when maintaining nonclustered indexes.

如果没有看到(甚至是图片)执行计划,很难确定哪种情况可能适用于您的特定情况.如果担心数据敏感性,请考虑使用SQL Sentry Plan Explorer上载计划的匿名版本以进行分析.

很可能,Eager Spool不是你应该专注的东西;许多因素会影响更改数据的查询的实际性能.如果您的调整工作基于为Eager Spool运算符显示的估计百分比成本,请考虑使用不打算与特定硬件配置的功能匹配的模型生成这些估计.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...