Press "Enter" to skip to content

Curated SQL Posts

Fabric Eventstreams SQL Operator now GA

Vaibhav Shrivastava makes an announcement:

The SQL operator was first introduced in preview to give customers an early look at a code‑first transformation experience in Fabric Eventstreams. During preview, customers used the SQL operator to simplify real-time pipelines, consolidate transformation logic, and unlock advanced scenarios using familiar SQL semantics. Feedback from this phase directly shaped the GA release—driving improvements across multi‑destination support, event‑time processing, testing capabilities, and overall production readiness.

Building on this preview momentum, we’ve reached the next milestone for SQL operator in Fabric Eventstreams, a powerful, code‑first way to transform and route data across Fabric’s Real-Time Intelligence experiences. This complements Eventstream’s no-code capabilities, giving engineers the flexibility to choose the right abstraction for their scenarios.

With this release, you can define transformation and routing logic once using familiar SQL semantics and seamlessly deliver streaming results to multiple destinations in parallel—all from a single operator.

Read on to see what’s changed since the public preview.

Leave a Comment

Bulk Loading Data with mssql-python

Chad Callihan loads some data:

I’ve had some projects in the past that involved using Python to load data in SQL Server. It wasn’t unbearably slow, but it seemed like a process that could be faster. For that reason, a recent SQL Server blog post about bulk loading data with Python caught my eye. I decided to test out the new mssql-python 1.4.0 mentioned in that post and see how much of an impact it would make on loading speed.

Chad saw about a 10x improvement in performance. I’ve had some similar results in production environments. The mssql-python library is a legitimate improvement over the classic ODBC driver and pyodbc.

Leave a Comment

The Current State of Open Source

Gabriel Anhaia gives a rundown:

Something is breaking in open source. Not the code. The social contracts.

The open-source world isn’t collapsing from lack of funding or contributor burnout (though both are real). It’s fracturing because organizations that built empires on community-written software decided the original deal doesn’t work for them anymore. Forks are multiplying. Licenses are mutating. Lawyers are circling.

The volunteer maintainers who actually wrote most of this code? They’re stuck in the crossfire.

Read on for a variety of examples around sovereignty rules and some of the licensing shenanigans going on in major products. H/T Cristophe Pettus.

Leave a Comment

Thoughts on Database Projects in SSMS 22.4

Andy Brownsword shares some thoughts:

Last month in SSMS v22.4, we had the Database DevOps (preview) workload introduced which brings with it Database Projects. Last week I shared my favourite features for them which make deployments amazing.

But if you’ve tried them out in SSMS you might have noticed that not everything is present. It’s a preview, after all. So what can we do today?

Read on for that answer.

Leave a Comment

Defining the Fabric Ontology

Mike Donnelly explains a term:

The short version: Fabric Ontology is the semantic backbone of Microsoft Fabric. It’s the layer that defines what your business data actually means.

If you’ve ever worked in a large organization, you know the problem. One team calls them “Customers,” another calls them “Clients,” and a third calls them “Account Holders.” Without a shared meaning, your analytics become a mess of conflicting vocabularies. An ontology is just a structured way of naming things and describing their relationships so everyone—and every tool—is using the same dictionary.

I think this is all correct, but I think there’s something more to ontologies than that. At least in the Palantir world, the ontology is not just the business definitions and concepts, but it’s also the actions you can take against that data. In other words, you might have Customers, Clients, and Account Holders. You can add a new customer, update the customer details, send a welcome to a new account holder, etc. Each of these actions is baked into the ontology as well. That’s what makes it different from simply defining where the data lives and how we got it in its current shape.

Leave a Comment

Support for Typst in knitr

Yihui Xie makes an announcement:

A few weeks ago I added preliminary support for Typst to knitr. The way it works is simple: if your file has the extension .Rtypknitr will recognize it as a Typst document, knit it, and produce a .typ output file. The chunk syntax follows the same Markdown-style fenced code block convention: ```{r} to start a chunk and ``` to end it, with inline R expressions written as `r expr`. A minimal example (hello.Rtyp):

Click through for that example, as well as some notes on Typst and HTML.

Leave a Comment

Tips for Using Bar Charts

Ruben Van de Voorde shares some tips:

The bar chart is one of the oldest statistical graphics we have. William Playfair published the first bar chart for categorical comparison in 1786: a horizontal bar chart of Scotland’s imports and exports with trading partners. Two and a half centuries later, it’s a familiar sight wherever numbers are shown visually: news stories, research reports, business dashboards; bar charts are everywhere. Most people have seen one before and instinctively know how to read them.

Click through for plenty of examples of where bar charts work best, as well as important notes when using them. I’m particularly fond of Cleveland dot plots versus bar charts, but a good bar chart does tell an important story.

Leave a Comment

Unmaterialized Columns in Power BI

Teo Lachev has ideal columns:

Coming back from a long vacation, I’ve almost missed this interesting Power BI enhancement: Power BI unmaterialized calculated columns. Normally, I avoid the traditional DAX calculated columns for a variety of reasons, such as confusion about where business logic is applied, limited support across storage modes (for example, Direct Lake doesn’t support them), longer refresh times, etc. This not to say that calculated columns can’t be useful, such as in the case where you need to flatten a parent-child hierarchy. But unmaterialized calculated columns could open interesting scenarios that go beyond content translation to other languages mentioned by Microsoft in the April 2026 update.

Click through to learn what unmaterialized columns are and how they work.

Leave a Comment