You probably only buy a couple of SQL Servers per year. You probably just tell your sysadmins, "I need a 2-socket server with 32GB of memory," and then you just assume everything's okay.
Scratch that. Let's be honest. It's just us here, you and me, so I can be frank. You don't trust those bozos. They sit around playing Capture the Flag while your server is down, and you've got a sneaking suspicion that they use your server as a BitTorrent host for a few weeks before they actually give it to you. You're lucky if it's even got the right OS, let alone the right CPUs.
Yes, I used pink Post-It notes.
It's time to take the problem into your own hands, and Glenn Berry is here to help. Glenn, like me, is a hardware addict who loves reading Anandtech and digging through the details of the latest CPU architectures, memory configurations, and storage options. Unlike me, Glenn wrote an entire book on the topic, all by himself, and this book kicks ass. It's everything you need to know to get the right hardware and get SQL Server set up correctly on it.
Hardware, Budgeting, and More
Let's pick just one page. Page 21 explains the difference in speed and quantity for all kinds of data - storage, memory, L3 cache, L2 cache, and L1 cache. Glenn then explains why you care about each and how to pick the right CPU for SQL Server. He finishes up (we're still on page 21, mind you) by discussing why you might want to invest more in CPU power than memory - something that seemed blasphemous to me until I read his explanation, but now I'm sold too.
The book covers more than just hardware details, though: Chapter 6, SQL Server Version and Edition Selection, does a better job of explaining the business benefits of Enterprise Edition better than anything I've ever read. Glenn gives a personal touch when he writes about each feature, and gives real-life hands-on-based advice about the feature's worth. For example, Distributed Partitioned Views sounds great in theory, but I've never seen it scale well. Glenn points out why Data Dependent Routing is a better solution. What, you haven't heard of that? Probably because it's not a SQL Server feature - it's a better way to design applications and databases, and it doesn't require Enterprise Edition. He doesn't teach you how to do it, but like everything else in the book, he points you where to learn more about the topic.
The Bad News
I read books with a stack of Post-It notes at my side. Whenever I see something that really surprises me - good or bad - I slap a Post-It note on the page with the edge just ever-so-slightly sticking out, and I jot notes on the Post-It. I have this thing about not writing on books - probably comes from my childhood years spent at the library. At the end of the book, I circle back and reread the tagged pages. If there's more good stuff than bad, I post a review on the blog.
Going back through this book, I only had one single negative Post-It. Chapter 4, Hardware Discovery, explains how to use CPU-Z, MSINFO32, Task Manager, and Computer Properties to build an inventory of what your SQL Server is running on. After reading that chapter, I was a little bummed that it didn't explain how to gather an inventory of storage data, or how to get more in-depth hardware information from onboard management systems like the HP iLO or Dell DRAC.
But then it hit me: this is a 321-page book exclusively dedicated to evaluating, buying, and installing SQL Server hardware. 321 pages of technical goodness, and my only complaint is that it's not long enough? There's never been a book like this before, and it's a Herculean effort for anyone to pull off alone, and do it accurately. Glenn pulled it off. I didn't find a single inaccuracy in the entire book, and believe me, that's a rarity. I even liked the cover photo of power plant cooling towers, a subtle joke about overclocked processors.