Blog Post

A second week at SQLskills – performance tuning



Back in February, I was lucky enough to attend a week of training on SQL internals from the people at SQLskills in Dallas, Texas.

I felt that I learned that much there and enjoyed myself so much that the journey back across the Pacific from New Zealand for the remaining 3 weeks would be well worth it. Yes, it took a while to convince my employer of the value of this, but eventually I succeeded and now I find myself in Seattle completing the remaining three weeks of training.

We’ve managed to combine the remaining 3 weeks of the course with a family holiday back to the UK, so essentially we’ve just broken our flights for three weeks or so in the pacific northwest. This cut down on expenses for my employer and I was happy with that, so it’s a bit of win-win situation really – we’ll also be in the UK for SQLbits in Liverpool, which is about 10 miles from where I grew up – so maybe we’ll be able to make that too.

Last week was the first of those three weeks and the subject was Performance Tuning – an area that I’ll happily admit to being one of my weakest areas of the entire database product.

The three SQLskills instructors Paul Randal [blog | twitter], Kimberley L. Tripp [blog | twitter] and Jonathan Kehayias [blog | twitter] really need no introduction from me here.

And so the week started with a quick recap of some of the more important concepts from the first week of internals, and I even found myself learning new stuff here, although I suspect my notes have a lot of duplication from the first week.

Then it was straight into waits and queues, with some excellent explanations and demos from Paul – most of which I’m looking forward to working through again in my own time.

Tuesday seen Jonathan get his turn on stage to introduce us all to core concepts of disk arrays and SANs. My personal background is in database development and so quite a lot of the material here was reasonably new, but it was explained well, and now at least I have the confidence to have a decent conversation with our infrastructure people :) An excellent module on NUMA was also presented – plenty more reading for me to do there also :)

Wednesday was the day I had been looking forward to the most, extended events – and could we have asked for any better teacher than Jonathan!  And he even covered a lot of stuff above and beyond his excellent blog posts on the subject.

Thursday seen Paul back on stage explaining Resource Governor in depth, a feature that I’d never had any real need to use but had experimented with on a test machine. Then Kimberly got her turn on stage to talk about DMVs related to plan caching – Kimberly’s always pretty passionate about the subject she lectures on and that just makes them even more interesting!

Friday seen Kimberly remain on stage to talk about performance data collection, MDW, policy based management and the like, before Paul and Jonathan came back to the floor to show off several more DMVs to help track down issues related to IO and memory (amongst other things).

Apart from things we learnt in class, the SQLskills guys had arranged for a few other events to take place, SQLSentry presnted to us on Tuesday night. On Wedneday, Robert L. Davis [blog | twitter], from the MCM program came in to chat with us all before a few of us headed down to the Pacific Northwest SQL SERVER users group to hear Gert Drapers [blog | twitter] speak.

On Thursday Conor Cunningham [blog] from the query processor team came in for chat with us all and answered questions for about an hour or so.

So, that was my first week back at SQLskills – and my second week in total. Next week it’s all about high availability, which I’ll be blogging about too at some stage – see you all then.

Have a good week.





You rated this post out of 5. Change rating




You rated this post out of 5. Change rating