Starting Wednesday of last week I was able to attend the local SQL Server User Group and then that Saturday I attended SQL Saturday #87 in Louisville, KY! There was a ton of learning going on!
At the Charlotte User Group meeting, Brian Knight showed us some of the management improvements that have been made for SQL Server 2012. I have to say I like what I’m seeing. I’m really interested in looking into what all is stored in the new SSIS database. It looks like there are some performance metrics being recorded. I wonder if any of the third party monitoring tools will start including this data in their monitoring solutions. Overall it looks like SSIS will be come much easier to deploy! From keeping track of past versions of your packages, to deploying packages as solutions rather than individual packages…I like the direction this is headed.
After I’ve completed my 70-450, I can see spinning up a SQL 2012 CTP3 instance and playing with these improvements! And of course, digging into the performance tuning aspects!
I took Friday off, so I could split up the drive from Charlotte to Louisville. I wanted to be completely fresh for the SQL Saturday event. I was planning on hitting the advanced track pretty hard, and needed my mind to be a ready as possible to absorb!
After the keynote, I hit Choose your own Adventure: Performance Tuning presented by Tim Chapman and Thomas LaRock. It was a great session. Very interactive. It was good to know my jumping to the exec query stats in response to “The server is slow!” isn’t premature. It was good to see others’ thought processes in addressing the slow server scenario.
I was a little surprised by the root cause of the issue. I’m not giving anything away, but I had never even considered the possibility, until Tim scripted the database objects and I could see for myself!
Next up was SQL Server Memory Deep Dive with Kevin Boles. I know I’ve got a lot more to learn about how SQL uses memory, and how to squeeze more performance out of your servers by changing memory set ups. This session only underscored that point. I’m definitely going to do more reading on memory over this next year. I’ve got to understand how to figure up what memory settings to use for different servers. I’m also going to have to learn how this can change when dealing with virtual servers too.
The two take-aways for me were: looking into the memtoleave settings for 32-bit instances of SQL Server, and checking out articles by Adam Machanic on workspace memory.
Then I headed over to TempDB Performance Troubleshooting and Optimizing with Eddie Wuerch. During this class I learned to question my use of table variables over temp tables. He showed us how to use fn_dblog to look at what was happening in the tempdb log file when we set up table variables.
I was shocked to see that it took 3 times as many actions to set up a table variable over a temp table. Then consider the fact you can re-use a temp table. I’m definitely going to research temp tables more when building solutions going forward. I want to consider temp tables more when building code that will run multiple instances at once.
Eddie also showed us DBCC PAGE (DB_ID(), FileID, Page#)…I need to do some reading, and exploring here. I also need to dig further into what DBCC can do. Looks like I’ll be hitting up Paul Randal’s articles too.
After lunch I sat in on another one of Eddie’s sessions Page Latches for Mere Mortals. While some of the material crossed over from his previous session, there was more information, and yet more reasons to get to know how SQL uses memory.
I ended the day by presenting Database Design for developers. I have to admit I was a little more nervous about this session because Louis Davidson (@drSQL) was on the front row.
He wrote books on database design.
While this was one of the oldest sessions I’ve given (my first time was at IntegrationPoint for their incoming hires). I was still a little nervous. Looking at the reviews it looks like more than half the class got something from the material.
Only three said they didn’t get anything from it. I did mark the class as being a beginners course, so I’m not sure how much more to cover, without losing those who really are beginners.
Seven gave me less than stellar reviews on “the presentation was technically well done.” I think that means most people approved of my prezi.com slides. I’m going to hand these over to my graphic design friends and see if there is any ideas they have on making it more pleasing to the audience.
Six gave me less than perfect on “The presenter was clear and to the point.” I think I can do better here. Since I was so nervous I may have been able to keep on track a bit better than I did. But this is a tough one to balance when I’m building audience participation. I’m definitely going to work on keeping on point.
Three people thought I could do better on audience participation. I really thought I had this one. I do have to say this audience was much more into the presentation than my usual class. I do think I’ll consider bringing candy or some treats to toss out to reward participation (above and beyond the two books I was given to hand out).
This was my second and final SQL Saturday I presented this year. My goal is to at least double that next year. But looking on the SQL Saturday site between now and March, there doesn’t appear to be any event scheduled I can drive to. Looks like I’ll do some research into presenting virtually! I want to improve my presenting skills, and I want to give back to the community that helped me get to where I am today.
For now, I’m off to study for the 70-450. I’ve got to find some online references to calculating table size. I’ve got the basics of adding up the sizes of columns, but what about index sizing?
Hey, if you have any topics you’d like me to cover, let me know! I’m here to help.