Sap Hana 数据迁移同步优化(二)
· 阅读需 5 分钟
简述
CloudCanal 近期对 Hana 源端链路做了新一轮优化,这篇文章简要做下分享。
本轮优化主要包含:
- 表级别 CDC 表
- 表级别任务位点
- 表级别触发器
单 CDC 表的问题
CloudCanal 在实现 Hana 源端增量同步时,最初采用的是单 CDC 表的模式。
即所有订阅表的增量数据(插入、更新、删除)通过触发器统一写入同一张 CDC 表。这样设计的初衷是简化架构和实现,但是同时也带来了一些问题。
-
触发器执行效率低:采用单个 CDC 表时,我们将订阅表的字段值拼接成 JSON 字符串;虽然这种方式统一,但增加了触发器的复杂性。当字段数量超过 300 个时,会导致触发器效率显著下降,影响同步性能。
-
增量数据积压:所有订阅表的变更数据集中写入单个 CDC 表,当 A 表增量数据较多而 B 表较少时,混合写入会导致无法及时处理 B 表数据,造成 B 表数据积压,影响同步及时性。