本文对比两款专业工具——FDL和Kettle在DDL同步方面的功能和用户体验。
FDL | Kettle | |
功能实现 | FDL用 高度自动化 的方式,完成从监测变化到通知用户,再到自动生成DDL语句的全过程,高效实现DDL同步。 | Kettle同样可以实现DDL同步,但 更依赖于开发者的人工参与 。 |
操作难度 | 无需手动编写代码,提供了更为自动化和用户友好的操作,开发人员 可以很快上手 。 | 需要更多的手动设置和程序编写,对开发人员 技术能力要求更高 ,学习成本也更高。 对于编程能力较强的开发者,Kettle的DDL同步提供了 更强的灵活性 。 |
消息通知 | 当监测到来源表结构发生变化时,FDL可以 自动通知 给开发人员,提醒开发人员查看结构变更并进行目标端的更改。 | 不支持自动监测源表结构变化,开发者需要花时间 手动debug ,运维上效率较低。 |
Kettle中进行DDL同步
1、监测DDL变化
开发者需要通过读取流字段来获取源表结构和目标表结构,并将这些信息分别写入两个文件。
之后,Kettle会通过比对这两个文件来获取字段之间的差异,开发者基于此进行自定义的后续处理。
2、DDL同步
Kettle监测到源端和目标端的结构差异后,如果目标库中没有相应的表,Kettle会生成创建表的SQL语句。
如果目标库中已有表,Kettle会检查字段是否存在差异,并在有差异的情况下生成ALTER语句来进行DDL同步;如果没有字段差异,Kettle会通过弹框告知开发者。
FDL中进行DDL同步
1、源表结构变化监测
FDL数据同步节点提供了「源表结构变化监测」选项,开发者只需要勾选此选项,节点在执行时就会自动获取源端表结构,并与当前配置的表结构进行比对。如果检测到表结构变化,FDL会通过「任务控制」中的「结果通知」功能自动通知指定用户,用户可以及时进行任务调整。
与此同时,开发人员在数据同步过程中,若来源段出现表结构变化,FDL会提示开发人员进行「更新字段映射」和「更新目标表」。
2、更新字段映射
若任务的数据来源是主流数据库SQLServer、Oracle、PostgreSQL和MySQL,用户可以直观地查看到增删改字段的变化情况,进入更新字段映射界面,点击确认即可根据来源表字段变化更新字段映射。
3、更新目标表
当数据同步任务的数据去向选择「已存在表」时,若来源表字段相较之前有变化,点击更新目标表按钮就可以对目标表进行调整,支持选择已有目标表字段,也可以手动输入新字段,确认对应映射关系变化后,即可自动生成目标表DDL语句并执行。
了解更多数据仓库与数据集成关干货内容请关注>>>FineDataLink官网
免费试用、获取更多信息,点击了解更多>>>体验FDL功能
往期推荐:
定时任务DDL同步:提升数据任务效率与准确性-CSDN博客
一文详解DDL同步及其应用场景-CSDN博客
金蝶API取数+JSON解析,FDL助力高效数据处理-CSDN博客