1.IO分析

 1 with DB_IO as (
 2 select
 3     db_name(a.database_id) as [dbname],
 4     case when b.type_desc='LOG' then 'LogFile' else 'DataFile' end as FileType,
 5     num_of_reads,
 6     num_of_writes,
 7     sum(a.io_stall) as io_stall,
 8     sum(num_of_bytes_read+num_of_bytes_written) as TotalIOBytes
 9 from sys.dm_io_virtual_file_stats(null,null) a join sys.master_files b
10 on a.database_id=b.database_id and a.file_id=b.file_id
11 group by db_name(a.database_id),b.type_desc,num_of_reads,num_of_writes
12 )
13 select
14     dbname,
15     FileType,
16     num_of_reads,
17     num_of_writes,
18     cast(1. * TotalIOBytes/(1024*1024) as decimal(12,2)) as IO_MB,
19     cast(1. * io_stall/1000 as decimal(12,2)) as IO_stall_s,
20     cast(100. * io_stall/sum(io_stall) over() as decimal(10,2)) as [IO_stall_pct%],--占总IO的百分比
21     row_number() over(order by io_stall desc) as rn
22 from DB_IO
View Code

相关文章: