OneLake Storage, Polaris Distributed SQL & Direct Lake
In-depth architectural guide to Microsoft Fabric's unified storage substrate and distributed relational query tier. Covers OneLake shortcut identity resolution, Iceberg REST Catalog zero-copy sharing, Polaris Cascades compilation, and Direct Lake lazy paging internals.
1. OneLake Storage, Shortcuts & Delegated Identity
OneLake provides a single, tenant-wide hierarchical namespace over Azure Data Lake Storage Gen2. Instead of copying files between services, Fabric uses lightweight metadata references called Shortcuts.
DELETE FROM my_shortcut_table or
issuing an SDK file delete against the shortcut path
permanently deletes the underlying physical data in the source container. Always
educate engineering teams on path boundary safety.
2. Polaris: Inside Microsoft's Distributed SQL Query Engine
Polaris is the distributed, stateless cloud query engine powering the Fabric Data Warehouse and the automatic SQL Analytics Endpoint over Lakehouse Delta tables.
3. Direct Lake Residency & Lazy Column Transcoding
Direct Lake bridges the gap between massive data lakes and sub-second BI dashboards by allowing Power BI Analysis Services to load Parquet columns directly into VertiPaq memory pages without executing DAX-to-SQL query translation.
-- Check table file fragmentation and row counts before publishing Direct Lake semantic models
SELECT
t.name AS TableName,
COUNT(f.file_id) AS TotalParquetFiles,
SUM(f.size_in_bytes) / (1024.0 * 1024.0) AS SizeMB,
AVG(f.size_in_bytes) / (1024.0 * 1024.0) AS AvgFileMB
FROM sys.tables t
CROSS APPLY sys.dm_delta_files(t.object_id) f
GROUP BY t.name
ORDER BY TotalParquetFiles DESC;
4. Fabric SQL Database Translytical Path
Fabric SQL Database represents a cloud-native Hyperscale OLTP engine with autonomous, continuous physical Delta replication into OneLake, enabling true HTAP (Hybrid Transactional/Analytical Processing).
# Query the automatic OneLake shadow replica of an operational SQL Database without hitting the OLTP engine
df_replicated = spark.read.table("fabric_sqldb_name.dbo.customer_orders")
# Join with historical Lakehouse cold data seamlessly
df_joined = df_replicated.join(
spark.read.table("lakehouse_gold.dim_customer"),
"customer_id"
)
display(df_joined.groupBy("region").count())