结构变化策略
Setting up Schema Change Strategy
结构变化策略是当数据源数据结构发生变化时,系统将为您执行的策略,能够有效避免由于数据源结构变化使任务暂停带来的影响。
关于此功能
我们目前针对三种主要的数据源结构变化,提供了不同的应对策略,以避免任务暂停。并且您可以根据实际场景的需要为每一个节点选择独立的结构变化策略。
情况
选项
情况说明
数据源删除正在同步的表
暂停数据任务
遇到此种情况暂停数据任务
删除映射并删除数据目的地的表和数据
删除对应数据链路中的数据映射,并删除数据目的地的表(drop table)
删除映射并保留数据目的地的表和数据
删除对应数据链路中的数据映射,但不对数据目的地表中数据进行操作
不删除映射,持续扫描并保留数据目的地的表和数据
不删除对应数据链路中的数据映射,不对数据目的地表中数据进行操作,保留任务可能因为数据表被误删后恢复同步的可能性
数据源正在同步的表新增字段
暂停数据任务
遇到此种情况暂停数据任务
忽略数据源新增字段
数据目的地不新增该字段
自动新增该字段,建立映射并同步数据
根据新增字段的信息自动建立数据映射,数据目的地应用新的数据映射同步数据,新增该字段(alter table)
数据源正在同步的表中字段被删除
暂停数据任务
遇到此种情况暂停数据任务
删除映射并删除目的地表中的字段和数据
删除对应数据链路中的字段映射,删除目的地表中的该字段(alter table)
删除映射但保留目的地表中的字段和数据,并写入空值
删除对应数据链路中的字段映射,但不对数据目的地表结构和历史数据进行操作,后续同步向该字段写入空值
表格16 结构变化策略选项说明列表
结构变化策略需要对数据目的地有更改表结构(alter table)、删除表(drop table)权限,如无该类型权限,遇到数据源结构变化的情况,执行结构变化策略的任务将报错暂停;
现版本支持结构变化策略的数据目的地有:MySQL、MS SQL Sever、Oracle、PostgreSQL。
由于PostgreSQL 数据源 wal2json 读取模式无法感知数据源删除表,因此日志增量读取阶段不支持数据源删除表结构变化策略。其全量或 JDBC 增量支持数据源删除表结构变化策略。
最后更新于
这有帮助吗?