Microsoft Fabric
Lakehouse topology, Direct Lake, refresh, CI/CD blast radius, and Fabric platform contracts.
Fabric Airflow: Is It Possible to Use Apache Airflow with Fabric?
Keep Fabric as the execution plane and Airflow as the orchestration plane. Thin tasks, terminal-state success, and what breaks when one tool does both.
Gold Semantic Contract: Can You Choose Which Columns Reach the Direct Lake Model?
Argue that gold tables only become platform assets when unmatched keys, captions, and relationships are explicit in the semantic model.
Fabric Lineage: What's Next When Pipeline Lineage Becomes Untraceable?
Argue for a small lineage explorer over ad-hoc pipeline docs so engineers can see dependencies before they break them.
Fact Remodel: Shared Dimensions, or Split Facts for Cleaner Models?
Show why many-to-many relationships between two dimensions need an explicit bridge/fact remodel before report pages can be trusted.
Variable Library: How Do You Switch Active Value Sets from Dev to Prod?
Use a Git-tracked Fabric Variable Library with per-stage value sets so rebind notebooks and pipelines stop hard-coding workspace IDs.
Direct Lake on OneLake: Is the Juice Worth the Squeeze?
Reframe literal URL required failures as service regressions with validators, promotion playbooks, and support cases - not as eternal architecture dogma.
Warehouse Views: Should Heavy Views Be Materialized for Direct Lake?
Propose a layered performance playbook: drop orphans, cheap rewrites, then materialize the two or three consolidations everything else depends on.
OneLake Shortcuts: Should Shortcuts Stay Bronze-Only?
Argue that bronze should be a contract of OneLake shortcuts and clean views, not a second physical copy of upstream gold and silver.
Gold + Direct Lake: Direct Lake or Import for Large Fact Tables?
Show why a high-volume source table belongs in gold as a documented fact table with shared key matching and Direct Lake storage mode for volume.
Pivot Once in Gold: How Do You Replace Wide Import Pivots for Direct Lake?
Replace OUTER APPLY Import-mode pivots with a pre-pivoted gold fact built in PySpark for Direct Lake.
Fabric PII: What Would You Do When Ingesting Sensitive Data?
A reusable notebook redaction contract makes free-text exports from Fabric safe without blanking the legitimate addresses and codes people still need.
Large Facts: Why Does a Green Refresh Still Drift?
Diagnose large fact table refresh drift as mismatched incremental contracts between notebooks, watermarks, and semantic consumers.
Spark Ingest: How Do You Load Large Tables Without Driver OOM?
Explain batched parallel page ingest for large source tables so full reloads finish without driver OOM.
Materialized Lake Views: Can MLVs Replace Silver and Gold Tables?
Move a large set of warehouse views to MLVs as a phased program: schema-enabled lakehouses, shortcut layouts, and POC gates before bulk conversion.
Fabric Monitor: How Do You Systematically Monitor Refresh Failures?
Show why scattered Fabric monitor scripts should become one skill/runbook interface for humans and coding agents.
Lakehouse Design: One Lakehouse with Schemas, or Many Lakehouses?
How to choose between multiple Fabric lakehouses and a schema-enabled lakehouse for bronze, silver, and gold, including CI/CD and naming fallout.
Direct Lake: Do You Still Need to Refresh a Semantic Model?
How to choose notebook, pipeline, or scheduled refresh for lakehouse semantics, and when Direct Lake beats a SQL endpoint for heavy facts.
Fabric CI/CD: How Do You Limit Blast Radius Across Dev Workspaces?
Why Fabric deployment tooling can republish unchanged notebooks and how to design for stable identities and smaller blast radius.
NEE Fallback: Why Do Results Differ With and Without Native Execution Engine?
Teach teams to measure where MLV DAG time actually goes and fix only actionable native-execution engine fallbacks.
MLV + SCD2: Is SCD2 in Bronze the Right Pattern Before Silver MLVs?
Explain why attribute history on a dim table should be SCD2 Materialized Lake Views before anyone builds as-of reports.
MLV Data Quality: Why Can't We Do Column-Level Uniqueness Checks Natively?
Push migration checklists to per-column tables and type-aware aggregates so MLV cutovers catch semantic drift early.
Semantic Migration: How Do You Rebind Reports When the Model Moves to Lakehouse?
Why lakehouse migrations fail on NULL versus zero, float drift, and type rebase settings, and how to treat parity as a contract.
Bronze Typing: Is Ingesting Everything as Strings a Good Idea?
Argue for typing published columns in bronze (or the earliest stable layer) and banning ritual CAST in silver and gold.
Workspace Naming: Is a One-Time Rename Cheaper Than Translating Prefixes Forever?
Inconsistent workspace name prefixes are an operational tax. A one-time rename with stable catalog names beats maintaining translation layers forever.
Fabric CI/CD: Merge the whole ladder, or cherry-pick what is ready?
In a multi-dev Fabric ladder, merge the tip only when everything is ready. Otherwise cherry-pick squash commits onto a temp branch, open a PR, deploy.
Fabric IQ: Is Your Semantic Model Ready?
Fabric IQ puts your semantic model behind Copilot Chat. Shape measures, scope the AI data schema, steer with instructions, and prove it before approval.
Fabric Mirroring Lag: Where the Minutes Go
Changes reached Delta in a Fabric SQL database mirror in 18 seconds, then took about 2 minutes to show on the SQL analytics endpoint. What to promise.
Fabric Data Agents: What a 20-Question Baseline Proves
I baselined a Fabric data agent on 20 questions with no instructions. 19 were right. The miss was a guess it never asked about. Token CU is a likely floor.
Fabric Engines on 1B Rows: Pick by Query Shape
7 queries on 1B rows in Spark, Warehouse, Direct Lake and Eventhouse. Warehouse and Spark never failed; Direct Lake won warm, paid cold. Pick by shape.