Press "Enter" to skip to content

Day: February 20, 2026

Building a Graph for Its Takeaway

Cole Nussbaumer Knaflic reminds us that visuals should have purpose:

I was facilitating a workshop recently when someone asked one of my favorite questions about a graph on the screen: “So… what are we supposed to take away from this?”

Such a simple—and useful—question.

One challenge was that the graph was attempting to show multiple comparisons at once, so it wasn’t clear what mattered most. To further complicate things, the data in question spanned very different magnitudes, with one category dwarfing the rest.

Click through for a demonstration and how changing the visual layout can affect the message. The challenge I tend to run into is that, when I’m developing a visual for an application or a report, I don’t know what the precise message should be at that moment in time. I have to design with an idea of the data, but what actually emerges will depend upon what data is in there. Tailoring a visual for a specific message at a specific point in time is a lot easier when building a presentation, but it gets tricky when you’re building an application for the long haul.

Leave a Comment

The Makeup of an 8KB Page in PostgreSQL

Radim Marek takes us through the structure of a page:

If you read previous post about buffers, you already know PostgreSQL might not necessarily care about your rows. You might be inserting a user profile, or retrieving payment details, but all that Postgres works with are blocks of data. 8KB blocks, to be precise. You want to retrieve one tiny row? PostgreSQL hauls an entire 8,192-byte page off the disk just to give it to you. You update a single boolean flag? Same thing. The 8KB page is THE atomic unit of I/O.

But knowing those pages exist isn’t enough. To understand why the database behaves the way it does, you need to understand how it works. Every time you execute INSERT, PostgreSQL needs to figure out how to fit it into one of those 8,192-byte pages.

It is a little wild how three of the largest relational database systems use 8KB pages. I know that, on the SQL Server side, they’ve experimented with different page sizes internally and have repeatedly said that, even recently (the last time I heard this was maybe about 3 years ago at a SQL Saturday), there just isn’t a benefit from moving away from 8KB. But what’s in those 8KB differ, and Radim goes into details on what’s in PostgreSQL.

Leave a Comment

SQL Server Transaction Log Architecture

Paul Randal re-continues a series:

In the first part of this series I introduced basic terminology around logging so I recommend you read that before continuing with this post. Everything else I’ll cover in the series requires knowing some of the architecture of the transaction log, so that’s what I’m going to discuss this time. Even if you’re not going to follow the series, some of the concepts I’m going to explain below are worth knowing for everyday tasks that DBAs handle in production.

Note: as I progress through this series and talk about aspects of the log, there are often little edge-cases or weird behaviors in niche circumstances that have been added or changed over the years. I’ll ignore those unless I specifically want to call them out, otherwise the posts would be riddled with rat-holes and mazes of twisty-turny little passages (yes, I loved ’80s text-based adventure games 🙂 that would distract from the main things to learn about in each post.

Click through for a primer on virtual log files, log blocks, and log sequence numbers.

Leave a Comment

Official Support for fabric-cicd Tool

Yaron Pri Gal announces support for a library:

Today, we’re announcing that fabric‑cicd—the open‑source Python deployment library for Microsoft Fabric—is now an officially supported, Microsoft‑backed tool for CI/CD automation across Fabric workspaces.

Over the past year, fabric‑cicd has rapidly evolved through collaboration with engineering, CAT, MVPs, enterprise customers, and the community. Growing usage, strong sentiment across internal and external channels, and adoption by organizations building enterprise‑grade deployment pipelines helped solidify its value within the Fabric ecosystem.

Read on to learn what this means.

Leave a Comment