Статистика использования файлов баз данных

Статистика использования файлов баз данныхЕсть очень простой способ определить особенно нагруженные файлы баз данных. Это будет отправной точкой, откуда стоит начинать поиск «проблемы». Следующий скрипт выведет статистику использования файлов базы данных по среднему времени ожидания чтения/записи на диск в мс:

 

SELECT DB_NAME(dm_io_virtual_file_stats.database_id) AS [Database Name],
dm_io_virtual_file_stats.file_id,
f.name,f.physical_name,
io_stall_read_ms,
num_of_reads,
CAST(io_stall_read_ms/(1.0 + num_of_reads) AS NUMERIC(10,1)) AS [avg_read_stall_ms],
io_stall_write_ms,
num_of_writes,
CAST(io_stall_write_ms/(1.0+num_of_writes) AS NUMERIC(10,1)) AS [avg_write_stall_ms],
io_stall_read_ms + io_stall_write_ms AS [io_stalls],
num_of_reads + num_of_writes AS [total_io],
CAST((io_stall_read_ms + io_stall_write_ms)/(1.0 + num_of_reads + num_of_writes) AS NUMERIC(10,1)) AS [avg_io_stall_ms]
FROM sys.dm_io_virtual_file_stats(null,null) INNER JOIN sys.master_files as f ON dm_io_virtual_file_stats.database_id = f.database_id AND dm_io_virtual_file_stats.file_id = f.file_id
ORDER BY avg_io_stall_ms DESC;

Обратите внимание не только на последний столбец (avg_io_stall_ms), по которому мы и сортируем, но и на общее время, затраченное на запись файлов (io_write_read_ms) и чтения из файлов (io_stall_read_ms). С помощью этих параметров вы не только определите узкое место, но и характер нагрузки.

Запись опубликована в рубрике В помощь администратору с метками . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Войти с помощью: