同步工具全量转增量自动同步功能
同步工具全量转增量自动同步功能目前仅支持将Oracle 数据库的数据同
GBase RTSync 同步工具手册
- 32 -
南大通用数据技术股份有限公司
步到GBase 8a 集群数据库。
使用全量转增量自动同步功能需要依赖GBase 8a的orato8a 工具将Oracle
中的源数据导出到磁盘上,
然后通过GBase 8a 集群数据库的数据加载功能将全
量数据导入到GBase 8a 集群数据库中。
由于在全量同步过程中,源端业务不停,所以同时会有增量数据产生并进
入到目标库中。因此,在全量同步完成并且将全量过程中的增量同步到目标库
中后,需要清洗掉重复的数据。
注意:数据去重操作严格依赖于源表的主键,如果源表的主键列为逻辑主
键且其中有null 值,
则会导致去重操作的执行时间加长,
且执行时间无法预估。
全量转增量自动同步功能的主要处理流程为:
1.
检查kafka consumer 服务是否存在。
如果不存在则根据配置文件创建
kafka consumer;如果存在则停止kafka consumer 服务;
2.
开始进行全量同步;
3.
全量同步完成;
4.
启动kafka consumer 服务,消费Kafka 中的数据;
5.
判断全量过程中产生的增量数据是否已经全部发送到Kafka,如果是
则暂停同步工具源端;
6.
判断8a consumer 是否消费完产生的增量数据,通过查看8a 集群的
information_schema.KAFKA_CONSUMER_STATUS 信息;
7.
进行数据去重;
8.
数据去重完成后通知同步工具进行后续增量同步;
执行全量转增量的主要操作步骤如下:
1.
手动清空目标库中的数据(非必须步骤,建议操作,这样可以加快最
终去重速度);
GBase RTSync 同步工具手册
南大通用数据技术股份有限公司
- 33 -
2.
修改kafka 配置文件,将topic.name 换成新的topic 名;
3.
启动同步工具进行增量同步;
4.
等待增量同步发送数据成功后,启动全量转增量功能;
5.
全量转增量执行完成后,验证数据正确后,手动删除临时表。