Press "Enter" to skip to content

Author: Kevin Feasel

A Review of Stellar Repair for MSSQL

Mika Sutinen shares a product review:

Stellar Repair for MS SQL is a tool that greatly simplifies one of all time most dreaded tasks of DBAs and DBREs. Recovering a database that has, for one reason or another, become corrupt.

In this post, I go through one of the more common types of database corruption scenarios, and using Stellar Repair for MS SQL to get the database back up and running.

Click through for the review.

Comments closed

SQL ConstantCare Population Report for Fall 2024

Brent Ozar announces the numbers:

Every quarter, we publish adoption rate data showing how quickly people are adopting new versions of SQL Server. Today it’s time for the fall 2024 version of our SQL ConstantCare® population report.

SQL Server 2019 is still the king of the hill with almost 3X more market share than any other version!

Here’s how adoption is trending over time, with the most recent data at the right:

Every time I do this, I always lay in the caveat that this is a specific example of a specific customer base for a specific product and so there will be differences from the broader population of SQL Server/Azure SQL installations. But every time, I also say that this is still a useful indicator to review over time.

Given that Microsoft has announced SQL Server 2025, my guess is that 2022’s adoption curve will look a lot like 2017’s, where it never eclipses the prior version (2016 or 2019). Instead, companies will likely move directly to 2025 from 2019.

Comments closed

Custom Fonts in Power BI Reports

Elena Drakulevska opens a can of worms:

You’re presenting an amazing Power BI report filled with insights, but it feels like something’s missing. The visuals are great, but the default font? Meh. It’s like wearing flip-flops to a black-tie party.

That’s where custom fonts in Power BI come in to elevate your report and add that personal touch. Fonts do more than look good—they set the tone, show off your brand, and make your reports more engaging and easier to read. In short, they help your reports stand out.

Read on to see how, as well as important reasons why you might not want to use them.

Comments closed

Making a SQL Server Table Read-Only

Chad Callihan has no need to write:

There are situations when you need to set a database to read-only, but what do you do when you need a single table to be read-only? It’s not as straightforward as setting the entire database read-only, but it can still be done.

Let’s take a look at the steps necessary to set both a database and a single table to read-only.

Another option is to put the table into a filegroup that you make read-only, especially if this is a permanent change. That way, you can rebuild the table’s indexes with a fill factor of 100% and reduce the number of pages. In addition, you can back up that read-only filegroup separately from active filegroups and restore filegroups individually. Now, if your read-only filegroup is a large percentage of total data in the database, you don’t need to back it up nearly as frequently because the data isn’t changing.

Comments closed

Setting a Default Destination for Fabric Dataflows Gen2

Jon Voge wants to spend less time copying and pasting:

Ever had a Dataflow Gen2 in which you needed to map the output of several queries to the same Warehouse or Lakehouse? Takes a while to setup, right?

If you wish to add a Default Destination to your Dataflow, all you need to do is to create the Dataflow from inside your desired destination. This works for both Warehouses, Lakehouses and KQL Databases:

Click through for an example of how it works.

Comments closed

Creating a Parquet File in Python

Ed Pollack has part one of a two-parter:

This article dives into the Apache Parquet file format, how it works, and how it can be used to export and import data directly to SQL Server, even when a data platform that supports Parquet files natively is unavailable to assist.

In the second part of this article, customizations and more advanced options will be highlighted, showing the flexibility of Python as a tool to solve analytic data movement challenges.

I like how Ed covers the Parquet file format, as it’s not all that complicated but it does give you an idea of how so many operations on Parquet data can be so fast.

Comments closed

E-Mailing Query Results in Snowflake

Kevin Wilkie gussies up an e-mail:

In our last post, we discussed the most basic of all ways how in Snowflake you can send out a basic email. It was pretty simple, straight text – nothing to really grab the attention of our readers – which we know is the way to craft an email, right?

To do this, we’re going to have some fun in Python. Yes, delve deep into your bag of Python tricks as we get up to some shenanigans with Snowflake and Python.

Read on for a procedure to e-mail the prior result set in HTML format.

Comments closed

SQL Database in Microsoft Fabric

Nikola Ilic covers a new addition to the Microsoft Fabric family:

Now, let’s get back to the previous point: SQL database in Fabric is a SaaS Azure SQL DB…Generally speaking, in SaaS solutions, “everything just works” (or at least should work) – without (too much) intervention from your side.

In the context of the SQL database in Fabric, creating a database is probably the most straightforward process of database creation you will ever experience, as I’ll show you in the “HOW TO” section of this article. From that point, everything happens automatically: the database will be automatically configured and will automatically scale both in terms of compute resources and storage. In addition, database backups are performed automatically, indexing also happens the same way, as well as all patches and software/hardware fixes. You want more? No more complex firewall rules and permission settings – this time, everything is done via Fabric workspace roles and item permissions, while the well-known SQL native features allow for more granular control.

This is more of a head-scratcher for me than a brilliant solution. I get that there’s a challenge in figuring out what you want with Azure SQL Database: single database or elastic pool, serverless or provisioned, vCore or DTU-based pricing model, General Purpose or Hyperscale or Business Critical (for vCore), Basic or Standard or Premium (for DTU), one of about five separate hardware configurations, etc.

From the standpoint of “I just want a database, please,” Fabric SQL Database is a lot easier. The problem comes in when you hit the use cases that necessitated all of these options to begin with, at which point you’re back to the original creation screen and outside of Fabric once more.

Comments closed

What Happens upon Row Modification in Postgres

Semab Tariq takes us on a journey:

But behind the scenes, it’s more complex to ensure that data remains consistent and accessible. In today’s blog, I’ll answer some frequently asked questions from our customers and dive into why PostgreSQL relies on a process called VACUUM to efficiently manage data updates.

Updating a row in PostgreSQL isn’t as straightforward as directly changing the existing data. Instead, PostgreSQL avoids in-place updates, meaning it doesn’t overwrite rows directly. 

But what does this actually mean? 

Read on to learn what that actually means.

Comments closed