5. 501 Legion Charitable Donation
Thank the 501 Legion for Supporting Our Event!
JSSUG Will Match Donations up to $500
Donation Bucket on Registration Table
6. Jacksonville 2022 #1022
John
CEO & Principal Consultant
John@ProcureSQL.com
@JohnSterrett
https://www.linkedin.com/in/johnsterrett
Procure SQL LLC
John's experience leading large technical
teams in complex environments has made
him a global expert in performance and
scalability.
John speaks at conferences around the
world on database strategy and topics
related to performance tuning, development,
and cloud computing. He is a Microsoft
Certified Trainer and the principal consultant
and founder at Procure SQL
Sterrett
7. #PASSDataCommunitySummit
Goal of Today’s Session
Arm anyone who is new to
performance tuning with processes
and skills to identify and solve some
common performance problems.
10. #SQLSatJax
Jacksonville 2022 #1022
Time
T1 : Resource not
available (Suspended
Query)
T2: Resource Now
Available. Back in
schedule queue.
(Runnable State)
T3: Continue Processing
(Resources acquired and
scheduled to run)
T3-T2
Signal Wait Time (Have resource
waiting to be scheduled to run)
T3-T1
Wait Time (Total waiting from
needing a resource to running
again)
Basic Query Runtime
Running
Suspended
Runnable
11. #SQLSatJax
Jacksonville 2022 #1022
Meet the SQL Server Bottlenecks
11
Photos: http://www.flickr.com/photos/kaiban/5159888367/lightbox/ and http://www.flickr.com/photos/moodog/504456253 and
http://www.flickr.com/photos/marksze/4231115464 and http://www.flickr.com/photos/vvvracer/5264339383 and
http://www.flickr.com/photos/iphil_photos/4962369046
MEMORY DISK CPU
NETWORK LOCKING, BLOCKING & DEADLOCKS
12. #SQLSatJax
Jacksonville 2022 #1022
Performance Problems NOW!
When Do Top Offenders Matter?
Root Cause Analysis (RCA)
Previous Performance Problem
Improve A Processes Performance
Migrations / Consolidation / Long Term
22. #SQLSatJax
Jacksonville 2022 #1022
• Identify Tables in Query
• Identify Columns being Selected
• Identify filters (HINT JOIN and WHERE)
• Find total rows for each table used in the Query
• Find selectivity (rows with filter / table rows)
• Enable statistics io, time and the actual execution plan.
• Run the Query and document your findings
• Review existed indexes for filters and columns selected
• Add index for lowest selectivity adding the selected columns
as included columns
• Run the Query again and document your findings.
• Compare findings with baseline.
• Repeat last four steps as needed.
Indexing Tuning Process
25. Session evaluation
Your feedback is important to us
Please fill out your session evaluation and
hand to speaker!
Jacksonville 2022 #1022
#SQLSatJax
26. Thank you to ALL of our sponsors! - Be sure to stop by all tables!
Platinum Gold
Silver In-Kind
Jacksonville 2022 #1022
27. Thank you
Jacksonville 2022 #1022
#SQLSatJax
John Sterrett
@JohnSterrett
John@procuresql.com
http://johnsterrett.com/contact-me