引言

在上一篇文章中,我们主要讲解的是:插入更新组件的各种详细设置,最后实战演示了,从excel文件中读取数据,然后通过插入更新组件,对mysql中的库表数据进行了插入更新操作。

在本篇文章中,我们接着介绍:kettle中的删除组件。

转换

转换(transaformation)是ETL解决方案中最主要的部分,它处理抽取、转换、加载各种对数据行的操作。

创建转换

我们要做的ETL操作,全是在转换中设计的,所以我们要先创建一个转换。

kettle庖丁解牛第26篇之删除_etl

kettle庖丁解牛第26篇之删除_转换_02

保存转换

kettle庖丁解牛第26篇之删除_删除组件_03

给你新建的转换,起个名字,并保存

kettle庖丁解牛第26篇之删除_删除组件_04

kettle庖丁解牛第26篇之删除_kettle_05

删除

简介

这个组件,查找当前数据库符合要求的记录,并删除。

kettle庖丁解牛第26篇之删除_kettle_06

kettle庖丁解牛第26篇之删除_转换_07

选项说明

kettle庖丁解牛第26篇之删除_kettle_08

选项列表

选项

描述。

数据库连接


用来写数据的数据库连接。

目标模式

简单来说:在oracle库中,理解成user。在mysql库中,理解成database。

目标表

要写数据的表名。

提交记录数量

提交之前要改变的行数。

查询值所需的关键字

可以指定字段值或者比较符。可以用以下比较符:=,

<>,<,<=,>,LIKE,BETWEEN,IS NULL,IS NOT NULL。

实战演示

我们要演示从excel文件中读取数据,然后通过更新组件,使用excel文件中的数据,和mysql库表中的数据进行匹配(通过id列),匹配成功就进行更新操作。如果匹配不成功,就把excel中的数据,插入到mysql的库表中。

a、创建excle文件

我在D盘下,创建一个xlsx文件,命名为bigdata。在sheet1中设计数据,第1行是文件表头,从第2行开始是数据,此文件有3列数据.。

kettle庖丁解牛第26篇之删除_删除组件_09

b、mysql库中的表数据

kettle庖丁解牛第26篇之删除_etl_10

c、创建转换

kettle庖丁解牛第26篇之删除_删除组件_11

d、excel输入设置

增加Excel文件做为数据源

kettle庖丁解牛第26篇之删除_转换_12

kettle庖丁解牛第26篇之删除_kettle_13

kettle庖丁解牛第26篇之删除_作业_14

kettle庖丁解牛第26篇之删除_etl_15

指定工作表

kettle庖丁解牛第26篇之删除_kettle_16

kettle庖丁解牛第26篇之删除_kettle_17

指定字段

kettle庖丁解牛第26篇之删除_etl_18

kettle庖丁解牛第26篇之删除_作业_19

e、excle数据预览记录

kettle庖丁解牛第26篇之删除_etl_20

kettle庖丁解牛第26篇之删除_kettle_21

kettle庖丁解牛第26篇之删除_kettle_22

f、删除组件

kettle庖丁解牛第26篇之删除_转换_23

使用鼠标左键点击 Excel输入组件,按住shift键,从Excel输入组件拖拽到删除组件,拖拽后的效果如下图:

kettle庖丁解牛第26篇之删除_转换_24

g、删除设置

kettle庖丁解牛第26篇之删除_kettle_25

h、运行转换

kettle庖丁解牛第26篇之删除_作业_26

kettle庖丁解牛第26篇之删除_删除组件_27

kettle庖丁解牛第26篇之删除_etl_28

kettle庖丁解牛第26篇之删除_转换_29

i、验证结果表

kettle庖丁解牛第26篇之删除_作业_30

可以看到,通过id进行关联成功后,mysql库中的test表中数据,已经全部被删除了,所以查询显示的是Empty set。

结束语

本篇文章主要讲解了:删除组件的各种详细设置,最后实战演示了,从excel文件中读取数据,然后通过删除组件,把excel中的数据和mysql库表中的数据通过指定进行关联,能关联上的,就进行删除操作。

兄弟们,其实想和作是有一段距离的,你想着想着就没有了,可是你做着做着,它就落地了。

啥都别说了,兄弟们后面跟着我干就完了,我们依然掰开揉碎的方式去说。后续的内容更精彩,敬请期待,感谢兄弟们的关注!!