Forum Discussion
Link to Fabric- manage updates and deletes
Hi,
I'm trying to understand whether the "Append Only" behavior documented for Azure Synapse Link for Dataverse also applies to Link to Microsoft Fabric.
According to the documentation for Azure Synapse Link, Append Only writes preserve updates and deletes and expose delete events through the IsDelete column.
However, when using Link to Microsoft Fabric:
Is Append Only supported?
Is the IsDelete column available?
Are updates stored as additional versions of the record or only as the latest state?
Is there any official documentation describing how CDC and delete tracking work specifically for Link to Fabric?
I'm trying to determine whether Link to Fabric can be used as a reliable Bronze layer for SCD Type 2 and CDC scenarios.
Thanks!
No, Link to Fabric does not behave like “append only” azure Synapse Link. Link to Fabric currently lands data in OneLake as managed delta tables, but it maintains the latest state of the record, not a full append only history. There is no IsDelete column exposed like in synapse Link, and deletes are applied as actual deletes (or reflected as absence), not as flagged rows. Updates overwrite the existing record rather than creating new versions of the same record in an append-only fashion. In other words, it behaves closer to a snapshot-based replication than a CDC event log.
Afaik, there is also no detailed official documentation today that describes CDC semantics (like insert/update/delete lineage, tombstones, or change feed guarantees) for Link to Fabric at the same level as Synapse Link. The implementation is abstracted and optimised for analytics consumption, not for exposing raw change events.
I believe so, if you are designing a Bronze layer for SCD2 or full CDC, Link to fabric alone is not sufficient. You will not get reliable historical tracking or delete events out of the box. You will need to implement your own change detection (for ex, periodic snapshot diff/Fabric pipelines with watermarking, or Dataverse change tracking APIs) if you want proper SCD2 behaviour.
2 Replies
- Tamanchu
Super User
Hi Luigia-Costabil,
This is a great question because Azure Synapse Link for Dataverse and Link to Microsoft Fabric have similar goals, but they don't expose exactly the same behaviors.
Based on the current documentation, Link to Fabric appears to keep the destination synchronized with the latest state of the source tables. I haven't found any official Microsoft documentation stating that it provides the same Append Only mode as Azure Synapse Link, nor that it exposes an IsDelete column.
Likewise, I haven't seen documentation indicating that updates are preserved as multiple row versions or that delete events are surfaced through an "IsDelete" flag in the destination.
If your objective is to build a Bronze layer for SCD Type 2 or full CDC, I would be cautious about relying solely on Link to Fabric until Microsoft explicitly documents those capabilities. Depending on your requirements, you may still need a dedicated CDC strategy or an ingestion pattern that preserves historical changes before transforming the data into Silver.
One approach that is officially documented is to use an existing Azure Synapse Link profile configured with Append Only (Delta/Parquet). Fabric can consume that profile, whereas CSV-based profiles aren't supported. If your requirement is to preserve delete events (IsDelete) and historical changes, this remains the most clearly documented approach today rather than relying on Link to Fabric alone.
Useful Microsoft documentation :
Link to Microsoft Fabric :
https://learn.microsoft.com/power-apps/maker/data-platform/azure-synapse-link-view-in-fabricAzure Synapse Link – In-place updates vs. Append Only writes (IsDelete behavior) :
https://learn.microsoft.com/power-apps/maker/data-platform/azure-synapse-link-advanced-configuration#in-place-updates-vs-append-only-writesI'd also be interested to hear from the Microsoft product team whether there is a documented equivalent of Append Only and "IsDelete" for Link to Fabric, or whether the current recommendation for CDC/SCD scenarios is still to use Azure Synapse Link in Append Only mode.
Hope this helps!
- Vinodh247
Super User
No, Link to Fabric does not behave like “append only” azure Synapse Link. Link to Fabric currently lands data in OneLake as managed delta tables, but it maintains the latest state of the record, not a full append only history. There is no IsDelete column exposed like in synapse Link, and deletes are applied as actual deletes (or reflected as absence), not as flagged rows. Updates overwrite the existing record rather than creating new versions of the same record in an append-only fashion. In other words, it behaves closer to a snapshot-based replication than a CDC event log.
Afaik, there is also no detailed official documentation today that describes CDC semantics (like insert/update/delete lineage, tombstones, or change feed guarantees) for Link to Fabric at the same level as Synapse Link. The implementation is abstracted and optimised for analytics consumption, not for exposing raw change events.
I believe so, if you are designing a Bronze layer for SCD2 or full CDC, Link to fabric alone is not sufficient. You will not get reliable historical tracking or delete events out of the box. You will need to implement your own change detection (for ex, periodic snapshot diff/Fabric pipelines with watermarking, or Dataverse change tracking APIs) if you want proper SCD2 behaviour.