Book Review: SQL Server Hardware
As Ben blogged about this week and I’ve always addressed in my various posts and sessions, DBAs need to know more than just how to make backups and tune queries. This includes the layers under SQL Server, including the hardware. Historically, there haven’t been a lot of resources to help a DBA when it comes to hardware and understanding it from a SQL Server perspective … that is until Glenn Berry’s (blog | Twitter) book SQL Server Hardware (Simple Talk Publishing, 2011). Truth be told, the book has been in my queue for awhile. So is it worth buying or something to skip? Read on and find out.
I don’t envy Glenn. As a fellow author, writing a book on a topic that on the surface seemingly doesn’t cater to as large of an audience as it probably should, you need to really need to think if you’re even going to tackle it. You’ve got to really love it to devote the time and energy. Knowing Glenn personally, I can say he’s definitely passionate about the topic (as I am about all things HA), and it is reflected in this book. As a fellow gearhead, I can relate to his love of hardware.
The book covers most of the topics you’d expect: processor (CPU), memory, disk and I/O, as well as things like the differences in the various Windows and SQL Server versions which will ultimately live on that hardware that is central to this book. Glenn does an excellent job at covering the basics that DBAs and those deploying SQL Server would need to understand. The best part is that it is well written and very easy to read, so even some topics that may be obtuse for “just” a DBA they will grasp with ease. That’s a hard thing to do, so kudos to Glenn there. His experience in this area really shines thorough and he gives some practical advice throughout with real world examples. It’s not like he’s saying to go spend $1,000,000 on hardware and catering to an enterprise audience; that’s a book that would have a very limited appeal and use out there. As is, it’s a book targeted just right if you ask me.
I do wish the book did cover some topics in more detail, had a few clarifications, or included some additional topics. Here’s a quick list off the top of my head:
- While the discussion on benchmarks (like TPC) is definitely worthwhile, I would have rather seen content on how to baseline your systems and then how to continually benchmark over time to understand your system changes over time.
- Some advice around the politics of some of getting all of this done. That’s a big aspect of any deployment.
- More discussion on tradeoffs, and addressing topics like storage capacity vs. I/O needs.
- Some HW (esp. older systems) requires that to get the full memory goodness, you need to populate N slots.
- There are more levels of RAID than what are presented (and some storage has proprietary). Big it depends there.
- A chapter on the importance of testing would be great to compliment the technical stuff.
- Putting links to the MS lifecycle charts since they can change. That may have also saved a little space, too.
- Windows updates (specifically SPs) are not necessarily cumulative. SQL Server’s are.
- How to monitor and more specific performance counters to look at for certain things on an ongoing basis
Honestly, these things really are minor and do not affect the quality of the book at all. I can nitpick because this is a topic I know well. The bottom line is that this book is one of the few – and excellent – references for you to be able to understand what you really need to think about when planning the hardware for your deployments. If you haven’t picked this one up, I highly recommend you do. If you’ve only got a few books on your SQL Server shelf, this should be one of them.