微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SQL Server查询计划系列之——逻辑操作符与物理操作符

1.        逻辑操作符

2.        物理操作符

1)        Init(): Init() 方法导致一个物理操作符完成自身初始化,并创建任何需要的数据结构。虽然物理操作符可以接收很多Init()调用,但一般来说,一个物理操作符只接收有个Init()。

3)        Close(): Close()方导致一个物理操作执行一些清理操作并将其本身关闭一个物理操作符只能接收有个Close()调用

物理操作符相关注意事项

2)        出现于Showplan输出中的ActualRebinds和ActualRewinds指Init()方法调用次数。除非一个操作符为循环连接(Loop Join)的内行源,ActualRebinds为1且ActualRewinds为0。如果一个操作符为循环连接的内行源,重新绑定(rebinds)与重绕(rewinds)的和应该等于该循环连接外行源的行数。重新绑定是指连接中一个或多个相关参数改变时内行源必须被重新评估。重绕是指没相关参数改变时可以重用内行源之前的结果。ActualRebinds与ActualRewinds出现于SETSTATISTICS XML ON设置而产生的Showplan输出中。它们仅在Nonclustered Index Spool、Remote Query、Rows CountSpool、Sort、Table Spool和Table-valuedFunction操作中被填充。当StartupExpression属性被设置为TRUE时, ActualRebinds与ActualRewinds在Assert和Filter操作符中也许会被填充。当ActualRebinds与ActualRewinds出现于XMLShowplan中时,它们可以和EstimateRebinds 与EstimateRewinds相比较。当它们并不存在时,则EstimateRows可与ActualRows相比较。注意,当它们不存在时,实际图形Showplan输出中actual rebinds与actualrewinds则显示为0。

<1p style="Box-sizing:border-Box;font-size:16px;color:#4F4F4F;line-height:26px;min-height:26px;margin-top:0px;margin-bottom:16px;text-align:justify;font-family:" white-space:normal;"=""> 3)        相关计数器ActualEndOfScans仅在SETSTATISTICS XML ON设置而产生的Showplan输出中可用。当物理操作符到达其数据流末端时,该计数器将被增加1。物理操作符能到达其数据流末端0、1或多次。就像rebinds和rewinds, 仅当该操作符为循环连接的内行源时,该末端扫描(end of scans)数才可能大于1。末端扫描数应该小于等于rebinds 与rewinds之和。


版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐