Forum Discussion
Architecture design question
- 8 months ago
1) Append or merge?
Copy activity supports append and overwrite
No native merge
Merge must be done later using Spark or SQL
2) Deletes?
Copy activity does not handle deletes
Deleted rows in source will remain in Lakehouse
Use CDC or soft delete if deletes matter
3) CDC vs watermark
Watermark: simple, needs timestamp, no deletes
CDC: captures insert/update/delete, more complex
Choose CDC if correctness matters, watermark if reporting-only
4) What gets created in Lakehouse?
Delta tables
Stored as Parquet in OneLake
Tables are auto-created, no manual linking
5) SHIR vs Power BI gateway
Same runtime
Different name
In Fabric it is called SHIR
- 8 months ago
Use Copy activity from Fabric Data Factory
Do not use gen2 dataflow for SQL Server ingestion
Scheduler
Use pipeline triggers
Time-based schedule (for example every 5–15 minutes)
No separate scheduler needed
"Another questions is, shall I use a service principal to secure this? which permissions shall it has in SQL Server on-prem and on Fabric this service principal? last, but not less important, where do I store the : SHIR ? does it needt o be installed on the SQL Server on-prem machine? And the coonnection shall be encypted? "
Yes, use it
Permissions : SQL Server onprem
Read-only
SELECT on required tables
SELECT on CDC tables if CDC is used
No write, no db_owner
Permissions -> Fabric
Workspace role: Contributor
Lakehouse: Write
Permission to run pipelines
SHIR:
Install on a separate VM
Do not install on the SQL Server machine
Must have network access to SQL Server
Can scale with multiple nodes if needed
Encryption
Yes
SQL connection uses TLS (Encrypt=True)
SHIR -> Fabric uses HTTPS (outbound 443 only)
I have tried to list out the complete flow in detail, pls refer below this should ans all your questions.
1. Inside Fabric Data Pipelines
Use Copy activity (Fabric Data Factory)
Do not use gen2 dataflow
Reason: performance, incremental loads, enterprise control
2. Scheduler
Use pipeline triggers
Time-based schedule (for example every 5 to 15 mins)
Use watermark or CDC style logic
3. Service principal
Yes, use it
SQL Server on-prem:
Read-only access
SELECT on required tables (and CDC tables if used)
Fabric:
Workspace role: Contributor
Lakehouse: Write
Allowed to run pipelines
4. SHIR
Install on a dedicated VM, not on the SQL Server
Must have network access to SQL Server
Can scale with multiple nodes
5. Security
Connection is encrypted
SQL: Encrypt=True
SHIR -> Fabric uses HTTPS outbound only (port 443)
Overall:
Copy activity + scheduled triggers
Service principal + least privilege
SHIR on separate VM
Bronze Lakehouse landing
This is the correct Fabric pattern. HTH!
Thanks a lot for the replies Vinodh247
1) For Lakehouse, does the copy activities allow append, merge ? or only merge?
2) What about deletes ? if I delete something on the source will it be able to delete as well on the lakehouse in fabric? or it will nnot know and hence the deleted rfecord will stay forever in the lakehouse?
3) Whay would you choose (Use watermark or CDC style logic) ? I am not sure that all columns have timestamp, maybe they have. What are the advantages of one versus the other and when would you use CDC vs Watermark?
4) The Copy activity, creates the tables in the raw zone as delta tables with parquet files in the OneLake? or does it create only the parquet files and I will have to create link the tables in the lakehouse?
5) Is SHIR the same as now called PowerBI data gateway?
- Vinodh2478 months ago
Super User
1) Append or merge?
Copy activity supports append and overwrite
No native merge
Merge must be done later using Spark or SQL
2) Deletes?
Copy activity does not handle deletes
Deleted rows in source will remain in Lakehouse
Use CDC or soft delete if deletes matter
3) CDC vs watermark
Watermark: simple, needs timestamp, no deletes
CDC: captures insert/update/delete, more complex
Choose CDC if correctness matters, watermark if reporting-only
4) What gets created in Lakehouse?
Delta tables
Stored as Parquet in OneLake
Tables are auto-created, no manual linking
5) SHIR vs Power BI gateway
Same runtime
Different name
In Fabric it is called SHIR