<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Vojtěch Šíma - Blog</title><description>Posts on software, systems, and whatever else I’m building.</description><link>https://www.vojtechsima.com/</link><language>en</language><item><title>How Much Does Direct Lake Cost in Microsoft Fabric?</title><link>https://www.vojtechsima.com/blog/how-much-does-direct-lake-cost-in-microsoft-fabric/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/how-much-does-direct-lake-cost-in-microsoft-fabric/</guid><description>Direct Lake vs Import CU cost, measured over nine replications on F64 and F2. Where the refresh saving goes, and the Lakehouse overhead you don&apos;t see.</description><pubDate>Tue, 25 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Direct Lake Internals: Transcoding, Framing, Residency, and Eviction</title><link>https://www.vojtechsima.com/blog/microsoft-fabric-direct-lake-framing-caching-performance/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/microsoft-fabric-direct-lake-framing-caching-performance/</guid><description>How Direct Lake really works in Microsoft Fabric: framing, transcoding, column residency and eviction, with the measured CU cost of each.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Fabric Dataflow Gen2 Partitioned Compute: Setup and Benchmark</title><link>https://www.vojtechsima.com/blog/fabric-dataflow-gen2-partitioned-compute-setup-and-benchmark/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/fabric-dataflow-gen2-partitioned-compute-setup-and-benchmark/</guid><description>Discover how to set up Partitioned Compute in Dataflow Gen2 for parallel processing. Read my setup guide and see the real-world benchmark results in Fabric.</description><pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Automated Delta Table Maintenance in Fabric Lakehouse (Without PySpark)</title><link>https://www.vojtechsima.com/blog/automated-delta-table-maintenance-in-fabric-lakehouse-without-pyspark/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/automated-delta-table-maintenance-in-fabric-lakehouse-without-pyspark/</guid><description>Deep dive into Delta table internals, transaction logs, and storage layout. Master maintenance, VACUUM, and Z-Order using Python (delta-rs) in Microsoft Fabric.</description><pubDate>Fri, 13 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Power BI Write-Back to Azure SQL Database using Fabric User Data Functions</title><link>https://www.vojtechsima.com/blog/power-bi-write-back-to-azure-sql-fabric-udf/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/power-bi-write-back-to-azure-sql-fabric-udf/</guid><description>Bypass native Fabric limitations and achieve instant Power BI write-back to Azure SQL. Learn to use User Data Functions to skip the Spark cold start.</description><pubDate>Mon, 12 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Fix Slow Refreshes: Faster Way to Load SharePoint Files in Power BI</title><link>https://www.vojtechsima.com/blog/fix-slow-refreshes-faster-way-to-load-sharepoint-files-in-power-bi/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/fix-slow-refreshes-faster-way-to-load-sharepoint-files-in-power-bi/</guid><description>Optimize Power BI SharePoint data retrieval. Learn technical differences between connectors and implement a custom REST API strategy for faster dataset refreshes.</description><pubDate>Tue, 30 Dec 2025 00:00:00 GMT</pubDate></item><item><title>How to Fix Slow SharePoint List Refresh in Power BI</title><link>https://www.vojtechsima.com/blog/how-to-fix-slow-sharepoint-list-refresh-in-power-bi/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/how-to-fix-slow-sharepoint-list-refresh-in-power-bi/</guid><description>Boost Power BI SharePoint refresh speed. Fix RenderListDataAsStream errors and use a custom M script to cut load times from minutes to seconds.</description><pubDate>Tue, 23 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Programmatically Refresh &amp; Sync SQL Analytics Endpoint Metadata in Microsoft Fabric</title><link>https://www.vojtechsima.com/blog/programmatically-refresh-sync-sql-analytics-endpoint-metadata-in-microsoft-fabric/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/programmatically-refresh-sync-sql-analytics-endpoint-metadata-in-microsoft-fabric/</guid><description>Learn how SQL Analytics Endpoint in Microsoft Fabric works and how to fix metadata lag by calling the Refresh SQL Endpoint Metadata API before Power BI refresh.</description><pubDate>Mon, 17 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Why Power BI Says a Value Is a Duplicate When It’s Not</title><link>https://www.vojtechsima.com/blog/why-power-bi-says-a-value-is-a-duplicate-when-it-s-not/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/why-power-bi-says-a-value-is-a-duplicate-when-it-s-not/</guid><description>Power Query is case sensitive, the model is not, and that mismatch quietly breaks relationship keys. Why it happens, and three ways to fix it.</description><pubDate>Sat, 01 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Dataflows Gen1 and Gen2: Where is my data stored?</title><link>https://www.vojtechsima.com/blog/dataflows-gen1-and-gen2-where-is-my-data-stored/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/dataflows-gen1-and-gen2-where-is-my-data-stored/</guid><description>Dataflows explained: Gen1 vs Gen2 storage, CSV vs Delta, SQL cache, and staging Lakehouse and Warehouse. Learn what lives where and how to connect fast.</description><pubDate>Sun, 26 Oct 2025 00:00:00 GMT</pubDate></item><item><title>DAX User Defined Functions (Preview)</title><link>https://www.vojtechsima.com/blog/dax-user-defined-functions-preview/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/dax-user-defined-functions-preview/</guid><description>How DAX user defined functions work: declaring UDFx with DEFINE and FUNCTION, val versus expr parameters, and where they hold up in a real model.</description><pubDate>Sun, 21 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Why Is Power Query List.Contains Slow? Faster Lookup Alternatives</title><link>https://www.vojtechsima.com/blog/why-is-power-query-list-contains-slow-faster-lookup-alternatives/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/why-is-power-query-list-contains-slow-faster-lookup-alternatives/</guid><description>Power Query lookup benchmarks. Learn why List.Contains is slow at scale, when buffering helps, and how joins or Record.FieldOrDefault beat list contains.</description><pubDate>Thu, 21 Aug 2025 00:00:00 GMT</pubDate></item><item><title>How to Connect GraphQL APIs as a Data Source in Power BI</title><link>https://www.vojtechsima.com/blog/how-to-connect-graphql-apis-as-a-data-source-in-power-bi/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/how-to-connect-graphql-apis-as-a-data-source-in-power-bi/</guid><description>Learn how to connect GraphQL APIs to Power BI effortlessly. Discover key GraphQL concepts and integrate GraphQL with Power BI for seamless data analysis.</description><pubDate>Sun, 03 Aug 2025 00:00:00 GMT</pubDate></item><item><title>How Power Query (M) evaluates your queries, and why the performance gets weird</title><link>https://www.vojtechsima.com/blog/how-power-query-m-evaluates-your-queries-and-why-the-performance-gets-weird/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/how-power-query-m-evaluates-your-queries-and-why-the-performance-gets-weird/</guid><description>Lazy versus eager evaluation in Power Query M, what buffering actually changes, and why the same query can return different numbers on each run.</description><pubDate>Sat, 12 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Stop Repeating CALCULATE: Iterate Over Categories in DAX</title><link>https://www.vojtechsima.com/blog/stop-repeating-calculate-iterate-over-categories-in-dax/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/stop-repeating-calculate-iterate-over-categories-in-dax/</guid><description>Stop repeating CALCULATE in your DAX. Discover how to iterate and simplify category-level logic with SUMX, AVERAGEX, and virtual tables like VALUES and SUMMARIZE.</description><pubDate>Mon, 30 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Native write-back in Power BI (Fabric preview)</title><link>https://www.vojtechsima.com/blog/native-write-back-in-power-bi-fabric-preview/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/native-write-back-in-power-bi-fabric-preview/</guid><description>Write back to SQL straight from a Power BI report using Fabric User Data Functions and Translytical Task Flows. No Power Apps, no Power Automate.</description><pubDate>Fri, 13 Jun 2025 00:00:00 GMT</pubDate></item><item><title>While Loop in M Language</title><link>https://www.vojtechsima.com/blog/while-loop-in-m-language/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/while-loop-in-m-language/</guid><description>Discover how to mimic a while loop in M Language using List.Generate(). Learn to implement while loop logic effectively in Power Query M.</description><pubDate>Tue, 13 May 2025 00:00:00 GMT</pubDate></item><item><title>Refresh Semantic Models Every Minute – Now in Fabric (Preview)</title><link>https://www.vojtechsima.com/blog/refresh-semantic-models-every-minute-now-in-fabric-preview/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/refresh-semantic-models-every-minute-now-in-fabric-preview/</guid><description>The Refresh Semantic Model activity in a Data Pipeline gets you past Power BI&apos;s 30-minute limit, with dependencies and no code. Preview, with caveats.</description><pubDate>Mon, 05 May 2025 00:00:00 GMT</pubDate></item><item><title>Make Your Power Query Dynamic with Parameters</title><link>https://www.vojtechsima.com/blog/make-your-power-query-dynamic-with-parameters/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/make-your-power-query-dynamic-with-parameters/</guid><description>Discover how to make your Power Query dynamic with parameters. Learn practical ways to use parameters in Power BI, enhancing flexibility and control.</description><pubDate>Sun, 23 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Top everyday DAX functions</title><link>https://www.vojtechsima.com/blog/top-everyday-dax-functions/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/top-everyday-dax-functions/</guid><description>The DAX functions worth learning first and what each one is actually for. Not a reference list: the handful you end up using in every model.</description><pubDate>Tue, 18 Feb 2025 00:00:00 GMT</pubDate></item><item><title>Ultimate intro to Power Query M Language</title><link>https://www.vojtechsima.com/blog/ultimate-intro-to-power-query-m-language/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/ultimate-intro-to-power-query-m-language/</guid><description>What M actually is, how Power Query writes it for you, and how to start editing it yourself. A beginner introduction built on working examples.</description><pubDate>Fri, 07 Feb 2025 00:00:00 GMT</pubDate></item><item><title>Combine Files Quickly in Power Query</title><link>https://www.vojtechsima.com/blog/combine-files-quickly-in-power-query/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/combine-files-quickly-in-power-query/</guid><description>Power Query&apos;s built-in file combiner generates a folder of helper queries. Two simpler ways to combine files, in roughly one line of M.</description><pubDate>Sun, 22 Dec 2024 00:00:00 GMT</pubDate></item><item><title>API Authentication in Power Query</title><link>https://www.vojtechsima.com/blog/api-authentication-in-power-query/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/api-authentication-in-power-query/</guid><description>The five authentication methods Power Query supports: Anonymous, API Key, Bearer Token, Basic and OAuth 2.0, with working M for each.</description><pubDate>Mon, 25 Nov 2024 00:00:00 GMT</pubDate></item><item><title>Pagination in Power Query</title><link>https://www.vojtechsima.com/blog/pagination-in-power-query/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/pagination-in-power-query/</guid><description>How to page through an API from Power Query: offset, cursor and link-header styles, with M that keeps asking until the last page comes back.</description><pubDate>Tue, 12 Nov 2024 00:00:00 GMT</pubDate></item><item><title>Introduction to API in Power Query</title><link>https://www.vojtechsima.com/blog/introduction-to-api-in-power-query/</link><guid isPermaLink="true">https://www.vojtechsima.com/blog/introduction-to-api-in-power-query/</guid><description>Calling a REST API from Power Query with Web.Contents and Json.Document: the request, the response, and turning JSON into a usable table.</description><pubDate>Sat, 09 Nov 2024 00:00:00 GMT</pubDate></item></channel></rss>