Kendra Little

kendra little

Columnstore Indexes and Computed Columns in SQL Server 2016

Columnstore Indexes and Computed Columns in SQL Server 2016

You can’t do everything with a columnstore index – but SQL Server’s optimizer can get pretty creative so it can use a columnstore index in ways you might not expect.

Continue reading

Collecting the Blocked Process Report (XEvents and Server Side Trace)

Collecting the Blocked Process Report (XEvents and Server Side Trace)

I’m a big fan of the built-in Blocked Process Report in SQL Server. It’s come in handy for troubleshooting blocking situations for me many times.

Continue reading

Actual Time Statistics in Execution Plans: Elapsed CPU Time and more

Actual Time Statistics in Execution Plans: Elapsed CPU Time and more

One of the coolest things to come to SQL Server Management Studio in a long time might be hard to see at first: it’s tucked away in the Properties Window.

But once you see it, it might just be something that you use all the time.

Continue reading

Does Truncate Table Reset Statistics?

Does Truncate Table Reset Statistics?

Short answer: the SQL Server optimizer will know that the table was truncated, but statistics might not update when you expect.

For the long answer, let’s walk through an example using the WideWorldImporters sample database.

Continue reading

Filtered Indexes: Rowstore vs Nonclustered Columnstore

Filtered Indexes: Rowstore vs Nonclustered Columnstore

By Kendra Little on November 10, 2016

Category: indexing

SQL Server has two types of filtered indexes:

  1. The “classic” filtered nonclustered rowstore index, introduced in SQL Server 2008, available in all editions
  2. The newfangled filtered nonclustered columnstore index, introduced in SQL Server 2016, available in Enterprise Edition

Continue reading

Decoding Key and Page WaitResource for Deadlocks and Blocking

Decoding Key and Page WaitResource for Deadlocks and Blocking

If you use SQL Server’s blocked process report or collect deadlock graphs, occasionally you’ll come across things that look like this:

waitresource=“PAGE: 6:3:70133 " waitresource=“KEY: 6:72057594041991168 (ce52f92a058c)”

Continue reading