时间:2021-07-01 10:21:17 帮助过:3人阅读
在此之前,已经所有的知识模块导入,而CDC功能的知识模块如下图所示:
打开对应的模型,设置Journalizing Mode为Simple,如下图:
在模型中,右击要添加到CDC的表,如下图所示进行添加或者删除操作:
在模型的Journalizing Tables中可以查看到,如下图:
在模型中,右击已添加到CDC的表,如下图所示启动或者关闭journal:
启动完日志后,图标的左上角会出现一个绿色的小时钟图案,说明已成功设置。
此步骤根据实际情况而定。
映射图如下所示:
注意,在映射图的logical结果中,点击目标表,设置Target的Integration Type为Control Append,如下图所示:
如果在初始化数据之前,想清空目标表,可以设置truncate_target_table和delete_all参数的值为true。
在启动映射之前,先校检下映射。执行结果如下图:
到此,初始化数据已导入目标表。
设置源表只同步有变化的数据。选择源数据存储,选中“Journalized Data Only”,如下图:
这里需要设置Loading Knowledge Module的模式为“LKM SQL To Oracle”。如下图:
设置Integration Knownledge Module的模式为“IKM Oracle Incremental Update”。如下图:
最后,保存所有设置。
然后,在模式中,选择源数据存储查看新增的数据,如下图:
数据同步完之后,源表的Journalized Data就会被清除。ODI 同步完一张表的变化数据后,相应的订户的日记数据将被清空。这种方式非常简单,但是对于多张存在主外键引用关系的表的数据同步将会有可能造成数据不一致的情况。对于这种复杂的情况需要一致性 JKM,此模块在后面介绍。
Oracle ODI 12c之Setting Up Simple CDC
标签:Oracle ODI