用kettle做了一个sqlserver到mysql的每日数据增量,要检查是否增量成功数据同步。
想用一个脚本判断,或者其他可以判断的方法。
下面是我手动判断的sql
-- 如果有fly_date字段则
SELECT COUNT(fly_date),fly_date FROM
表名
GROUP BY fly_date ORDER BY fly_date DESC
-- 没有fly_date字段的话使用version_name
select count(version_name),version_name from
表名
group by version_name order by version_name DESC
先把sqlserver的全量数据同步到mysql中一个临时表,然后判断临时表和你正式表中的数据。取增量插入mysql的正式表中。
确保数据一致方法:
方法1:表有自增id或时间字段,取目标表的最大id或者最新的时间,获取最新数据插入目标表
方法2:目标表没有自增id或时间字段,两张表全量比较下,把新数据插入到目标表,目标表已有数据忽略
考虑检查方法:
方法3:如果只是检查数据,建议写个通用的数据一致性检查的python脚本,这样可以通过表名、要比较的字段做数据量、数据内容对比
更多kettle内容可以参考下面:
https://blog.csdn.net/zhengzaifeidelushang/article/details/112059787