Search Results for “sp_blitzindex”

How I Use the First Responder Kit

Updated First Responder Kit and Consultant Toolkit for December 2020

sp_BlitzLock gets better identification of parallel deadlocks, sp_DatabaseRestore uses Ola’s scripts for logging, and lots of bug fixes this month. Watch and learn To get the new version: Download the updated FirstResponderKit.zip Azure Data Studio users with the First Responder Kit extension: ctrl/command+shift+p, First Responder Kit: Import. PowerShell users: run Install-DbaFirstResponderKit from dbatools Download the…
Read More

7 – Other TempDB Consumers: Cursors, Index Builds, AG Stats

I often joke that TempDB is like SQL Server’s public toilet: there’s all kinds of crazy stuff happening inside there. Seems like whenever Microsoft needs a holding place for something, they resort to TempDB. That’s not necessarily bad – we gotta put it somewhere – but being aware of these extra uses will come in…

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of TempDB, or log in if you already shelled out the cash.
Read More

2 – How Temp Tables Affect TempDB

It seems so simple at first: queries create temp tables, load data, and drop ’em. How hard can it be? Spectacularly tricky, as it turns out. Temp tables share some behaviors with real tables, but they also have their own tricky behavior when it comes to statistics and execution plans. We’ll start by creating a…

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of TempDB, or log in if you already shelled out the cash.
Read More

What It Takes To Write Two Blog Posts

Blogging, Videos
2 Comments
This week, I published two blog posts: How Bad Statistics Cause Bad SQL Server Query Performance How Scalar User-Defined Functions Slow Down Queries Let’s talk about the process of writing ’em. A couple I was putting together this week’s First Responder Kit release, I realized sp_BlitzIndex didn’t have URLs for a couple of common families…
Read More

When You’re Troubleshooting Blocking, Look at Query #2, Too.

When I’m troubleshooting a blocking emergency, the culprit is usually the query at the head of a blocking chain. Somebody did something ill-advised like starting a transaction and then locking a whole bunch of tables. But sometimes, the lead blocker isn’t the real problem. It’s query #2. Here’s a sample scenario: A long-running select with…
Read More

How Scalar User-Defined Functions Slow Down Queries

T-SQL
10 Comments
When your query has a scalar user-defined function in it, SQL Server may not parallelize it and may hide the work that it’s doing in your execution plan. To show it, I’ll run a simple query against the Users table in the Stack Overflow database. SELECT TOP 100 DisplayName, Location, Reputation, Id FROM dbo.Users ORDER…
Read More

08 Partitioning Is a Great Partner for Columnstore

To be honest, I’m not a big fan of table partitioning in most scenarios. It’s a data loading & unloading feature thanks to the sliding window scenario, but… most folks just don’t load their data an entire partition at a time. However, when we need to do index maintenance for columnstore indexes, that’s exactly what we…

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of Columnstore Indexes, or log in if you already shelled out the cash.
Read More
Fundamentals of Columnstore

07 A Better Clustered Columnstore Candidate

The small Users table isn’t a good fit for clustered columnstore because of its low size and its constant updates. We’ll pick a better table for columnstore indexes – the append-only Votes table – implement a columnstore index on it, then simulate daily load on it, and we’ll see why index maintenance is so hard…

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of Columnstore Indexes, or log in if you already shelled out the cash.
Read More

06 Nonclustered Columnstore Advantages

If the quiz in the last module gave you bad news about whether clustered columnstore indexes are a good fit for your tables, take heart. Clustered columnstore isn’t the only way to make your queries go faster: there are also nonclustered columnstore indexes. In this session, we’ll look at the pros & cons of those….

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of Columnstore Indexes, or log in if you already shelled out the cash.
Read More
Fundamentals of Columnstore Indexes

04 How Columnstore Data is Rebuilt

Now you’re starting to see the challenge of maintaining query performance. The combination of these three facts: Columnstore indexes are like lots of partitioned column-level indexes, and Newly changed data ends up in separate rowstore indexes called delta stores that just get scanned, and they don’t have any of their own columnstore indexes, and Selects…

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of Columnstore Indexes, or log in if you already shelled out the cash.
Read More
Brent Ozar's Consultant Toolkit

Updated First Responder Kit and Consultant Toolkit for September 2020

Let’s give a big round of virtual germ-free applause to Adrian Buckman, Erik Darling, Garry Bargsley, Greg Dodd, Ian Manton, John McCall, Kuldar Andares, Pierre Letter, Stephen Anslow, Tom Butler, and Walden Leverich for volunteering their time to help make your job easier this month. Thanks to them, the September release is chock full of features – I’m not even going to try to sum…
Read More
Fundamentals of Columnstore

03 How Columnstore Data Is Selected

Now that you understand how columnstore data is stored in row groups, column segments, and delta stores – that it’s kinda partitioning on steroids – let’s see how SQL Server uses this sliced-up, diced-up data to more rapidly find the rows you’re looking for. We’ll dig into the different reasons that columnstore indexes perform more…

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of Columnstore Indexes, or log in if you already shelled out the cash.
Read More
Fundamentals of Columnstore

02 How Columnstore Data is Deleted, Updated, and Inserted

We started this class with a freshly built columnstore index stored in a grid of row groups and column segments. Next, let’s start changing the data by running deletes, updates, and inserts to see the new objects getting created. We’ll see how insert volume affects whether new rows go into the delta store or new…

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of Columnstore Indexes, or log in if you already shelled out the cash.
Read More
Fundamentals of Columnstore

01 How Columnstore Data is Stored

In How to Think Like the Engine, I used pieces of paper to explain how clustered and nonclustered rowstore indexes work. Columnstore is different, though. You may have heard that columnstore is like an index on every column, but it’s much more complex than that: it’s really a partitioned index on every column. We’ll take…

To access this incredible, amazing content, you gotta get Recorded Class Season Pass or Fundamentals of Columnstore Indexes, or log in if you already shelled out the cash.
Read More
Pocket Square

Updated First Responder Kit and Consultant Toolkit for August 2020

First Responder Kit Updates
0
A couple of big new features this month: sp_Blitz’s @SkipChecksServer parameter lets you centralize a list of checks that you want to skip across different servers, and sp_BlitzIndex’s missing index recommendation list now includes the datatypes, making it easier to do index analysis for clients even when you’re not connected to their servers. I have…
Read More