11. Integrate enterprise SAP data into Microsoft Fabric.
Design source extraction and change capture, gateway or connector placement, landing in OneLake, medallion transformation, master-data conformance, financial control totals, Lakehouse or Warehouse targets, semantic modeling, and refresh orchestration. Cover source load, late changes, schema evolution, access controls, lineage, and cutover from an existing reporting path.
I would make Fabric the governed SAP analytics platform, separating SAP extraction from reusable orchestration, medallion transformation, and BI serving. Data enters OneLake through the gateway, is reconciled before publication, and reaches Power BI through curated Warehouse data, trading extra controls for safer financial reporting and cutover.
Enterprise SAP reporting has several recurring problems at once: extracting business data safely, processing source changes, keeping master data consistent, proving that financial results reconcile, and moving users away from an established reporting path without disrupting them. Building a separate pipeline for every report would repeat gateway, retry, schema, security, lineage, and monitoring logic. I would therefore use Fabric as the shared platform boundary. The design prioritizes reusable SAP ingestion, controlled Bronze-to-Silver-to-Gold publication in OneLake, financial validation before serving, governed access, observable refreshes, and gradual migration rather than an all-at-once cutover.
- Which SAP sources are in scope beyond the S/4HANA / SAP HANA and BW Open Hub paths shown here?
- What freshness does each business domain need, especially finance compared with operational reporting?
- Which master-data entities must be conformed across sources, and who owns their business definitions?
- Which financial control totals must reconcile before Gold data is released?
- How much history must be loaded into Bronze before the new reporting path can replace the legacy path?
- What access restrictions are required for finance, operations, and leadership data?
- What conditions must be met before the legacy reporting path can be retired?
The production data starts in enterprise SAP systems. The diagram uses two source patterns. The S/4HANA / SAP HANA path supports an initial full load plus incremental processing. SAP BW Open Hub follows the full-load path shown in the architecture.
The on-premises data gateway sits between the private SAP network and Microsoft Fabric. It is the connectivity boundary, not a business-data store. SAP remains the source of record. Source-side authorization determines what Fabric is allowed to read.
For SAP HANA, Fabric Data Factory supports pipeline Copy activity through the on-premises gateway, and Copy job supports full and incremental loading. A pipeline can also coordinate watermark-based incremental logic when that is the chosen ingestion pattern. SAP BW Open Hub supports pipeline Copy and Lookup activity and Copy job full loading through an on-premises gateway.
If the gateway or source connection fails, only the affected source load should fail. Data Factory records the failed run. Operators correct the source, network, or gateway problem and retry from the appropriate extraction boundary instead of changing already published reports manually.
Fabric Data Factory owns pipelines, Copy jobs, dependencies, refresh sequencing, watermarks, retry behavior, error handling, and schema-handling workflow. These are shared platform capabilities, so every SAP reporting product does not rebuild them.
The orchestration layer is logically different from the production data plane. Data Factory coordinates work, while SAP business records are transported into and stored in OneLake. Scheduling metadata, run state, and control decisions should not be confused with the business records themselves.
For incremental processing, the watermark must advance only after the intended ingestion boundary succeeds. A retry should restart from a known position. Transport success alone is not enough to declare a financial dataset correct.
The first durable Fabric data state is the Bronze Lakehouse in OneLake. Bronze contains raw SAP extracts, retains full history, and uses Delta-format storage as shown in the diagram.
Bronze is the replay boundary. If a Silver or Gold transformation fails, the platform can recompute the affected downstream data from Bronze instead of immediately rereading the SAP source.
Bronze is not the trusted reporting layer. Its primary responsibility is to preserve the source load and enough ingestion context to understand what arrived and when.
The Silver Lakehouse cleans and deduplicates Bronze data. It also handles late changes through merge or upsert logic, applies master-data conformance, and manages approved schema evolution.
This is where shared business entities are standardized before they are reused by reports. The exact customer, vendor, general-ledger, or other master-data rules remain domain-owned business definitions; the platform provides the reusable transformation boundary in which those rules are applied.
For a late-arriving change, Silver uses the business key and change logic to update the intended representation instead of blindly creating a duplicate. If a breaking schema change cannot be processed safely, downstream publication stops until the mapping and affected contracts are updated and validated.
The Gold Lakehouse contains business-ready dimensional data and the financial model shown in the architecture. It is the curated boundary between engineering transformations and trusted serving.
Financial control totals are a publication gate. The platform compares the curated result with the agreed source-derived controls before treating Gold data as ready. The exact controls depend on the finance domain, so I would not invent their values or formulas during design.
If reconciliation fails, the technical pipeline may have completed but the business publication has not succeeded. The affected Gold result stays untrusted while the team investigates missing records, duplicate processing, master-data mappings, late changes, or transformation defects.
Curated Gold data flows into Fabric Warehouse. The Warehouse is the SQL-first dimensional reporting layer shown in the diagram and provides governed data for BI.
Power BI sits at the consumer boundary. It uses a semantic model for KPIs, financial reports, enterprise reporting, and self-service analytics for finance, operations, and leadership users.
The refresh dependency is important. SAP ingestion completes first, then Bronze-to-Silver-to-Gold processing, then financial reconciliation, then Warehouse serving, and finally the Power BI semantic-model refresh. If an upstream validation fails, the orchestration should not present that failed result as newly trusted data.
Microsoft Entra provides identity for access to Fabric. Fabric workspace and item permissions are the authorization boundary for users and workloads shown in the architecture. Network connectivity to SAP does not itself authorize access to Fabric data.
Microsoft Purview provides the governance and lineage view. A registered and scanned Fabric tenant can contribute Fabric item metadata and lineage to Purview. Purview stores governance metadata rather than the SAP production records themselves. This helps stewards and operators understand dependencies and downstream impact.
Monitoring covers pipeline state and data-refresh state, with alerts and incident handling for failures. Platform Operations owns shared lifecycle and cost management. This distinction matters operationally: a bad domain transformation is a data-product defect, while a gateway or shared orchestration outage can affect several SAP data products.
A retry repeats a failed orchestration step. A replay or recomputation rebuilds downstream data from Bronze. A historical backfill reads source history that is not already present in the landing layer. These are different recovery actions.
Late SAP changes flow through the incremental path and are merged in Silver using the approved business key and change rules. Schema evolution is handled at the ingestion and transformation boundary. Compatible changes can move through the approved mapping. Breaking changes stop trusted publication until downstream mappings and contracts have been validated.
Repeatedly retrying a deterministic data-quality or reconciliation defect does not help. The platform should expose the failed state, stop publication, allow the responsible team to correct the cause, then recompute from the appropriate persisted boundary.
The existing SAP reporting path stays active temporarily during migration. The new Fabric path runs in parallel.
The migration sequence is dual run, reconcile, then cut over. During the overlap, teams compare Fabric results with the existing SAP reports and check financial control totals. Only after the new results are validated should users move to the Fabric semantic model and reports.
The legacy path remains a fallback during the validation period. If important discrepancies appear, consumers can remain on the validated existing route while the Fabric defect is corrected. Decommissioning is a later lifecycle decision after the new reporting path has been accepted; technical deployment alone is not a sufficient cutover criterion.
The platform team owns the shared foundation represented in the diagram: gateway integration, Fabric Data Factory orchestration patterns, OneLake medallion structure, Warehouse serving patterns, Entra-based access mechanisms, Purview integration, monitoring, and platform lifecycle operations.
SAP source owners remain responsible for source authorization and source-system correctness. Domain and data owners define master-data and financial business rules. Business users consume the governed semantic models and reports.
The architecture therefore behaves as a reusable platform rather than one hard-coded pipeline. New SAP data products can reuse the same connectivity, orchestration, storage, governance, monitoring, and serving boundaries while keeping business-specific mappings and financial rules with the responsible domain.
The first trade-off is freshness versus source and operational cost. Incremental SAP HANA loading avoids repeating every full extraction, but it requires reliable incremental state, late-change handling, and recovery logic. The BW Open Hub path shown in this design remains a full-load pattern and therefore has a different source and network cost profile.
The second trade-off is reuse versus domain autonomy. Shared Fabric patterns reduce duplicated engineering work, but data products must conform to common publication, access, lineage, and reconciliation rules before becoming trusted Gold data.
The third trade-off is migration speed versus reporting risk. Immediate replacement is simpler operationally, but dual running creates evidence that the new results agree with the established reporting path before users are moved.
The fourth trade-off is Lakehouse flexibility versus Warehouse-oriented serving. Bronze, Silver, and Gold Lakehouses provide the medallion transformation and historical-data boundaries shown in the design. Fabric Warehouse provides the SQL-first dimensional serving boundary. The architecture uses both because their responsibilities are different.
- Inventory the SAP source paths and classify each according to the selected architecture: full plus incremental for the SAP HANA path, and full load for SAP BW Open Hub.
- Place the on-premises data gateway between the private SAP network and Fabric.
- Use Fabric Data Factory pipelines and Copy jobs as reusable ingestion and orchestration capabilities, with dependencies, incremental state, retries, error handling, schema handling, and refresh sequencing.
- Land source extracts in the Bronze Lakehouse and retain raw history for audit and replay.
- Transform Bronze to Silver by cleansing, deduplicating, merging late changes, conforming master data, and processing approved schema evolution.
- Build Gold dimensional and financial models and calculate the agreed financial control totals.
- Publish only reconciled Gold data to the Fabric Warehouse serving layer.
- Refresh the Power BI semantic model only after the upstream data and reconciliation gates succeed.
- Apply Microsoft Entra access controls, Microsoft Purview metadata and lineage governance, monitoring, and Platform Operations across the platform.
- Dual-run Fabric beside the existing SAP reporting path, compare results and financial controls, cut over after validation, and keep the legacy path temporarily as fallback.
The first likely bottleneck is the SAP extraction and gateway boundary because the source systems, gateway, network, and concurrent loads all limit ingestion speed. Incremental SAP HANA processing can reduce repeated data movement, while the BW Open Hub path shown here uses full loads and can therefore move more repeated data. Storage grows because Bronze keeps history and Silver and Gold keep additional processed representations. Transformation work grows with table count, late-change merges, deduplication, master-data rules, schema changes, and reconciliation. Warehouse and Power BI pressure depends on the number and concurrency of reporting workloads. Operational effort grows with source contracts, failures, schema changes, and control-total rules. Migration temporarily costs more because the legacy and Fabric paths run together, but that overlap reduces cutover risk. No precise throughput, latency, storage, concurrency, or cost value should be assumed until the source and business requirements are known.
This tests whether a Data Engineer can design more than an SAP-to-Power-BI copy job. The interviewer wants to see correct source and platform boundaries, reusable ingestion, incremental-state handling, late-change processing, master-data conformance, financial reconciliation, governed serving, operational recovery, and a low-risk migration from an existing reporting estate.
Common mistakes are treating the design as one SAP-to-Power-BI copy job; assuming every SAP connector has identical full-load and incremental capabilities; bypassing the on-premises gateway for the private SAP paths shown; advancing incremental state before the intended load boundary succeeds; treating Bronze as already-clean business data; losing raw history needed for replay; ignoring late-arriving changes; appending changed business records as duplicates instead of merging them in Silver; letting every report implement its own customer, vendor, or financial mappings; treating pipeline success as proof of financial correctness; publishing Gold when control totals fail; refreshing Power BI before upstream validation completes; allowing reports to query raw SAP extracts directly; confusing Purview governance metadata with production records; assuming authentication alone grants data access; repeatedly retrying deterministic data-quality errors; silently accepting breaking schema changes; and replacing the existing reporting path without a dual run, reconciliation gate, controlled cutover, and temporary fallback.
Present the design as a sequence of trust boundaries: SAP extraction, Fabric orchestration, Bronze landing, Silver conformance, Gold reconciliation, Warehouse serving, and Power BI consumption. Spend the most time on incremental state, late-change merges, master-data conformance, financial controls, refresh dependencies, and dual-run cutover because those demonstrate platform judgment rather than simple data movement.




