Quantcast
Channel: SQL PraRup – SQL Server Mentalist
Viewing all articles
Browse latest Browse all 121

BI SQL # 203 : SQL Server DBA Scripts : Identify Top Nth heavy I / O Operation

$
0
0

Hi Folks,

In this article we are going to cover How to Identify Top Nth heavy I / O Operation.

In this post we are going to discuss following points:

  • Problem Statement of SQL Script:
  • Description of SQL Script:
  • SQL Script Output Column
  • Input Parameter of SQL Script
  • SQL Script Code
  • SQL Script Output Screenshot
  • User Level to execute

Problem Statement of SQL Script:

How to Identify Top Nth heavy I / O Operation?

Description of SQL Script:

This script will help to identify top Nth heavy I/O Operation.

SQL Script Output Column

image

Input Parameter of SQL Script

VariableValue (@nquery)

SQL Script Code

DECLARE @nquery INT = 20

SELECT TOP (@nquery) (
        SELECT SUBSTRING(est.[text], statement_start_offset / 2 + 
                1, (
                    CASE 
                        WHEN statement_end_offset = - 1
                            THEN LEN(CONVERT(NVARCHAR(max), 
                                        est.[text])) * 2
                        ELSE statement_end_offset
                        END - statement_start_offset
                    ) / 2)
        FROM sys.dm_exec_sql_text(sql_handle) AS est
        ) AS query_text
    ,total_logical_reads / execution_count AS 
    [avg_logical_reads]
    ,qp.query_plan
    ,total_logical_writes / execution_count AS 
    [avg_logical_writes]
    ,total_worker_time / execution_count AS [avg_cpu_cost]
    ,execution_count
    ,total_worker_time
    ,total_logical_reads
    ,total_logical_writes
    ,(
        SELECT DB_NAME(dbid) + ISNULL('..' + OBJECT_NAME(objectid
                ), '')
        FROM sys.dm_exec_sql_text([sql_handle])
        ) AS query_database
    ,last_logical_reads
    ,min_logical_reads
    ,max_logical_reads
    ,last_logical_writes
    ,min_logical_writes
    ,max_logical_writes
    ,total_physical_reads
    ,last_physical_reads
    ,min_physical_reads
    ,max_physical_reads
    ,(
        total_logical_reads + (total_logical_writes * 5
            )
        ) / execution_count AS io_weighting
    ,plan_generation_num --into ExpensiveIOoperations
FROM sys.dm_exec_query_stats
OUTER APPLY sys.dm_exec_query_plan([plan_handle]) AS qp
WHERE [dbid] >= 5
    AND (total_worker_time / execution_count) > 100
ORDER BY io_weighting DESC;

SQL Script Output Screenshot

image

User Level to execute

300

    Hope you will like How to Identify Top Nth heavy I / O Operation.

    If you really like reading my blog and understood at least few thing then please don’t forget to subscribe my blog.

If you want daily link and analysis or interesting link go to following website which will give @ your inbox please subscribe our following link resource blog :

Link Resource Website

For More information related to BI World visit my Mentalist Blog

SQL Server Mentalist >> SQL Learning Blog

Business Intelligence Mentalist >> BI World

Infographic Mentalist >> Image worth explaining thousand Words

Microsoft Mentalist >> MVC,ASP.NET, WCF & LinQ

DBA Mentalist >>Advance SQL Server Blog

Microsoft BI Mentalist >> MS BI Development Update

Connect With me on

| FaceBook |Twitter | linkedIn| Google+ | WordPress | RSS |


Filed under: Link, Microsoft SQL Server, MSBI, Optimization, Query, Script, SQL Mentalist, SQL PraRup, SQL Query, SQL Server, Technology,, TSQL, Vishal Pawar Tagged: DBA, Fast SQL, Microsoft SQL Server, SQL Help, SQL Mentalist, SQL Script, SQL Server, SQL Server 2008 R2, SQL Server 2012, SQL tips, SQL Tricks, TSQL, Vishal Pawar

Viewing all articles
Browse latest Browse all 121

Trending Articles