二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中

这篇具有很好参考价值的文章主要介绍了二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、目的

由于一些雷达死了但是又需要有数据进行展示,于是就把这些雷达的历史数据,修改日期为当前日期后,增量同步到ClickHouse中,

二、难点

1、获取当前日期,并且修改历史数据的create_time字段的日期部分

2、如果采用增量表输出的话,还需要获取ClickHouse表中的最新时间,这样有2个变量参数

三、插入更新方法

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(一)获取系统信息

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(二)字段选择1

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(三)字段选择2

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(四)mysql表输入

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(五)字段选择3

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(六)clickhouse插入 / 更新

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(七)执行情况

如果表中数据没有,那么能执行成功,插入

如果表中有该数据,那么不能执行成功,报错,这样直接防止重复插入

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

四、增量表输出方法

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(一)链条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

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

由于每天执行1次任务,因此需要获取表中时间戳字段的最新日期new_day,与系统日期对比

(三)替换NULL值

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(四)字段选择4

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(五)记录关联 (笛卡尔输出)

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

当系统日期day字段>表中最新日期new_day字段后,MySQL中的数据则通过

(六)表输出

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

(七)执行情况

二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中,Kettle,ClickHouse,clickhouse,mysql,etl

如果表中数据没有,那么能执行成功,数据导入

如果表中有该数据,也能执行成功,只是没有数据导入,这样避免重复数据

(八)重复验证

多次执行任务后,查验表中数据是否重复导入

这样两种方法都能搞定,只不过增量表输出效率比较好一点文章来源地址https://www.toymoban.com/news/detail-850127.html

到了这里,关于二百三十二、Kettle——修改MySQL中历史数据为当前系统日期并增量同步到ClickHouse中的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 第一百三十回 Flutter与原生平台通信

    我们在上一章回中介绍了Visibility组件相关的内容,本章回中将介绍 Flutter与原生平台通信 相关的内容.闲话休提,让我们一起Talk Flutter吧。 在移动开发领域以Android和IOS SDK开发出的应用程序叫原生开发,开发同一个程序需要两个平台相关的SDK,有没有使用一个SDK来开发运行于

    2024年02月10日
    浏览(42)
  • C++之C++11 thread线程示例(一百三十八)

    简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏: Audio工程师进阶系列 【 原创干货持续更新中…… 】🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注:An

    2023年04月15日
    浏览(45)
  • 架构设计内容分享(一百三十六):Spring AI 项目简介

    目录 1、概览 2、Spring AI 的主要概念 2.1、高级的 Prompt 和 AiResponse 3、Spring AI 入门 4、Spring AI 实践 4.1、在 Spring Boot 中注入 AiClient 4.2、使用 PromptTemplate 配置查询 5、Error 处理 6、总结 Spring 通过 Spring AI 项目正式启用了 AI(人工智能)生成提示功能。本文将带你了解如何在 Spri

    2024年02月22日
    浏览(46)
  • 一百三十七、Hive——HQL运行报错(持续更新中)

    样例:from_unixtime(unix_timestamp(change_time, \\\'yyyy-MM-dd HH:mm:ss\\\') + green) AS new_timestamp  成功!!! 在DWS层中,对多层SQL使用with语句嵌套查询,然后insert插入数据。如果直接把insert放在with语句上面,那么就会如下报错 org.apache.hadoop.hive.ql.parse.ParseException:line 2:0 cannot recognize input near \\\'w

    2024年02月15日
    浏览(40)
  • 二百二十三、Kettle——从Hive增量导入到ClickHouse(根据day字段判断)

    需要用Kettle从Hive的DWS层库表数据增量同步到ClickHouse的ADS层库表中,不过这次的增量判断字段是day字段,不像之前的create_time字段 因为day字段需要转换类型,而 create_time字段字段不需要转换类型,因此两者的Kettle任务配置有所不同,也踩了一些坑,因此再写一篇博客整理一下

    2024年02月20日
    浏览(39)
  • PCL点云处理之pcd文件的读写(详细注释版)(一百三十三)

    `处理点云数据的第一步总是把点云从不同格式的文件读取到自己的程序里, 存储点云信息的文件包括但不限于pcd,las,ply,txt等等,由于我们用的是PCL库进行点云处理,所以最适合的还是pcd格式的点云文件,所以有必要学习如何从pcd文件中读取点云的信息:如坐标等,以及如何

    2023年04月18日
    浏览(64)
  • C/C++基础讲解(一百三十一)之经典篇(信息合并/平均分数存储)

    很多时候,特别是刚步入大学的学子们,对于刚刚开展的计算机课程基本上是一团迷雾,想要弄明白其中的奥秘,真的要花费一些功夫,我和大家一样都是这么啃过来的,从不知到知知,懵懂到入门,每一步都走的很艰辛,课程上,大学老师基本上讲解上机实操得时间特别有

    2024年02月07日
    浏览(42)
  • 一起Talk Android吧(第五百三十八回:RxJava中的线程切换)

    各位看官们大家好,上一回中咱们说的例子是\\\"RxJava中的多线程操作\\\",本章回中介绍的例子是\\\"R xJava中的线程切换 \\\"。闲话休提,言归正转,让我们一起Talk Android吧! 我们在上一章回中介绍了如何创建多线程,本章回将介绍如何进行线程切换。线程切换是指在主线程和子线程之

    2023年04月08日
    浏览(82)
  • Linux图形管理框架gdm3、lightdm、sddm、kdm介绍(一百三十七)

    1.Gnome系列图形管理器:gdm、gdm3 Ubuntu默认界面管理器:gdm3 2.KDE系列图形管理器:KDM,SDDM LUbuntu默认界面管理器:sddm 3.Canonical公司系列图形管理器:Lightdm XUbuntu默认界面管理器:lightdm 查看当前使用的显示管理器 

    2024年02月12日
    浏览(35)
  • 二百二十四、Kettle——曲线实现从Hive插入更新到ClickHouse(分区字段是month或year)

    对于以month、year为分区字段的数据,不是像day字段分区那样每天增量插入更新即可,而是要以部分字段查询、部分字段更新,但是ClickHouse数据库并不适合更新操作,直接使用Kettle的插入更新控件会导致问题,必须曲线实现这个功能 对于这类表,每天执行任务时scene_name、dev

    2024年02月21日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包