SQL Sorguları sistemi ne kadar yoruyor?

Yayınlandı: Temmuz 22, 2011 / Software
Etiketler:, , , ,

SQL SERVER içerisinde kullandığımız sorgularımız,procedurlerimiz sistem kaynaklarını ne kadar kullanıyor acaba? Yanlış yazılmış bir döngü,bir join vs sistem kaynaklarını aşırı kulllarak sistemde yavaşlamaya sebep olduğu bir gerçek…Gelin bir sorgu ile bu işlemlerin CPU’yu ne kadar kullanıyor görelim…

Select

           q.[text], 

           SUBSTRING(q.text, (qs.statement_start_offset/2)+1,  

              ((CASE qs.statement_end_offset   

                WHEN -1 THEN DATALENGTH(q.text) 

               ELSE qs.statement_end_offset    

               END - qs.statement_start_offset)/2) + 1) AS statement_text,         

           qs.last_execution_time, 

           qs.execution_count, 

           qs.total_worker_time/1000000 as total_cpu_time_sn, 

           qs.total_worker_time/qs.execution_count/1000 as avg_cpu_time_ms, 

           qp.query_plan,     

           DB_NAME(q.dbid) as database_name, 

           q.objectid, 

           q.number, 

           q.encrypted 

      from 

          (select top 50  

                qs.last_execution_time, 

                qs.execution_count,      

                qs.plan_handle,  

                qs.total_worker_time, 

                qs.statement_start_offset, 

                qs.statement_end_offset 

          from sys.dm_exec_query_stats qs 

          order by qs.total_worker_time desc) qs 

cross apply sys.dm_exec_sql_text(plan_handle) q 

      cross apply sys.dm_exec_query_plan(plan_handle) qp 

      order by qs.total_worker_time desc

Yeni bir query açıp bu sorguyu kopyalayın,yapıştırın,çalıştırın ve izleyin…. ;)Kolay gelsin..

Yorum bırakın