Direct Lake in Power BI Fabric: maximum performance without Import or DirectQuery
Direct Lake mode is a Microsoft Fabric innovation that eliminates the traditional trade-off between speed (Import) and data freshness (DirectQuery). By reading the Delta Parquet files of OneLake directly, you get performance close to Import with always-up-to-date data.
How it works
Instead of importing data into the model's memory (Import) or running queries against the source at runtime (DirectQuery), Direct Lake reads the .parquet files of the Delta Lake directly, loading only the required columns (column pruning) and relevant partitions (partition pruning).
Import: PBIX ← In-memory copy ← Database
DirectQuery: PBIX ← Runtime query → Database
Direct Lake: PBIX ← Parquet (OneLake) ← Delta Lake
Requirements
- Fabric capacity (F SKU or P SKU with Fabric enabled).
- Semantic Model built over a Lakehouse or Warehouse.
- Tables in Delta format on OneLake.
Framing: when it falls back to DirectQuery
If a query cannot be satisfied by Direct Lake (e.g. complex views, unsupported data types), the model automatically falls back to DirectQuery. Monitor the fallback with EVALUATE INFO.CALLDEPENDENCY() in DAX Studio.
Optimize for Direct Lake
- Keep Delta tables with V-Order enabled (
OPTIMIZE ... ZORDER BY). - Limit the number of columns in fact tables.
- Use date partitioning on tables with many rows.
Conclusion
Direct Lake is a competitive differentiator of Fabric. For organizations with constantly updating data and critical Power BI reports, it eliminates the refresh cycle and DirectQuery latency, offering the best of both worlds.