Wicked Smart Data
LearnInsightsAboutContact
Sign InLet's Build
LearnInsightsAboutContact
Sign InLet's Build
Wicked Smart Data

Intelligence, automation, and expert execution — plus an elite library of free knowledge. We turn complexity into competitive advantage.

Start a conversation

Platform

  • Learning Paths
  • Insights
  • RSS Feed

Company

  • About
  • Contact
  • Work With Us

Legal

  • Privacy Policy
  • Terms of Service

© 2026 Wicked Smart Data. All rights reserved.

Intelligence · Automation · Advantage

Microsoft Fabric
Learning Path🌱 Foundation

Microsoft Fabric Fundamentals

Get productive in Microsoft Fabric: OneLake, lakehouses, warehouses, Dataflow Gen2, data pipelines, Spark notebooks, and Direct Lake reporting in Power BI.

1
Lesson 1

What Is Microsoft Fabric? Workloads, OneLake, and How It Fits with Power BI

Microsoft Fabric promises to end the fragmentation of modern data stacks — but what actually is it, and how does it work? This foundational lesson breaks down every Fabric workload, explains how OneLake eliminates data duplication, and shows exactly where Power BI fits into the picture.

18 min read
2
Lesson 2

Fabric Capacities and Workspaces: F SKUs, Trials, and Setting Up Your First Workspace*

24 min read
3
Lesson 3

OneLake Explained: One Copy of Data, Delta Tables, and Shortcuts

OneLake is the storage backbone of Microsoft Fabric — but understanding it deeply means going beyond the marketing pitch. This lesson covers how OneLake is physically structured, how Delta Lake transaction logs actually work, how Shortcuts virtualize data across clouds, and the operational pitfalls that will slow you down if you skip them.

28 min read
4
Lesson 4

Building Your First Lakehouse in Microsoft Fabric: Files, Tables, and the SQL Analytics Endpoint

Learn how to create a Microsoft Fabric Lakehouse from scratch, load CSV files into both the Files and Tables zones, and query your data using the SQL Analytics Endpoint. This hands-on lesson builds the foundational skills you need for every Fabric data engineering project.

16 min read
5
Lesson 5

Fabric Lakehouse vs Warehouse: Choosing the Right Store for Your Workload

Both the Fabric Lakehouse and Warehouse store Delta tables in OneLake — so why does picking the wrong one cause so much pain? This lesson explains the architectural differences that actually matter and shows you how to make a confident, defensible choice for any workload.

23 min read
6
Lesson 6

Ingesting Data with Dataflow Gen2: Power Query Skills in Microsoft Fabric

Dataflow Gen2 is more than a drag-and-drop ETL tool — it's a Power Query runtime with query folding, a staging layer, and Delta table output built into Microsoft Fabric. This deep-dive lesson teaches you how to connect to diverse sources, write effective M transformations, maximize query folding, configure incremental refresh, and troubleshoot the failures that trip up even experienced practitioners.

31 min read
7
Lesson 7

Orchestrating Loads with Fabric Data Pipelines: Copy Activities, Parameters, and Schedules

Learn how to build reliable, automated data pipelines in Microsoft Fabric from the ground up. This hands-on lesson covers Copy Activities, dynamic parameters, activity chaining with dependencies, and scheduled triggers — everything you need to load data without manual intervention.

19 min read
8
Lesson 8

Transforming Data with Spark Notebooks in Microsoft Fabric: PySpark for Lakehouse Tables

Learn how to use PySpark in Fabric Spark notebooks to clean, enrich, and write production-quality Delta tables to your lakehouse. Covers deduplication, Delta merge, partitioning, and parameterized notebooks that plug into Data Pipelines.

20 min read
9
Lesson 9

Implementing the Medallion Architecture in Microsoft Fabric: Bronze, Silver, and Gold Layers

Learn how to design and build a production-ready medallion architecture in Microsoft Fabric using three separate lakehouses for Bronze, Silver, and Gold layers. This lesson goes beyond theory — you'll write real PySpark notebooks with MERGE patterns, quarantine logic, and Delta optimization for Power BI Direct Lake reporting.

19 min read
10
Lesson 10

Direct Lake Mode in Power BI: How It Works and When to Use It over Import and DirectQuery

Direct Lake mode reads Delta Parquet files directly from OneLake into Power BI's in-memory engine — delivering Import-speed performance without scheduled refreshes. Learn how framing, transcoding, and fallback work, and build a production-ready Direct Lake semantic model from a Fabric lakehouse.

24 min read
11
Lesson 11

Building a Fabric Data Warehouse with T-SQL: Tables, Views, and Cross-Database Queries

Learn how to design and build a production-ready dimensional model in Microsoft Fabric Warehouse using T-SQL. This lesson covers DDL for fact and dimension tables, view design patterns, and cross-database queries that join warehouse and lakehouse data without moving it.

21 min read
12
Lesson 12

Using OneLake Shortcuts to Query Data in ADLS Gen2 and Amazon S3 Without Copying It

OneLake Shortcuts let you query data in ADLS Gen2 and Amazon S3 directly from Microsoft Fabric — no copying, no pipelines, no duplication. This deep-dive lesson covers the internal architecture, credential configuration, Spark and T-SQL querying patterns, performance optimization, and the security model you must understand before deploying shortcuts in production.

29 min read
13
Lesson 13

Real-Time Analytics in Microsoft Fabric: Eventstreams, Eventhouses, and KQL Querysets

Learn how to build a complete real-time analytics pipeline in Microsoft Fabric using Eventstreams for ingestion, Eventhouses for ultra-fast time-series storage, and KQL Querysets for millisecond-latency queries. This expert-level lesson covers architecture internals, KQL query patterns, materialized views, and Power BI integration.

32 min read
14
Lesson 14

Database Mirroring in Microsoft Fabric: Replicating Azure SQL and Snowflake into OneLake

Database Mirroring in Microsoft Fabric creates continuous, near-real-time replication from Azure SQL Database and Snowflake directly into OneLake as Delta tables — eliminating scheduled ETL and enabling Direct Lake Power BI reporting on always-fresh operational data. This deep-dive lesson covers CDC configuration, Snowflake change tracking, schema change handling, and production operations.

31 min read
15
Lesson 15

Fabric Git Integration and Deployment Pipelines: Version Control and Promotion Across Environments

Learn how to combine Microsoft Fabric's Git integration and deployment pipelines into a production-grade SDLC. This deep-dive lesson covers repository serialization, branching strategies, deployment rules, CI/CD automation, and the edge cases that trip up even experienced Fabric engineers.

29 min read
16
Lesson 16

Securing and Governing Microsoft Fabric: Workspace Roles, Item Permissions, and OneLake Data Access

Fabric's security model has four distinct permission layers — and most teams only know about one of them. This deep-dive lesson teaches you how workspace roles, item permissions, and OneLake data access policies interact so you can design and audit a governance model that actually holds up in production.

29 min read
17
Lesson 17

Loading Data into a Fabric Lakehouse with the Pipeline Copy Activity: Connecting to REST APIs, Blob Storage, and SQL Sources

Learn how to use Microsoft Fabric's Pipeline Copy Activity to ingest data from REST APIs, Azure Blob Storage, and Azure SQL databases into a Lakehouse. This hands-on lesson walks through real configuration steps, explains every key decision, and covers common pitfalls so your first ingestion pipeline actually works.

19 min read
18
Lesson 18

Monitoring Fabric Capacity Usage and Pipeline Activity with the Monitoring Hub

When pipelines run slow or fail silently, you need more than hope — you need visibility. This lesson teaches you how to use the Fabric Monitoring Hub and Capacity Metrics app to track activity, diagnose failures, and understand what your workloads are actually costing your capacity.

17 min read
19
Lesson 19

Scheduling and Automating Fabric Data Pipeline Runs with Activity-Level Retries, Alerts, and Email Notifications

Learn how to turn a basic Fabric pipeline into a production-grade, self-healing automation. This lesson covers schedule triggers, activity-level retry policies, workspace alerts, and custom email notifications with dynamic content — everything you need to stop monitoring pipelines manually.

18 min read
20
Lesson 20

Writing and Running Your First PySpark Notebook in Microsoft Fabric: Reading Files, Creating Delta Tables, and Saving to the Lakehouse

Learn how to build a real PySpark notebook in Microsoft Fabric from scratch — reading CSV files from Lakehouse storage, cleaning and transforming data, and writing Delta tables that are immediately queryable via SQL. This hands-on lesson teaches Spark fundamentals in the context you'll actually use them.

17 min read
21
Lesson 21

Querying Lakehouse Data with the SQL Analytics Endpoint: Writing T-SQL Against Delta Tables Without a Warehouse

Every Fabric lakehouse comes with a built-in SQL interface that lets you run T-SQL against Delta tables — no warehouse required. Learn how to write queries, create views, join across tables, and connect from SSMS or Power BI, all against the same data your Spark notebooks write.

17 min read
22
Lesson 22

Incrementally Loading Data into a Fabric Lakehouse with Watermarks and Pipeline Lookup Activities

Full table loads don't scale — and sooner or later every production pipeline needs an incremental strategy. Learn how to build a complete watermark-based incremental load pattern in Microsoft Fabric using Lookup activities, parameterized Copy activities, and PySpark notebook watermark updates.

20 min read
23
Lesson 23

Optimizing Delta Table Performance in a Fabric Lakehouse: V-Order, OPTIMIZE, VACUUM, and Z-Order for Faster Queries and Smaller Storage

Delta tables don't optimize themselves. Learn how V-Order encoding, file compaction with OPTIMIZE, multi-dimensional data skipping with Z-Order, and storage reclamation with VACUUM work together to make your Fabric Lakehouse queries dramatically faster and cheaper to store. This lesson goes deep into the internals so you know exactly when and why to apply each technique.

32 min read
24
Lesson 24

Loading Data into a Fabric Warehouse with COPY INTO and the Pipeline Copy Activity: Bulk Ingestion from Parquet and CSV Files in OneLake

Learn how to bulk-load Parquet and CSV files from OneLake into a Microsoft Fabric Warehouse using COPY INTO and the Pipeline Copy Activity. This hands-on lesson covers file path patterns, CSV configuration options, column mapping, and post-load verification — everything you need to run production-grade ingestion jobs.

19 min read
25
Lesson 25

Parameterizing Dataflow Gen2 Queries with Pipeline Integration: Passing Dynamic Values to Power Query for Reusable Ingestion Flows

Learn how to define Power Query parameters in Dataflow Gen2 and pass runtime values from Fabric pipelines — building a single, reusable ingestion flow that adapts to different regions, time periods, or environments without duplicating logic. Includes a full hands-on exercise and troubleshooting guide.

21 min read
26
Lesson 26

Implementing Row-Level Security in a Fabric Warehouse and Lakehouse SQL Analytics Endpoint: Dynamic Policies, Workspace Roles, and Testing Access as a Business User

Row-Level Security in Microsoft Fabric isn't just a T-SQL exercise — it's an architecture decision with serious implications for workspace roles, Power BI Direct Lake, and Spark access paths. This lesson walks through building dynamic RLS policies from scratch, understanding where the security envelope stops, and verifying your policies work as intended before real users hit production.

31 min read
27
Lesson 27

Writing Data from a Spark Notebook to a Fabric Lakehouse Delta Table: Append, Overwrite, and Merge Patterns with PySpark

Learn the three essential write patterns for Delta tables in Microsoft Fabric: append, overwrite, and merge. This hands-on lesson teaches you exactly when to use each pattern — and how to avoid the silent data quality problems that come from choosing the wrong one.

16 min read
28
Lesson 28

Calling the Fabric Lakehouse SQL Analytics Endpoint from Power BI Desktop: Connecting, Writing Measures, and Publishing a Report Without Direct Lake

Learn how to connect Power BI Desktop to a Fabric lakehouse SQL Analytics Endpoint, build a star schema with DAX measures, and publish a production-ready report — no Direct Lake required. This lesson explains every step from finding the connection string to scheduling refreshes, with clear guidance on when to use this approach over Direct Lake mode.

21 min read
29
Lesson 29

Creating and Managing Fabric Lakehouses with Notebooks: Reading External Files from OneLake, Writing Delta Tables, and Browsing Results in the Lakehouse Explorer

Learn how to use Spark notebooks in Microsoft Fabric to read CSV and Parquet files from OneLake, write clean Delta tables to the lakehouse Tables zone, and validate your results in the Lakehouse Explorer — the complete data engineering loop from raw files to queryable data. This foundation-level lesson explains every step from first principles with realistic examples and working PySpark code.

17 min read
30
Lesson 30

Branching Dataflow Gen2 Outputs to Multiple Destinations: Writing Transformed Data to a Lakehouse Table and a Warehouse Simultaneously

Dataflow Gen2 lets you attach multiple output destinations to a single query — run your transformation once and write results to both a Fabric Lakehouse table and a Warehouse table simultaneously. This lesson teaches you the complete pattern: from Power Query transformation to dual-destination configuration, data type gotchas, and production-ready pipeline orchestration.

22 min read
31
Lesson 31

Handling Schema Evolution in Fabric Lakehouse Delta Tables: Adding Columns, Merging Incompatible Schemas, and Enforcing Constraints Across Medallion Layers

Schema changes in production Delta lakehouses cascade across medallion layers in ways that break pipelines, corrupt reports, and silently produce wrong results. This deep-dive lesson teaches you exactly how Delta Lake enforces and evolves schemas, how to build drift detection into your pipelines, and how to use CHECK and NOT NULL constraints to enforce data quality where it matters.

29 min read
32
Lesson 32

Using Notebook Variables and Parameters in Microsoft Fabric: Passing Pipeline Values to PySpark for Dynamic Lakehouse Ingestion

Hardcoded file paths and table names don't belong in production notebooks. Learn how to use Fabric's parameter cell pattern to pass dynamic values from a data pipeline into PySpark, turning a one-time script into a reusable ingestion engine.

15 min read
33
Lesson 33

Scheduling Dataflow Gen2 Refreshes and Chaining Them into a Fabric Data Pipeline for End-to-End Orchestration

Manual refreshes don't scale. Learn how to schedule Dataflow Gen2 refreshes automatically and chain them into a Fabric Data Pipeline alongside Copy Activities and Spark Notebooks — so your data is ready before your team arrives each morning.

17 min read
34
Lesson 34

Implementing Slowly Changing Dimensions in a Fabric Lakehouse: Using PySpark and Delta Lake MERGE to Track Historical Changes Across Medallion Layers

Learn how to build production-quality SCD Type 2 dimensions in a Microsoft Fabric Lakehouse using PySpark and Delta Lake's MERGE statement. This lesson covers the full pattern: change detection with attribute hashing, two-phase expire-and-insert MERGE logic, surrogate key generation, and Gold layer point-in-time joins — with a hands-on exercise you can run in your own environment.

24 min read
35
Lesson 35

Implementing Delta Lake Time Travel in a Fabric Lakehouse: Querying Historical Snapshots, Rolling Back Bad Writes, and Auditing Table Changes with PySpark and T-SQL

Delta Lake time travel turns catastrophic data overwrites into two-minute recoveries. Learn how to query historical snapshots by version and timestamp, execute safe rollbacks with RESTORE TABLE, build a persistent audit trail, and manage retention windows so time travel is available when you actually need it.

31 min read
36
Lesson 36

Building a Star Schema in a Fabric Lakehouse Gold Layer: Creating Dimension and Fact Delta Tables with PySpark for Direct Lake Reporting

Learn how to design and build a production-quality star schema in your Fabric Lakehouse Gold layer using PySpark — covering surrogate key strategy, dimension and fact table construction, orphan validation, and post-write optimization for Direct Lake reporting in Power BI.

22 min read
37
Lesson 37

Orchestrating Multi-Notebook Workflows in Microsoft Fabric: Using Pipeline Notebook Activities, Activity Dependencies, and Output Variables to Chain PySpark Transformations Across Medallion Layers

Learn how to wire Fabric PySpark notebooks into a production pipeline using Notebook activities, On Success/On Failure dependencies, and mssparkutils.notebook.exit() output variables. Build a complete Bronze→Silver→Gold medallion pipeline that passes context between stages and handles failures gracefully.

20 min read
38
Lesson 38

Implementing Incremental Refresh for Direct Lake Semantic Models in Microsoft Fabric: Configuring Delta Table Partitioning, Framing Policies, and Triggering Refresh via the XMLA Endpoint

Direct Lake incremental refresh isn't a checkbox — it requires aligning Delta table partitioning, TMDL framing policies, and XMLA-triggered refresh operations into a precise orchestration chain. This lesson gives you the full architecture, the code, and the troubleshooting knowledge to implement it correctly in production.

26 min read
39
Lesson 39

Deduplicating and Cleansing Lakehouse Delta Tables with PySpark: Drop Duplicates, Fill Nulls, and Enforce Data Quality Rules Across Medallion Layers

Dirty data in bronze silently corrupts silver and gold. Learn how to build a production-grade PySpark cleansing pipeline that removes exact and soft duplicates, handles nulls with intentional strategies, quarantines bad rows, and enforces data quality rules with exceptions — all structured around the medallion architecture in Microsoft Fabric.

20 min read
40
Lesson 40

Implementing End-to-End Pipeline Error Handling in Microsoft Fabric: If Condition Activities, Failed Dependencies, and Email Alerts

Build production-grade error handling in Microsoft Fabric pipelines that actually catches failures, routes them intelligently, and sends actionable email alerts — across Copy, Dataflow Gen2, and Notebook activities. Learn the dependency condition model, activity output expressions, and centralized error handler patterns that keep your medallion pipelines resilient.

26 min read
41
Lesson 41

Implementing Table Partitioning in a Fabric Lakehouse: Choosing Partition Keys, Writing Partitioned Delta Tables with PySpark, and Pruning Partitions for Faster SQL and Spark Queries

Unpartitioned Delta tables make Spark read everything before filtering anything. This lesson teaches you how to choose partition keys that actually improve performance, write partitioned gold-layer tables with PySpark, and verify that partition pruning is firing in both Spark and the SQL analytics endpoint.

22 min read
42
Lesson 42

Joining Multiple Delta Tables Across Fabric Lakehouses and Warehouses in a Single Spark Notebook: Cross-Workspace Queries, OneLake Paths, and Writing Results to a Gold Layer Table

Learn how to read Delta tables from multiple Fabric workspaces — across lakehouses and warehouses — in a single PySpark notebook. This expert lesson covers OneLake ABFS path construction, programmatic GUID resolution, multi-table joins with broadcast optimization, and writing results to a gold-layer Delta table using overwrite and MERGE patterns.

24 min read
43
Lesson 43

Unpivoting, Aggregating, and Reshaping Lakehouse Data in Dataflow Gen2: Advanced Power Query Transformations Before Writing to Delta Tables

Learn how to use advanced Power Query M techniques in Dataflow Gen2 to unpivot wide source data, aggregate with Table.Group, and reshape tables into clean, typed Delta table schemas in your Microsoft Fabric lakehouse. This lesson covers the full M query structure, type-fixing patterns, and the honest trade-offs between Dataflow Gen2 and Spark for complex transformations.

27 min read
44
Lesson 44

Implementing a Fabric Notebook-Based Data Quality Framework: Validating Row Counts, Null Thresholds, and Referential Integrity Across Medallion Layers Before Pipeline Promotion

Bad data that passes silently through your medallion pipeline is worse than a pipeline that fails loudly. This lesson walks you through building a reusable PySpark quality framework in Microsoft Fabric that validates row counts, null rates, and referential integrity at each layer — and wires the results into your pipeline so failures actually stop promotion.

22 min read
45
Lesson 45

Automating Fabric Lakehouse Metadata Refresh with Semantic Link: Syncing Delta Table Schema Changes to a Direct Lake Semantic Model Using Python and the Fabric REST API

Delta tables evolve constantly, but Direct Lake semantic models don't automatically follow. Learn how to detect schema drift between your gold-layer tables and your Power BI model, then trigger a targeted metadata refresh using Python, sempy, and the Fabric REST API — all from inside a Fabric notebook you can drop into any pipeline.

27 min read
46
Lesson 46

Configuring OneLake Shortcuts to a Fabric Lakehouse as the Data Source for a Fabric Warehouse: Avoiding Data Duplication While Enabling T-SQL Queries Across Both Engines

Learn how to create OneLake shortcuts in a Fabric Warehouse that point to lakehouse Delta tables — enabling T-SQL queries across both engines with zero data duplication. This lesson covers the full pattern from shortcut creation to cross-engine joins, security configuration, metadata sync, and performance tuning.

24 min read
47
Lesson 47

Implementing Fabric Notebook-Based Unit Tests with pytest and the Fabric REST API: Validating Delta Table Outputs, Row Counts, and Schema Contracts Before Promoting Data Across Medallion Layers

Learn how to build a production-grade test harness that runs pytest inside Microsoft Fabric Spark notebooks, validates Delta table schemas and row counts against versioned contracts, and gates medallion layer promotion via the Fabric REST API. This lesson goes beyond basic assertions to cover referential integrity, Delta version auditing, and pipeline-integrated pass/fail routing — the complete picture for data quality enforcement at scale.

28 min read
48
Lesson 48

Aggregating and Writing Summary Tables from a Fabric Lakehouse Gold Layer to a Fabric Warehouse Using Cross-Engine T-SQL Views and PySpark for Dual-Engine Reporting

Your gold layer serves Spark consumers perfectly — but your SQL analysts need pre-computed summary tables, T-SQL views, and sub-second query latency. This lesson shows you how to aggregate gold-layer Delta tables with PySpark, write results into a Fabric Warehouse via JDBC, and expose lakehouse tables as cross-engine T-SQL views — all without duplicating data or maintaining two separate pipelines.

22 min read
49
Lesson 49

Configuring Fabric Capacity Bursting, Throttling Behavior, and Smoothing Windows: Tuning Workload Settings to Prevent Job Failures Under Heavy Pipeline and Spark Load

When pipelines and Spark jobs collide under shared Fabric capacity, the result isn't graceful degradation — it's cascading failures. This deep-dive lesson teaches you exactly how Fabric's 10-minute smoothing window, throttling stages, and Capacity Admin settings work, and how to tune them to prevent job failures under real production load.

31 min read
50
Lesson 50

Streaming Data into a Fabric Eventhouse with Eventstreams: Configuring Sources, Defining KQL Tables, and Querying Live Telemetry Data

Learn how to build a complete real-time telemetry pipeline in Microsoft Fabric — from configuring an Eventstream source to defining KQL tables with update policies and materialized views, to writing operational queries against live streaming data. Uses a realistic IoT fleet monitoring scenario throughout.

22 min read
51
Lesson 51

Implementing Cross-Workspace Data Sharing in Microsoft Fabric with OneLake Shortcuts: Exposing Lakehouse and Warehouse Tables to Downstream Workspaces Without Copying Data

Stop copying data between Fabric workspaces. This expert-level lesson shows you how to use OneLake shortcuts to expose lakehouse and warehouse tables to downstream workspaces, covering permissions, performance, warehouse security caveats, and a hands-on multi-workspace exercise. Learn the hub-and-spoke shortcut pattern used by mature Fabric platform teams.

30 min read
52
Lesson 52

Using Fabric Data Activator to Trigger Alerts and Pipeline Actions from Power BI Reports and Eventstreams

Data Activator turns your Fabric environment into an active, event-driven platform — not just a reporting system. Learn how to define objects, properties, and trigger conditions against Power BI reports and Eventstreams, then wire up automated responses including Teams notifications and live pipeline runs.

24 min read
53
Lesson 53

Building a Reusable Fabric Pipeline Template with Metadata-Driven Orchestration: Driving Copy Activities, Notebook Runs, and Dataflow Refreshes from a Configuration Table

Stop building one pipeline per data source. This deep-dive lesson teaches you to build a single, parameterized Fabric pipeline template that reads from a control table and dynamically dispatches Copy Activities, Notebook runs, and Dataflow Gen2 refreshes — with per-source retry logic, execution logging, and room to grow. If you're managing more than five data sources in Fabric, this framework will change how you work.

28 min read