关注【郑大钱呀
】【公】【众】【号】,我们一起交流,一起学习。
1.1 删除组件
该组件对应的就是delete
操作,比如老板给我们一个文本文件,里面是一些人ID,文件内容如下:
id
1
2
要求把这些人的数据,从数据库中删除,此时我们就可以使用删除
组件,操作如下:
我们先拖拽两个组件:输入-文本文件输入
组件和输出-删除
组件,并建立连接,如下图:
文本文件输入配置,我们之前说过,就不说了,我们主要看下删除组件的配置:
配置完成后,点击允许即可,此时我们再去数据库里查询一下数据,就会发现id为1和2的数据已经被删除了,如下图:
1.2 排序组件
在kettle中也是可以排序的,我们可以将排序后的数据输出到文件中,比如我们将user表中的数据按照年级进行排序,然后把数据输出到Excel文件中,具体操作如下:
我们先拖拽三个组件:输入中的表输入
组件、转换中的排序记录
组件、输出中的EXCEL输出
组件,并建立连接,如下图:
由于表输入
组件和EXCEL输出
组件我们之前说过了,就不重复说了,主要看下排序记录组件,双击该组件进入配置界面,如下图:
然后点击确定保存,然后运行即可,最后我们看一下生成的EXCEL数据,如下图:
和我们的预期完全的一致。
switch…case… 组件
该组件是一个多分支组件,比如我们有一张信息表,里面有很多数据,此时我们想把男的输出到一张EXCEL文件,女的输出到另一张文件,这个时候就需要用到该组件,具体操作如下:我们需要拖拽如下组件(switch/case
组件,在流程
中),如下图:
我们这里重点说一下Switch/case 组件的配置,双击该组件,进行配置,如下:
配置完成后,点击允许,下面我们看下结果,如下:
SQL 组件
我们上面讲了不少的组件,但是有时候还是觉得SQL来的方便,Kettle 也是支持SQL的,下面我们看一个示例,比如我们有一张user表
,我们希望将该表的数据,全部清空,此时我们如果使用SQL组件,可以这么做,操作如下:首先我们在脚本
中拖拽一个执行SQL脚本
组件,如下图:
然后我们双击该组件,进行配置,如下图:
配置完成后,点击执行即可,此时我们再查询一下数据库,已经没有删除数据了
Kettle参数的使用
所谓参数,就是变量的使用,比如我们上面使用的执行SQL脚本
组件,如果我们想要删除user表
中名叫张飞的人,我们可以这样在组件中这样写:
但是此时有想删除刘备怎么办,然后又想把删掉关羽的数据,如果我们每次去改组件,这样会比较麻烦,此时我们就可以使用,如果用过JMeter的人就会发现,Kettle的参数变量和其特别相似,都是如下格式${变量名}
,下面我们先来改一下,如下图:
我们这里在SQL中引用了一个name
的变量,但是我们执行的时候,是要传入具体的值得,那么传入的值在哪里设置呢,双击空白处,会出现如下界面,进入参数
Tab页面:
然后点击允许,此时执行的时候,他就会把name
变量换成张飞
进行执行,执行完成后,我们再去看表中张飞的数据已经没有了,如下图:
JOB作业
我们以前写Kettle的时候,都是执行一次就结束了,但是如果我们想每5分钟就执行一次,或者定时执行,怎么办呢,此时就需要Kettle的JOB作业来实现了,此时我们就不是新建一个转换了,而是需要新建一个作业
,如下图:
然后老规矩,我们先拉组件,建连接,如下图:
下面我们开始配置,首先配置开始
组件,如下图:
接着配置转换
组件,配置前我们需要先准备一个写好的转换文件,配置如下图:
然后保存,并点击执行就可以了,如下图:
然后该作业,就会每5秒执行一次,你若是不停止,则会一直执行,可以点击这里,停止执行。
值得注意的是,作业和转换的文件后缀名是不一样的,作业的后缀名为(.kjb)、转换的后缀名为(.ktr)
结尾
本期的内容就到这里了,如有不足之处还请大家多多指正,欢迎大家留言、关注、转发、收藏,谢谢。