ITPub博客

首页 > 数据库 > SQL Server > SQL Server查询计划系列之——逻辑操作符与物理操作符

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

原创 SQL Server 作者:sqysl 时间:2018-02-19 14:31:58 0 删除 编辑


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之和。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8484829/viewspace-2151108/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
大学毕业至今,一直深耕于数据库领域20余载,擅长数据库优化、数据库分析诊断、数据库规划设计等,曾任职多家知名大型企业,多次独立承担并成功上线关键大型项目。

注册时间:2008-06-27

  • 博文量
    365
  • 访问量
    725339