Microsoft Fabric Integration with Azure Data Factory (2025)
Overview
Microsoft Fabric is a unified SaaS analytics platform combining Power BI, Azure Synapse Analytics, and Azure Data Factory capabilities. ADF provides native connectors for Fabric Lakehouse and Fabric Warehouse, enabling seamless data movement between ADF and Fabric workspaces.
Microsoft Fabric Lakehouse Connector
The Fabric Lakehouse connector enables read and write operations to Microsoft Fabric Lakehouse for tables and files.
Supported Activities
| Activity |
Supported |
| Copy Activity (source and sink) |
Yes |
| Lookup Activity |
Yes |
| Get Metadata Activity |
Yes |
| Delete Activity |
Yes |
Quick Reference
- Linked service type:
Lakehouse
- Authentication: Managed Identity (preferred) or Service Principal
- Required IDs:
workspaceId and artifactId
- Sink types:
LakehouseTableSink (tables), LakehouseFileSink (files)
- Source type:
LakehouseTableSource
- Table action options:
append or overwrite
Finding Workspace and Artifact IDs:
- Navigate to Fabric workspace in browser
- Copy workspace ID from URL:
https://app.powerbi.com/groups/<workspaceId>/...
- Open Lakehouse settings to find artifact ID
- Or use Fabric REST API to enumerate workspace items
For complete linked service, dataset, and copy activity JSON examples, see references/lakehouse-examples.md.
Microsoft Fabric Warehouse Connector
The Fabric Warehouse connector provides T-SQL based data warehousing capabilities within the Fabric ecosystem.
Supported Activities
| Activity |
Supported |
| Copy Activity (source and sink) |
Yes |
| Lookup Activity |
Yes |
| Get Metadata Activity |
Yes |
| Script Activity |
Yes |
| Stored Procedure Activity |
Yes |
Quick Reference
- Linked service type:
Warehouse
- Authentication: System-Assigned Managed Identity (recommended), User-Assigned MI, or Service Principal
- Required properties:
endpoint, warehouse
- Sink type:
WarehouseSink
- Write behaviors:
insert or upsert
- Table option:
autoCreate (creates table if missing)
For complete linked service, copy activity, stored procedure, and script activity JSON examples, see references/warehouse-examples.md.
OneLake Integration Patterns
ADF supports three integration patterns with OneLake:
| Pattern |
Description |
Key Benefit |
| ADLS Gen2 Shortcuts |
Reference ADLS data via OneLake shortcuts (zero-copy) |
No data duplication |
| Incremental Load |
Watermark-based incremental copy to Lakehouse |
Efficient updates |
| Cross-Platform Invoke |
Use InvokePipeline activity to call Fabric pipelines |
Hybrid orchestration |
OneLake Shortcuts are the preferred approach when data already exists in ADLS Gen2 -- they provide instant zero-copy access without data movement. Use ADF Copy Activity only when data transformation or format conversion is needed.
For complete pipeline JSON examples for all three patterns, see references/onelake-patterns.md.
Permission Configuration
Azure Data Factory Managed Identity Permissions in Fabric
For Fabric Lakehouse:
- Open Fabric workspace
- Go to Workspace settings -> Manage access
- Add ADF managed identity with Contributor role
- Or assign Workspace Admin for full access
For Fabric Warehouse:
- Navigate to Warehouse SQL endpoint
- Execute SQL to create user:
CREATE USER [your-adf-name] FROM EXTERNAL PROVIDER;
ALTER ROLE db_datareader ADD MEMBER [your-adf-name];
ALTER ROLE db_datawriter ADD MEMBER [your-adf-name];
Service Principal Permissions
App Registration Setup:
- Register app in Microsoft Entra ID
- Create client secret (store in Key Vault)
- Add app to Fabric workspace with Contributor role
- For Warehouse, create SQL user as shown above
Best Practices (2025)
Use Managed Identity -- System-assigned for single ADF, user-assigned for multiple. Avoid service principal keys when possible. Store any secrets in Key Vault.
Enable Staging for Large Loads -- Use staging with compression for data volumes > 1 GB, complex transformations, or Fabric Warehouse loads.
Leverage OneLake Shortcuts -- Use ADLS Gen2 -> OneLake Shortcut -> Direct Access instead of ADLS Gen2 -> Copy Activity -> Lakehouse. No data movement, instant availability, reduced costs.
Monitor Fabric Capacity Units (CU) -- Track CU consumption per pipeline run, peak usage, and throttling. Optimize with incremental loads, off-peak scheduling, and right-sized parallelism.
Use Table Option AutoCreate -- Set tableOption: "autoCreate" on WarehouseSink for automatic schema management and faster development.
Implement Error Handling -- Configure retry policies on Copy activities and add WebActivity-based failure logging with dependencyConditions: ["Failed"].
Common Issues and Solutions
| Issue |
Error Message |
Solution |
| Permission Denied |
"User does not have permission to access Fabric workspace" |
Add ADF managed identity as Contributor; for Warehouse, create SQL user; allow 5 min propagation |
| Endpoint Not Found |
"Unable to connect to endpoint" |
Verify workspaceId/artifactId; check workspace URL; ensure Lakehouse/Warehouse is not paused |
| Schema Mismatch |
"Column types do not match" |
Use tableOption: "autoCreate" or explicit column mappings in translator |
| Performance Degradation |
Slow copy performance |
Enable staging, increase parallelCopies (4-8), increase DIUs (8-32), check CU throttling |
Resources
Progressive Disclosure References
- Lakehouse Examples:
references/lakehouse-examples.md - Complete linked service, dataset, copy activity, and lookup JSON examples
- Warehouse Examples:
references/warehouse-examples.md - Complete linked service, copy activity, stored procedure, and script activity JSON examples
- OneLake Patterns:
references/onelake-patterns.md - Pipeline patterns for shortcuts, incremental loads, and cross-platform Invoke Pipeline
1---2name: fabric-onelake-20253description: ADF + Microsoft Fabric / OneLake 2025 integration. PROACTIVELY activate for: (1) Fabric Lakehouse connector in ADF, (2) Fabric Warehouse connector in ADF, (3) OneLake shortcuts and cross-workspace data, (4) Invoke Pipeline activity for cross-platform orchestration (ADF -> Fabric, Fabric -> ADF), (5) copying data between ADF and Microsoft Fabric workspaces, (6) authenticating with Fabric workspace identity, (7) cross-platform parameter passing, (8) hybrid ADF + Fabric pipeline patterns. Provides: Fabric connector setup, Invoke Pipeline templates, OneLake shortcut patterns, and ADF-to-Fabric migration guidance.4---5
6# Microsoft Fabric Integration with Azure Data Factory (2025)
7
8## Overview
9
10Microsoft Fabric is a unified SaaS analytics platform combining Power BI, Azure Synapse Analytics, and Azure Data Factory capabilities. ADF provides native connectors for Fabric Lakehouse and Fabric Warehouse, enabling seamless data movement between ADF and Fabric workspaces.
11
12## Microsoft Fabric Lakehouse Connector
13
14The Fabric Lakehouse connector enables read and write operations to Microsoft Fabric Lakehouse for tables and files.
15
16### Supported Activities
17
18| Activity | Supported |
19|----------|-----------|
20| Copy Activity (source and sink) | Yes |
21| Lookup Activity | Yes |
22| Get Metadata Activity | Yes |
23| Delete Activity | Yes |
24
25### Quick Reference
26
27- **Linked service type:** `Lakehouse`
28- **Authentication:** Managed Identity (preferred) or Service Principal
29- **Required IDs:** `workspaceId` and `artifactId`
30- **Sink types:** `LakehouseTableSink` (tables), `LakehouseFileSink` (files)
31- **Source type:** `LakehouseTableSource`
32- **Table action options:** `append` or `overwrite`
33
34**Finding Workspace and Artifact IDs:**
351. Navigate to Fabric workspace in browser
362. Copy workspace ID from URL: `https://app.powerbi.com/groups/<workspaceId>/...`
373. Open Lakehouse settings to find artifact ID
384. Or use Fabric REST API to enumerate workspace items
39
40For complete linked service, dataset, and copy activity JSON examples, see `references/lakehouse-examples.md`.
41
42## Microsoft Fabric Warehouse Connector
43
44The Fabric Warehouse connector provides T-SQL based data warehousing capabilities within the Fabric ecosystem.
45
46### Supported Activities
47
48| Activity | Supported |
49|----------|-----------|
50| Copy Activity (source and sink) | Yes |
51| Lookup Activity | Yes |
52| Get Metadata Activity | Yes |
53| Script Activity | Yes |
54| Stored Procedure Activity | Yes |
55
56### Quick Reference
57
58- **Linked service type:** `Warehouse`
59- **Authentication:** System-Assigned Managed Identity (recommended), User-Assigned MI, or Service Principal
60- **Required properties:** `endpoint`, `warehouse`
61- **Sink type:** `WarehouseSink`
62- **Write behaviors:** `insert` or `upsert`
63- **Table option:** `autoCreate` (creates table if missing)
64
65For complete linked service, copy activity, stored procedure, and script activity JSON examples, see `references/warehouse-examples.md`.
66
67## OneLake Integration Patterns
68
69ADF supports three integration patterns with OneLake:
70
71| Pattern | Description | Key Benefit |
72|---------|-------------|-------------|
73| ADLS Gen2 Shortcuts | Reference ADLS data via OneLake shortcuts (zero-copy) | No data duplication |
74| Incremental Load | Watermark-based incremental copy to Lakehouse | Efficient updates |
75| Cross-Platform Invoke | Use InvokePipeline activity to call Fabric pipelines | Hybrid orchestration |
76
77**OneLake Shortcuts** are the preferred approach when data already exists in ADLS Gen2 -- they provide instant zero-copy access without data movement. Use ADF Copy Activity only when data transformation or format conversion is needed.
78
79For complete pipeline JSON examples for all three patterns, see `references/onelake-patterns.md`.
80
81## Permission Configuration
82
83### Azure Data Factory Managed Identity Permissions in Fabric
84
85**For Fabric Lakehouse:**
861. Open Fabric workspace
872. Go to Workspace settings -> Manage access
883. Add ADF managed identity with **Contributor** role
894. Or assign **Workspace Admin** for full access
90
91**For Fabric Warehouse:**
921. Navigate to Warehouse SQL endpoint
932. Execute SQL to create user:
94```sql
95CREATE USER [your-adf-name] FROM EXTERNAL PROVIDER;
96ALTER ROLE db_datareader ADD MEMBER [your-adf-name];
97ALTER ROLE db_datawriter ADD MEMBER [your-adf-name];
98```
99
100### Service Principal Permissions
101
102**App Registration Setup:**
1031. Register app in Microsoft Entra ID
1042. Create client secret (store in Key Vault)
1053. Add app to Fabric workspace with Contributor role
1064. For Warehouse, create SQL user as shown above
107
108## Best Practices (2025)
109
1101. **Use Managed Identity** -- System-assigned for single ADF, user-assigned for multiple. Avoid service principal keys when possible. Store any secrets in Key Vault.
111
1122. **Enable Staging for Large Loads** -- Use staging with compression for data volumes > 1 GB, complex transformations, or Fabric Warehouse loads.
113
1143. **Leverage OneLake Shortcuts** -- Use `ADLS Gen2 -> OneLake Shortcut -> Direct Access` instead of `ADLS Gen2 -> Copy Activity -> Lakehouse`. No data movement, instant availability, reduced costs.
115
1164. **Monitor Fabric Capacity Units (CU)** -- Track CU consumption per pipeline run, peak usage, and throttling. Optimize with incremental loads, off-peak scheduling, and right-sized parallelism.
117
1185. **Use Table Option AutoCreate** -- Set `tableOption: "autoCreate"` on WarehouseSink for automatic schema management and faster development.
119
1206. **Implement Error Handling** -- Configure retry policies on Copy activities and add WebActivity-based failure logging with `dependencyConditions: ["Failed"]`.
121
122## Common Issues and Solutions
123
124| Issue | Error Message | Solution |
125|-------|--------------|----------|
126| Permission Denied | "User does not have permission to access Fabric workspace" | Add ADF managed identity as Contributor; for Warehouse, create SQL user; allow 5 min propagation |
127| Endpoint Not Found | "Unable to connect to endpoint" | Verify workspaceId/artifactId; check workspace URL; ensure Lakehouse/Warehouse is not paused |
128| Schema Mismatch | "Column types do not match" | Use `tableOption: "autoCreate"` or explicit column mappings in translator |
129| Performance Degradation | Slow copy performance | Enable staging, increase parallelCopies (4-8), increase DIUs (8-32), check CU throttling |
130
131## Resources
132
133- [Fabric Lakehouse Connector](https://learn.microsoft.com/azure/data-factory/connector-microsoft-fabric-lakehouse)
134- [Fabric Warehouse Connector](https://learn.microsoft.com/azure/data-factory/connector-microsoft-fabric-warehouse)
135- [OneLake Documentation](https://learn.microsoft.com/fabric/onelake/)
136- [Fabric Capacity Management](https://learn.microsoft.com/fabric/enterprise/licenses)
137- [ADF to Fabric Integration Guide](https://learn.microsoft.com/fabric/data-factory/how-to-ingest-data-into-fabric-from-azure-data-factory)
138
139## Progressive Disclosure References
140
141- **Lakehouse Examples**: `references/lakehouse-examples.md` - Complete linked service, dataset, copy activity, and lookup JSON examples
142- **Warehouse Examples**: `references/warehouse-examples.md` - Complete linked service, copy activity, stored procedure, and script activity JSON examples
143- **OneLake Patterns**: `references/onelake-patterns.md` - Pipeline patterns for shortcuts, incremental loads, and cross-platform Invoke Pipeline