標籤:des style blog http ar io color 使用 sp
今天高老大出了好文章。在這裡 自己本來對這一塊比較混亂,正好借這個機會學習一下。
就用高老大的指令碼。需要的直接去他那裡找吧,這裡就省了。
加查詢最佳化標記前後對比
可以看到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)。
強烈推薦文章:
Understanding SQL server memory grant
Troubleshooting SQL Server RESOURCE_SEMAPHORE Waittype Memory IssuesMemory Grant Execution Plan Statistics
說實話,裡面有幾個參數還是不太明白確切的意思。在實際工作中如何使用,希望有人能給些指導。
高老大 ‘SQL Server 最佳化器特性導致的記憶體授與相關BUG’ 學習筆記