A Shot of SQLEspresso

SQL Blogs by Monica Morehouse (Rathbun)

  • Home
  • Session Downloads
  • Event Calendar
  • PASS
    • Hampton Roads SQL User Group
    • SQL Saturday
    • PASS WIT VC
  • DCAC
  • Contact Me
    • Disclaimer
  • Home
  • Session Downloads
  • Event Calendar
  • PASS
    • Hampton Roads SQL User Group
    • SQL Saturday
    • PASS WIT VC
  • DCAC
  • Contact Me
    • Disclaimer

No Widgets found in the Sidebar Alt!

  • Back to Basics,  Performance Tuning

    DMV’s for the Beginner

    May 15, 2019 /

    I give performance presentations at many different events to all levels of SQL Server professionals. Over time I’ve noticed that some DBAs and developers have never looked at the dynamic management views (dmv’s)  that are available within SQL Server starting with SQL Server 2005. These DMVs are useful means to determine what is going on with a particular SQL Server instance. So, in this post I am going to list a few of my very favorite DMVs as a reference for those who may be new to them. Performance Tuning These dynamic management views are what I use first when looking to any performance issues or I need to know…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Approximate COUNT DISTINCT

    January 3, 2019

    Initial SQL Server Configurations

    October 19, 2015

    Time for a Change

    April 17, 2017
  • Back to Basics,  Performance Tuning

    What is Implicit Conversion?

    April 17, 2019 /

    Another quick post of simple changes you can make to your code to create more optimal execution plans. This one is on implicit conversions. An implicit conversion is when SQL Server must automatically convert a data type from one type to another when comparing values, moving data or combining values with other values. When these values are converted, during the query process, it adds additional overhead and impacts performance. Here is a great chart by Microsoft that shows you conversions and which will cause an implicit or explicit conversion. In this post I will not go into explicit, just know that is what you explicitly tell SQL Server to CAST…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    What does this little check box do? Query Governor SQL Database Setting

    September 13, 2017

    The FAST number_rows Query Hint

    October 16, 2019

    How to Get Started with Always Encrypted for Beginners Part 2

    December 13, 2017
  • Back to Basics,  Performance Tuning

    What’s a Key Lookup?

    April 3, 2019 /

    One of the easiest things to fix when performance tuning queries are Key Lookups or RID Lookups. The key lookup operator occurs when the query optimizer performs an index seek against a specific table and that index does not have all of the columns needed to fulfill the result set. SQL Server is forced to go back to the clustered index using the Primary Key and retrieve the remaining columns it needs to satisfy the request. A RID lookup is the same operation but is performed on a table with no clustered index, otherwise known as a heap.  It uses a row id instead of a primary key to do…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Trouble Shooting Little Jewel -Windows PSR (Problem Steps Recorder)

    March 29, 2017

    The Case for Scooby-Dooing: Solving SQL Server Mysteries Like a Pro– Scooby Dooing Episode 8

    October 8, 2025

    Scooby Dooing Episode 10: The Case of the Copy-and-Paste Consultant

    November 4, 2025
  • Back to Basics

    Enable Mail Profile – Back to Basics

    March 13, 2019 /

    I’ve seen many people go through the trouble of setting up database mail and configuring SQL Agent Alerts only to realize it’s not working. The reason in the cases I’ve seen is because they have simply neglected to assign a mail profile to SQL Agent. This is way more common than you would think, thus I wrote this quick blog. This check box and drop down can sometimes lead to hours of troubleshooting if you don’t know where to look. In order to receive the alerts, you must enable a mail profile. This would be the profile  created during the Database Mail configuration process. To configure SQL Server Agent to…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    How to Get Started with Always Encrypted for Beginners Part 2

    December 13, 2017

    Invest in Yourself Stop Making Excuses

    October 22, 2019

    Eliminating Unnecessary DELETE Operations

    February 27, 2025
  • Performance Tuning

    How Your Hypervisor Can Impact Your CPU

    March 6, 2019 /

    Recently I had a client complain of chronic high CPU utilization. The performance of their SQL Server had degraded, and it appeared to be related to higher than normal CPU utilization in conjunction with symptoms of unresponsive user queries.  The root cause was twofold—a third party hosting provider had overallocated virtual processors on the physical host where the virtual machine (VM) running SQL Server was residing, as well as a recent upgrade from a version of VMWare that was not patched for Spectre and Meltdown. The host had 16 physical cores and was hyperthreading (making it effectively 32 cores) until the hosting provider patched from VMWare 5.5 to a newer…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Please Don’t Do This! Default Index Fill Factor

    September 6, 2017

    Scooby-Doo and the Mystery of Cloud Costs (Let’s have some fun!) – Scooby Dooing Episode 1

    August 25, 2025

    So How Did It Go?

    September 28, 2015
  • Azure

    Azure Key Vault Logging

    February 20, 2019 /

    Following up from last week’s post on Azure Key Vault in this blog I will show you how to the setup Key Vault logging I mentioned for auditing access and usage of your key vault. Once we walk through the process of enabling your logging, we will configure Azure Log Analytics as a way to analyze that data. Azure Log Analytics uses advanced analytics and machine learning to analyze your azure log files. It adds intelligent insights to your monitored data such as Key Vault usage and access  as well as latency in key retrieval from your Audit Event Logs. Here is the PowerShell Script you can use to enable…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Add Azure Cache for Redis to Your Azure SQL Performance Tuning Toolbox

    July 14, 2021

    So How Did It Go?

    September 28, 2015

    The New Public Speaking

    April 29, 2020
  • Azure

    What is Azure Key Vault?

    February 6, 2019 /

    Keys and secrets (AKA passwords)  are an essential part of data protection management not only on-premises, but within the cloud as well. One of the many advantages of cloud is the ability to have a secure, persisted key store. If you have used a password manager like Keepass or 1Password, you can consider Azure Key Vault to be an enterprise level password manager, but also a lot more. One of the functions that Azure Key Vault supports is for you to keep small secrets such as passwords, tokens, connection strings, API keys as well as encryption keys and certificates in a safe tightly controlled secure location in the cloud. It…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Master of None

    October 8, 2015

    Ooops! Was that me? (Blog Challenge)

    January 10, 2017

    T-SQL Tuesday #84 – Helping New Speakers

    November 8, 2016
  • Azure

    Azure Advisor

    January 30, 2019 /

    Azure offers a lot of value-added services included with the price of what you pay . One of the things really, I like is Azure Advisor. this service provides information about your entire Azure landscape. It gives you a complete overview of your system needs including possible ways to save money. High Availability shows you ways to improve the continuity of your business-critical applications. Security detects threats and vulnerabilities that might lead to security breaches. Performance shows you ways to speed up your applications. Cost give you ways to reduce your overall Azure spreading. As you can see from the above screenshot, we have several recommendations on how we can…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    This Idera ACE Has Been Busy

    August 23, 2016

    What SQL Server Performance & Management Tools Do I Use?

    September 4, 2019

    Live, Learn, and Grow

    April 25, 2018
  • Back to Basics

    Scheduling things to Run in SQL Server

    January 23, 2019 /

    A key part of the SQL Server Agent is the ability to schedule jobs. While you can create one schedule for each agent job, frequently with applications like Reporting Services, users use Shared Schedules across multiple jobs. For instance, you can set a schedule to run at 8 am on week days or run every 2 hours or pick from a predefined list of schedules that already exist in the MSDB database. These are very convenient. However, if you choose to use these be sure you are keeping track of what is running for each of these shared schedules. You should not have everything running at once. This is an…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Ruh-Roh! SQL Server 2025 Finally Brings Us a Free Standard Developer Edition – Scooby Dooing Episode 2

    August 28, 2025

    The Case of the Forgotten Compatibility Mode – Scooby Dooing Episode 3

    September 3, 2025

    Please Don’t Do This! Default Index Fill Factor

    September 6, 2017
  • New SQL Version

    Approximate COUNT DISTINCT

    January 3, 2019 /

    We all have written queries that use COUNT DISTINCT to get the unique number of non-NULL values from a table. This process can generate a noticeable performance hit especially for larger tables with millions of rows. Many times, there is no way around this. To help mitigate this overhead SQL Server 2019 introduces us to approximating the distinct count with the new APPROX_COUNT_DISTINCT function. The function approximates the count within a 2% precision to the actual answer at a fraction of the time. Let’s see this in action. In this example, I am using the AdventureworksDW2016CTP3 sample database which you can download here.  SET STATISTICS IO ON SELECT COUNT(DISTINCT([SalesOrderNumber])) as DISTINCTCOUNT…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Template Explorer Gold Mine in SQL Server Management Studio

    March 27, 2018

    This Idera ACE Has Been Busy

    August 23, 2016

    Introduction to the performance features on SQL Server on Linux

    December 4, 2019
34567

About Me

Monica Morehouse (Rathbun)

Microsoft MVP, Performancing Tuning Expert, Leader Hampton Roads SQL Server User Group, Read More…

Consulting

Sessions List

Favorite Tidbits

  • Reminder to Developers

Topic Categories

  • Azure
  • Back to Basics
  • Configurations
  • Data Masking
  • DevOps
  • Encryption
  • Idera Ace
  • Important Links
  • Indexes
  • Lone DBA
  • Misc
  • MVP
  • New SQL Version
  • Performance Tuning
  • Posts with Scripts
  • Problems & Solutions
  • Quick and Dirty
  • Security
  • Speaking
  • SQL Family
  • SQLSaturday
  • SSRS
  • Summit
  • Training
  • TSQL Tuesday
  • Uncategorized

Top Posts & Pages

  • Add DBCC INPUTBUFFER to Your Performance Tuning Toolbox
    Add DBCC INPUTBUFFER to Your Performance Tuning Toolbox
  • Understanding Columnstore Indexes in SQL Server Part 1
    Understanding Columnstore Indexes in SQL Server Part 1
  • Just Check ALL the Boxes - SQL Server Installs
    Just Check ALL the Boxes - SQL Server Installs
  • Change Azure SQL Database Service Level Objectives in SSMS
    Change Azure SQL Database Service Level Objectives in SSMS
  • How to get started with Always Encrypted for Beginners Part 1
    How to get started with Always Encrypted for Beginners Part 1
  • The Mystery of SQL Server 2025’s New Tricks - Scooby Dooing Episode 5
    The Mystery of SQL Server 2025’s New Tricks - Scooby Dooing Episode 5
  • 5 Ways to Examine Cardinality Metrics
    5 Ways to Examine Cardinality Metrics
  • SQL Data Discovery and Classification in SSMS 17.5
    SQL Data Discovery and Classification in SSMS 17.5
  • What is Azure Key Vault?
    What is Azure Key Vault?
  • What’s a Key Lookup?
    What’s a Key Lookup?
Graceful Pro Theme by Optima Themes - 2026 ©
 

Loading Comments...