04-PDI(Kettle)job案例
job简介
本实验是kettle的作业设计,区别与步骤的并行执行,作业的各作业项具有先后执行顺序,这在处理某些问题的时候具有很大优势。
一个作业包含一个或多个作业项,这些作业项以某种顺序来执行。作业执行顺序由作业项之间的跳(Hop)和每个作业项的执行结果来决定,和转换一样,作业也包括注释。作业项可以是一个转换,也可是另一个作业项。
job创建案例
1.创建空作业
1、创建空作业
打开kettle,选择主对象树“作业“,新建一个作业,点击保存,保存为”chapter05-1-01空作业.kjb“
2、空作业设置
添加一个”start“作业项,查看作业项设置,熟悉作业项功能。添加一个dummy的空作业项
作业作业项可以运行其他作业,这里为了演示,我们需要再创建一个”空作业“,用于演示具体操作。
新建一个作业,保存为”空作业“,添加一个“start”作业项,再添加一个Dummy(空作业)作业项。
2.创建空转换
转换命名为chapter05-1-01空转换,只有dummy一个空转换。本步骤过与简单就不详细描述了。
3创建作业
创建一个新作业,命名为:chapter05-1-01第一个作业.kjb。
在spoon界面添加:
添加一个start:启动项,可以完成定时调度等。
添加一个作业项,作业项中选中刚创建过的chapter05-1-01空作业.kjb
添加一个转换:转换中选中刚才创建的空转换chapter05-1-01空转换.ktr
### 执行job
保存上述的chapter05-1-01第一个作业.kjb后,既可以执行该job。
job参数设置
1.创建转换:charpter05-1-02变量设置步骤
1、创建charpter05-1-02变量设置步骤
创建一个转换,分别添加下列步骤,并设置变量,注意:变量设置步骤,在根作业中生效
2.创建作业:charpter05-1-02变量设置
1、作业设计
创建一个新的作业,选中start作业作业的启动项,然后添加设置变量和转换两个作业项。选中后,可以将设置变量和转换设置为并行执行,最后把结果写入日志作业项中,如下图。
2、设置环境变量
在菜单栏-编辑下面设置配置文件
以键值对的方式设置变量,这里可以设置为USER_NAME
选择最后一行,再按下方向键,即可添加
3、设置命名参数
创建一个作业,在空白处,右键单击,选择作业设置(properties),在选择parameters,设置
添加变量TABLE_NAME
4、通过“设置变量”作业项设置
在作业中添加一个“设置变量”作业项,设置变量DB_NAME
5、配置转换作业项
添加一个“转换”作业项,添加刚才的转换。
6、使用变量
这里简单使用写日志,查看当前设置的4各变量。
USER_NAME: ${USER_NAME} TABLE_NAME: ${TABLE_NAME} DB_NAME: ${DB_NAME} DB_HOST: ${DB_HOST}
7.运行
直接运行,就可以看到,获取了四个变量。
设置变量总结
job在可以在如下几个位置设置变量:
- 转换中的:设置变量 step
- 作业在的:设置环境变量 在菜单栏-编辑下面设置配置文件
- 作业中的:设置命名参数
- 作业在的:“设置变量”作业项
作业监控操作
Kettle支持发送邮件的作业项,在作业执行过程中,可以根据执行结果,将是否成功及时的通过邮件发送给指定的邮箱。
实验步骤
1、添加一个作业,可以执行上一步的变量设置作业(charpter05-1-02变量设置作业),再添加一个发送邮件
2、“作业”作业项用于执行其他作业,如变量设置
3、添加发送邮件作业项,
圈1设置收件人和发件人信息,此处必须为实际可用的邮箱地址,可以使用自己的邮箱,也可以申请其他邮箱。邮箱类型不限,如qq邮箱,网易邮箱,新浪邮箱等。
圈2设置邮箱服务器和验证信息,注意:目前绝大部分邮箱都不允许直接使用密码,而必须使用授权码发送。这里以163邮箱为例,其他邮箱也是相差不大。登录对应邮箱的官网,在设置中可以看到邮箱服务器,以及设置授权码,如下:
圈3设置邮箱内容
圈4设置邮箱附件,比如将日志设置为附件内容。
4、邮箱发送成功之后,可以到对应邮箱网站,查看接收到的邮件
5运行作业时,还可以设置不同级别的日志,用于查看作业执行情况,如果发生错误,也可以通过邮件查找到对应的错误提示信息。