My trip to the meeting, short as it was, involved some of the worst driving conditions I've ever personally encountered. It was coming down in sheets and I was doing 40mph on I-95. Before you roll your eyes about how I'm one of "those guys", note that only 2 or 3 people passed me for the several miles that I drove that speed, and they were still going under 50. It was bad. If I didn't need to give a presentation at the meeting I'd probably have waited till later or skipped the evening. Overall, I think the weather had a large impact on the attendance for this meeting(we only had 8 or 9 people), which is really a shame because it was a great presentation. In any case , had a couple slices of Domino's Pizza ("New recipe" apparently involves melting a couple sticks of butter over the top of the pizza.), gave a quick presentation of all the upcoming SQL/Dev events that I knew about(after quickly adding the Orlando Code Camp thanks to a comment from another member... pretty sad that I missed that one) and cleared the way for David Pless.
I really enjoyed the presentation. Tons of information (We didn't even get through half of what he had slides for and he has offered to come and give us a part 2 to cover some more of it). One thing I particularly enjoyed about the presentation it is that he makes an effort not to just throw out 'best practices'; but explains the reasoning behind them and why they don't always apply. This is a very important element that is all too often overlooked. SQL Server is so broad and there is so much to know that I think it's common to know 'to do' something without actually knowing why. Without that knowledge, you can't make an educated decision on when not to apply the rule instead of the exception. A couple things I took out of the meeting were:
- How to better diagnose server level performance problems and what not to use as symptoms.
- Auto Update stats can be set to asynchronous so that it doesn't add the overhead to the process that triggers it.
- Using local variables in a query can impact the performance vs. hard coded values. Adding WITH RECOMPILE can sometimes address this. This is somewhat vague... it behaves somewhat similarly to parameter sniffing... but it's not quite the same. I intend to do some research on the specifics here when I have some time and will post what I figure out.
The World of Loud Music
After the meeting, we all(only 1 person didn't come with) headed over to World of Beer to have a brew or two and some less formal banter. When we weren't going deaf from the obnoxiously loud outdoor speakers that they kept turning up, we had some great conversation. Thanks again to David Pless for driving down and sharing his knowledge and experience with us. I'd encourage anyone in the area to come on by for our next meeting on April 8th, where Herve Rogerro will talk about SQL 2005/2008 performance. If you're not in the area, I'd encourage you to see if there is an active users group near you.
Note: I uhh... 'borrowed' the format of this post from Jack Corbett because I really liked it. Thanks Jack!