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!

  • Azure,  Back to Basics,  Performance Tuning,  Problems & Solutions,  Summit

    Why DBAs Still Need to Know the Foundations of SQL Server

    August 19, 2025 /

    Over the years, I’ll admit, SQL Server has come a long way in making life easier for database administrators and with each version it keeps getting better and better. The installation process bakes in more best practices than ever, default settings are smarter, and cloud offerings like Azure SQL and managed instances take a lot of the heavy lifting off our plates. Backups, high availability, patching—all of these are more streamlined than they used to be. It’s tempting to think this means DBAs don’t need to know the “nuts and bolts” or “how things work under the hood” anymore. But here’s the problem: I am seeing a real gap in…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

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

    November 4, 2025

    Time for a Change

    April 17, 2017

    The New Public Speaking

    April 29, 2020
  • Performance Tuning

    Eliminating Unnecessary DELETE Operations

    February 27, 2025 /

    SQL Server performance issues often stem from easy fix bottle necks that can be fixed with the right tuning strategies. This short blog will focus on the DELETE statement. The problem with DELETE statements is that it requires excessive logical reads and consumes transaction log space, even in simple recovery mode. DELETE is a row-based operation and generates large number of logical reads whereas TRUNCATE removes all of the rows of a table or partition at the storage, for a much faster and more efficient operation. Both DELETE and TRUNCATE remove data from a table, but they behave differently in terms of performance, recovery, logging, and rollback capabilities. The issue…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Understanding Columnstore Indexes in SQL Server Part 3

    July 17, 2019

    Free Training 24HOP

    April 18, 2018

    Trace Flags That Are Now Defaulted Behaviors in SQL Server

    December 18, 2019
  • New SQL Version,  Performance Tuning

    Tempdb Performance Improvements in SQL Server 2022 are Dramatic

    February 1, 2023 /

    Tempdb is always a topic for me whether it’s in my sessions or blogs I have written. However, I’ve never been so excited about it then I am when it comes to the dramatic performance changes introduced in SQL Server 2022. THEY HAVE SOLVED ONE OF OUR BIGGEST PERFORMANCE BOTTLE NECKS, System page latch concurrency. In SQL Server 2019 they addressed what’s known as metadata contention, when pages that belong to systems object take page latches while updating tables that track table metadata by introducing memory optimized tempdb. Additionally, the product team made improvements to object allocation contention. This is the contention for metadata pages used to manage space allocation…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Replication Max Text Length

    June 20, 2018

    Eliminating Unnecessary DELETE Operations

    February 27, 2025

    Please Don’t Do This! Default Index Fill Factor

    September 6, 2017
  • Uncategorized

    Join Denny Cherry and Associates at SQL Bits 2023

    January 27, 2023 /

    I am very excited and lucky to be speaking once again at SQLBits along with my DCAC colleagues. SQLBits, the largest Data Platform conference in Europe, held this year in Newport Wales March14th – 18th. It is a conference for leading data professionals with over 300 sessions from speakers all over the world. It is a huge honor to have been selected to share my performance tuning knowledge with attendees. My session, Performance Tuning Azure SQL Database Have you moved to a cloud database like Azure SQL Database and are having performance issues? While the Azure SQL services running in Azure are similar to SQL Server, they are key differences…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    SSRS Report Won’t Render in VS Preview

    April 12, 2016

    SQL Server Vulnerability Assessment

    December 12, 2018

    New Resumable Online Index Create SQL Server 2019

    November 28, 2018
  • Performance Tuning

    RunAsRadio- Query Performance Tuning Strategies

    April 13, 2022 /

    Had a great time talking with Richard on RunAsRadio about Query Performance Tuning Strategies, check it out. How do you keep your SQL queries fast? Richard chats with Monica Rathbun about her approaches to SQL Server query tuning. Monica starts with defining the problem – how do we know that the database is the performance bottleneck? The conversation dives into measuring query performance and the power of Query Store, but only on SQL Server 2016 and above, so get upgrading! Entity Framework is a standard tool for developers to automate access to SQL. Still, it can generate some pretty ugly queries, and Monica talks about different ways to improve them,…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Master of None

    October 8, 2015

    Sorting in Stored Procedures – Food for Thought

    January 29, 2020

    How Your Hypervisor Can Impact Your CPU

    March 6, 2019
  • Back to Basics,  Performance Tuning,  Posts with Scripts

    Quick Tip: Remove CONVERT\CAST from your WHERE\JOIN clauses

    March 28, 2022 /

    Quick Tip Remove CONVERT/CAST from your WHERE clauses and JOINS when comparing to variables of different data types. Set their data types to match your table definitions before using them as a filter. Optimizing your queries this way will greatly reduce the amount of CPU time, reads, and I/O generated in your queries and allow your code to take better advantage of indexes. Example We are going to create a very simple stored procedure called ConvertExample. In this procedure we will see two things. One, the first procedure we create will declare two variables as VARCHAR( MAX) data types, then in the WHERE clause it will convert a table column…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    5 Ways to Examine Cardinality Metrics

    May 2, 2018

    The New Public Speaking

    April 29, 2020

    How to Get Started with Always Encrypted for Beginners Part 2

    December 13, 2017
  • Azure,  Performance Tuning

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

    July 14, 2021 /

    One of the biggest impacts on resource consumption for Azure SQL DB are repeated data pulls by the application layer. No matter how fast those queries execute calling the same procedure or issuing the same SQL statements hundreds, thousands, or million times a day can wreak havoc on database performance. Death by a thousand cuts can easily bring a system to its knees. Sometimes it’s hard for DBAs to troubleshoot these actively as the execution of the statements happens so quickly they don’t even show in tools like sp_whoisactive. It’s not until you begin to dive into things like Query Performance Insights or Query Store that you start to see…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Master of None

    October 8, 2015

    Please Don’t Do This! Default Index Fill Factor

    September 6, 2017

    Expanding My Reach

    February 7, 2018
  • Performance Tuning

    Add DBCC INPUTBUFFER to Your Performance Tuning Toolbox

    July 7, 2021 /

    A command I like to use when performance tuning is DBCC INPUTBUFFER. If you have ever run sp_whoisactive or sp_who2 to find out what sessions are executing when CPU is high for instance this can be a real quick life saver. At times, for me, those two options do not return enough information for what I’m looking for which is the associated stored procedure or object. Using this little helper along with the session id can easily get you that information. Let’s take a look. First, I will create a simple procedure to generate a workload. CREATE OR ALTER PROCEDURE KeepRunning AS DECLARE @i INT=1 WHILE (@i <1000) BEGIN select…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    The New Public Speaking

    April 29, 2020

    5 Ways to Examine Cardinality Metrics

    May 2, 2018

    Cycle SQL Server Error Logs

    September 26, 2018
  • Azure,  Performance Tuning

    Using Readable Secondary in Azure SQLDB

    June 30, 2021 /

    When using a Geo Replicated Azure SQL Database Readable Secondary  there are a few things to consider when it comes to performance tuning. Check out this episode of Data Exposed: MVP Edition as we discuss what you need to keep in mind with Microsoft’s Anna Hoffman, @AnalyticAnna.    

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    5 Ways to Examine Cardinality Metrics

    May 2, 2018

    Memory Optimized Tables in SQL Server

    January 8, 2020

    Static Data Masking (SSMS 18.0 Preview)

    December 19, 2018
  • SQL Family

    Data Saturdays Logo Contest

    March 23, 2021 /

    Lots of exciting things are happening with Data Saturdays and we want you, the #SQLFamily, involved. Last week, Rob Sewell (B|T) announced the new automation and setup process for events.  This week I am announcing a new logo and branding initiative. With the generous donation from Denny Cherry and Associates Consulting, DCAC, we have commissioned 99Designs artists to create a new logo for branding. The Data Saturdays Admins reviewed over 220 submissions these were considered the likeability, accessibility, inclusiveness, and ease of multi-use. We have narrowed down the choices to these four.  Please take a moment to click the link below and rate your favorite, we will use your influence…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    What SQL Server Performance & Management Tools Do I Use?

    September 4, 2019

    QUICK & DIRTY: Table name change for all stored procedures

    December 10, 2015

    Bloggers Should Have Reach

    February 14, 2018
1234

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

  • Query Predicates in SQL Server
    Query Predicates in SQL Server
  • What’s a Key Lookup?
    What’s a Key Lookup?
  • DMV’s for the Beginner
    DMV’s for the Beginner
  • SQL Index Creation Using DROP EXISTING= ON
    SQL Index Creation Using DROP EXISTING= ON
  • Understanding Columnstore Indexes in SQL Server Part 1
    Understanding Columnstore Indexes in SQL Server Part 1
  • It's All in the Name, Index Naming Conventions
    It's All in the Name, Index Naming Conventions
  • Run Book, Run!!!
    Run Book, Run!!!
  • TIL: Microsoft Azure Part 2
    TIL: Microsoft Azure Part 2
  • Please Don’t Do This! Default Index Fill Factor
    Please Don’t Do This! Default Index Fill Factor
  • How SQL Server Synonyms Help Database DevOps
    How SQL Server Synonyms Help Database DevOps
Graceful Pro Theme by Optima Themes - 2026 ©
 

Loading Comments...