Handling Deletes in Log-based Pipelines
In Pipelines created using the logical replication mode, Hevo uses the database logs to replicate data. As a result, Hevo can track all operations, such as insert, update, or delete, which take place in the database and replicate them accordingly. Hevo replicates delete actions in the database logs to the Destination table by marking the value of the metadata column __hevo__marked_deleted as TRUE.
Note: For log-based Pipelines, replication of deletes to the Destination table is billable. If you do not need to capture deletes, you should create your Pipeline using the Table or Custom SQL ingestion mode, as Hevo does not track data deleted in the Source objects for these modes.
Hevo tracks deletes in Pipelines configured for the following database Sources in the respective ingestion modes as listed in the table:
Source | Ingestion Mode |
---|---|
MySQL | BinLog |
PostgreSQL | Write-Ahead Log |
MongoDB | - OpLog - Change Streams Note: In either of these modes, Hevo cannot track array elements deleted in the MongoDB document at Source, as the logs contain the updated array. To capture such delete actions, you must create a Full Load Model. Read Types of Models. |
SQL Server | Change Tracking Note: Enabling Change Tracking at the database or object-level automatically selects Change Tracking as the query mode for the Source objects that you want to track in new Pipelines. |
Oracle | Redo Log |
AWS DynamoDB | Streams |
Amazon DocumentDB | Change Streams |