Introduced in SQL Server 2016 (13.x) SP1 and Azure SQL Database is the USE HINT option. At the time of writing this article, there are 23 of those. You can see an up to date list by running Dynamic Management View sys.dm_exec_valid_use_hints. With the introduction of this feature, we can replace some of the trace […]
Accessing runtime information of a query execution plan is vital to get a precise understanding of resource usage, execution patterns to resolve performance issues. Runtime statistics is beneficial while debugging query performance issues, such as long-running queries, and queries that run indefinitely and never finishes. Historically query completion was a prerequisite for the availability of […]
Over some time, SQL Server Management Studio has expanded memory grant information. Memory grant provides memory grant estimate as well as actual runtime memory grant information. In this blog post, I will explain each element of ‘Memory Grant Info’, so we can get a better understanding of what those numbers mean? I am using this […]
Here is a sample output of XML from sys.dm_os_ring_buffers where WHERE ring_buffer_type = N’RING_BUFFER_SCHEDULER_MONITOR’. What do those XML elements mean? In order to monitor CPU usages, you need to understand what each element means so you can use the values. I will explain each one in this blog post. ProcessUtilization Indicates the amount of CPU SQL […]
Filtered Index in SQL Server and Parameterized Query does not work well with each other. This incompatibility is a well-known issue among Data Professionals. If you do a Google search for ‘SQL Server unmatched index‘ you find many articles written by well-known bloggers in the SQL Server community. I am quoting a summary of the […]