You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Matillion中Salesforce同步删除记录选项失效,如何同步至Snowflake?

解决Salesforce已删除记录同步至Snowflake的问题

针对你遇到的Matillion增量同步时无法获取Salesforce已删除记录的问题,可按以下步骤排查处理:

  • 开启Salesforce组件的已删除记录查询权限
    在Matillion的Salesforce数据源组件配置中,找到标注为"Include Deleted Records"或类似名称的选项并勾选。Salesforce的SOQL默认仅返回活跃记录,必须显式开启才能获取回收站中的已删除数据,对应SOQL会自动追加ALL ROWS关键字。

  • 调整增量同步的字段逻辑
    增量同步如果仅依赖LastModifiedDate,已删除记录的该字段不会更新,需新增对DeletedDate字段的判断:

    1. 在Matillion的增量过滤条件中,加入DeletedDate >= 上次同步时间的规则,专门抓取新增的已删除记录
    2. 同步时同时获取IsDeleted和DeletedDate字段,确保Snowflake能识别标记已删除的记录
  • 修改Snowflake的数据写入逻辑
    不要仅用插入操作,改用MERGE语句来同步数据:

    MERGE INTO your_snowflake_table t
    USING (SELECT Id, IsDeleted, DeletedDate, ... FROM salesforce_source_data) s
    ON t.Id = s.Id
    WHEN MATCHED AND s.IsDeleted = TRUE THEN UPDATE SET t.IsDeleted = TRUE, t.DeletedDate = s.DeletedDate
    WHEN MATCHED AND s.IsDeleted = FALSE THEN UPDATE SET t.[其他字段] = s.[其他字段]
    WHEN NOT MATCHED THEN INSERT (Id, IsDeleted, ...) VALUES (s.Id, s.IsDeleted, ...);
    

    这样既可以更新已删除标记,也能同步正常的增量数据。

  • 确认Salesforce回收站的记录保留期
    Salesforce的已删除记录默认保留15天(部分对象可延长),如果记录已被永久删除,无法再通过API获取,需提前确认目标记录是否还在回收站内。

内容的提问来源于stack exchange,提问作者Xi12

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 08:13:24