Press "Enter" to skip to content

Curated SQL Posts

Personalizing the Command Line in Linux

Thomas Williams messes with the command line:

This post is part 1 of quality-of-life changes I make when I first log in to a new Linux server. I primarily use bash (though I also have zsh set up on some machines):

  • .hushlogin
  • .inputrc
  • .vimrc
  • .bashrc

Click through for some examples of customization. I’m not sure if Thomas will get to this in the series, but I like using powerline for more advanced customization.

Leave a Comment

The Cloud (Alone) Is Not a Disaster Recovery Strategy

Umair Shahid explains that you need more:

When AWS stumbled – twice – in October 2025, many teams discovered that “we are in the cloud” is not the same as “we have disaster recovery”.

Applications went offline, customer-facing portals returned errors, and internal dashboards that teams rely on every morning failed to load.

Most of those systems were already running on managed cloud services. They had multi-AZ databases, auto scaling groups, and health checks. What they did not have was a clear answer to three simple questions:

Read on for those questions, which are critical to ensuring business continuity.

Leave a Comment

XML Processing in Microsoft Fabric Realtime Intelligence

Reitse Eskens digs into some results:

I’ve been working for quite some time on a fun solution in Fabric Realtime Intelligence. We’re processing XML files into a structured table. As you’re probably aware, XML has its own… well, let’s be nice and call them challenges.

One thing I ran into was that an element contained several other elements. Usually, you’ll see them in an array, but in this case, it wasn’t. Since these elements within the main element contain the information we need for the table, I started thinking about how to extract this data.

Read on for an example of the type of Data Reitse was looking to process, as well as how the problem ended up being a lot easier to solve than first appearances would indicate.

Leave a Comment

No Buffer Pool Memory or OS Memory Available

Paul Randal re-tells a story:

Jonathan had a client issue recently where SQL Server’s buffer pool had been forced down to a ridiculously small size, only a few hundred MB, but the OS also showed basically no free memory. Page Life Expectancy was zero! What was going on?

From investigating SQL Server’s memory usage, the memory manager showed that target and total memory were the same, at only 1.2GB, and lock pages in memory was correctly set.

Read on for Jonathan’s troubleshooting steps and what he discovered.

Leave a Comment

Troubleshooting a Vanishing CU Install

Sean Gallardy digs into an issue:

Someone asked if I’ve ever had a CU install where you run it and it goes through the extraction process, then right as it hits 100% just exists and nothing happens. Well, that’s pretty weird, and no, I hadn’t. I was, however, intrigued! Since I love my readers, I made a repro of what the person this was occurring to, saw.

Click through for the expectations and what it actually turned out to be.

Leave a Comment

Loading Multiple CSV Files in R

Stephen Royle has a set of challenges:

In a previous post, I described how to run a session to teach R to cell biologists. In this post we’ll look in a bit more detail at one of the steps: how to load data into R.

As a reminder, a typical analysis task in cell biology follows these steps:

  • do the experiment(s)
  • collect the data – e.g. microscopy images
  • analyse and get a plain text (csv) output – e.g. using Fiji
  • load the data into R
  • crunch some numbers and plot

Click through for some explanation, as well as a few exercises (and solutions) for people trying to learn the language. H/T R-Bloggers.

Leave a Comment

Transparent Column Encryption in PostgreSQL

Vibhor Kumar releases an extension:

This extension provides transparent column-level encryption using custom PostgreSQL datatypes so developers can read and write encrypted columns without changing their SQL queries.

And perhaps the most human part of this project is this:

the idea for this project started back in 2016.

It stayed with me for years as one of those engineering ideas that never quite leaves your mind — the thought that PostgreSQL itself could enforce encryption at the column level.

The diagram does look a bit like what you’d see for SQL Server’s Transparent Data Encryption, though the internal mechanics are a good bit different.

Leave a Comment

Ontology Rules in Fabric Activator

Ansley Yeo creates some rules:

Ontology Rules let you define conditions and actions on top of your business entities, rather than on raw tables or telemetry streams.

These rules are evaluated using Fabric Activator, which monitors and triggers actions when conditions are met. The unique value is that the rule logic is expressed in the language of your business, using ontology entities and properties.

Ontologies are a thing I’m not quite sold on yet, whether in Microsoft Fabric or elsewhere. I get the concept of what they do and the concept that this is business logic that the business side could theoretically do. What I have trouble with is seeing the practical benefits. Any time I see “Your business users can…” I immediately add in my mind, “But they won’t.” It feels like people getting giddy over object-oriented development over the data.

That said, I am actively learning about the topic, so maybe I’ll change my mind as I learn more.

Leave a Comment

Disclosing Testing Machines

Louis Davidson lays out an argument:

Something that every writer needs to be careful of is doing too much benchmarking-type work. In many of the software licensing agreements you have signed, you promise not to do that. But at the same time, you can generally give out performance numbers if you aren’t making claims about particular software, especially compared to another.

So, if you come up with an algorithm to do something in a better way than you have seen, it is nice to show the software, give the reader access to the code you are showing the performance of, and include the computer you are running it on.

Louis is referring to the DeWitt Clause, a fairly common clause in commercial database products that came about because Oracle was angry that David DeWitt made them look bad by providing a fair comparison to other platforms.

Leave a Comment