Book Review – “High Performance SQL Server” by Benjamin Nevarez

There is something about high performance tuning that I find very fascinating. Performance tuning your database server is one of those things that you cannot just pinpoint to a single cause. You must have an overall understanding of how SQL Server internals work to really understand all the areas that you can “tune”, how they all interplay with each other, etc. Without having a grasp on this crucial subject, you will find yourself scratching your head more times than not when learning performance tuning.

Just as it’s important to understand all areas of how SQL Server internals work, it’s equally important to learn it from a reliable, reputable source. It’s easy to fall prey to the endless, unverified posts out on the internet that will do nothing but further add to confusion.

Mr Benjamin Nevarez (bio below) was kind enough to send me a copy of his latest book, High Performance SQL Server. His book is a continuation from his earlier book, “Microsoft SQL Server 2014 Query Tuning & Optimization.”

The goal of this blog is to do a brief review of Mr Benjamin’s latest book and hopefully convince you to add it to your arsenal of “go to” material for SQL Server performance tuning.

High Performance SQL Server by Benjamin Nevarez

High Performance SQL Server by Benjamin Nevarez

The 196 page book is spread over 9 chapters. I will list the chapters below with a brief description of what’s in each:

  1. How SQL Server Works: This chapter is great as it starts from the beginning. The networking protocols used by SQL Server (TCP/IP, Named Pipes, VIA, etc.), ports, SQLOS, Schedulers/Workers, Query Optimization, Joins (Nested Loops, Hash, Merge), and Parallelism are among the wealth of information in this first chapter.
  2. Analyzing Wait Statistics: Introduction to the Waits Performance Methodology. Retrieving wait statistics information via the DMVs and Extended Events.
  3. The Query Store: How the query store can help, using it, performance troubleshooting and live query statistics.
  4. SQL Server Configuration: This chapter talks about statistics updates, tempdb configuration, MAXDOP settings, IFI (instant file initialization), memory configurations, backup compression default, and a whole list of trace flags.
  5. tempdb Troublshooting and Configuration: Structure of a page, different types of pages, tempdb latch contention, using multiple data files, what’s new in SQL Server 2016, and monitoring disk space.
  6. SQL Server In-Memory Technologies: In-Memory OLTP, what’s new in SQL Server 2016 and memory-optimized tables.
  7. Performance Troubleshooting: Performance counters, DMVs and DMFs, and SQL Trace / Extended Events
  8. Indexing: How SQL Server uses indexes, where to use them, clustered/non-clustered/filtered indexes, and index maintenance.
  9. SQL Server Storage: Different storage types, flash based storage, database configuration, database files, fragmentation, VLFs and using tools like Resource Monitor, Diskspd, SQLIOsim and different RAID configurations.

As you can read from the above chapter descriptions, Mr. Nevarez put together a great book that should be part of any database professional’s performance tuning library.

It will definitely be part of mine! :)

About the Author

Benjamin Nevarez (b | t) is a database professional based in Los Angeles, California who specializes in SQL Server query tuning and optimization. He is the author of three books, “High Performance SQL Server”, “SQL Server 2014 Query Tuning & Optimization” and “Inside the SQL Server Query Optimizer” and has also coauthored other books including “SQL Server 2012 Internals.” Benjamin has also been a speaker at many SQL Server conferences and events around the world including the PASS Summit, SQL Server Connections and SQLBits.

Google Wifi Review

Wifi routers have always been a pain in the butt for me. I live in a 3-level townhouse and it’s always been a challenge to evenly distribute the internet across all three floors. Over the past 10-15 years, I’ve tried multiple routers. From name brands like the old Linksys WRT54G router and Apple Airport Extreme, to the lesser known Almond+ by Securifi. The Almond+ was actually great when compared to the rest. The setup and wifi reception was great. The only downside was the router was on the third floor, so the internet speed in the basement was horrible. I started to do more research on how to evenly distribute the wifi and came across products like eero, and Google WifiThese products offer a “3 pack” of routers that work together to give you evenly distributed internet reception.

Google Wifi vs eero

I LOVE Amazon Reviews! First, I checked out both the Amazon reviews for the eero and Google Wifi and the reviews for both are amazing. Second, I compared the price; Google Wifi pack of 3 sells for 299.00 and the eero pack of 3 sells for 454.97 (both via Amazon).

Price

It really comes down to whether you have a budget. The eero 3 pack is 155.97 more than the Google Wifi. Is it worth it? To me it wasn’t. I decided to go with Google. If for some reason my internet was not significantly better on all three floors of my house I planned on returning it and trying out the eero.

Google Wifi Review

Amazon shows the product as “out of stock” so I went straight to the Google store. Google has a 14-day return policy, and they sell it for the same price of as Amazon.

The package came 2 days later…

Google Wifi Review 1

Very neat packaging.

Google Wifi Review 2

Three beautiful, slick Google Wifi routers.

Google Wifi Review 3

Not too big.

Google Wifi Review 4

The instructions are literally on a one-sided card. Very easy to setup, Step 1 Plug it, Step 2 Download Google Wifi app and launch it. The Google Wifi app (itunes), was very simple and sleek looking. It didn’t take much to get all the routers up and running.

Google Wifi Review 5

Everything in the package:

  • 3 Wifi Routers
  • 3 power cords
  • 1 ethernet cable
  • 1 instruction card

Final Thoughts and Internet Speed Results

I placed one router on each floor; third floor bedroom/office, mid-level living room and basement. I ran a speedtest before I turned off my old router, installed Google Wifi and ran the speedtest again to compare results. Below is a screenshot of the speedtest results. Starting from the lowest result (11:33 am) going up is the bedroom/office, living room and basement. As you can see, the download speed drops from 53.81 Mbps on the upper level to an ancient 9.23 Mbps in the basement. The next three results are after installing Google Wifi. All three levels of my house are now at 64-65 Mbps.

Google Wifi Review

I created a little excel document for a clearer BEFORE and AFTER view of my internet reception.

Google Wifi Review 2

Bottom line: For 299.00, it’s cheaper than eero and well worth it! The Google Wifi app is pretty amazing with neat features such as “family time”, easy “guest network” creation, ability to change the brightness of the individual router LED lights, etc.

I LOVE the Google Wifi routers!

Book Review – “Healthy SQL” by Robert Pearl

During my first SQL Saturday event I won a book called “Healthy SQL” by Robert Pearl. I was pretty excited because not only did I win something, but I love to learn about improving the performance of SQL Server. This was a win-win for me.

Robert’s book is titled: “Healthy SQL, A Comprehensive Guide to Healthy SQL Server Performance.” I must say that it is really comprehensive and a must-have in a DBA’s arsenal of go-to material. I highly recommend it.

Healthy SQL, by Robert Pearl

Healthy SQL by Robert Pearl
Healthy SQL by Robert Pearl

Robert begins Chapter 1 with an introduction to Healthy SQL. From explaining why you, as a DBA, should care, what you will learn, to what is a SQL Health Check. Over the span of 10 chapters, Robert details the important task of creating a road map, talks about Waits and Queues, Indexes, Monitoring, HA/DR, as well as surviving an Audit (Chapter 10).

If you’ve always wanted an “A to Z” guide on understanding and implementing SQL Server performance / monitoring on your database environment, this book is it. There are a lot of tools, programs, and scripts out there that can be a little daunting to the beginner. Trust me when I say, take your time and read through Healthy SQL first. It will not only educate you on the tools that matter but give you a better understanding on what to look for when you start “googling” your database problems.

About the Author

Robert Pearl (b | t), President and Founder of Pearl Knowledge Solutions, Inc., is a Microsoft SQL Server MVP since 2009, having received his 5th MVP recognition award. Professionally, he is a solutions-oriented Senior DBA with 15+ years of experience, and is considered a Subject Matter Expert on SQL Server technology.*

Book Review – “Securing SQL Server 3rd Edition” by Denny Cherry

Over the past few years I have been applying DISA STIGs on countless SQL Server environments and never had a “go to” single source that would answer all my SQL Server security-related questions. If not answer, at least guide me in the right direction. That’s why I was super excited when I heard Brent Ozar recommend a book called, “Securing SQL Server” by Denny Cherry’s on his new Office Hours podcast.

I wish I came across Denny Cherry’s “Securing SQL Server” book earlier, but I believe everything happens for a reason so I’m not going to complain.

Securing SQL Server 3rd Edition

Securing SQL Server by Denny Cherry
Securing SQL Server by Denny Cherry

I purchased the latest 3rd edition which includes SQL Server 2014. The book has a little over 400 pages spread over 15 chapters and is extremely easy to read. Denny does a great job taking a dry and boring topic like ‘security’ and making it interesting.

Over the span of 15 chapters, Denny talks not only about SQL Server database related security but network security (Chapter 2), SAN security (Chapter 11), Analysis Services and Reporting Services.

If you’re new to database security, there’s nothing to fear because Denny starts the very first chapter with “Identifying Security Requirements.” He goes over basic concepts and questions such as; what is PII (Personal Identifiable Information), what are security objectives, and how to identify them. So a SQL Server “accidental DBA” or novice won’t feel lost.

SQL Server security is something that a lot of people (including myself at one point) take for granted. It’s a very daunting task to learn and implement security settings within SQL Server as there are a huge number of factors to consider. There is always the fear of “breaking” something. A well-rounded knowledge of networking, windows system administration, database and storage concepts is crucial to understand security as a whole. By including real world client scenarios, Denny does an awesome job explaining these complicated topics in a simple fashion.

About the Author

Denny Cherry (b | t) is a Microsoft Certified Master (MCM), MVP and has over 15 years of experience in all areas of SQL Server such as performance tuning, troubleshooting and system architecture. He is the owner and Principal Consultant for Denny Cherry & Associates.

Podcast Review – Office Hours with Brent Ozar Unlimited

It takes me roughly 45 minutes to get to work. I don’t like to listen to the radio. Last time I listened to the radio while driving I was blasting Pearl Jam, STP, Nirvana (yes, back in the 90s). Nowadays, I spend my driving time pondering about life, work, etc. How can I get better at work? How can I increase my knowledge of SQL Server? (Yes, I actually do think about that) What blogs, books, videos, podcasts are out there at I have not yet read/heard?

Office Hours Podcast

Podcast Review - Office Hours with Brent Ozar Unlimited
Office Hours with Brent Ozar Unlimited

Luckily for me, Brent Ozar (b | t) has recently launched his “Office Hours” live webinar event as a podcast and it’s available on iTunes. I recently subscribed to it and binge listened to all the episodes over the course of two days. (Yes, I binge listened to a SQL Server podcast on my way to and from work. Don’t hate. :)

What I love about Office Hours Podcast

There are numerous things I love about this podcast. First, I love the fact that they get STRAIGHT to the questions. There isn’t any fluff or filler. Second, the content they talk about are questions that you and I ask during the live event recording. So just ask whatever question/s you have during the live event and it’ll be on the podcast for others to listen and hopefully learn from. Last, but not least, I love their sense of humor. Everyone on the team seems to have a great sense of humor which keeps the listener from wanting to press stop. +1 :)

Can it be better?

Since this is an audio-only podcast, it’s crucial to have great audio. There are times during the podcast that I cannot audibly understand what people are saying. I don’t know if it’s the quality of the headset, or earphones / microphone. If they can address the audio quality, then that would be icing on the “podcast cake.”

How to Subscribe

I highly recommend subscribing to this podcast especially if you love learning about SQL Server. In fact, if you leave a rating and review via iTunes, Brent will offer you a 78% OFF coupon code to apply on their video classes! That is a deal you cannot refuse! Find out more details about that here.

My Review of Immersion Event on Performance Tuning and Optimization 1

I was fortunate enough to attend IEPTO1 (Immersion Event on Performance Tuning and Optimization part 1) by Kimberly Tripp (twitter) and Paul Randal (twitter) of SQLSkills this past Spring. It was absolutely amazing! If you are a DBA, developer, or just an IT tech geek who loves to learn then you must attend this event. Find registration information here.

Getting situated…

I flew in on Saturday and stayed with a friend. Some people stayed at the hotel where the event was taking place. I was staying only a couple miles away from the event so it was bad at all.

On the very first day, before class started, Kimberly reassured us that we will not go hungry. There was so much food! Breakfast and lunch was served every day. Snacks, soda, coffee/tea, water were all available throughout the day. The last thing anyone worried about was an empty stomach.

The conference room was a bit chilly but I got used to it. If you easily get cold then I advise wearing a fleece or light sweater.

Agenda

The agenda is no joke. Before I even thought about signing up for this event, I watched SQLSkills MCM videos at least 2-3 times each and still was in for a surprise.

The IEPTO1 event is broken into 11 modules spread over 5 days:

Module 1: Database Structures
Module 2: Data Files
Module 3: Locking & Blocking
Module 4: Versioning
Module 5: Logging & Recovery
Module 6: Index Internals
Module 7: Index Fragmentation
Module 8: Internals & Data Access
Module 9: Statistics
Module 10: Cardinality
Module 11: Indexing Strategies

It was an immense amount of information. I definitely plan on attending IEPTO2.

Kim and Paul encouraged everyone to go back home and practice, practice, practice! They sent us back with demo scripts, notes, homework, printouts, and a few goodies. (see pic below)

SQLSkills Event

On the last day we all got a certificate of completion (see below) and posed for a group picture! Paul asked us to “act silly”…and yes, that is Paul in the back doing what seems like choking (or trying to kiss) Tim Radney. :)

Certificate

Immersion Event Performance Tuning and Optimization