I have known Denny Cherry for a while now, consider him a friend and was always impressed with his SQL Server knowledge. I asked him to do an interview and as you can see he agreed.
Denny, the first time I came across your name was in online forums. Can you explain to us why you participate in newsgroups and forums?
I feel that as someone who has learned a decent amount about Microsoft SQL Server, it’s my responsibility to help make sure that others have access to the same information. I could easily keep the information to myself, but in doing so I’ll only be shooting myself in the foot later on. At some point in the future I’m sure I’ll end up in management at some level, and I’ll want DBAs that have the knowledge working for me. I feel that the best way to do that is to make that the information stays out there circulating. That and it’s fun talking to other people who work on databases.
Name three things that are new in SQL Server 2008 that you find are the most valuable?
The new features which I’d say top my list are the Resource Governor, the Data Collection functions, and the new data types which have been added.
What are some of your favorite high availability features in SQL Server?
Clustering is my personal favorite high availability technique to use with SQL Server. It is a great way to create a local HA cluster. When going between data centers clustering gets very difficult to do if the data centers are more than a couple hundred miles apart which is where I really like to see Database Mirroring step up and take the workload. Between the two techniques you could create a database solution which is virtually impervious to either a system failure or a datacenter failure.
Can you list any third party tools that you find useful to have as a SQL Server developer/admin?
I am a huge fan of several of the Quest Software tools. My favorites among them are Spotlight for SQL Server Enterprise and Lightspeed for SQL Server. Spotlight gives a nice easy to view look at the entire enterprise, and Lightspeed has saved us a fortune on our monthly backup costs at our co-lo.
What are the most important things a person can do to master Transact-SQL?
I follow the “necessity is the mother of invention” technique, probably more aptly the “necessity is the mother of learning”. I don’t have the ability to sit down and read a reference book. If I don’t have a need to pick up the new skill for a project then I really don’t get into it. I’ve found that the way that I learn new skills is to come up with a project and build it. It may take me forever, and probably won’t ever get done, but I learn tons during the process. I picked up T/SQL the same way. I needed to get something done, so I grabbed the book and started thumbing through the index until I found what I was looking for.
How much Transact-SQL does an admin really need to know?
A DBA certainly doesn’t need to have as much knowledge of T/SQL as a database developer, but you should still know a good amount of T/SQL. You are going to need to be able to read the T/SQL which the developers give you to roll into production, as well as be able to performance tune that T/SQL. Knowing the UI is good, but you won’t be able to get into the really senior level positions without a good amount of T/SQL knowledge.
You were managing one of the largest SQL Server installations in the world, supporting more than 175 million users. I know when you go from million row tables to billion row tables it is a whole new ballgame, What kind of mindset shift is needed to be able to support such a large SQL Server installation?
When dealing with tables that large in an OLTP environment you have to take a new approach to data management. Normally when we look at deleting data we want to delete all the data in a single transaction. When dealing with tables this large and users hitting the tables every second, you can’t afford to lock the table for an hour while you delete the data. Because of this you have to look into doing all your data operations in small batches of a few thousand at a time. While this takes a lot longer to complete, your locks are held for only a split second so the users never know that the operation is happening. With data growth rates as high as MySpace’s installation we were constantly battling against the fact that we were growing the data faster than the SQL Server could process the statistics automatically.
What are some of the biggest SQL Server setup mistakes that people make besides putting all the files on one drive?
There are lots of mistakes which are very easy to make. Probably the biggest that I see is that people do not correctly align their disk volumes. This is when the boot sector is left at 32k causing the disks to do twice as much work as they need to. Another big mistake that I’ve seen is not having enough RAM in the SQL Server. These days RAM is not that expensive (until you want to put over 64 Gigs in a server), there just isn’t an excuse for not having enough RAM.
What SQL Server books are on your bookshelf?
My book shelf is surprisingly empty. I have a bunch of SQL 2000 books sitting around, and a few SQL 2005 MS Press books that I was given when the SQL 2005 Exams hit the street. I can’t remember the last time I actually opened them was though. These days my book shelf is google.com.
Where can we expect to see you in 2008/2009? Any conferences, seminars or trade shows perhaps?
I’ve got a busy schedule for the rest of 2008.
On October 16th I’ll be speaking to the Orange County, CA SQL Server Users Group.
On October 22nd I’ll be part of a webcast for Quest Software’s Quest Connect 2008 web conference.
On October 25 and 26 I’ll be speaking at the SoCal Code Camp (it’s the weekend before and right next door to PDC, so just fly in a couple of days early).
On November 17th and 18th I’ll be attending the Quest SQL Server Customer Advisory Board Summit where I’ll be speaking with the Quest Software Customers and other Advisory Board members.
On November 19th through the 21st I’ll be attending the PASS summit. I’m not speaking this year, but I’ll be happy to say hello to anyone who walks up to me.
The last thing I have scheduled for the year is the .NET users group in Riverside County, CA has asked me to come and speak to them. They are as far as I know about the only users group near my house, so I simply couldn’t turn them down. I’ll be speaking to them on December 9th.
So far my schedule for 2009 is pretty light. I’ve got the MVP summit on my schedule, as well as EMC World. Once PASS schedules the 2009 summit that’ll be there as well. I know that we will have a couple of SoCal Code Camps next year (we had three this year), so I’ll be speaking at them again. And of course I’ll be speaking at any user groups that’ll have me.
Thanks to Denny and if you want to know what Denny is up to with SQL Server then check out his blog here: http://itknowledgeexchange.techtarget.com/sql-server/