Author Archives: Wes Brown

About Wes Brown

Wes Brown is Vice President at Cantata Health and maintains his blog at http://www.sqlserverio.com. Previous experiences include Product Manager for SQL Litespeed by Quest software and consultant to fortune 500 companies. He specializes in high availability, disaster recovery and very large database performance tuning. He is a frequent speaker at local user groups and SQLSaturdays.

SQLDIY: Tracking Wait Stats

One of the most important methodologies to date for troubleshooting problems with the SQL Server engine is examining the wait statistics. As with most of the DMV’s provided in SQL Server 2005/2008 sys.dm_os_wait_stats is a cumulative view. To add to my series SQLDIY: Manage and Monitor SQL Server Yourself  here is my stored procedure for capturing deltas on an ongoing basis. It is modeled the same way I capture sys.dm_io_virtual_file_stats. This procedure captures the delta and the raw data at a point in time. This allows you to do your own roll ups to look at the numbers in different ways. Another reason I do this is to capture what happened before the problem and right at the beginning as the customer started reporting the problems. Starting with the slide deck from Joe Sack (blog|twitter) on Performance Tuning With Wait Statistics as a foundation and working through the links provided, you will be able to get up to speed quickly.

Link to the script Gather Server Wait Stats

I’m hosting all my scripts from this series on GitHub as I do with all my open source projects.

As always, if you find any bugs please let me know and I will correct them!

Your Homework:
SQL Server 2005 Waits and Queues Tom Davidson
SQL Server Waits and Queues Robert Pearl (blog|twitter)
SQL Server 2008 DR, Testing, Waits and Queues Jose Barreto (blog|twitter)
Drum Roll, Please…The Debut of The SQL DMV All-Stars Dream Team! Jimmy May(blog|twitter)

Specific examples on using wait stats:
Diagnosing Transaction Log Performance Issues and Limits of the Log Manager Mike Ruthruff (blog|twitter)
How do you measure CPU pressure? Tom Davidson

SQLRally, SQL Saturday and The Summit

“Gotta say it was a good day…”

-Ice Cube
 

On The SQL Saturday Circuit

I’ve been speaking at all the regional SQLSaturday events I can go to. I kicked off the year with SQLSaturday #57 in Houston. Then did a turn around to SQLSaturday #63 in Dallas, my second one there. I have submitted to Baton Rouge figuring I could drive it but after that I’d be tapped out on vacation time and money. Lucky for me, Idera started the A.C.E. program and chose me as part of the very first group to sponsor for this year. I’m now gearing up to submit to more SQLSaturday’s. Hopefully I’ll get picked!

Is this Thing On?

From Thomas Wanhoff via Flickr

I did my first live webinar on Idera’s Secrets of SQL Server  webcast series. It was a three part series over SQL Server and storage technologies. My first part pulled in around 900 people. Part 2 around 500 and part 3 around 350. All in all, I would call it a success. I had a great time doing them. I was terrified to do them. I have done a ton of public speaking and a short stint in radio broadcasting, but this felt completely different. It was in a way. I couldn’t just ham it up like I would on the radio and not having the feed back from a live audience made it difficult to tell if I was going off the rails.

On The National Stage

I was notified by SQLRally that I would be presenting my storage talk at the very first event in Orlando. I was stunned. First, that I made the initial cut. Secondly, that I was chosen by all of you over so many other great abstracts and speakers. I resolved to make this the best presentation I could. Later, I got the call that I had been chosen for a 90 minute deep dive session. I knew I could carry 90 minutes with the amount of material I’ve got handy so that wasn’t an issue. Not wanting to disappoint those who attended was though. Just to keep things interesting, I helped perform eScan’s first move into a real data center, got the flu oh and resigned to go to work for Dell. All of this right before SQLRally. My last day at work was on a Tuesday, I left at lunch got on the plane to Florida an gave it my all. The reaction was just overwhelming. The amount of people that kept coming up to me through the rest of the conforince to let me know how much they liked the session was just staggering. People that I’ve known for years kept telling me just how solid it was. I didn’t disagree with them but when I got the evaluations back I knew I’d knocked it out of the park.  They also just announced the top rated speakers and I came in number second, Adam Jorgensen (twitter|blog) just squeaking past me. I would have been jazzed just to be in the top 10. Again, I am humbled to be in such excellent company.

The Big Show

If all of that wasn’t enough I got the nod. For years I’ve dreamed of speaking at The Summit. I’ve been to almost every one of them. I submitted two sessions. My talk on the fundamentals of storage got the green light and my solid state storage was selected as an alternate. What do I say? I’m humbled, honored and very excited to be a speaker at the premiere SQL Server event of the year.

Now What?

I’m not sure to be honest. It is only June. I’ve got more stuff to get done for the local and regional PASS chapters, a SQL Saturday to host in Austin by the end of the year. I got to say, this is going down as one of my best years ever serving the SQL Server community.

Speaking at SALSSA June 15th 2011:Understanding Storage Systems and SQL Server

I am very exicted to be speaking at the San Antonio PASS chapter SALSSA! It’s been way to long and I look foward to catching up with Jim Steiner the coordinator. I will be giving my favorite talk Understanding Storage Systems and SQL Server. It has been updated and improved as well.

There will be free pizza, great people and as always, I’ll answer as many questions as possible!

When: Wednesday June 15th, 6:00pm – 8:00pm
(Always the third Wednesday of the month)

Where: New Horizons, San Antonio TX
8200 IH 10 West Suite 500

Lan Sleep/Wake Up Tool

Lazy Is The Mother Of Invention

I write little tools from time to time that I need to manage my personal lab. Since my machines are in their own powered and air conditioned closet it isn’t very convenient to get up, open the closet, get slammed by the noise and turn a machine on. And, I don’t want to leave them on all the time if I’m not using them. I’m no Paul Randal (blog|twitter) but I do use between 4000 and 5000 kilowatt hours a month.

Enter Innovation!

So, since I couldn’t find a simple tool to handle this I wrote one! LabWakeUp is pretty easy to use.

Don’t blink, you might miss it

I looks for a text file called servers.txt. This file should have one server name per line. The program loops through them and tries to get a MAC address via system call (a.k.a P/Invoke) to the windows dll that handles ARP calls. It then writes these to another text file called serverMACs.txt that has, you guessed it, a server name and a MAC address if one could be found. You can manually put entries in this file if you like. I personally don’t like hunting around for MAC addresses then typing them into anything if I don’t have to. You only need to fill in the windows user name and password if you want to wake a machine up.

They Are Undocumented Features!

When you start it up nothing is displayed while it goes through the servers.txt file. Again, lazy strikes, I may fix it later it is just annoying and not a “bug”.
In the serverMACs.txt if a server isn’t found it may be a bogus MAC address. This is most defiantly a bug and will be addressed.
The serverMACs.txt isn’t updated if a new MAC is found. You have to delete the entry and let it rediscover it.

Improvements Are Coming… Eventually!

Asyncronus multi-threaded MAC discovery. This will grey out a portion of the tool but make things more tolerable.
Discover MAC on new entries only. So, if there aren’t any new names in servers.txt we won’t do the MAC lookup.
Update MAC entries. Yep, just update the MAC entries that we know about

Finally…

If you end up using this tool let me know! I’d like to think that some of the things I build are useful to others too.