SQL Server Administração

Bancos de dados que consomem mais IO – WM7 Consultoria SQL Server

Bancos de dados que consomem mais IO
Bancos de dados que consomem mais IO

Saiba como descobrir quais bancos de dados que consomem mais IO no SQL Server

Saber quais bancos de dados que consomem mais IO no SQL Server é importante para verificar qualquer problema de performance no SQL Server. Você vai diretamente de encontro aos bancos de dados que estão consumindo mais recursos.

Normalmente o banco de dados mais utilizado em uma instância do SQL Server é o tempdb, devido sua grande utilidade, afinal não se usa tempdb apenas quando estamos criando tabelas temporárias certo?

Normalmente o SQL usa a base de dados tempdb para fazer longas ordenações, o que é péssimo para a performance, manutenções de índices e diversas outras coisas. Ou seja, a tempdb é um dos bancos de dados com maior requisição de IO.

Certamente o que vai importar a você é o próximo banco de dados dessa lista que retorna no script abaixo. Então vamos lá, sem voltas e enrrolações abaixo está o script que certamente lhe interessa:

 
WITH EstatisticasIO_DB 
AS (SELECT DB_NAME(database_id) AS [Banco de Dados], 
CAST(SUM(num_of_bytes_read + num_of_bytes_written) / 1048576 AS DECIMAL(12, 2)) AS io_mb 
FROM sys.dm_io_virtual_file_stats(NULL, NULL) AS [DM_IO_STATS] 
GROUP BY database_id) 
SELECT ROW_NUMBER() OVER (ORDER BY io_mb DESC) AS [I/O Rank], 
[Banco de Dados], 
io_mb AS [Total I/O (MB)], 
CAST(io_mb / SUM(io_mb) OVER () * 100.0 AS DECIMAL(5, 2)) AS [I/O Porcentagem] 
FROM EstatisticasIO_DB 
ORDER BY [I/O Rank] 
OPTION (RECOMPILE);  

Eu estou trabalhando em um projeto onde estamos coletando essas informações que consideramos interessantes e estamos colocando em um dashboard do Power BI, quando estiver pronto eu mostro a vocês.

Um grande abraço a todos!

Bancos de dados que consomem mais IO – WM7 Consultoria SQL Server