Blog

  • How to Handle Deleted Rows in an Incremental Load

    Most data warehouse issues are apparent: a pipeline fails, an alert fires, you get a phone call at an unsociable hour. Deleted source data doesn’t do this. A row is removed from the source, and no one notices. It sits in the warehouse silently skewing measures and KPIs, until the finance director asks why a cancelled order is still in the revenue report. What’s causing this? Incremental loads use watermarks to avoid re-extracting…

    » Read more
  • Microsoft Foundry vs Claude: when should a business actually make the move?

    Microsoft Foundry vs Claude: when should a business actually make the move?

    I use AI every day. Claude for most of my writing and a fair bit of my code, ChatGPT when I want a second opinion, Copilot because it’s sat there in Teams whether I asked for it or not. That’s not unusual any more, and if you’re reading this you’re probably the same. The question I keep getting asked is this: “when do you stop using those tools and start looking at Microsoft Foundry?” Short answer; when the AI…

    » Read more
  • SQL Server vs Fabric Warehouse: T-SQL gotchas nobody warns you about

    SQL Server vs Fabric Warehouse: T-SQL gotchas nobody warns you about

    Fabric Warehouse looks just like SQL Server. It uses T-SQL, has schemas, stored procs and more. Yet, you migrate your first proper workload and see “that’s not supported” errors you never had to think about before. Fabric Warehouse isn’t SQL Server. Under the bonnet it’s storing everything as Delta Parquet in OneLake, and that storage format shapes what T-SQL can and can’t do. Here’s what actually trips…

    » Read more
  • Fabric Workspace Monitoring: What It Actually Shows You

    Fabric Workspace Monitoring: What It Actually Shows You Ever had a Fabric pipeline hang for no obvious reason, or watched a semantic model refresh crawl with no explanation? Fabric Workspace Monitoring is built for exactly that. Flip one toggle in workspace settings and Fabric spins up a read only Eventhouse, streaming execution logs, query text, CPU consumption, and error data into KQL tables you can query directly. Nothing to install, no…

    » Read more
  • Part 2: Using the Companies House API

    Part 2: Using the companies house API, by Callum

    Part 2: Using the Companies House API Welcome back following part 1… Getting a list of companies via Python – Advanced Filtering. This example will look at the transport sector, leveraging the SIC codes in companies house. This can be altered accordingly to suit the business nature you are looking for. The libraries allows you to do more with Python, in this example that will included API calls, referencing the current date time and…

    » Read more
  • Power BI Large Semantic Model Storage Format: Do You Need It?

    Power BI Large Semantic Model Storage Format: Do You Need It?

    If you’ve spent time in a Power BI semantic model’s settings, you’ve probably noticed the Large semantic model storage format toggle. Most people leave it off because they’re not entirely sure what it does or whether they actually need it. This blogpost breaks down what large semantic model storage format is, what it requires and the practical implications for your environment, so you can make an informed decision rather…

    » Read more
  • There Is More Than One Way to Query Your Data: Have You Tried DAX?

    Power BI is fantastic for building reports, but sometimes you just need to get data out of a semantic model quickly, without building a full report page to do it. However, what if you need to dig further into a specific snapshot of your data? For example: What if you wanted to pull a precise slice of data into Excel for a one-off analysis? Or maybe you’re building a bespoke report and want to make sure it’s using the same agreed…

    » Read more
  • Two Outlook Connectors in Copilot Studio; What’s the Difference?

    FrogBlog_FeaturedImage_Lewis_Two-Outlook-Connectors-in-Copilot-Studio-Whats-the-Difference.avif

    Open the connector picker in Copilot Studio and search for Outlook. You’ll find two options: Office 365 Outlook and Microsoft 365 Outlook. Both send emails, both manage calendars, neither requires premium licensing. So why do they exist separately? Office 365 Outlook is the mature Power Platform connector. It works across Power Automate, Power Apps, Logic Apps, and Copilot Studio, with a wide action surface: triggers, folder management,…

    » Read more
  • How to control Azure Foundry token costs before they control you

    How to control Azure Foundry token costs before they control you

    Token costs in production can surprise you fast. That’s especially true with agentic workloads, where a single user action can fan out into five, ten, or more LLM calls under the hood. Without visibility, you won’t know there’s a problem until the bill arrives. By then, the damage is done. The good news: there are concrete, low-effort steps you can take right now. Here are four of them: 1. Set TPM limits on your deployments…

    » Read more
  • My Broken Query Runs Successfully in Synapse, Not That I’m Complaining, But How?

    My Broken Query Runs Successfully in Synapse, Not That I'm Complaining, But How?

    I had one of those moments this week, I spent too long trying to figure out how something that I knew was broken, was running fine and throwing no errors. Can it be called troubleshooting if it isn’t causing trouble? I have a Synapse pipeline that’s been running just fine for months, due to some migration work, I needed to take a look at the source query and found it was broken. I had it open in SSMS on the other monitor, ran it,…

    » Read more