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!
Wesley Mota
Latest posts by Wesley Mota (see all)
- The Ultimate Guide to Gry Online Ruletka - novembro 14, 2024