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!

  • Indexes

    Are My SQL Server Indexes Being Used?

    August 28, 2019 /

    Indexes can be incredibly beneficial to your database performance; however, they do come with a cost—indexes both consume storage space and affect insert performance. Therefore, it is important as part of your index maintenance procedures that you periodically check to see if your indexes are being used. Many times, indexes are created in the belief they are needed but in fact they are never used. You can reduce that IO overhead on inserts when you remove unnecessary indexes. How Do You Find Them? Glenn Berry (B|T) has a fantastic script as part of his diagnostic scripts (link) that helps identify index utilization. In his diagnostic scripts it is listed as…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Does Your Code Have a Preamble?

    October 18, 2017

    Respectfully Responding

    June 14, 2018

    Keep It Simple Stupid

    July 24, 2019
  • Indexes,  Performance Tuning

    Understanding Columnstore Indexes in SQL Server Part 3

    July 17, 2019 /

    My last two blogs were on understanding columnstore and creating columnstore indexes. In this post, I will touch on one last topic, when to use columnstore indexes. As noted in my prior posts these indexes are designed for large data warehouse workloads, not normal OLTP workload tables. As with any index design it is important to know your data and what you will be using the data for. Be sure to look to what types of queries you will be running against it, as well as how the data is loaded and maintained. Let’s look at a few questions you should ask yourself before deciding to implement a columnstore index.…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Summit Submission Feedback Response

    June 28, 2016

    Importance of Statistics in SQL Server

    May 30, 2018

    Eliminating Unnecessary DELETE Operations

    February 27, 2025
  • Indexes,  Performance Tuning

    Understanding Columnstore Indexes in SQL Server Part 2

    July 10, 2019 /

    In my last blog I explained what a columnstore index is, in this blog, we will dive into creating a clustered columnstore index and look at the performance differences the index can make. Let’s get started. Using AdventureworksDW2016CTP3 we will work with the FactResellerSalesXL table which has 11.6 million rows in it. The simple query we will use as a demo just selects the ProductKey and returns some aggregations grouping them by the different product keys. First, we will run the query with no existing columnstore index and only using the current clustered rowstore (normal) index. Note that I turned on SET STATISTICS IO and TIME on. These two SET…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Scooby Dooing Episode 9: The Case of the Artificially Intelligent Villain

    October 17, 2025

    SQL Index Creation Using DROP EXISTING= ON

    February 17, 2021

    Keep It Simple Stupid

    July 24, 2019
  • Indexes,  Performance Tuning

    Understanding Columnstore Indexes in SQL Server Part 1

    June 26, 2019 /

    Recently I reviewed filtered indexes, this time let’s look at columnstore indexes. These indexes are very useful for data warehouse workloads and large tables. They can improve query performance by a factor of 10 in some cases, so knowing and understanding how they work is important if you work in an environment with larger scaled data. Now, I admit when these first were introduced in SQL Server 2012 I found them very intimidating (additionally, you couldn’t update them directly). For me, anytime you say columnstore, my mind tends to set off alarms saying wait stay away, this is too complicated. So, in this post I am going to try and…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    QUICK & DIRTY: Table name change for all stored procedures

    December 10, 2015

    Live, Learn, and Grow

    April 25, 2018

    SQL Server Data Collection and Management Data Warehouse

    October 3, 2018
  • Back to Basics,  Indexes

    Filtered Index Basics

    May 22, 2019 /

    In this post, we continue with another beginner’s blog of database features that may be unknown to many. Let’s take a look at filtered indexes. Many database administrators are fully aware of the power of indexes and know how to create them. However, I find that some have yet to dive into fully optimizing their indexes and taking advantage of what filtered indexes has to offer. What is a filtered index? Simply it’s an index with a where clause. It is an optimized non clustered index that can be narrowed down in scope to better fit a subset of data. Example being date ranges, years, non NULLs or specific product…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    The Gang vs. Jason: Unmasking JSON’s Secrets in SQL Server 2025- Scooby Dooing Episode 7

    October 1, 2025

    The New Public Speaking

    April 29, 2020

    Being a Woman in the SQL Community

    February 26, 2020
  • Indexes,  New SQL Version

    New Resumable Online Index Create SQL Server 2019

    November 28, 2018 /

    SQL Server 2019 brings a very exciting new feature that, is long overdue. Resumable online index create is one of my favorite new things. This paired with the Resumable Index Rebuilds introduced with SQL Server 2017 really gives database administrators much more control over index processes. Have you ever started to build a new index on very large table only to have users call and complain their process is hung, not completing, or system is slow? That’s when you realize you’re the cause because you tried to sneak in a new index. I have many times, because creating a new index can impact performance and can be a problematic process…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    How to get started with Always Encrypted for Beginners Part 1

    November 29, 2017

    Why DBAs Still Need to Know the Foundations of SQL Server

    August 19, 2025

    The FAST number_rows Query Hint

    October 16, 2019
  • Back to Basics,  Indexes

    It’s All in the Name, Index Naming Conventions

    January 10, 2018 /

    Awhile back, if you are on Twitter, you can probably recall my ranting about the 949 indexes I was reviewing. The process was to determine duplicate indexes and consolidate them or discard the unneeded ones. My ranting was not about the duplicates per se it was about the index names. It only takes a second to name an object with some name that tells what the thing is. Below I will show you some examples and give you an easy script that will help you generate your index names. Taking a little time to name things appropriately can go a long way, it can not only be time saving but…

    Read More
    Monica Morehouse (Rathbun)

    Related Posts

    Ooops! Was that me? (Blog Challenge)

    January 10, 2017

    Invest in Yourself Stop Making Excuses

    October 22, 2019

    SSRS Report Won’t Render in VS Preview

    April 12, 2016

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...