When STRING_SPLIT() falls short

March 20, 2020 Andy 0

This morning, my friend Aaron Bertrand (blog|twitter) posted a plea for help with STRING_SPLIT() improvements. I’m very much in Aaron’s corner on this, having written about the olden days myself. Why STRING_SPLIT() is supposed to be awesome CLR was fast, but inaccessible to many DBAs. … [Read More]

Code to purge data based on creation date

April 4, 2019 Andy 6

Yesterday, I talked about batching deletes, and the day before I talked about how much I like to delete data, and why it’s necessary to do it, despite being a data pack rat. Today, let’s look at just one scenario, and how I like to handle it. In my experience, this is one of the most common purge requirements (and probably the easiest), so first, let’s look at the business requirements.

The thrill of purging old data

April 2, 2019 Andy 0

DBAs & Data professionals tend to be digital packrats. My personal Google Drive is filled with random files that I refused to part with–even though it’s of questionable value. I lament that I do not have a copy of every paper I typed in high school or college–and I envy those who do. You never know when you’ll need notes from that meeting 6 years ago, or when you’ll need that funny GIF you created for an inside joke you no longer remember.

Performance Myths: The query result cache

July 23, 2018 Andy 0

I was recently doing a training session when a developer commented that it was OK to run an expensive query twice because on the second execution, SQL Server would use the “results cache” and be “practically free”. It’s not the first time I’ve heard someone refer to a “results cache” in SQL Server. If you don’t know better, you might think SQL Server has a “results cache” because the second execution of a query is often faster.

Alerting on SQL Server Blocking

December 18, 2017 Andy 20

Identifying blocking is one of the most basic things that a DBA should be monitoring for. I previously wrote about how to identify blocking in SQL Server and find the leading blocker. Recently, my friend Jim Donahoe (blog | twitter) asked me about setting up … [Read More]

Multi-Statement TVFs in Dynamics CRM

August 22, 2017 Andy 0

If you’re familiar with supporting the database behind Microsoft Dynamics CRM, you probably know that it’s not the fastest-performing database. Honestly, that shouldn’t be a surprise–it’s not designed to be a screaming-fast database. It’s designed to be a flexible database. Most Customer Relationship Management (CRM) systems … [Read More]

Blogging at SQLPerformance.com

March 30, 2017 Andy 0

As part of my role on the SentryOne Product Advisory Council (PAC), I’m going to occasionally be contributing posts over at SQLPerformance.com. Today, my first post was published: What the heck is a DTU? SQLPerformance.com focuses on providing innovative and practical solutions for improving SQL … [Read More]

Plan Explorer 3.0: More power and completely free

September 8, 2016 Andy 1

Today, SQL Sentry announced the release of Plan Explorer 3.0. There are a few big changes, so let’s dive right in.   Plan Explorer just got free-er Up until now, Plan Explorer was essentially a freemium product. There was the free edition (which was really awesome), … [Read More]