0


Kettle组件介绍

1.Kettle转换

转换里面有个DB连接,新建连接之后共享这个连接。

1.1输入控件

csv文件输入
文本文件输入
Excel输入
XML输入
JSON输入
表输入

勾选裁剪表:相当于先清空表truncate table csv ; 再插入 insert into csv values(…)

1.2输出控件

Excel输出
文本文件输出
SQL文件输出

在这里插入图片描述

表输出
更新&插入/更新

更新

需要更新emp1表,必须保证两张表的数据行数相同,根据id作比较进行更新
在这里插入图片描述
插入/更新

需要更新emp1表,两张表的数据行数可以不相同,更新字段添加id,把Y改成N
在这里插入图片描述

删除

需求:删除emp1表格中emp表里面已经有的数据(按照emp表对emp1表数据进行去重)
emp表里面已经有的数据,emp1表要删除; 一般根据主键id去重

1.3转换控件

Concat filelds

在这里插入图片描述
name就是拼接后新增得字段
下面获取得两个字段就是需要拼接的字段

值映射

在这里插入图片描述

添加常量&增加序列

在这里插入图片描述

字段选择

字段选择是从数据流中选择字段,改变名称,修改数据类型
选择和修改:可以随意修改字段名称,长度
移除:只保留想要删除的字段
元数据:随意修改数据类型等

计算器

在这里插入图片描述

字符串剪切&替换&操作

在这里插入图片描述

排序记录

用于表连接时只保留重复的记录字段,意思是根据这个字段进行排序或连接,类似于两表之间得关联字段id
类似于根据id主键进行升序降序

去除重复记录

去除重复记录要结合排序记录一起使用

表输入 → 排序记录 → 去除重复记录
唯一行(哈希值)

相当于去除重复记录 一般获取id主键

拆分字段

在这里插入图片描述
【注意】根据空格拆分,拆分字段之后源字段name就失效了,取而代之得是firstname,lastname

拆分为多行

在这里插入图片描述

行扁平化

把同一组数据得多行数据合并为一行,理解为:拆分多行得逆向操作
【注意】使用之前需要对数据进行排序
​ 每个分组的数据条数要保证一致,否则会有错乱
在这里插入图片描述
【注意】拆分出来3列了,如果想要把3列合并为一列,需要使用Conncat filelds拼接控件

列转行

在这里插入图片描述
【注意】列转行之前数据流必须按照分组字段进行排序,否则数据会错乱
1.关键字段:从数据内容变成列名的字段
2.分组字段:列转行,转变以后的分组字段
3.目标字段:增加的列的列名字段
4.数据字段:目标字段的数据字段
5.关键值字段:数据字段查询时的关键字段,也可以理解为key; 相当于源数据字段的值
在这里插入图片描述

行转列

在这里插入图片描述
1.Key字段:行转列,生成的列名字段
2.字段名称:原本数据流中的字段名
3.Key值:Key字段的值,跟前面的字段名称一样
4.Value字段:对应的Key值的数据列的列名
在这里插入图片描述

1.4应用控件

替换null值

在这里插入图片描述
在这里插入图片描述

写日志

调试的时候使用,可以将数据流的每行数据打印到控制台,方便我们调试整个程序
1.选择日志级别
2.可以输入自定义输出的语句
3.选择要输出打印的字段
在这里插入图片描述

1.5流程控件

Switch/case

在这里插入图片描述

过滤记录

和Switch/case做对比的话,过滤记录相当于if-else,可以自定义输入一个判断条件,然后将数据流中的数据一路分为两路。
在这里插入图片描述

空操作

空操作,什么也不做,此控件一般作为数据流的终点
在这里插入图片描述

中止

中止是数据流的终点,如果有数据流到此处,整个转换程序将中止,并且在控制台输出报错信息。此控件一般用来校验数据或者调试程序。
在这里插入图片描述
在这里插入图片描述

1.6查询控件

数据库查询

一般用于左连接,表输入是左表
在这里插入图片描述

流查询

在这里插入图片描述
在这里插入图片描述

1.7连接控件

合并记录

用于将两个不同来源的数据合并,这两个来源数据分别为旧数据和新数据,将旧数据和新数据按照指定的关键字匹配,比较,合并。

【注意】旧数据和新数据需要先按照关键字段排序,并且旧数据和新数据要有相同的字段名称。
在这里插入图片描述
在这里插入图片描述

记录集连接

对两个步骤中的数据进行左连接,右连接,内连接,外连接;使用此控件之前需要对记录集的数据进行排序,排序的字段一定是两个表关联的字段,否则数据错乱,出现null值

1.8统计控件

分组

类似于group by,按照一个或几个分组之后其余字段可以按照聚合函数进行合并计算

【注意】在进行分组之前,数据最好先进行排序(按照分组的字段排序)
在这里插入图片描述
在这里插入图片描述

1.9映射控件

映射

在这里插入图片描述
在这里插入图片描述

1.10脚本控件

执行SQL脚本

在这里插入图片描述

2.Kettle作业

2.1作业项

在这里插入图片描述

2.2作业跳

在这里插入图片描述

3.Kettle转换案例

3.1通配符

需求:把D盘下的000001.csv、000002.csv等所有文件传入数据库的同一张表CSV里面
在这里插入图片描述
【注意】csv文件输入首先要找到绝对路径获取文件名,之后在连接节点,最后把csv文件输入中的绝对路径文件名改为filename

3.2合并

需求:把DALIAN01数据库中student、score两张表合并导入ODS数据库中
在这里插入图片描述
需求:把D盘下a、b、c这三个excel文件合并到数据库的一张表中
在这里插入图片描述

3.3分流

需求:把数据库中StudentScore表分别拆分为学生表Student、成绩表Score
在这里插入图片描述

3.4列转行

需求:把数据库中成绩表score进行列转行(原字段:sid、cid、score;转换成:sid、语文、数学、英语)
在这里插入图片描述

【注意】列转行组件的关键字段和关键字段值是对应的; 列转行组件分组字段代表行,目标字段代表新增的列,目标字段里面的数据就是成绩,每个成绩对应的关键字值就是关键字段的CID的值
在这里插入图片描述

3.5行转列

需求:把数据库中成绩表score01进行行转列(原字段:sid、语文、数学、英语;转换成:SID、成绩、科目)
在这里插入图片描述
【注意】行转列组件的Key字段和Key值是对应的; 合并新增的字段:key字段 科目,对应的数据是 Value字段
在这里插入图片描述

3.6数据同步

在这里插入图片描述
【注意】里面的数据同步必须要注意列数相同,根据关键字段eid进行匹配然后同步数据,旧数据源就是旧表 需要同步的表,新数据源就是新表 被依据的表
合并记录组件 旧数据源:emp表需要修改,emp表就是旧数据源 【要改谁 谁就是旧数据源】
在这里插入图片描述

需求:旧表数据emp1,新表数据emp2,需要将新表emp2的数据同步到旧表emp1中 那么emp1就是旧数据源
在这里插入图片描述

数据同步
在这里插入图片描述

3.7追加流

在这里插入图片描述
在这里插入图片描述
【注意】同一个excel选择相同的姓名字段:姓名、项目A;姓名、项目B,然后项目A、项目B改为相同的字段名,最后追加流就可以了

4.Kettle作业案例

作业可以定时 在企业中,kettle每周或者每隔一段时间需要执行一次,在这里就需要使用kettle的定时调度

双击start开始就可以设置定时任务
在这里插入图片描述

4.1发送邮件

163
在这里插入图片描述
勾选邮箱验证,并且填写发件人邮箱,填写密码

【注意】这里的 密码是163自带的授权码,需要在邮箱里面开启授权设置密码
在这里插入图片描述

4.2写日志

在这里插入图片描述

4.3windows定时计划

在这里插入图片描述
在这里插入图片描述

5.Kettle⭐

数据同步全量更新 全删全插

插入/更新增量更新 插入 更新 删除


本文转载自: https://blog.csdn.net/migina_2003/article/details/129671969
版权归原作者 Joan月 所有, 如有侵权,请联系我们删除。

“Kettle组件介绍”的评论:

还没有评论