zoukankan      html  css  js  c++  java
  • 禁用nested loop join里的spool

    禁用nested loop join里的spool

    转载自:

    https://blogs.msdn.microsoft.com/psssql/2015/12/15/spool-operator-and-trace-flag-8690/

    https://answers.sqlperformance.com/questions/698/lazy-spool.html

    在nested loop join里常常会看到一个spool操作符

    这个spool 又名'performance spool',目的是保存被驱动表(外表)排序后的结果,以便后面有相同参数的流能够继续使用这个被缓存的结果集。

    这样可以提升一些性能

    但是有时候spool可能会造成数据倾斜或不均衡,这时候我们可以使用trace flag禁用table spool

    USE [AdventureWorks]
    
    
    SELECT *,COUNT(*) OVER()
    from production.[Product] AS p
    JOIN production.[ProductSubcategory] AS s
    ON s.[ProductCategoryID]=p.[ProductSubcategoryID]
    OPTION (QUERYTRACEON 8690)

     

    本文版权归作者所有,未经作者同意不得转载。

  • 相关阅读:
    C语言I博客作业06
    C语言I博客作业05
    C语言I博客作业04
    C语言I博客作业02
    C语言II博客作业04
    C语言II博客作业03
    C语言II博客作业02
    C语言II博客作业01
    学期总结
    C语言I博客作业08
  • 原文地址:https://www.cnblogs.com/lyhabc/p/5049655.html
Copyright © 2011-2022 走看看