Change Data Capture(变化数据捕获),通过拉取日志实现增量同步功能。
利用CDC,在对源表进行INSERT、UPDATE或 DELETE等操作的同时就可以提取数据,并且变化的数据被保存在数据库的变化表中。这样就可以捕获发生变化的数据,然后利用数据库视图以一种可控的方式提供给目标系统。
CDC的两个模式:
- 同步:同步CDC主要是采用触发器记录新增数据,基本能够做到实时增量抽取。多用于同构迁移的场景。
- 异步:异步CDC通过分析已经commit的日志记录来得到增量数据信息,有一定的时间延迟。多用于异构迁移的场景。(异构迁移的时候,一般会先把数据库全量数据导出后倒入一遍,然后再使用CDC,这样可以减少迁移的时间和数据量)