This page will have a Performance Tuning PT start points.
- Performance Tuning general check overview –> https://sqlserverblogforum.com/dba/performance-tuning-series-main-part/
-
Setup WhoisActive –> https://sqlserverblogforum.com/dba/whoisactive-capturing-a-sql-server-queries-performance-tuning/
-
Setup Server side trace –> https://sqlserverblogforum.com/performance/how-to-use-server-side-trace-to-capture-running-query-t-sql/
-
Reading execution plan quickly–> https://sqlserverblogforum.com/dba/reading-execution-plan-sql-server-use-of-plan-explorer/
-
Physical join understanding–> https://sqlserverblogforum.com/sql-party/merge-join-vs-hash-join-vs-nested-loop-join/
-
Performance Tuning Steps a Query by looking an execution plan and effectiveness of the index creation Part-1 –> https://sqlserverblogforum.com/dba/performance-tuning-steps-a-query-by-looking-an-execution-plan-and-effectiveness-of-the-index-creation-part-1/
-
Performance Tuning Steps Query by looking an execution plan and effectiveness of the index Part 2 –> https://sqlserverblogforum.com/dba/performance-tuning-steps-query-by-looking-an-execution-plan-and-effectiveness-of-the-index-part-2/
-
Use of SQL server statistics and how to make a query to use them –> https://sqlserverblogforum.com/dba/use-of-sql-server-statistics-and-how-to-make-a-query-to-use-them/
-
Parameter sniffing problem PSP SQL server database capture and analysis –> https://sqlserverblogforum.com/dba/parameter-sniffing-problem-psp-sql-server-database-capture-and-analysis-options/
-
Integrate SSRS with Perfmon – Dashboard performance of database graph using SSRS Collect perfMon and automate it load to SQL database and generate reports –> https://sqlserverblogforum.com/dba/integrate-ssrs-with-perfmon-dashboard-performance-of-database-graph-using-ssrs-collect-perfmon-and-automate-it-load-to-sql-database-and-generate-reports/
5 Comments
sureshT
Hi Muthu,
I am one the favorite reader your blog.
I need your help regarding the performance tuning.
The following query is occupied the space on tempdb by Sort operation. hence the wait type of “IO_Complition” is taking 2 minutes.
Please suggestion which combination of index or approch to ignore the sort operation.
Select
From List L (nolock)
Inner join contact c (nolock)on l.campaignid = c.campaignid and l.listid = c.listid
Where C.CAMPAIGNID = ‘AB2’
and c.calltype = 0
and c.status = 0
and. c.isfress = 1
Order by L.listid desc,C.PRIORITY asc,c.LASTACCESSED asc,c.CONTACTID asc
The total records is 1 crores on contact table and for particular campaignid of AB2 is retuning 10 lacks.
The toal records is 100 records on list table.
both table are heap table only.
Data type of those columns
Campaignid – nvarchar(64)
listid – int
calltype – int
status – int
isfress – bit
priority – int
lastaccessed – datetime
contactid – int
Muthukkumaran Kaliyamoorthy
Hi Suresh, Thanks for reading on it. For tempdb you can refer this https://sqlserverblogforum.com/dba/tempdb-database-is-full/.
The Index you should have all the filtered clause as a composite index. Can you email your execution plan or share the plan by using Brent Ozar’s pastetheplan — https://www.brentozar.com/pastetheplan/
Muthukkumaran Kaliyamoorthy
From the code. you need following to be indexed and if you have any columns in the select list add it in the include clasue.
contact Table
ON clause: ([campaignid],[calltype],[status],[isfress])
Include clause: listid, PRIORITY, LASTACCESSED, CONTACTID
List table
On clause:[campaignid],listid
Example:
Create index ix_contact ON contact ([campaignid],[calltype],[status],[isfress])
include (listid, PRIORITY, LASTACCESSED, CONTACTID)
Suresh
Hi Muthu,
I am struggling the performance related issues. It will be very help full if you share contact number.
Also interesting to join the class if you are provide training regarding the same.
Suresh
Sorry for delay reply…. there is environment issue. will let you know ..
I am also working ans staying in chennai only….
I am struggling lot of performance related doubts and it will be very helpful if your share your contact number
my gmail : jitsureshkumar@gmail.com
I am interested and join if your are provide the training.
Thanks
T.Suresh