Page Free Space

SQL Server internals by Paul White

Thursday, 3 May 2012

Parallel Execution Plans Suck

›
Parallel Execution Plans Suck Summary : A deep dive into SQL Server parallelism, and a potential performance problem wi...
1 comment:
Tuesday, 1 May 2012

Query Optimizer Deep Dive - Part 4

›
Query Optimizer Deep Dive - Part 4 This is the final part in a series of posts based on the content of the Query Optim...
2 comments:
Sunday, 29 April 2012

Query Optimizer Deep Dive – Part 3

›
Query Optimizer Deep Dive – Part 3 This is the third in a series of posts based on the content of the Query Optimizer ...
Saturday, 28 April 2012

Query Optimizer Deep Dive – Part 2

›
Query Optimizer Deep Dive – Part 2 This is the second in a series of posts based on the content of the Query Optimizer...

Query Optimizer Deep Dive - Part 1

›
Query Optimizer Deep Dive - Part 1 This is the first in a series of posts based on the content of the Query Optimizer ...
Monday, 12 March 2012

Fun with Scalar and Vector Aggregates

›
Fun with Scalar and Vector Aggregates There are interesting things to be learned from even the simplest queries. For e...
Wednesday, 18 January 2012

Dynamic Seeks and Hidden Implicit Conversions

›
Dynamic Seeks and Hidden Implicit Conversions A LIKE predicate with only a trailing wildcard can usually use an index...
2 comments:
Friday, 23 December 2011

Forcing a Parallel Query Execution Plan

›
Forcing a Parallel Query Execution Plan This article is for SQL Server developers who have experienced the special kind...
1 comment:
Tuesday, 6 December 2011

SQL Server Optimizer Bug with JOIN and GROUP BY

›
SQL Server Optimizer Bug with JOIN and GROUP BY I came across a SQL Server optimizer bug recently that made me wonder h...
Sunday, 4 December 2011

Is Distinct Aggregation Still Considered Harmful?

›
Is Distinct Aggregation Still Considered Harmful? Back in 2008, Marc Friedman of the SQL Server Query Processor Team wr...
Wednesday, 21 September 2011

Finding the Statistics Used to Compile an Execution Plan

›
Finding the Statistics Used to Compile an Execution Plan In this post, I show you how to determine the statistics objec...
Tuesday, 30 August 2011

Can a SELECT query cause page splits?

›
Can a SELECT query cause page splits? The SQL Server documentation has this to say about page splits : When a new row...
Tuesday, 9 August 2011

SQL Server, Seeks, and Binary Search

›
SQL Server, Seeks, and Binary Search The following table summarizes the results from my last two articles, Enforcing Un...
Thursday, 4 August 2011

Avoiding Uniqueness for Performance

›
Avoiding Uniqueness for Performance In my last post, Enforcing Uniqueness for Performance , I showed how using a unique...
Friday, 29 July 2011

Enforcing Uniqueness for Performance

›
Enforcing Uniqueness for Performance A little while back, I posted a short series on seeks and scans: When is a Seek ...
Tuesday, 19 July 2011

Join Performance, Implicit Conversions, and Residuals

›
Join Performance, Implicit Conversions, and Residuals Introduction You probably already know that it’...
Thursday, 7 July 2011

Bitmap Magic (or… how SQL Server uses bitmap filters)

›
Bitmap Magic (or… how SQL Server uses bitmap filters) Question Can a parallel query use less CPU than the same serial...
Saturday, 2 July 2011

Undocumented Query Plans: The ANY Aggregate

›
Undocumented Query Plans: The ANY Aggregate As usual, here’s a sample table: CREATE TABLE #Example ( pk numeri...
Wednesday, 22 June 2011

Undocumented Query Plans: Equality Comparisons

›
Undocumented Query Plans: Equality Comparisons The diagram below shows two data sets, with differences highlighted: T...
12 comments:
Saturday, 5 March 2011

How Parallelism Works in SQL Server

›
How Parallelism Works in SQL Server You might have noticed that January was a quiet blogging month for me. Part of the...
Sunday, 27 February 2011

SQL Server Bug: Slow T-SQL Sums and Averages

›
SQL Server Bug: Slow T-SQL Sums and Averages It’s a curious thing about SQL that the SUM or AVG of no items (an empt...
Wednesday, 23 February 2011

Advanced TSQL Tuning: Why Internals Knowledge Matters

›
Advanced T-SQL Tuning: Why Internals Knowledge Matters There is much more to query tuning than reducing logical reads a...
Saturday, 19 February 2011

I see no LOBs!

›
I see no LOBs! Is it possible to see LOB (large object) logical reads from STATISTICS IO output on a table with no LO...
Thursday, 17 February 2011

Seeking Without Indexes

›
Seeking Without Indexes A seek can contain one or more seek predicates , each of which can either identify (at most) on...
1 comment:

So…is it a Seek or a Scan?

›
So…is it a Seek or a Scan? You might be most familiar with the terms ‘Seek’ and ‘Scan’ from the graphical plans produce...
‹
›
Home
View web version

About Me

My photo
Paul White
View my complete profile
Powered by Blogger.