SQL Server Performance Troubleshooting

  • Instructor(s): Brent Ozar, Jeremiah Peschka, Kendra Little
  • Cost: (Sold Out)

You’re a developer. You need to speed up a database server that you don’t fully understand – but that’s about to change in three days of learning and fun.

Update Aug 21 – This class has sold out. Check out the 2015 version.

Join the upbeat, fun folks of Brent Ozar Unlimited for these sessions:

Day 1: Diagnose Performance Bottlenecks

How to Think Like the Engine – You’ll learn the basics of SQL Server’s data retrieval and processing starting with… a couple of paper spreadsheets?!? In this interactive session you’ll get your hands on clustered indexes, nonclustered indexes, joins, sorting, statistics, sargability, and execution plans.

Lose Waits Fast – When you’re not sure why the server is slow, forget Perfmon metrics – there’s a new method in town. SQL Server constantly tracks what it’s waiting on. You’ll learn how to query those wait statistics to find the bottleneck. Problem is, wait stats are cryptic and there’s a lot of wrong advice out on the web. (CXPACKET, anyone?) We’ll show the right way to analyze your wait stats and tune for great good.

Fundamentals of SQL Server Internals – Want to know what makes SQL Server tick? Ever wonder what SQL Server is doing when you run a query? Ever wonder which parts of SQL Server are responsible for specific functionality? Want to know what a HOBT is? We’ll set you on the path to knowledge about the inner workings of SQL Server.

How to Tell When TempDB is a Performance Problem – Could TempDB be slowing down your SQL Server? Learn why tempdb is special and how you can identify when it’s a problem.

Why NOLOCK isn’t enough: Finding Query Isolation Problems – Your SQL Server’s grinding to a halt and you suspect lock waits are a problem. When should you start breaking out the NOLOCK hints? In this session you’ll learn common errors people make in selecting isolation levels, how to find out if you’ve got a problem, and how to scope out short and long term solutions.

Parameter Sniffing: The Use and Abuse of Plan Re-use – Could execution plan reuse be slowing down your queries? Find out what parameter sniffing is and how to identify if it’s a problem.

Day 2: Find the Code Killing Your Server

Rules, Rules, and Rules – Computers are governed by the rules of physics: electrons, drive heads, and disk platters can only move so fast. Understanding how these rules operate and interact leads to insights into application performance. Understanding why something might perform a certain way makes it much easier to understand the tradeoffs of a specific design.

Seek and Destroy: How to Identify Indexing Problems – Learn how to use free tools to quickly identify anti-patterns like duplicate indexes, missing indexes, unused indexes, and indexes with problematic configuration in SQL Server.

X-Ray Glasses for SQL Server Indexes – You know clustered indexes are important, but you’re not sure how different choices might impact performance. Learn what’s hard to see in the built-in SQL Server tools: the complex relationship between clustered and non-clustered indexes, and how to know when to make a change.

What Queries Are Killing My Server? – The server is slow – but who’s the killer? You’ll learn three free tools to identify which queries have killed the server recently, which queries are killing the server right now, and how to prepare when the killer is about to strike.

T-SQL Antipatterns and Homewreckers – It’s not your fault. There are things that Books Online implies are just fine, but there are all kinds of hidden pitfalls. We’ll show how table variables, parameter sniffing, bad cardinality estimates, implicit conversions, and bad sargability can kill your performance dead.

Developer’s Guide to Dangerous Queries – SQL Server does a good job of working with whatever garbage we throw at it, but sometimes a helping hand is needed to smooth things out. You may have meant well when you wrote that sloppy SQL, but that predicate lurking under the surface is poisoning your performance. This talk will expose your worst habits, anti-patterns, and bad practices. By the time we’re done, your T-SQL will be on the path to make things right again.

Day 3: Design Solutions to Speed Up SQL Server

Caching – The fastest query is the one you never execute. There are as many ways to cache queries as there are to tune queries. In this session, we’ll cover the basics of caching technology, strategies to implement caching, and teach you which queries are good candidates for caching– which queries are going to be tricky.

Indexing Tricks: Techniques and Gotchas – Sometimes you need a special structure to solve tough indexing problems. Learn what heaps, filtered indexes, and indexed computed columns can do– and what weird gotchas lurk in these structures that you need to look out for.

Dynamic SQL – Dynamic SQL is a misunderstood and much maligned part of a developer’s tool kit – it can be used to solve difficult business problems, respond to diverse data needs, and alleviate performance problems. Many DBAs reject dynamic SQL outright as a potential source of SQL injections, being poorly performing, or just for being a hacky solution in general. Not so! We’ll dispel these misconceptions and teach you how dynamic SQL can become a part of your tool kit.

Windowing Functions – Computing running totals, averages by state or group, and other complex aggregations are not easy to implement in many relational databases. SQL Server 2012 includes support for windowing functions. Windowing functions enable complex ranking, ordering, and other aggregations over a portion of rows returned by a query. Understanding the capabilities of windowing functions lets you extend application functionality, build rich and complex queries, and reduce overhead in the application tier.

My T-SQL Tuning Process – You’re in a dark room with an ugly query. What do you do next? Brent shares his time-tested method of tuning queries starting with simplifying, analyzing the execution plan, making index tweaks, and measuring improvements with statistics. You’ll learn a repeatable process you can use to make queries go faster.

Data-Driven Index Changes: How to Tune Indexes and Measure Results – Indexes are critical to the performance of your SQL Server instance. In this demo-packed session, you’ll see how you can use Extended Events to prove that your changes made a difference.

Kendra Discusses the Training Outage Post-Mortem

Kendra Discusses the Training Outage Post-Mortem

Student Testimonials

Don’t take our word for it – here’s what some of our past students have said about this SQL Server Performance Troubleshooting course:

“Very refreshing after attending so many Microsoft training courses. I wish I could send my SAN and server engineers to talk to you guys about what is best for SQL Server!” Alan Dauber, Washington

“Delivered what was promised then went beyond expectations with more handouts, links, and resources than anticipated.” Anne Hills, Maine

“Fantastic. The approachability & patience of our instructors was great. Appreciate how much you share online, and still offer value in person. Well organized and orchestrated. Thanks for being willing to spend dinner with students as well.” John Chertudi, Oregon

“I would simply say I’m much better at my job at the end than I was at the beginning of the course.” Jason Kidd, Texas

Logistics: Hotels, Travel, and Restaurants

During the training, we provide you with breakfast, mid-morning breaks, lunch, and afternoon snacks. Dinner is on you, but during the training, we’ll organize Birds of a Feather groups so you can dine with fellow folks who share the same interests.

Here’s information about travel logistics:

You also get 2 hours of video training to prepare for the in-person training. We’ll cover SQL Server clustered indexes, non-clustered indexes, what the index DMVs will show you (and what they hide), and show you how to find the most resource-intensive queries on your system.

Why This Class?

For weeks (or maybe months or years!) you’ve watched free Brent Ozar Unlimited webcasts. You’ve checked out our online SQL Server training. Maybe you’ve even had the chance to see our award-winning sessions at conferences like the PASS Summit, Microsoft TechEd, SQLBits, and DevConnections. You like those – but you want more, and you want a long, in-depth series of sessions that will arm you for the real problems you face every day at work.

These sessions are all about solving your real pain points. It’s all killer, no filler – all knowledge that you can take back to work and look like a superhero.

The first 20 registrants at each event get a $200 discount plus a personalized, signed copy of Professional SQL Server 2008 Internals and Troubleshooting, the book Brent coauthored. SOLD OUT!


Can’t Wait for the In-Person Training?

Check out our related online courses that you can watch anytime:


About Brent

Specialities: performance tuning, SAN storage, VMware

Off duty: foodie restaurants, travel, bad pop music


About Jeremiah

Specialities: database architecture, teaching SQL, cloud computing

Off duty: Portland food trucks, long walks on the beach


About Kendra

Specialities: query tuning, index rocket science, SSDs

Off duty: drawings, dinosaurs, Spurious Capitalization


The Fine Print: Read our “Refund and Cancellation Policy” here. Want to pay by check or purchase order? Download our order form spreadsheet, pick out what you want, hand it to your company's accountants, and we'll set you up when we get your check.