Kettle系列教程-第二章:转换与作业

Author Avatar
山小杰 7月 18, 2018
  • 在其它设备中阅读本文章

本系列教程基于Kettle 8.1(pdi-ce-8.1.0.0-365)。大部分内容同样适用于Kettle 7.x版本。
章节目录:

本章说明

本篇内容为第二章:转换与作业。
经过第一章的学习,运行环境配置完成以后,就可以开始运行Kettle了,双击data-integration目录下的Spoon.bat文件,即可启动Kettle的任务设计器Spoon。启动速度较慢,可能会出现假死情况,耐心等待即可,不要连续多次双击Spoon.bat文件。
Spoon主页:
img
Kettle有两种流程,转换流程和作业流程。
本章只介绍基本操作,不进行具体可执行流程设计。

转换流程

Kettle是个ETL工具嘛,转换流程就是主要进行数据转换(T)步骤设计的地方。当然也包含数据源(E)和目标(L)。
新建转换流程的方式有很多,比如左上角 文件 -> 新建 -> 转换 ,或者点击欢迎页面WORK图标下的New transforation,亦可双击左侧主对象树下的转换图标,又可按快捷键Ctrl + N
转换流程设计页面左侧核心对象下面是一个个的分类模块,每个分类下面又有许多个功能不同的组件,鼠标按住左侧组件图标拖拽到右侧流程设计面板即可增加一个步骤。
img
步骤之间需要使用箭头连接,箭头方向表示步骤流向,按住Shift键的同时鼠标点住步骤图标向外拉即可拉出一条箭头(按住鼠标中键也可拉出箭头),将箭头拉向下一个步骤,即可形成一个简单的转换流程:
img -> img
需要注意的是步骤之间箭头的颜色,深色表示连接状态,浅色表示断开状态。比如下面这个转换流程,表输出步骤与上一步骤是断开连接的,执行流程的时候执行到去除重复记录这一步骤后就不会再往下执行了。单击箭头可以调整连接状态。
img
Ctrl + S保存,将保存为ktr后缀的文件。

作业流程

作业流程,即是对转换流程进行调度的。除了调度转换流程还可以做一些其他的工作,比如文件管理、条件判断、脚本执行等等,也可以调度其他作业流程。
新建作业流程与转换流程类似,快捷键是Ctrl + Alt + N。核心组件在通用分类下,一个作业流程必须包含START组件,可以没有成功组件。作业流程中可以嵌套转换流程和作业流程:
img
与转换流程不同的是,除了步骤之间有连接状态(箭头颜色深浅),还有连接条件(箭头上的图标,一共三种)。上图的这个作业中包含了所有连接条件:

  • 小锁图标,表示不管上一步骤执行结果如何,都执行下一个步骤;
  • 红叉图标,表示只有上一步骤执行出错或者返回FALSE,才执行下一步骤;
  • 绿勾图标,表示只有上一步骤执行成功或者返回TRUE,才执行下一步骤。

单击连接条件图标可以调整连接条件,START步骤与下一步骤之间的连接条件不可修改。
START组件标识着工作流的开始,也是配置定时任务的地方:
img
定时调度功能还是很灵活的,只不过需要一直保持Spoon处于启动状态,一旦Spoon窗口被误关闭,定时任务就无效了,所以一般不使用Kettle自带的这个调度器。比较常用的是使用操作系统的定时任务功能,比如Windows的计划任务,或者可以编写Java程序进行调度,后面会有详细讲解,这里就不再细说。
Ctrl + S保存,将保存为kjb后缀的文件。

本章完!
下一章:数据库连接配置