DB的IO统计
对数据的IO操作,都是写入到数据库文件中,sys.dm_io_virtual_file_stats Returns I/O statistics for data and log files.
sys.dm_io_virtual_file_stats (
{ database_id | NULL }
, { file_id | NULL }
)
io_stall:Total time, in milliseconds, that users waited for I/O to be completed on the file.
size_on_disk_bytes:Number of bytes used on the disk for this file.
1,查看数据库文件的IO和等待IO完成的时间
select vfs.database_id,
vfs.file_id,
mf.type_desc as file_type,
vfs.sample_ms as duration_h,
vfs.num_of_reads as reads,
vfs.num_of_bytes_read as read_mb,
vfs.num_of_bytes_read as avg_read_kb,
vfs.io_stall_read_ms/vfs.num_of_reads as avg_stall_read_ms,
vfs.num_of_writes as writes,
vfs.num_of_bytes_written as written_mb,
vfs.num_of_bytes_written as avg_writted_kb,
vfs.io_stall_write_ms/vfs.num_of_writes as avg_stall_write_ms,
vfs.io_stall/(vfs.num_of_reads+vfs.num_of_writes) as avg_stall_ms,
,)) as disk_size_gb,
,)) as file_size_gb,
vfs.file_handle
from sys.master_files mf
CROSS APPLY sys.dm_io_virtual_file_stats(mf.database_id,mf.file_id) as vfs
where mf.database_id=db_id() --current db
order by avg_stall_read_ms desc ,avg_stall_write_ms desc
2,查看IO pending
select vfs.database_id,
vfs.file_id,
pr.io_type,
sum(pr.io_pending_ms_ticks) as io_pending_ms,
pr.io_pending
from sys.dm_io_virtual_file_stats(null,null) vfs
inner join sys.dm_io_pending_io_requests as pr
on vfs.file_handle=pr.io_handle
group by vfs.database_id,
vfs.file_id,
pr.io_type,
pr.io_pending
order by vfs.database_id,
vfs.file_id
参考doc:
How It Works: sys.dm_io_pending_io_requests
sys.dm_io_virtual_file_stats (Transact-SQL)
sys.dm_io_pending_io_requests (Transact-SQL)
DB的IO统计的更多相关文章
- 清除缓存、开启IO统计
SQL性能优化前期准备-清除缓存.开启IO统计 如果需要进行SQl Server下的SQL性能优化,需要准备以下内容: 一.SQL查询分析器设置: 1.开启实际执行计划跟踪. 2.每次执行需优化SQL ...
- SQL性能优化前期准备-清除缓存、开启IO统计
文章来至:https://www.cnblogs.com/Ren_Lei/p/5669662.html 如果需要进行SQl Server下的SQL性能优化,需要准备以下内容: 一.SQL查询分析器设置 ...
- 文件的空间使用和IO统计
数据库占用的存储空间,从高层次来看,可以查看数据库文件(数据文件,日志文件)占用的存储空间,从较细的粒度上来看,分为数据表,索引,分区占用的存储空间.监控数据库对象占用的硬盘空间,包括已分配,未分配, ...
- vc中获取磁盘IO统计计数
想知道进程读写磁盘的情况,可以获取当前进程或指定进程的IO计数. #include <Windows.h> int get_io_bytes(ULONGLONG * read_bytes, ...
- 系统io统计
$ cat /proc/diskstats sda sda1 sda2 gg- gg- gg- 主号 次号 名称 成功读 合并读 扇区读 读时间 每一列的含义分别为: 第一列为 设备号 (nu ...
- 性能调优3:硬盘IO性能
数据库系统严重依赖服务器的资源:CPU,内存和硬盘IO,通常情况下,内存是数据的读写性能最高的存储介质,但是,内存的价格昂贵,这使得系统能够配置的内存容量受到限制,不能大规模用于数据存储:并且内存是易 ...
- 给DB数据表加强制索引
DB2 数据库会根据DB层的统计值决定 根据查询条件走哪一个索引,某些情况下,由于未知原因,索引会走偏,故程序中可以规定程序走哪一个索引来避免索引走偏的情况发生. 强制走索引的 实例代码如下: SEL ...
- Linux 使用iostat分析IO性能
原文:http://www.cnblogs.com/bangerlee/articles/2547161.html 对于I/O-bond类型的进程,我们经常用iostat工具查看进程IO请求下发的数量 ...
- socket.io简单说明及在线抽奖demo
socket.io简单说明及在线抽奖demo socket.io 简介 Socket.IO可以实现实时双向的基于事件的通信. 它适用于各种平台,浏览器或设备,也同样注重可靠性和速度. socket.i ...
随机推荐
- mac apache 2.4的配置
开启vhost 文件 命令行输入 vim /etc/apache2/httpd.conf 找到把前边的# include /private/etc/apache2/extra/httpd-vhost. ...
- 织梦cms更新新建的栏目提示:DedeTag Engine Create File False:C:/phpStudy/WWW/
这个问题怎么解决呢?只是更换了一下栏目名称.增加了新的栏目,结果就不行了. 问题原因: 新建的栏目没有"列表命名规则",导致cms解析的时候,出现解析错误. 解决办法 在下图填入: ...
- ORACLE如何比较两个数据库的差异
ORACLE怎么比较两个数据库的差异 方法1:使用PL-SQL工具 点击 工具->比较用户对象
- Android开发学习路线图
Android开发学习方法: Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内容跨度也比较大.因此,一个好的学习方法对我们学习Android开发很重要. 在此建议, ...
- winform控件在Enable=false的情况下改变它的字体颜色
[System.Runtime.InteropServices.DllImport("user32.dll ")] public static extern int ...
- jqueryAjax在客户端发送请求的方式
get请求方式: $.get函数,发起一个get请求, //第一个参数是请求的url地址, //第二个参数是请求参数,可以是一个urlencode过的字符串,也可以是//一个对象,如果是对象jquer ...
- JSPatch 中 defineClass 中覆盖方法的使用
今天研究了一下JSPatch,发现好神奇好奇妙,感觉这几天我都会乐此不彼的去研究这个高大上的东西. 出处来着:https://github.com/bang590/JSPatch 简单介绍一下这个 d ...
- Txt格式配置表无法解析的问题——BOM
今天再次遇到同一个问题:策划给来一个Txt格式配置表,我用解析类去读取,返回的结果为空.解析类参数是:主键key,文件名fileName,错误提示errorTip. 写读取语句的时候,主键key我是直 ...
- <十五>JDBC_使用 DBUtils 进行更新、查询操作
详解待续... DBUtilsTest.java import java.sql.Connection;import java.sql.Date;import java.sql.ResultSet;i ...
- mysql不能插入中文
mysql不能插入中文 解决办法: 1.打开终端,连接数据库 mysql -u root -p; 2.输入 satus; 查看状态 3.输入 set char set 'gbk'; 4.如果是已有的 ...