linux 怎么看出io是瓶颈,IO瓶颈探测方法

IO瓶颈探测方法

IO瓶颈探测方法:

1) 下面这些性能监视器计数器可以了解IO子系统整体情况及个别磁盘的情况:

 PhysicalDisk Object: Avg. Disk Queue Length:物理磁盘读写要求的平均数(针对选择磁盘的取样区间);

注意:如果该值在SQL Server高峰期频繁高于2,说明IO子系统存在问题;

 PhysicalDisk Object: Avg. Disk Sec/Read or Avg. Disk Sec/Write:物理读写的平均时间,通常的参考:

 低于10ms非常好;

 介于10ms和20ms间可以;

 介于20ms和50ms间需要注意;

 大于50ms存在严重的IO瓶颈;

 PhysicalDisk: Disk Reads/Sec or Disk Writes/Sec:磁盘的读写率,该值应该低于磁盘能力的85%;

2) 获取文件IO信息:系统监视器计数器只能获得磁盘级别的IO信息,而不能获取文件级别的IO信息,下面的SQL可以获取文件级别的IO信息:

SELECT

database_id,

file_id,

io_stall_read_ms,

io_stall_write_ms

FROM sys.dm_io_virtual_file_stats(NULL, NULL)

SELECT

db_name(database_id) as db_name,

file_name(file_id) as file_name,

io_stall_read_ms,

io_stall_write_ms

FROM sys.dm_io_virtual_file_stats(NULL, NULL)

3) 通过闩(latch)获取IO瓶颈:你可以通过检查闩等待来获取系统整体IO瓶颈信息,下面这个SQL语句就可以完成该任务:

SELECT

wait_type,

waiting_tasks_count,

wait_time_ms,

signal_wait_time_ms

FROM sys.dm_os_wait_stats

WHERE wait_type LIKE PAGEIOLATCH%

ORDER BY wait_type

IO瓶颈探测方法 IO瓶颈探测方法: 1) 下面这些性能监视器计数器可以了解IO子系统整体情况及个别磁盘的情况:  PhysicalDisk Object: Avg. Disk Queue Length:物理磁盘读写要求的平均数(针对选择磁盘的取样区间); 注意:如果该值在SQL Server高峰期频繁高于2,说明IO子系统存在问题;  PhysicalDisk Object: Avg. Disk Sec/Read or Avg. Disk Sec/Write:物理读写的平均时间,通常的参考:  低于10ms非常好;  介于10ms和20ms间可以;  介于20ms和50ms间需要注意;  大于50ms存在严重的IO瓶颈;  PhysicalDisk: Disk Reads/Sec or Disk Writes/Sec:磁盘的读写率,该值应该低于磁盘能力的85%; 2) 获取文件IO信息:系统监视器计数器只能获得磁盘级别的IO信息,而不能获取文件级别的IO信息,下面的SQL可以获取文件级别的IO信息: SELECT database_id, file_id, io_stall_read_ms, io_stall_write_ms FROM sys.dm_io_virtual_file_stats(NULL, NULL) 或 SELECT db_name(database_id) as db_name, file_name(file_id) as file_name, io_stall_read_ms, io_stall_write_ms FROM sys.dm_io_virtual_file_stats(NULL, NULL) 3) 通过闩(latch)获取IO瓶颈:你可以通过检查闩等待来获取系统整体IO瓶颈信息,下面这个SQL语句就可以完成该任务: SELECT wait_type, waiting_tasks_count, wait_time_ms, signal_wait_time_ms FROM sys.dm_os_wait_stats WHERE wait_type LIKE PAGEIOLATCH% ORDER BY wait_type
经验分享 程序员 微信小程序 职场和发展