Kettle-Docker部署+Sqlserver数据同步Mysql+Start定时任务

news2024/10/5 14:02:10

一. 背景介绍

1. ETL是什么

ETL(Extract-Transform-Load),即数据抽取、转换、装载的过程。它是一种思想,主要是说,从不同的数据源获取数据,并通过对数据进行处理(格式,协议等转换),最后将处理后的数据提供给其他系统使用。当然这个过程,就是软件研发,尤其是后端研发最核心的工作。

2. Kettle概念

kettle,翻译为中文叫做水壶,显而易见,水壶不管壶里面装的是什么液体,最终都会从壶嘴平滑的流出来。就好比,不管水壶装的是什么类型的数据,最后都会通过壶嘴以特定的格式流出来。其实就是对ETL思想的一种实现,它是通过java语言编写,秉承ETL思想的工具。既然是此采用java实现的,那就肯定具有跨平台的特性。

3. kettle组成

kettle既然是一种工具,要处理不同数据源的异构数据,那就要求它能够进行图形化操作,在UI界面上对数据源进行数据治理,最终所有的图形化处理都要能够保存为kettle可识别的文件。

kettle主要生成两种类型的文件,一种转换文件,一种是任务文件,即:transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。

这两种文件之间是可以相互调用的,已达到最终的数据清洗目的

二. Kettle  docker界面化部署

github地址:HiromuHota/pentaho-kettle: webSpoon is a web-based graphical designer for Pentaho Data Integration with the same look & feel as Spoon (github.com)

dockerhub地址 :

hiromuhota/webspoon - Docker 镜像 |Docker 中心

1. 安装命令

docker pull hiromuhota/webspoon

2. 启动服务命令

docker run -d -p 8080:8080 hiromuhota/webspoon

3. 界面汉化 

(1)启动之后界面为英文

 (2)进入 kettle容器编辑

docker exec -it -u 0 容器id /bin/bash

  cd  /usr/local/tomcat/bin 

  编辑 setenv.sh

CLASSPATH=/usr/local/tomcat/lib/webspoon-security-9.0.0.0-423-22.jar
# 加入以下两行
CATALINA_OPTS="-Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true"
JAVA_OPTS="-Duser.language=zh -Duser.region=CN -Dfile.encoding=UTF-8"

  (3)容器重启  

docker restart 容器id

  重启成功再次访问地址 汉化成功

 三. SQLserver 与 Mysql 驱动下载与连接

1. 下载

链接: https://pan.baidu.com/s/1Cr9pJmsSJVsq4im9hMeuPg?pwd=ygsj

提取码: ygsj 复制这段内容后打开百度网盘手机App

2. 将驱动放置到下方容器位置,重启容器

/usr/local/tomcat/webapps/spoon/WEB-INF/lib

3. 数据库连接

四. 数据全量同步以及设置定时任务

1. 将Sqlserver数据同步到mysql(两表数据保持完全一致)

2. 拖拽两个表输入,配置如图,因为要合并记录(实际是对两张表数据进行比较),所以获取SQL获取数据/字段等要一致。 

表输入:

 字段选择:(元数据也全选)

合并记录:

数据同步:

标志字段:设置标志字段的名称,标志字段用于保存比较的结果,比较结果有下列几种。
1. “identical” – 旧数据和新数据一样
2. “changed” – 数据发生了变化;
3. “new” – 新数据中有而旧数据中没有的记录
4. “deleted” –旧数据中有而新数据中没有的记录

将数据文件保存到自定义位置

点击作业切换到任务界面

 

 

点击运行 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1412480.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网安培训第一期——sql注入+文件

文章目录 sql inject报错注入time盲注联合查询万能密码拦截和过滤ascii注入流程base64查询的列名为mysql保留关键字key 文件上传ffuf脚本要做的三件事网络端口进程用户权限文件文件包含文件下载XSS跨站请求攻击csrf跨站请求伪造 sql inject 判断输入字段是字符串还是数字 方法…

ShardingSphere之ShardingJDBC客户端分库分表上

目录 什么是ShardingSphere? 客户端分库分表与服务端分库分表 ShardingJDBC客户端分库分表 ShardingProxy服务端分库分表 ShardingSphere实现分库分表的核心概念 ShardingJDBC实战 什么是ShardingSphere? ShardingSphere是一款起源于当当网内部的应…

拼图小游戏的界面和菜单的搭建

package Puzzlegame.com.wxj.ui;import javax.swing.*;public class GameJframe extends JFrame { //游戏主界面 public GameJframe(){//初始化界面initJFrame();//初始化菜单initJmenuBar();//让界面显示出来this.setVisible(true); }private void initJmenuBar() {//创建整个…

强化学习基础(一)

1 初始强化学习 强化学习是机器通过与环境交互来实现目标的一种计算方法。 机器和环境的一轮交互是指,机器在环境的一个状态下做一个动作决策,把这个动作作用到环境当中,这个环境发生相应的改变并且将相应的奖励反馈和下一轮状态传回机器 …

二叉树的构建,遍历等

1.叉树链式结构的实现 1.1前置说明 在学习二叉树的基本操作前,需先要创建一棵二叉树,然后才能学习其相关的基本操作。 为了方便调试,我直接在主函数中来建立二叉树了,下面是一个简单的二叉树 二叉树节点结构体的定义&#xff…

NC65中间件能启动,前端客户端启动失败,加载异常,卡住(org.owasp.esapi)

控制台输出错误 ESAPI.properties could not be loaded by any means. Fail.SecurityConfiguration class(org.owasp.esapi.reference.DefaultSecurityConfiguration) CTOR threw exception.效果图: 解决方案 添加如下参数: -Dorg.owasp.esapi.resou…

阿里云服务器ESC部署前后端分离项目完整流程

阿里云服务器ESC部署服务完整流程 准备安装软件1.安装jdk2.安装tomcat3.安装mysql 后端应用功能编写及部署编写一个简单的用户增删改查功能发布流程 前端功能应用及部署搭建前端框架准备:已安装npm 页面user.vueuserForm.vue 跨域问题安装nginx配置nginx 源码 准备 …

Maya的ai功能有哪些?Maya Assist是什么?

Autodesk Maya是一款流行的 3D 建模软件,艺术家和设计师使用它来创建现实的世界和表面。该软件以其与各种工具开发人员的合作而闻名,它允许多个工具的无缝集成以改进功能。Autodesk 的 Maya 刚刚发布了 Maya Assist,在 3D 建模和动画领域树立…

架构篇12:架构设计流程-评估和选择备选方案

文章目录 架构设计第 3 步:评估和选择备选方案评估和选择备选方案实战小结上一篇我们聊了设计备选方案,在完成备选方案设计后,如何挑选出最终的方案也是一个很大的挑战,主要原因有: 每个方案都是可行的,如果方案不可行就根本不应该作为备选方案。没有哪个方案是完美的。例…

MES系统计划排产功能,助你提升生产效率

MES系统的排产功能是基于企业的生产需求与资源情况进行制定的。首先,需要明确生产计划的目标和要求,包括计划产量、交货期限、生产能力等。然后,根据企业的生产资源情况,包括人员、设备、原材料等,制定生成计划。在MES…

Java链表(1)

🐵本篇文章将对单链表进行讲解,模拟实现单链表中常见的方法 一、什么是链表 链表是一种逻辑结构上连续而物理结构上不一定连续的线性表,链表由一个一个节点组成: 每一个节点中都由数据域(val)和指针域&…

食品加工厂可视化视频AI智能监管方案,助力工厂数字化运营

一、背景与需求分析 随着科技的不断进步和人们对食品安全和质量的日益关注,食品智慧工厂的建设成为了食品行业的一个重要趋势。智能化的食品工厂可以利用先进的技术和自动化系统,提高生产效率、降低监管成本,并确保产品的质量和安全。 行业…

使用GtkSharp下载zip包过慢问题解决方案

背景 安装GtkSharp这个包准备使用C#进行跨平台窗体应用程序开发,运行时发现其需要从github上下载【https://github.com/GtkSharp/Dependencies/raw/master/gtk-3.24.24.zip】这个依赖包,不知道是被墙了还是咋的,下载超时导致运行失败。 解决…

泛型..

1.泛型 所谓泛型 在类定义处是一种类型参数(我们平常所见到的参数指的就是方法中的参数 他接收有外界传递来的值 然后在方法中进行使用) 在类内部的话 则充当一种占位符 并且还提高了代码的复用率 何以见得提高了代码的复用率 其实就是通过对比使用了泛型技术和没有使用泛型技…

VS2019下各种报错合集(持续更新)

VS2019下的各种报错处理(长期更新),欢迎大家在评论区补充错误代码/描述 解决方案!!! 1、printf 代码运行到printf函数打印不出来内容,打断点之后,f10走过去,程序直接运行起来了,而…

Linux下串口編程遇到的接收数据错误及原因(

近日在调试串口的时候发现,另一设备向我ARM板的串口发送0x0d,我接收之后变成了0x0a,这是问题一;另外当对方向我发送一串数据,如果其中有0x11,那么我总是漏收此数,这是问题二。 由于问题莫名其妙…

深度视觉目标跟踪进展综述-论文笔记

中科大学报上的一篇综述,总结得很详细,整理了相关笔记。 1 引言 目标跟踪旨在基于初始帧中指定的感兴趣目标( 一般用矩形框表示) ,在后续帧中对该目标进行持续的定位。 基于深度学习的跟踪算法,采用的框架包括相关滤波器、分类…

【SVA断言_2023.01.24】

在RTL设计中,仿真时查看异常情况,异常出现时,断言会报警,断言占整个设计的比例应不少于30% assertion作用: 检查特定条件或事件序列的出现情况提供功能覆盖 断言失败的严重程度:$fatal(中止仿…

Oracle RAC 集群的安装(保姆级教程)

文章目录 一、安装前的规划1、系统规划2、网络规划3、存储规划 二、主机配置1、Linux主机安装(rac01&rac02)2、配置yum源并安装依赖包(rac01&rac02)3、网络配置(rac01&rac02)4、存储配置&#…

FitSM与ITIL及ITSM的对比

FitSM 是一种轻量级 IT 服务管理(ITSM)标准,其所有材料都是免费提供的,旨在促进 IT 服务提供中的服务管理,包括联合场景。但是,FitSM 适合您的组织吗?了解 FitSM 的适用性涉及两个方面。首先需要…