数据库动态管理视图DMV(1)

--优化查询计划花费时间
SELECT * FROM SYS.dm_exec_query_optimizer_info WHERE [counter]='OPTIMIZATIONS' OR [counter]='ELAPSED TIME'
--查询状态
SELECT * FROM SYS.dm_exec_query_stats
--等待任务
SELECT * FROM SYS.dm_os_waiting_tasks

SELECT COUNT(*) AS CPU_WAITOR ,T2.scheduler_id
FROM SYS.dm_os_workers AS T1
JOIN SYS.dm_os_schedulers AS T2
ON T1.scheduler_address=T2.scheduler_address
WHERE T1.[state]='RUNNABLE' AND T2.scheduler_id<255
GROUP BY T2.scheduler_id

--统计所有等待类型的总等待时间
SELECT SUM(WAIT_TIME_MS) AS COUNTERS, wait_type FROM SYS.dm_os_wait_stats
GROUP BY wait_type
ORDER BY COUNTERS DESC
--显示内存使用情况
DBCC MEMORYSTATUS

select * from SYS.dm_os_memory_cache_counters
--分类查询缓冲区缓存的使用情况
SELECT [type],sum(multi_pages_kb)+sum(single_pages_kb) as cache_count FROM SYS.dm_os_memory_cache_counters
group by [type] order by cache_count DESC
--查看内存节点内存使用情况,
--PS:内存处理分NUMA和SMP
--1、NUMA:非统一内存访问,每组处理器都有自己的内存,并可能有自己的 I/O 通道,
--并且,每个 CPU 都可以通过一致的方式访问与其他组关联的内存。
--NUMA通过提供分离的存储器给各个处理器,
--避免当多个存储器访问同一个存储器产生的性能损失来试图解决这个问题
--例如:inter酷睿i5中的二级缓存,4*256kb,从这个可以看出4核心,因为inter处理器采用NUMA结构,
--每个核心被分配了256kb缓存。
--同样,i3因为是双核,那么二级缓存为2*256kb。
--为什么需要为CPU分配内存?因为现在的计算机CPU的性能已经超过了内存性能。
--CPU经常需要等待内粗的数据,而通过减少对内存访问次数来提高计算机性能,即建立高度缓存。
--与此同时,NUMA结构支持多处理器的扩展,而SMP支持的扩展性比较低很难扩展到100个以上的多处理器。
--2、SMP:对称多处理,
--各处理器能并行访问不同的存储块,但对同一块的访问必须是顺序的。但是他的技术比较成熟。
--由于inter处理器比较稳定,现今的服务器基本使用inter处理器,所以SMP结构不做多的介绍。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值