SuperAPI AI 工具集

03-deduplication

数据与分析

查看项目

更新于 10-15 20:32

技能介绍

用途:在从 Silver 表向 Gold 表执行 Delta MERGE 时,标准化去重流程,防止源表重复业务键导致 MERGE 失败(DELTA_MULTIPLE_SOURCE_ROW_MATCHING_TARGET_ROW_IN_MERGE)。适用于增量 DLT 流式摄入、CDC、SCD Type 2、测试数据或多次批量加载等可能产生重复业务键的场景。

主要能力与要求:MERGE 要求源键唯一。标准做法是先 orderBy(col("processed_timestamp").desc()) 再 dropDuplicates([业务键]),保留最新记录。关键约束:去重键必须与 MERGE 条件中的键一致;必须按时间戳降序排序,否则保留哪条不确定;优先使用 dropDuplicates 而非窗口函数;建议打印原始与去重后记录数以便排查。

常见模式:SCD Type 1 覆盖、SCD Type 2 历史跟踪(条件含 is_current = true)、事实表按复合键聚合去重。性能上建议先去重再转换,并利用分区裁剪。

限制与注意:资料未提供具体安装命令、收费信息或平台支持范围;示例代码仅作模式参考,需按实际业务键与表结构调整。可参考同目录 dedup-patterns.md 等文件,后续可衔接 grain validation 或 schema validation。