Technical Article

Trace-scrubbing Tools

Andrew Zanevsky shares his trace-scrubbing procedures that make it easy for you to handle large trace files and aggregate transactions by type–even when captured T-SQL code has variations.

SQL Server Profiler is a veritable treasure trove when it comes to helping DBAs optimize their T-SQL code. But, the surfeit of riches (I'm reminded of the Arabian Nights tale of Aladdin) can be overwhelming. I recently had one of those "sinking" feelings when I first tried to make sense of the enormous amount of data collected by traces on a client's servers. At this particular client, the online transactions processing system executes more than 4 million database transactions per hour. That means that even a 30-minute trace that captures "SQL Batch Completed" events results in a table with 2 million rows. Of course, it's simply impractical to process so many records without some automation, and even selecting the longest or most expensive transactions doesn't necessarily help in identifying bottlenecks. After all, short transactions can be the culprits of poor performance when executed thousands of times per minute.

Blogs

Presenting with Visual Studio Code

By

A while back I wrote a quick post on setting up key mappings in...

Advice I Like: In 100 Years

By

In 100 years a lot of what we take to be true now will...

dataMinds Saturday 2026 – Slides

By

At Saturday the 21st of February I’m presenting an introduction to dimensional modelling at...

Read the latest Blogs

Forums

AllocationType as ROW_OVERFLOW_DATA

By inHouseDBA

Hello, I inherited a number of tables with like 20-30 column using nvarchar(256) in...

connections vs apis

By stan

hi , i hear more and more that we have too many connections to...

is it true we cant debug c# scripts in ssis anymore under vs

By stan

Hi, i'm running vs2022.   I'm trying out a c# script that i'd like to...

Visit the forum

Question of the Day

Missing the Jaro Winkler Distance

I upgraded a SQL Server 2019 instance to SQL Server 2025. I wanted to test the fuzzy string search functions. I run this code:

SELECT JARO_WINKLER_DISTANCE('tim', 'tom')
I get this error message:
Msg 195, Level 15, State 10, Line 1 'JARO_WINKLER_DISTANCE' is not a recognized built-in function name.
What is wrong?

See possible answers