一、目的
由于一些雷达死了但是又需要有数据进行展示,于是就把这些雷达的历史数据,修改日期为当前日期后,增量同步到ClickHouse中,
二、难点
1、获取当前日期,并且修改历史数据的create_time字段的日期部分
2、如果采用增量表输出的话,还需要获取ClickHouse表中的最新时间,这样有2个变量参数
三、插入更新方法
(一)获取系统信息
(二)字段选择1
(三)字段选择2
(四)mysql表输入
(五)字段选择3
(六)clickhouse插入 / 更新
(七)执行情况
如果表中数据没有,那么能执行成功,插入
如果表中有该数据,那么不能执行成功,报错,这样直接防止重复插入
四、增量表输出方法
(一)链条1为插入更新的前面一部分
(二)newtime
select(
select
formatDateTime(create_time,'%Y/%m/%d')
from hurys_dc.b_statistics
order by formatDateTime(create_time,'%Y/%m/%d') desc limit 1) as new_day
由于每天执行1次任务,因此需要获取表中时间戳字段的最新日期new_day,与系统日期对比
(三)替换NULL值
(四)字段选择4
(五)记录关联 (笛卡尔输出)
当系统日期day字段>表中最新日期new_day字段后,MySQL中的数据则通过
(六)表输出
(七)执行情况
如果表中数据没有,那么能执行成功,数据导入
如果表中有该数据,也能执行成功,只是没有数据导入,这样避免重复数据
(八)重复验证
多次执行任务后,查验表中数据是否重复导入文章来源:https://www.toymoban.com/news/detail-850127.html
这样两种方法都能搞定,只不过增量表输出效率比较好一点文章来源地址https://www.toymoban.com/news/detail-850127.html
到了这里,关于二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!