Flattening related tables into one wide, denormalized shape
Denormalizing data means combining data from multiple normalized tables into fewer, wider tables optimized for analytical read performance, typically by pre-joining dimension and fact data. In Microsoft Fabric, this is commonly done using Dataflows Gen2, notebooks (PySpark/Spark SQL), or pipeline Copy/Data Flow activities when preparing data for the silver or gold layer in a lakehouse or warehouse.
1 · Learn the must-know
- Denormalization trades storage space and redundancy for query performance by reducing the number of joins needed at query time, which is especially valuable for Power BI direct query and analytical workloads.
- In the medallion architecture, denormalization typically happens when moving data from the silver (cleansed, normalized) layer to the gold (business-ready, aggregated/denormalized) layer.
- Common techniques in Fabric include using Spark notebooks with DataFrame joins, Dataflows Gen2 Merge queries, or T-SQL JOINs in a Fabric Warehouse to flatten star-schema fact/dimension tables into a single wide table.
- A key gotcha is that denormalized tables increase storage and can introduce data update anomalies, so they are best suited for read-heavy reporting layers rather than transactional/OLTP-style processing.
- When denormalizing in Spark notebooks, broadcast joins can be used to efficiently join a large fact table with smaller dimension tables and avoid costly shuffles.
- Denormalized outputs are often materialized as Delta tables in the lakehouse (or tables in the warehouse) so downstream consumers like Power BI can query them directly without needing to perform joins.
2 · Check your understanding
A data engineer is preparing normalized source tables in a Fabric lakehouse for use in a Power BI semantic model. The engineer decides to denormalize several related tables into a single flat table before the report team consumes the data. Which outcome best describes the primary goal of this denormalization step?
What you have tried across DP-700's objectives, not a readiness score.
Implement and manage an analytics solution30-35% of the exam0 of 18 tried
Ingest and transform data30-35% of the exam0 of 19 tried
Monitor and optimize an analytics solution30-35% of the exam0 of 17 tried
3 · Keep going
Ready for more? Take a weighted mock or try free practice questions.