Differences Between Physical Deletion and Logical Deletion

  • Last update: August 08, 2025
  • Overview

    When using FineDataLink to process data, you may wonder:

    • What is Physical Deletion? What is Logical Deletion?

    • What is the difference between Physical Deletion and Logical Deletion?

    This document introduces these two deletion methods.

    Data Development

    Usage Description

    1. The following scenarios (where neither the source table nor the target table is a Jodoo form) can be implemented by using the Data Synchronization node:

    iconNote:

    You are not advised to use Logical deletion in these scenarios.

    • There is no identifier field, and you have obtained data through filtering. You want to insert the obtained data into the target table, update data in the target table using the obtained data, or remove data corresponding to the obtained data from the target table. (Only one operation type can be selected when there is no identifier field.)

    • There is an identifier field and identifier values, and you need to implement data insertion/update/deletion.

    For details about using the Data Synchronization node to implement the operations, see Adding/Modifying/Deleting Data Based on the Identifier Field.

    2. You can implement data insertion/deletion/update by using the combination of the Data Comparison operator and DB Table Output operator or the Data Comparison operator and Jodoo Output operator.

    Description of Physical Deletion and Logical Deletion

    When you use the combination of the Data Comparison operator and DB Table Output operator or the Data Comparison operator and Jodoo Output operator to implement data deletion:

    For details, see Data Comparison Example.

    Physical Deletion: If the data is deleted from the source table, the corresponding data will be deleted from the target table.

    Logical Deletion: Mark data as deleted using an identifier column without actually deleting it from the target table.

    By default, the field fdl_comparison_type is added to the target table as an identifier column, with its value modified to Removed, indicating that the data is deleted.

    For details about examples of Logical Deletion, see Example One: Logical Deletion.

    2.2.png

    Data Pipeline

    Usage Description

    When configuring Target Selection during the creation of a pipeline task, you can select Physical Deletion at Target End/Logical Deletion at Target End as Data Deletion Strategy, as shown in the following figure.

    3.1.png

    Description of Physical Deletion and Logical Deletion

    Physical Deletion at Target End: If the data is deleted from the source table, the corresponding data will also be deleted from the target table.

    Logical Deletion at Target End: Add a boolean field named _fdl_marked_deleted (whose value defaults to false) to the target table to record the deletion status of data in the source table without actually deleting data in the target table. If a data record is deleted from the source table, the system will not physically delete the corresponding record in the target table after synchronization. Instead, it will change the _fdl_marked_deleted value of this record to true.

     3.2.png

    附件列表


    主题: Best Practices
    • Helpful
    • Not helpful
    • Only read

    滑鼠選中內容,快速回饋問題

    滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

    不再提示

    10s後關閉

    Get
    Help
    Online Support
    Professional technical support is provided to quickly help you solve problems.
    Online support is available from 9:00-12:00 and 13:30-17:30 on weekdays.
    Page Feedback
    You can provide suggestions and feedback for the current web page.
    Pre-Sales Consultation
    Business Consultation
    Business: international@fanruan.com
    Support: support@fanruan.com
    Page Feedback
    *Problem Type
    Cannot be empty
    Problem Description
    0/1000
    Cannot be empty

    Submitted successfully

    Network busy