You need to speed up a SQL Server app, but you only want to make index changes. You don’t want to buy hardware, change SQL Server, or change the code. Good news – I’ll teach you how in 3 days of learning and fun. Join me, Brent Ozar, as I explain how to make your SQL Server apps go faster just by tuning the indexes.
Labs & lectures include:
- How to deduplicate & prune an existing database with too many indexes
- How to use sp_BlitzIndex to design the right nonclustered indexes for specific queries
- How to assess a large workload and prioritize which tables/indexes to work on first
- How to convert badly-performing recommended indexes into blazing-fast hand-tuned indexes
- How to know when filtered indexes, indexed views, and indexed computed columns will pay off
- How to measure whether your index changes made things better, or worse
Your Progress So Far in This Class
This is driven by the mark-as-complete buttons in each module of the class. (Let’s be honest: you’re probably just going to mark them as complete because you’re that kind of student. I feel you.)
Introductions and Setting Up Lab 1
Click on the modules on the right side of the page to keep moving through the class.
- 0.1 Prerequisites Before the Class (~4 hours)
- 0.2 Download the Slides
- 1.2 The D.E.A.T.H. Method: Dedupe and Eliminate
- 1.3 Why Index Read & Write Numbers Are Wrong
- 1.4 Lab 1 Setup: Dedupe and Eliminate
- 1.4b Lab 1: Dedupe and Eliminate – Brent Does It
- 1.5 The D.E.A.T.H. Method: Tuning Indexes for Specific Queries
- 1.6 Foreign Key and Check Constraints
- 1.7 Lab 2 Setup: Tuning Indexes for Specific Queries
- 1.8 Lab 2: Tuning Indexes for Specific Queries – Brent Does It
- 2.1 Adding Indexes with the DMVs
- 2.2 Tuning to Avoid Key Lookups and Residual Predicates
- 2.3 Lab 3 Setup: Adding Indexes with Clippy and the DMVs
- 2.3b Lab 3: Adding Indexes with Clippy and the DMVs – Brent Does It
- 2.4 The D.E.A.T.H. Method – Heaps and Clustered Indexes
- 2.5 Tuning Indexes to Avoid Blocking
- 2.6 Lab 4 Setup: Solving Blocking with Indexes
- 2.6 Lab 4: Solving Blocking with Indexes – Brent Does It
- 3.1 Filtered Indexes, Indexed Views, and Computed Columns
- 3.2 Lab 5 Setup: Leveraging Artisanal Indexes
- 3.2b Lab 5: Leveraging Artisanal Indexes – Brent Does It
- 3.3 Lab 6 Setup and Final Lessons
- 3.4 Lab 6: Doing the D.E.A.
- 3.5 Lab 6: Doing the D.E.A.T.
- About the Lab Exercises
- Bonus: Storytelling Time
- Bonus: Tips from the Index Sommelier