EBS Analysis: Lakehouse end-to-end scenario: overview and architecture – Microsoft Fabric

Executive Overview: Why a Unified Lakehouse Strategy Matters Now

Enterprises today face a paradox: they must extract ever‑greater insight from rapidly expanding data volumes while simultaneously shrinking the cost and complexity of their analytics stacks. Traditional architectures solve part of the problem by separating transactional workloads (data warehouses) from big‑data workloads (data lakes). The result is duplicated storage, inconsistent governance, and a proliferation of point‑to‑point ETL jobs that slow down time‑to‑insight.

Microsoft Fabric addresses this tension by collapsing the data movement, storage, processing, and consumption layers into a single, SaaS‑delivered platform. At its core is OneLake—a unified data lake that stores everything in the open Delta Lake format—allowing every Fabric engine (data engineering, data science, real‑time analytics, and Power BI) to read and write the same copy of data without costly replication. The lakehouse end‑to‑end scenario described in Microsoft’s tutorial shows how a retail organization can move from raw source files to trusted, analytics‑ready tables using a medallion (bronze‑silver‑gold) architecture, all while leveraging low‑code pipelines, notebook‑based Spark, and a built‑in SQL analytics endpoint for downstream reporting.

For enterprise IT leaders, the promise is clear: a single platform that eliminates silos, reduces total cost of ownership, and accelerates the delivery of trusted data products. The following sections unpack the technical fabric of this approach, outline what it takes to implement it successfully, highlight security and operational considerations, and provide a consulting‑focused roadmap for getting started.

Architecture and Core Capabilities

OneLake: The Single Source of Truth

OneLake is Fabric’s underlying storage abstraction. It presents a hierarchical namespace that appears as a traditional file system to users and applications, yet it is backed by Azure Data Lake Storage Gen2 with built‑in support for the Delta Lake transactional log. Because every Fabric service reads and writes Delta tables directly in OneLake, there is no need to maintain separate copies for ingestion, transformation, or consumption. Shortcuts further extend this model by allowing a lakehouse to reference data residing in other OneLake locations—or even in external tenants—without copying the underlying files.

Medallion (Bronze‑Silver‑Gold) Layering

The tutorial adopts the medallion pattern to enforce progressive data refinement:

  • Bronze: Ingested raw data, stored exactly as received (e.g., Parquet files from source systems). This layer preserves fidelity and provides an immutable audit trail.
  • Silver: Validated, deduplicated, and lightly transformed data. Typical operations include schema enforcement, data type casting, removal of obvious duplicates, and basic quality checks.
  • Gold: Business‑ready, aggregated, and enriched datasets that feed downstream analytics, reporting, and machine‑learning models.

Each layer is represented as a set of Delta tables within the same lakehouse. Because the tables share the same storage format, moving data between layers is simply a matter of reading from one Delta table and writing to another—no format conversion or data movement penalty.

Ingestion Pathways

Fabric offers multiple, complementary ways to get data into OneLake:

  • Native connectors: Over 200 built‑in sources (SaaS applications, databases, file stores, streaming endpoints) that can be dragged into a pipeline.
  • Shortcuts: A zero‑copy reference to existing data, useful for leveraging data already landed in OneLake by another team or for cross‑tenant sharing.
  • High‑performance file readers: Vectorized parsers for CSV (with JSON support announced) that reduce latency during bulk loads.

In the tutorial, a pipeline copies historical Parquet files from an Azure Storage account into the lakehouse’s Files folder, then creates Delta tables from those files. Incremental loads are handled by merging new micro‑batches with existing Delta tables, taking advantage of Delta’s ACID transactional guarantees.

Transformation Choices: Code‑First vs Low‑Code

Fabric deliberately provides two parallel experiences:

  • Notebooks & Spark: Ideal for data engineers who prefer a code‑first approach. The latest Fabric runtime includes a native execution engine that outperforms open‑source Spark for many workloads, while still supporting Scala, Python, and Spark SQL.
  • Pipelines & Dataflows: A drag‑and‑drop, low‑code environment for citizen developers and analysts. Transformations are expressed as reusable dataflow steps; pipelines orchestrate the movement and scheduling of those steps.

Both approaches write to the same Delta tables, so teams can collaborate without worrying about format incompatibility. The pipeline expression builder also incorporates Copilot assistance, which suggests expressions and helps validate logic, reducing the chance of syntax errors.

Consumption: SQL Analytics Endpoint and Direct Lake

Every lakehouse automatically exposes a TDS‑based SQL analytics endpoint. This endpoint presents the lakehouse’s Delta tables as conventional SQL tables, enabling any TDS‑compatible client (Power BI, Azure Synapse, third‑party BI tools, custom applications) to issue standard SQL queries.

Power BI can also use Direct Lake mode, which queries the Delta tables directly in OneLake without materializing a semantic model or importing data into Power BI’s internal storage. This eliminates refresh lag and reduces storage duplication while still benefiting from Power BI’s rich visualisation library.

Operational Automation: Lakehouse Maintenance Activity

To keep Delta tables performant, Fabric provides a Lakehouse Maintenance activity that can be inserted into a pipeline. The activity runs two essential maintenance commands:

  • OPTIMIZE: Compacts small files into larger ones and optionally applies Z‑ordering or Liquid Clustering to improve read performance.
  • VACUUM: Removes outdated files retained by Delta’s time‑travel feature, reclaiming storage space according to a configured retention window.

A complementary step—Refresh SQL analytics endpoint—ensures that the endpoint’s schema and metadata stay synchronized after data loads, preventing stale metadata from causing query failures.

How the Technology Works Under the Hood

Understanding the internal mechanics helps teams anticipate performance characteristics and troubleshoot issues effectively.

Delta Lake Transactional Layer

Delta Lake adds an ACID‑compliant transaction log on top of Parquet files. Each write creates a new version of the transaction log, recording the files added or removed. Readers always see a consistent snapshot because they consult the log to determine which files constitute the current version of a table. This design enables:

  • Safe concurrent writes from multiple notebooks or pipeline activities.
  • Time‑travel queries (e.g., “show me the table as of yesterday 2 PM”).
  • Streaming‑batch unification: the same Delta table can be a source for Structured Streaming while simultaneously receiving batch updates.

OneLake Metadata and Shortcuts

OneLake stores metadata about files, folders, and shortcuts in a distributed metadata service. When a shortcut is created, the service records a pointer to the target location without copying data. Security policies (encryption at rest, Azure role‑based access control, and sensitivity labels) are evaluated at read time, ensuring that shortcuts inherit the same protection as native data.

SQL Analytics Endpoint Engine

The endpoint translates TDS requests into Spark SQL plans that execute against the underlying Delta tables. Because the endpoint leverages the same Spark engine used by notebooks, query plans benefit from Catalyst optimizations, whole‑stage code generation, and adaptive query execution. The endpoint also caches table schema and statistics to accelerate compile‑time planning for repetitive BI queries.

Implementation Considerations

Prerequisites and Environment Setup

  • Fabric trial or license: Users need a Power BI Pro (or Premium Per User) license to sign up for the Fabric free trial, or a Fabric‑specific license if the organization has purchased capacity.
  • Workspace creation: A dedicated Fabric workspace provides isolation for lakehouses, pipelines, notebooks, and semantic models. Role‑based access (Admin, Member, Contributor, Viewer) should align with the principle of least privilege.
  • Source data accessibility: For the tutorial, sample Parquet files reside in an Azure Storage account. In practice, ensure that the Fabric integration runtime has network access (via private endpoints, service tags, or allowed IP ranges) to the source systems.

Data Modeling Decisions

Although the tutorial uses the Wide World Importers dimensional model as a starting point, real‑world projects must deliberate on:

  • Granularity of the bronze layer (e.g., preserving raw JSON vs. flattening to relational columns).
  • Choosing appropriate partitioning strategies for silver and gold tables (Delta Lake supports both partitioning and clustering; over‑partitioning can create small‑file problems).
  • Defining business keys and surrogate keys that will be used across layers to enable smooth merges during incremental loads.

Choosing Between Code‑First and Low‑Code

The decision often hinges on team skill sets and governance requirements:

  • Data engineering teams with deep Spark expertise may favor notebooks for complex iterative transformations, machine‑learning feature engineering, or custom UDFs.
  • Business analysts and citizen developers can achieve rapid results with dataflows, especially for standard ELT patterns, look‑ups, and simple aggregations.
  • Hybrid approaches are common: a notebook creates a curated, reusable function (e.g., a data‑quality cleansing routine) that is then invoked from a dataflow or pipeline step.

Performance Tuning

Key levers include:

  • File size: Aim for 128‑256 MB Parquet files after OPTIMIZE to balance parallelism and metadata overhead.
  • Clustering columns: Use Z‑ordering on high‑cardinality columns frequently filtered in reports (e.g., OrderDate, CustomerKey). Liquid Clustering can automatically adapt clustering based on workload patterns.
  • Compute sizing: Fabric provides serverless Spark pools; selecting the right pool size and enabling auto‑scale can keep costs in line with workload bursts.

Security and Governance Implications

Data Protection

OneLake inherits Azure Storage’s encryption‑at‑rest (Microsoft‑managed or customer‑managed keys) and supports TLS 1.2 for data in transit. Sensitivity labels can be applied to lakehouse objects, triggering automatic encryption and access restrictions based on label policies.

Access Control

Fabric uses Azure Active Directory (Azure AD) for authentication. Permissions are granted at the workspace, lakehouse, table, or even column level via Azure role‑based access control (RBAC) and Fabric‑specific roles (Admin, Member, Contributor, Viewer). Shortcuts respect the source’s ACLs; if the source is in another tenant, external sharing policies must be configured to allow the shortcut creator to read the data.

Auditing and Lineage

Fabric automatically logs pipeline runs, notebook executions, and dataflow refreshes. The lineage view shows how data moves from source files through bronze, silver, and gold tables, and ultimately to Power BI reports or semantic models. This capability simplifies impact analysis when schema changes are proposed and satisfies regulatory requirements for data provenance.

Data Residency and Sovereignty

Because OneLake lives in Azure, organizations can select a specific Azure region during workspace creation to meet data‑locality mandates. Cross‑tenant shortcuts do not copy data, preserving the original residency while still enabling logical access.

Operational Implications and Ongoing Management

Monitoring and Alerting

Fabric integrates with Azure Monitor. Metrics such as pipeline run duration, Spark job lakehouse table size, and SQL analytics endpoint query latency can be surfaced in dashboards. Alert rules can notify ops teams when a pipeline fails repeatedly, when a table’s file count exceeds a threshold (indicating a need for OPTIMIZE), or when query response times degrade.

Backup and Recovery

Delta Lake’s transactional log provides built‑in point‑in‑time recovery. Additionally, OneLake snapshots can be taken via Azure Storage snapshots for longer‑term archival. Organizations should define a retention policy for the Delta log (default is 30 days) that balances storage cost with the need for time‑travel queries.

Cost Management

Fabric capacity is purchased in units of Fabric compute (CU) and storage. Because OneLake stores a single copy of data, storage costs are generally lower than a duplicated warehouse‑lake architecture. Compute costs depend on the frequency and intensity of Spark jobs, pipeline activities, and SQL endpoint queries. Leveraging serverless Spark with auto‑scale and scheduling maintenance during off‑peak hours can optimize spend.

Change Management

Schema evolution in Delta Lake is additive by default (new columns can be appended). Breaking changes (e.g., column type changes) require a versioned approach or a table rewrite. Teams should adopt a formal change‑control process that includes:

  • Updating the bronze‑to‑silver mapping notebooks or dataflows.
  • Running a validation pipeline that compares row counts and checksums before promoting to gold.
  • Communicating downstream impacts to Power BI model owners and any external consumers of the SQL analytics endpoint.

Common Pitfalls and How to Avoid Them

Over‑reliance on the Bronze Layer as a “Dump”

Storing raw files without any basic validation can propagate bad data into downstream layers, increasing the effort required for cleaning later. Even a minimal bronze‑layer step—checking for required columns, verifying file readability, and logging ingestion metrics—can save significant rework.

Neglecting Table Maintenance

Delta tables can accumulate many small files if OPTIMIZE is never run, leading to slow scan times and excessive metadata lookup. Schedule the Lakehouse Maintenance activity at a frequency that matches your data velocity (e.g., nightly for daily loads, weekly for weekly loads).

Misunderstanding Shortcut Semantics

Shortcuts provide a virtual view; they do not protect against source‑side changes. If the source file is deleted or renamed, the shortcut will break. Establish a clear ownership model for shortcut targets and consider using versioned folders or immutable storage buckets for source data that will be referenced via shortcuts.

Ignoring Query‑Pattern‑Driven Clustering

Choosing clustering columns based on guesswork rather than actual workload patterns can yield little performance gain. Use the SQL analytics endpoint’s query store or Azure Monitor insights to identify frequently filtered columns and apply Z‑order or Liquid Clustering accordingly.

Underestimating Security Boundary Complexity

When using cross‑tenant shortcuts, it’s easy to assume that Fabric’s internal security model automatically extends to the source. Verify that the source tenant has granted the appropriate service principal or managed identity access, and that any conditional access policies allow the Fabric integration runtime to authenticate.

Why This Matters to Enterprise IT

The lakehouse approach in Fabric delivers three strategic advantages that directly address the pressures facing modern IT organizations:

  1. Cost Reduction Through Elimination of Duplication: By storing a single copy of data in OneLake and allowing all compute engines to read from it, organizations avoid the storage and ETL overhead associated with maintaining separate raw, staged, and mart copies.
  2. Accelerated Time‑to‑Insight: The seamless handoff from ingestion (pipeline or shortcut) to transformation (notebook or dataflow) to consumption (SQL analytics endpoint or Direct Lake) removes the latency introduced by moving data between disparate systems.
  3. Unified Governance and Security: Centralized policies in OneLake—encryption, sensitivity labels, Azure AD integration—ensure that whether data is accessed by a data scientist in a notebook, a business analyst in Power BI, or an external partner via a shortcut, the same controls apply.

For IT leaders tasked with modernizing analytics while keeping budgets flat, Fabric’s lakehouse model offers a pragmatic path forward: it leverages open standards (Delta Lake, Parquet) to avoid vendor lock‑in, provides both low‑code and code‑first personas to maximize productivity, and embeds operational best practices (maintenance activities, lineage, monitoring) that reduce the risk of data‑quality incidents.

EBS Consulting Perspective

From a consulting standpoint, the lakehouse end‑to‑end scenario exemplifies a pattern we repeatedly see in successful modernization projects: start with a well‑defined, bounded use case (e.g., ingesting the Wide World Importers sales fact table), implement a repeatable medallion pipeline, and then expand the pattern to additional domains.

Key observations from our engagements:

  • Start Small, Scale Fast: Teams that begin with a single source system and a limited set of tables can prove the end‑to‑end flow in weeks rather than months. The quick win builds confidence and creates a reusable template (pipeline + notebook + maintenance activity) that can be cloned for new sources.
  • Invest in Metadata Early: Capturing lineage, data‑quality metrics, and business glossary terms at the silver layer pays dividends when the organization later attempts to enable self‑service analytics or AI/ML model development.
  • Align Organizational Roles with Fabric Personas: Assign data engineers to notebook‑heavy tasks, business analysts to dataflow‑driven modeling, and data stewards to shortcut administration and sensitivity‑label governance. This specialization reduces friction and leverages the platform’s dual‑persona nature.
  • Plan for Operational Cadence from Day One: The Lakehouse Maintenance activity and SQL endpoint refresh are not after‑thoughts; they should be baked into the pipeline design from the outset. Establishing a maintenance window and associated alerting prevents performance degradation that would otherwise erode user trust.
  • Ultimately, the value proposition is not just technical—it is organizational. By collapsing silos, Fabric enables a shift from “data‑as‑a‑project” to “data‑as‑a‑product,” where lakehouse tables are treated with the same rigor as software artifacts: versioned, tested, documented, and monitored.

    Practical Next Steps

    1. Secure a Fabric Trial or Capacity

    Navigate to the Microsoft Fabric portal, sign up for the free trial using an existing Power BI Pro license, or engage your Microsoft representative to discuss capacity purchases suited to your anticipated workload.

    2. Define a Pilot Use Case

    Select a bounded data domain (e.g., sales transactions, customer master, or IoT telemetry) that has a clear source, a defined set of dimensions, and a consumable downstream report or dashboard. Document the current manual process to establish a baseline for effort and latency.

    3. Provision a Workspace and Lakehouse

    Create a dedicated Fabric workspace. Inside the workspace, add a lakehouse object. Configure the lakehouse’s storage settings (choose the appropriate Azure region for data residency) and set up an Azure AD security group that will serve as the lakehouse’s admin.

    4. Build the Ingestion Pipeline

    Using the pipeline editor, add a Copy activity that pulls the source files (Parquet, CSV, or JSON) from their landing zone into the lakehouse’s Files folder. Enable the “Enable staging” option if the source requires transient storage for large files. Add a Lookup activity to discover folder structures for incremental loads if needed.

    5. Create Bronze, Silver, and Gold Tables via Notebook or Dataflow

    Option A – Notebook: Write a Spark script that reads the raw files, enforces schema, writes to a bronze Delta table, then applies deduplication and validation to produce a silver table. Option B – Dataflow: Use the GUI to map source columns to target columns, add data‑quality rules, and set the output to a silver Delta table. In either case, persist the silver table and then run aggregation or enrichment logic to generate the gold table.

    6. Implement Pipeline Orchestration

    Append the Lakehouse Maintenance activity (OPTIMIZE + VACUUM) after the gold table load. Add a Refresh SQL analytics endpoint activity to ensure the endpoint’s metadata reflects the latest schema. Parameterize the pipeline to allow reruns for historical backfill or incremental ingestion.

    7. Publish and Consume

    From the lakehouse, expose the gold tables via the SQL analytics endpoint. In Power BI Desktop, connect using the TDS endpoint, import the tables, or choose Direct Lake mode for live querying. Build a sample report that tracks key business metrics (e.g., monthly sales by region, top‑selling products). Share the report to a Power BI workspace and set up a refresh schedule if using import mode.

    8. Establish Monitoring and Governance

    Turn on Azure Monitor diagnostics for the workspace. Create alerts for pipeline failures, for table file count exceeding a threshold (e.g., >1000 files per table), and for query latency spikes. Apply sensitivity labels to the lakehouse if the data contains PII, and configure conditional access policies to restrict access to approved users and devices.

    9. Review, Iterate, and Expand

    After the pilot run, conduct a retrospective: measure time‑to‑insight, storage consumption, and user satisfaction. Use the findings to refine the pipeline (e.g., adjust clustering columns, tune Spark pool size). Then replicate the pattern for additional source systems, gradually expanding the lakehouse into an enterprise‑wide data fabric.

    Concluding Transition: Turning Insight into Action

    The lakehouse end‑to‑end scenario in Microsoft Fabric is more than a technical tutorial—it is a blueprint for how enterprises can dismantle the historic divide between data warehouses and data lakes, replacing it with a single, governed, and performant data foundation. By embracing OneLake’s unified storage, Delta Lake’s transactional guarantees, and Fabric’s blended low‑code/code‑first experiences, organizations can achieve faster analytics cycles, lower operating costs, and stronger data‑trust.

    For IT leaders ready to move from experimentation to production, the path begins with a clear pilot, a disciplined approach to ingestion and transformation, and the establishment of operational safeguards that keep the lakehouse healthy over time. EBS consultants stand ready to help you define that pilot, architect the pipelines and notebooks that power it, and build the governance framework that ensures your data remains a reliable asset for the business—today and as your analytics ambitions evolve.

    EBS Consulting Advice

    If your organization is evaluating Lakehouse end-to-end scenario: overview and architecture – Microsoft Fabric, do not treat the technology decision in isolation. Start with the business outcome, current architecture, security and identity controls, operational constraints, migration dependencies and governance requirements. A practical assessment should identify the current-state gaps, prioritize the risks and define an implementation roadmap with measurable outcomes.

    EBS can help assess the environment, develop the architecture and modernization roadmap, and translate the technical options into an actionable business plan. Relevant EBS services: Microsoft Azure consulting Escape Cloud Microsoft Solution Assessments.

    Have a technology challenge? Email info@escapebusinesssolutions.com to describe your situation. We welcome questions, consulting discussions and requests for a proposal.


    Discover more from Escape Business Solutions

    Subscribe to get the latest posts sent to your email.