Skip to content
Home » Performance

Performance

SQL Server Index Mastery: Choosing the Right Column Order

It’s been a while since my last post about SQL Server performance optimization. This one focuses on index design and how the order of columns in your indexes can make or break your database queries. Using my insights from real-world consulting experience, this guide should help you understand the critical decisions that would impact your database performance.

How does SQL Server decide where to look first when executing a query? The answer lies in the structure of your indexes. Learn how the sequence of key columns can optimize your data retrieval, making your database faster and more responsive.

Read More »SQL Server Index Mastery: Choosing the Right Column Order

Solving the Latch Convoy Problem with OPTIMIZE_FOR_SEQUENTIAL_KEY in SQL Server 2019

Have you ever come across an elusive SQL Server issue known as the “Latch Convoy Problem” or “Last Page Insert Contention”? It’s a rare and challenging problem to encounter in real-world scenarios. In fact, it’s so uncommon that many database professionals may go their entire careers without experiencing it firsthand. But sometimes, the unexpected happens, and you find yourself face to face with this elusive beast.

From Good to Great: Boosting Your Performance as a DBA with the SPIN Sales Strategy

Introduction

As a DBA, your job involves much more than just managing databases. You must also work with customers to understand their needs and provide solutions that meet their requirements. In this blog post, we will discuss how you can implement the SPIN sales strategy concepts as part of your job.

Read More »From Good to Great: Boosting Your Performance as a DBA with the SPIN Sales Strategy

Drop All Redundant Indexes In Every Database All At Once

Redundant indexes in SQL Server are a phenomenon that is more common than I’d like to admit. I see it in quite a lot of shops. Meaning, that there’s still a significant target audience for this blog post!

This article published by Brent Ozar is very informative about redundant/duplicate indexes, what they mean, why they’re bad, and what should be done with them.

Also, a few years ago, Guy Glantser published a post about dropping redundant indexes. It’s very useful for finding all redundant indexes within all tables in a specific database.

But what both of these articles are missing – is the ability to easily generate Drop/Disable commands for these redundant indexes.

Read More »Drop All Redundant Indexes In Every Database All At Once

Could SQL Injection be dangerous even when perfectly safe?

SQL Injection is something I would expect any reader of my blog to be familiar with. Despite being one of the oldest database attack methods, it still persists for decades on the OWASP Top Ten list of critical security risks to web applications.

In fact, instead of dying out, it only seems to be getting more clever and even automated. With “hacker bots” scouring the web and automatically probing for injection vulnerabilities to exploit. I know, as I’ve once been a victim of such attacks in the past.

But today I’m not actually going to talk about that. Today, I’m going to ask the question: When is SQL Injection dangerous, even if it’s perfectly safe?

Read More »Could SQL Injection be dangerous even when perfectly safe?

Performance Tuning Like a Pro – with Hypothetical Indexes

Every once in a while there comes an opportunity to “upgrade” your abilities with newly acquired knowledge that lets you “step up your game” and possibly add some “wow factor” to your work, leaving your peers awe-struck by your amazing new “magic trick”.

As a SQL Server consultant, one such opportunity that I had in my line of work, is when I learned about “Hypothetical Indexes” and how to use them.

Read More »Performance Tuning Like a Pro – with Hypothetical Indexes

The Asynchronous Ledger Trick for Fast SQL Server Insert, Update and Delete Processes

Do you find yourself facing performance problems and long lock chains caused by very frequent INSERT, UPDATE, or DELETE statements being executed on a table? Check out this neat trick that could help you out and make all the difference in the world.

Read More »The Asynchronous Ledger Trick for Fast SQL Server Insert, Update and Delete Processes

Webinar: Performance Monitoring with Azure SQL Analytics

On November 19th, 2020, I delivered a short session about Azure SQL Analytics, as part of the MVP Days Israel 2020 event.

MVP Days Israel 2020 was a full-day event driven by the local (Israeli) MVP community to share knowledge on various Microsoft products across the board – Azure, GitHub, DevOps, Power Apps, AI, Data Platform and more.

We had a bunch of impressive talks given by very talented people. My session was delivered in Hebrew, and it was mostly based on what I wrote in one of my previous blog posts: Is Azure SQL Analytics all you need for SQL Server Monitoring?.

Read More »Webinar: Performance Monitoring with Azure SQL Analytics