Problems displaying this newsletter? View online.
SQL Server Central
Featured Contents
Question of the Day
 
The Voice of the DBA
 

Measuring Productivity

I've dealt with a lot of customers with who lately are concerned with the ROI of their teams. Certainly they want a good ROI if they purchase software from Redgate, as do we. Our goal has been to be partners with customers and continue to add value to the products they've purchased on a regular basis. We release every week or two, and our Redgate Monitor and Flyway updates reflect this. New functionality, fixes, and previews. I'm proud of the constant updates we deliver, and I know customers get increased value throughout our partnership.

Is it a good ROI? I get asked this question by execs regularly, and I often ask them if they feel they get a good ROI from their staff already. Answers are mixed, especially in the database world where it seems the costs and the value delivered from database management and deployments can be nebulous. Databases support application software, and if that software doesn't work well because the database deployment scripts weren't correct, weren't tested, or have performance issues, who is at fault?

It's easy to blame the database, but who bears responsibility here? Is it the developers that didn't model schema well or test queries at high volumes of data? DBAs who haven't been adding or maintaining indexes? A lack of resources matching workload (an Ops issue)? Perhaps someone not taking time to review code (shared Dev/Ops or process issue) is at fault. Could it be the delays from a slow process to promote changes delay your digital transformation? Execs really care about that last one.

There are metrics that DORA produces from their research around software delivery. These can be applied to database code, though I find often that companies adopting these don't extend them to the database. At Redgate, we often have solutions engineers and architects spending time helping customers evaluate their existing database software lifecycle and try to decide if there is room for improvement. We love to sell you software, but only if you will use and get value.

Today I'm wondering if any of you self-assess and maintain metrics or measures about how your databases perform. Lots of you use Redgate Monitor (or some other software) to watch databases, but do you keep metrics on how code gets to production? DORA would recommend you measure the time to make a deployment, the frequency, and other items, including when deployments fail. By the way, code compiling, but breaking the application because the logic is wrong is still a failed deployment.

In 2026, even in the age of AI, I'm surprised how often I run into companies still doing manual work to deploy database code. Emailed scripts, file shares with random collections of code, even manual runs of SQL Compare to update production are the norm in many places. Even when C#/Java/etc. application code runs through an automated CI/CD process. I get that stateful databases are hard, but shouldn't we be trying to make changes easy? An ordinary event, not an extraordinary one?

Maybe more importantly, do you measure yourselves and evaluate your productivity as a DBA or database developer? Whether you do or don't, what do you think are good measures of your productivity?

Steve Jones - SSC Editor

Join the debate, and respond to today's editorial on the forums

 
 
 Featured Contents
SQLServerCentral Article

Importing Excel files into SQL Server using DuckDB and Python

Cláudio Tereso from SQLServerCentral

Learn to use DuckDB to read data from Excel and then send it to SQL Server with Python and Pandas.

Technical Article

Database Animations: The Difference Between Row Compression and Page Compression

Additional Articles from SQLServerCentral

What's the difference between SQL Server's row compression and page compression, and when does each one make sense?

Blog Post

From the SQL Server Central Blogs - The GO Barrier: Why SSMS Multi-Server Query Waits for the Slowest Connection

Zikato from StraightforwardSQL

I deployed a schema change to 30 servers using multi-server query and deploy-at-low-priority. Small servers with zero activity showed no progress, and then all 30 finished at the same...

Blog Post

From the SQL Server Central Blogs - 10 Things I Hate About Fabric Deployment Pipelines— And Some Alternatives

Meagan Longoria from Data Savvy

Fabric deployment pipelines look like they solve CI/CD for Fabric content, especially for people who prefer a GUI over writing code to handle deployments, but the implementation has enough...

Technical Article

Databricks Data Intelligence Platform: Unlocking the GenAI Revolution

Site Owners from SQLServerCentral

This book is your comprehensive guide to building robust Generative AI solutions using the Databricks Data Intelligence Platform. Databricks is the fastest-growing data platform offering unified analytics and AI capabilities within a single governance framework, enabling organizations to streamline their data processing workflows, from ingestion to visualization. Additionally, Databricks provides features to train a high-quality large language model (LLM), whether you are looking for Retrieval-Augmented Generation (RAG) or fine-tuning.

 

 Question of the Day

Today's question (by Steve Jones - SSC Editor):

 

Tracking All the Queries

I have 3 instances of a brand new long running query that are executing on a SQL Server 2025 instance. Query store is enabled. One of the queries is killed by the administrator, one is cancelled by the user. The other runs to completion. How many rows are in Query Store for this query?

Think you know the answer? Click here, and find out if you are right.

 

 

 Yesterday's Question of the Day (by Steve Jones - SSC Editor)

Getting Database MaiL Profiles

If I want to return information about all Database Mail profiles on my instance from T-SQL, how can I do this?

Answer: exec msdb.dbo.sysmail_help_profile_sp

Explanation: You can use msdb.dbo.sysmail_help_profile_sp to get all profile information. Ref: dbp.sysmail_help_profile - https://learn.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sysmail-help-profile-sp-transact-sql?view=sql-server-ver17

Discuss this question and answer on the forums

 

 

 

Database Pros Who Need Your Help

Here's a few of the new posts today on the forums. To see more, visit the forums.


SQL Server 2016 - Administration
Two queries work until compared with EXCEPT statement - I've got multiple databases on 2 SQL 2019 CU32 servers , all using the same schema and code base. The only difference in patch levels is Test has the July Security Update and Prod has the March one. There's a Table Valued function that fails on one database only and only on prod. Of the […]
SQL Server 2016 - Development and T-SQL
Execute as failure - Security has long been a problem for me. Every time I think I understand something, along comes another issue to show me that I don't. I want to have an application on start-up query some information from a sort of status table, to see what it is allowed to do. I have a schema called […]
SQL Server 2019 - Development
Logic question in a WHERE clause using IIF? - Thanks in advance, I'm trying to avoid using IIF for performance reasons, but the code has me stumped. I'm trying to add a filter in my WHERE clause that basically says "omit records if [BillingReason] in (1, 2, 3) AND ([NewInsID] IS NOT NULL AND [OldInsID] IS NOT NULL)". For example: [BillingReason] = 1, [NewInsID] […]
Editorials
Admin Rights for Everyone - Comments posted to this topic are about the item Admin Rights for Everyone
A Challenge of Our Knowledge - Comments posted to this topic are about the item A Challenge of Our Knowledge
The New World Of AI Robots - Comments posted to this topic are about the item The New World Of AI Robots
An Eventual Consistency Scam - Comments posted to this topic are about the item An Eventual Consistency Scam
Article Discussions by Author
Kerberos Authentication for Aurora PostgreSQL: Mapping AD Groups to Database Roles - Comments posted to this topic are about the item Kerberos Authentication for Aurora PostgreSQL: Mapping AD Groups to Database Roles
RegEx Functions I - Comments posted to this topic are about the item RegEx Functions I
Column Data Types - Comments posted to this topic are about the item Column Data Types
The memory toll of VARCHAR(MAX) in SQL Server - Comments posted to this topic are about the item The memory toll of VARCHAR(MAX) in SQL Server
Transaction Log Truncation - Comments posted to this topic are about the item Transaction Log Truncation
BIT_COUNT() V - Comments posted to this topic are about the item BIT_COUNT() V
How We Reduced SQL Server Infrastructure Costs by 33% on AWS: Lessons From a Database Operations Manager - Comments posted to this topic are about the item How We Reduced SQL Server Infrastructure Costs by 33% on AWS: Lessons From a Database Operations Manager
SQL Server 2022 - Administration
Massive Table Growth Issue – How to Set Up Filegroup Usage Alerts? - Hello We recently encountered an issue where a SQL table unexpectedly grew in size due to an application error. The table increased from a few gigabytes to around 11 TB within one week, which completely filled the PRIMARY filegroup. To prevent this from happening again, I would like to set up an alerting system that […]
 

 

RSS FeedTwitter

This email has been sent to {email}. To be removed from this list, please click here. If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com. This newsletter was sent to you because you signed up at SQLServerCentral.com.
©2019 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
webmaster@sqlservercentral.com

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -