软件开发原理

ETL工具(增量抽取)和CDC工具(change data capture) 的区别?

ETL工具主要负责数据抽取包括增量抽取。CDC工具(change data capture) 数据同步,请问他俩有什么本质区别。为何 不能通过etl代替cdc。

参与9

2同行回答

ytskfzjytskfzj售前技术支持北京圣博润高新技术股份有限公司
通常情况下是不能的,原因是ETL抽数据的时候,本质是去做查询(个人经验),CDC或者OGG或者去其他一些类似的工具,在同步过程中 是基于日志去做的,不能的原因是1、很多ETL工具没有设计同步这个功能,2有部分ETL设计了同步EL这个功能,要用ETL去做同步的话,数据库的负载会非常的高(通常ETL做...显示全部

通常情况下是不能的,原因是ETL抽数据的时候,本质是去做查询(个人经验),CDC或者OGG或者去其他一些类似的工具,在同步过程中 是基于日志去做的,不能的原因是1、很多ETL工具没有设计同步这个功能,2有部分ETL设计了同步EL这个功能,要用ETL去做同步的话,数据库的负载会非常的高(通常ETL做E的时候,是靠SQL脚本、存储过程或者日志等功能实现的,基于你编写的脚本,如果基于这些完成的话,同步时间越短,查询次数越多,数据库负载就会越大,同步间隔时间太长的话没有太大意义) 3、通常ETL工具的强项在于任务编写而不是任务调度,对于同步这样需要大量任务调度的情况下并不是很适合,4、就算刚刚3点ETL工具都可以完美解决、实际上对上CDC、OGG一类的产品也没有太大优势, 就像CDC、OGG也可以完成抽取、清洗和载入的ETL过程,但是最终项目落地的时候选择是有区别的, 因为ETL和异构同步在设计理念上是有不一致的。

个人意见,可能存在偏差

收起
系统集成 · 2017-08-23
浏览5753
  • 感谢细致的回答,您说区别有负载,任务调度,可能不是本质区别。还是没理解主要区别,CDC、OGG也可以完成抽取、清洗和载入的ETL过程,期两种产品本身就有很多交叉功能。说明具有很多相似性。
    2017-08-25
wang_jijiewang_jijie产品经理IBM
ETL是通过时间戳定时的获取增量。而CDC 是实时的,秒级同步。时效性不同。如果ETL没有时间戳,或时间戳不准,你怎么办?CDC 基于日志的数据增量获取方法就是最好的解决方案。显示全部

ETL是通过时间戳定时的获取增量。而CDC 是实时的,秒级同步。时效性不同。

如果ETL没有时间戳,或时间戳不准,你怎么办?CDC 基于日志的数据增量获取方法就是最好的解决方案。

收起
互联网服务 · 2017-08-24
浏览5845

提问者

zhenda
数据库管理员昆仑银行
擅长领域: 数据库服务器云计算

问题来自

问题状态

  • 发布时间:2017-08-23
  • 关注会员:3 人
  • 问题浏览:8682
  • 最近回答:2017-08-24
  • X社区推广