SentryOne Team Blog (blogs.sentryone.com)

Category : Execution Plans

Erin Stellato : Examining the Performance Impact of an Adhoc Workload

Erin Stellato : Examining the Performance Impact of an Adhoc Workload

Erin Stellato discusses the performance impact of a predominately adhoc workload in SQL Server.

Paul White : IGNORE_DUP_KEY slower on clustered indexes

Paul White : IGNORE_DUP_KEY slower on clustered indexes

Paul White explains why the IGNORE_DUP_KEY index option on a clustered index can result in much poorer performance than for a nonclustered unique index.

Scalar UDF Inlining in SQL Server 2019

Scalar UDF Inlining in SQL Server 2019

Aaron Bertrand introduces Scalar UDF Inlining, a long-awaited feature in SQL Server 2019 that will improve the performance of some workloads.

Jonathan Kehayias : Showplan Enhancements for UDFs

Jonathan Kehayias : Showplan Enhancements for UDFs

Jonathan Kehayias shares insight about new UDF information in showplan, and shows that only some tools will show it (SSMS 17+ & SentryOne Plan Explorer).

Itzik Ben-Gan : Optimization Thresholds : Grouping and Aggregating Data, Part 5

Itzik Ben-Gan : Optimization Thresholds : Grouping and Aggregating Data, Part 5

In the conclusion of his series on grouping and aggregation costs, Itzik Ben-Gan reveals some of the math behind seek vs. scan decisions.

Itzik Ben-Gan : Optimization Thresholds : Grouping & Aggregating Data, Part 4

Itzik Ben-Gan : Optimization Thresholds : Grouping & Aggregating Data, Part 4

In the fourth installment of his series on optimization thresholds, Itzik Ben-Gan looks at how SQL Server applies costs to parallel operations.

Itzik Ben-Gan : Optimization Thresholds : Grouping & Aggregating Data, Part 3

Itzik Ben-Gan : Optimization Thresholds : Grouping & Aggregating Data, Part 3

Itzik Ben-Gan dissects the Hash Match (Aggregate) algorithm in his latest post in a series on SQL Server optimization thresholds.

Itzik Ben-Gan : Optimizer Thresholds : Grouping & Aggregating, Part 2

Itzik Ben-Gan : Optimizer Thresholds : Grouping & Aggregating, Part 2

Continuing his series on optimization thresholds, Itzik Ben-Gan dives into the costs behind stream aggregates when the data needs to be sorted first.

Itzik Ben-Gan : Optimizer Thresholds : Grouping & Aggregating, Part 1

Itzik Ben-Gan : Optimizer Thresholds : Grouping & Aggregating, Part 1

For his first post on SQLPerformance.com, Itzik Ben-Gan shows you how to reverse engineer optimizer costing for a Stream Aggregate operator.

Rob Farley : Dealing with date and time instead of datetime

Rob Farley : Dealing with date and time instead of datetime

Rob Farley describes a tactic where adding multiple predicates around separate date and time columns can win you some better performance.

Paul White : Row Goals Part 4 : Anti Join Anti Pattern

Paul White : Row Goals Part 4 : Anti Join Anti Pattern

Paul White continues his series on row goals, treating a redundant and problematic TOP (1) that is added to the inner side of an apply anti join.

Rob Farley : When DISTINCT <> GROUP BY

Rob Farley : When DISTINCT <> GROUP BY

Usually DISTINCT and GROUP BY will yield the same results, but here Rob Farley explains cases that can break the rule.

Paul White : Row Goals Part 3 : Anti Joins

Paul White : Row Goals Part 3 : Anti Joins

Continuing his in-depth series on row goals, Paul White explains both why and how they can impact queries involving anti joins.

Paul White : Row Goals Part 2 : Semi Joins

Paul White : Row Goals Part 2 : Semi Joins

Continuing his series on row goals, Paul White explains how they can impact certain types of semi joins, and how you can spot these effects in showplan and trace flag output.

Erin Stellato : Automatic Plan Correction in SQL Server

Erin Stellato : Automatic Plan Correction in SQL Server

Erin Stellato gives an overview of Automatic Plan Correction in SQL Server 2017 and Azure SQL Database, and assures us that Microsoft is not trying to code us out of jobs.