Problems displaying this newsletter? View online.

Database Weekly

The Complete Weekly Roundup of SQL Server News by SQLServerCentral.com

Hand-picked content to sharpen your professional edge

Editorial

 

Technical Pain Behaviors

In my family’s history of the past 10+ years, we have become well versed in nagging, ongoing, non-debilitating pain. In some ways, the lessons we have learned about physical pain correlate all too well to the types of pain that we technical people are involved with daily. But there is a huge difference, even if we don’t always seem to treat them differently.

A Few Medical Terms

There are different types of pain you deal with, and I want to talk about those classified as chronic or acute pain. The difference really comes down to how long this pain lasts and if it can be treated. Acute pain is typically pain that goes away reasonably quickly and has a specific cause and usually, a treatment. Chronic pain lingers, often for years and may not even have an apparent reason or useful treatment. (This is a simplification, of course, read more here if I have inadvertently piqued your medical interest.)

One of the most interesting things about pain is that when we have it regularly, we tend to develop what are known as pain behaviors. Glossing over a very complicated medical discussion, these are coping mechanisms that we use to deal with the long-term pain we have to deal with. For example, say you break your arm. The doctor gives you a sling and some medicine and a time frame to wear the sling. If you still feel pain after it heals, you might develop a pain behavior of rubbing your shoulder and wearing the sling that makes you feel better, despite it not actually helping you (and perhaps actively making things worse).

I suspect you may know where this is headed

As I learned about this concept of pain behaviors, I realized we do the same stuff in technology. We have acute pains such as: server crashes, DBA/programmers oopses (yeah, we all have done something and said a variant of "oops" a time or two in our careers), and sometimes an outside non-friendly force (like a hacker or computer virus). Just like in medicine, we develop treatments that fix things, and ideally, processes that prevent future mishaps.

However, chronic issues are where things get interesting. The server always seems slower than the customer expects. Some code breaks randomly in a way that “isn’t our fault”. Our projects are not moving fast enough. The first time we encounter an issue; we try something that we hope fixes it. But when it really doesn’t, there is this tendency to start doing things to make us and our customers feel like we are doing something that is helpful.

For example, take that slow performing database. There are a lot of very useful techniques like reindexing, adding indexing, defragmenting the structures; and less useful techniques like whining that your server is inadequate and the granddaddy of them all: restarting the server.

Any of these applied with the type of scientific rigor that a decent administrator possesses, taking the time to truly understand a problem, is not bad. But after a while, just like rubbing your knee to try to fix nerve damage in your back…it just becomes a behavior that isn’t doing you any good.

But it helps a bit, so what?

The problem with these behaviors is that they aren’t really helping things, and in some cases, they make things worse. Technology is not like the human body. There are solutions to every problem out there, you just haven’t found them, treating them with useless treatments only puts off the problem for later (and possibly someone else.)

Like I said, the biggest example is restarting your server. For the non-technical user, restarting a device is a perfectly valid temporary solution to a lot of issues. I do it myself occasionally because there are many apps that don’t really behave all that great sometimes.

However, restarting a server, especially a database server, where time and possibly money is being lost is not an awesome idea, especially when you have seen a problem more than a time or two. From the simple downtime to the cache that up a cache of data that makes queries run faster (not to mention transactions that are actively being processed), you are rarely fixing anything.

Remember that computers are logical, even when they seem otherwise

Don’t let your repeated, longstanding problems be something you go through the motions for just to make people feel like you are helping them. Take the time to solve them (or perhaps I mean, fight for the time to solve them!)

Do you have examples of pain behaviors that you see people do to just gloss over chronic issues with their business class servers and processes?

Louis Davidson (@drsql)

Join the debate, and respond to the editorial on the forums

 
The Weekly News
All the headlines and interesting SQL Server information that we've collected over the past week, and sometimes even a few repeats if we think they fit.
AI/Machine Learning/Cognitive Services

Setting up a Local LLM

From SQLServerCentral Blogs

I wanted to experiment a bit with an LLM and train...

Data Storage and Analytics Trends and Predictions 2025 From Industry Insiders

From IT Pro - Microsoft Windows Information, Solutions, Tools

IT leaders and industry insiders share their data ...

Ask questions to your data, is Copilot the way to go or should we consider alternatives like AI Skills?

From Data – Marc

More often, people want to interact with their data in different ways than just a report. By popular demand, AI infused technologies are on top of the list. Customers...

Can AI Pass Humanity’s Ultimate Intelligence Test?

From Past News - RSS Feeds

Can AI pass Humanity’s Last Exam? Discover the bold benchmark redefining artificial intelligence and its potential. The post Can AI Pass Humanity’s Ultimate Intelligence Test? appeared first on eWEEK.

Administration of SQL Server

The Contents of a Database Page in SQL Server

From Curated SQL

Simon Frazer takes a peek: In SQL Server, data is stored in tables. Behind the scenes, however, these tables are divided into 8-kilobyte (8 KB)…

Thoughts on Cloud Monitoring Solutions

From Curated SQL

Mika Sutinen takes a look at built-in ways to monitor SQL Server databases in the three major cloud providers: Monitoring SQL Server databases is one…

Azure Databricks, Spark and Snowflake

Finding Out What’s Going On in your Database

From Sherpa of Data

Over the last few days, a task that only runs once...

DMO/SMO/Powershell

Building the Scaffolding of a Powershell Module

From Curated SQL

Adam Bertram has a series on creating Powershell modules: Click through for the article.

Data Science

The Distribution of P-Values under the Null Hypothesis

From Curated SQL

David Lindelöf asks a question: I sometimes use this fun interview question for aspiring data scientists: How are p-values distributed assuming the null hypothesis is…

Database Design, Theory and Development

VIEW Objects

A view is a virtual table, created when it’s invoked by the < view name>. The goal we had in the standards is to make it behave as much like a base table as possible.

Temporary Tables

From Simple Talk

There is a feature of SQL I have not seen used muc...

ETL/SSIS/Azure Data Factory/Biml

Using the OUTPUT Clause

From Curated SQL

Erik Darling has a new video. Erik mentions the best use case of this being for archival tables, but I’ll add one more: if you’re…

Three Incremental Load Patterns with Azure Data Factory

From Curated SQL

Temidayo Omoniyi likes a good pattern: This article is divided into three major sections—each showing the different abilities and use cases of performing incremental load…

Data Flow: Aggregate Transformation

From Mainri

The Aggregate transformation in Azure Data Factory (ADF) Data Flows is a powerful tool for performing calculations on groups of data. It’s analogous to the GROUP BY clause in...

Microsoft Fabric ( Azure Synapse Analytics, OneLake, ADLS, Data Science)

Loading Models from Source Data with dbt

From Simple Talk

The data transformation tool dbt (data build tool)...

Oracle/PostgreSQL/MySQL/other RDBMS

I Wrote a Book on How You Broke Your Database – Here’s Why You Should Read It

Hacking MySQL is my first book about the database world and its internal functionality focusing on how, when, and why developers break their databases to necessitate optimization (1), how to optimize their databases (2), and how to secure them from data breaches (3).

MySQL Shell and Basic Configuration Management (Part 2 – Memory and CPU)

In this article, we will look at techniques using MySQL Shell to help you optimize both memory and CPU usage to ensure smooth and fast database performance.

Performance Tuning SQL Server

Understanding the SQL Server Version Store

From Curated SQL

Haripriya Naidu digs into tempdb: This article discusses when version store starts generating rows, when cleanup takes place, and how TempDB space gets occupied due…

An Overview on Spinlocks in SQL Server

From Curated SQL

Stephen Planck talks spinlocks: High concurrency can expose subtle performance bottlenecks in SQL Server, particularly those stemming from spinlocks and latch contention. Both mechanisms exist…

Repairing a SQL Server Instance

From Curated SQL

Vlad Drumea fixes an installation problem: Read on to see what you need to have and how to perform the task.

SQL Server 2019 and Row Mode Memory Grant Feedback

From Curated SQL

Yvonne Vanslageren explains a solid feature in SQL Server 2019: When SQL Server runs a query, it needs memory for operations like sorting and joining…

Can AI Rewrite Bad Queries in Seconds? Kinda.

From Brent Ozar Unlimited

When I see horrific code, stuff that would take a ...

Indexing SQL Server Queries For Performance: Unpredictable Searches

From Erik Darling Data

Indexing SQL Server Queries For Performance: Unpredictable Searches Thanks for watching! Going Further If this is the kind of SQL Server stuff you love learning about, you’ll love my...

Indexing SQL Server Queries For Performance: Predicate Key Lookups

From Erik Darling Data

Indexing SQL Server Queries For Performance: Predicate Key Lookups Thanks for watching! Going Further If this is the kind of SQL Server stuff you love learning about, you’ll love...

PostgreSQL

Multi-Column Statistics in PostgreSQL

From Curated SQL

Hans-Jürgen Schönig creates new statistics: If you are using PostgreSQL for analytics or large-scale aggregations, you might occasionally notice the planner making false assumptions regarding…

Checking Table Size in PostgreSQL

From Curated SQL

Josephine Bush has a query: It’s easy to do with this query. That’s all I have to say on this topic for now. Click through…

Deploying PostgreSQL DB Changes Through AWS Developer Tools Using Flyway

While the fundamental concept, flyway migrate, is simple and straightforward, getting it implemented in an automation tool like AWS CodeBuild is not. Inevitably, there’s a degree of complexity in putting together a Continuous Integration pipeline.

Umair Shahid: Leveraging autovacuum in PostgreSQL to optimize performance and reduce costs

From Planet Postgres

Autovacuum is one of PostgreSQL's most powerful features, designed to maintain database health and optimize performance by automating routine maintenance tasks. However, improper configuration can lead to performance bottlenecks,...

Kaarel Moppel: Don't forget about the Postgres parallel leader participation setting

From Planet Postgres

Recently there was a nice article on the Planet Po...

Robert Haas: Who Contributed to PostgreSQL Development in 2024?

From Planet Postgres

People continue to tell me on a semi-regular basis how much they appreciate these approximately annual posts, the first of which came out in April of 2017. I think...

PowerPivot/PowerQuery/PowerBI

Using PolyBase for Archiving Data

From Curated SQL

Andy Yun is speaking my language: One of SQL Server 2022’s new features is something called Data Virtualization. It enables T-SQL to directly query files that…

Solving Certificate Server Name Mismatch for Power BI Data Sources

From Andy Broadsword

I recently had an issue when sourcing data in Powe...

Security News and Issues

You Can't Trust Hackers, and Other Data Breach Verification Tales

From Troy Hunt

Presently sponsored by: Report URI: Guarding you f...p

Security Needs to Start Saying 'No' Again

From Dark Reading: Dark Reading News Analysis

The rush to say "yes" allows cybersecurity teams t...

T-SQL and Query Languages

The JSON Data Type in Azure SQL DB

From Curated SQL

Koen Verbeeck takes a peek at what’s coming in SQL Server 2025: We have data coming into our database from a REST API endpoint. The…

How To Write SQL Server Queries Correctly: Literally Everything You Need To Know About CTEs

From Erik Darling Data

How To Write SQL Server Queries Correctly: Literal...

T-SQL 101: #97 Defining and initializing variables in T-SQL

From The Bit Bucket

Variables in T-SQL work very much the way they do in other languages. A variable really is nothing more than a name given to a memory location. In T-SQL,...

The Lighter Side

How to Learn SQL Without Quitting Your Day Job

From SQLServerCentral Blogs

Juggling meetings, deadlines, and family? Yeah, le...

Nostalgic Memory Loss

From Simple Talk

Today’s topic pertains to 99.999% of all people,...

How to Start a Successful Blog: A 12-Step Guide for Beginners

From https://chrisadkin.io

Starting your own blog has never been easier. In t...

Book Review: Feel-Good Productivity

From The Bit Bucket

I recently watched a YouTube video with Ali Abdaal that talked about productivity. Not sure what it was exactly, but I really liked listening to Ali. So I was...

Another AI Faux Pax

From SQLServerCentral Blogs

 

 
RSS FeedTwitter
This email has been sent to newsletter@newslettercollector.com. 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. Note: This is not the SQLServerCentral.com daily newsletter list, and unsubscribing to this newsletter will not stop you receiving the SQL Server Central daily newsletters. If you want to be removed from that list, you can follow the instructions on the daily newsletter.
©2019 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
webmaster@sqlservercentral.com

 

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