The Recording
The Panelists
- Kevin Feasel
- Mala Mahadevan
- Mike Chrestensen
- Tracy Boggiano
Notes: Questions and Topics
PASS Summit Discount Code
If you’re looking at going to PASS Summit in Seattle this year, use the discount code Azure175 to save $175 off the cost of registration.
Least Privilege and SQL Server
Mala started us off with a fun(?) question about whether anybody actually implements the principle of least privilege with SQL Server. We got into the discussion quite a bit but my short version is, the principle of least privilege is an aspiration. Solomon mentioned module signing as the answer. My counter-point is that yes, module signing is the right tool but least privilege is as much a people & process problem as it is a tooling problem. The tool allows you to get there if and only if you have the people and process in place to do so.
Bro, Do You Even GROUPING SETS?
After that, we talked about a topic from Mike: grouping options, including CUBE
, ROLLUP
, and GROUPING SETS
. I like ROLLUP
for hierarchical data, such as Country -> State -> City
. I don’t much like CUBE
and I’ve never found a really good non-trivial example for why I’d use it. GROUPING SETS
, however, is a top-notch operator. Read on for more info here.
Hardware for Practicing SQL Server Operations
Mike also asked for some hardware recommendations for doing “real” query tuning work with SQL Server. We talked about physical hardware, cloud VMs, and simulating weak networks (a trick I learned from Kendra Little).
Remembering the Basics
Our last topic came from Tracy and is around how easy it is to forget the “basics” when troubleshooting, especially in new environments. We make a lot of assumptions around the state of a system and sometimes those assumptions come back to bite us. Tracy’s example was using a balanced power plan on a server running SQL Server, thereby throttling CPU. We talked about the importance of checklists on the air but I want to expound on my thoughts just a little bit more.
Checklists are critical for troubleshooting but so is the right mindset. That mindset starts with careful reading and paying attention to available signals. That means reading error messages and understanding the content, which can sometimes be enough right there. Error messages often don’t do a great job of explaining themselves so it probably isn’t enough. Knowing where to look for more information, especially in non-destructive ways, is also vital. Some of this is “in-built” in the sense that it’s attitude but it is attitude which you can train into people. The rest is knowledge that you gain over time, and that’s what gets converted into the checklist.