数据同步之采用时间戳的方法进行增量数据同步(三)

文主要讨论,采用时间戳的方法进行增量数据同步时,造成源表和目标表数据不一致的情况的原因进行讨论。在浏览此文时,请大家先浏览数据同步之采用时间戳的方法进行增量数据同步(一)数据同步之采用时间戳的方法进行增量数据同步(二)这两篇文章。在探讨这个问题时,本文还是继续引用前面的文章的例子。
一、数据同步情况说明
将源数据库S中的A表(将此表称为源表),通过ETL工具同步至目标数据库T的A表(将此表称为目标表)。假设源表A的表结构与目标表A的表结构完全一致。表结构如下图所示:
在这里插入图片描述
采用时间戳的方式进行增量数据同步,需要目标数据库T中建立一张数据同步日志表LOG,来记录每次数据同步的情况。
表结构如下图所示:
在这里插入图片描述
其中,KSSJ、JSSJ字段为保存的值为源表A中每次数据同步时,根据ZHXGSJ字段进行数据过滤的字段值。
二、数据同步存在的问题
1、数据遗漏,即数据量不一致。即源表和目标表的数据量不一致。
2、数据记录内容不一致。即源表和目标表的数据量一致。但是存在部分数据,它们分别对应的源表和目标表的数据记录,内容不一致。
三、数据同步问题的原因分析。
1、源系统(即源表对应系统)开发人员的原因。
这种原因经常使得数据同步时,造成数据记录内容不一致。它是源系统的开发人员在修改源表的某记录的时候,并未同步更新对应记录的时间戳字段造成的。
在本例中,源系统的开发人员,在对源表A中插入一条记录时,使用的SQL为:

insert into A(ID,MC,ZHXGSJ) values ('111111','测试',to_date('2019-01-01 12:05:00','yyyy-mm-dd hh24:mi:ss'
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值