博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
高老大 ‘SQL Server 优化器特性导致的内存授予相关BUG’ 学习笔记
阅读量:5235 次
发布时间:2019-06-14

本文共 979 字,大约阅读时间需要 3 分钟。

今天高老大出了好文章。 自己本来对这一块比较混乱,正好借这个机会学习一下。  

就用高老大的脚本。需要的直接去他那里找吧,这里就省了。

加查询优化标记前后对比

可以看到GrantedMemory是504928KB,大约是213096/1024=208.101562MB(这里的那个值好像每次都有差别,但是差距不太大。不影响效果)

加上跟踪标记后

4560/1024大概只有4MB吧。

差别很大吧~

其实这里这些值还可能通过查询计划的XML里看,里面有更详细的信息。

<QueryPlan DegreeOfParallelism="1" MemoryGrant="216568" CachedPlanSize="24" CompileTime="2" CompileCPU="2" CompileMemory="168">

<MemoryGrantInfo SerialRequiredMemory="512" SerialDesiredMemory="504928" RequiredMemory="512" DesiredMemory="504928" RequestedMemory="216568" GrantWaitTime="0" GrantedMemory="216568" MaxUsedMemory="40" />
<OptimizerHardwareDependentProperties EstimatedAvailableMemoryGrant="196572" EstimatedPagesCached="7482" EstimatedAvailableDegreeOfParallelism="2" />

MemoryGrant这是评估值,以Serial*开头的字段,好像是如果这个query串行化时的评估值(Serial required/desired memory attributes are estimated during query compile itme for serial execution)。

 

强烈推荐文章:

说实话,里面有几个参数还是不太明白确切的意思。在实际工作中如何使用,希望有人能给些指导。

 

转载于:https://www.cnblogs.com/superunusa/p/4172999.html

你可能感兴趣的文章
自媒体
查看>>
Linux文件系统结构
查看>>
深入理解Java虚拟机
查看>>
(算法)等概率选出m个整数
查看>>
jvm内存溢出的三种情况以及解决办法
查看>>
两个UIView添加同一个手势只有最后一个有用
查看>>
THINKPHP的U方法带入JS变量的解决方案
查看>>
Flip Game
查看>>
CentOS7操作系统初始化
查看>>
hadoop 及hbase zookeeper 经常出现问题
查看>>
【原】PNG的使用技巧
查看>>
android studio 使用SVN 锁定文件,防止别人修改(基于Android studio 1.4 )
查看>>
4412 uboot启动分析
查看>>
熟用TableView
查看>>
IO模型《六》IO模型比较分析
查看>>
Android 博客园客户端 (七)登录功能
查看>>
PHP动态页面 生产静态页 方法二
查看>>
NSOperation 代码,阐述NSOperation一般功能和重要功能
查看>>
androidstudio 2.3.3 jni过程汇总(2):2、使用so文件
查看>>
第二篇:使用Spark对MovieLens的特征进行提取
查看>>