Kettle作业

Posted on Posted in kettle基础概念

作业包括一个或多个作业项,作业项以某种顺序来执行。

作业项:与转换中的步骤类似,作业项也以图标的方式图形化展示。作业项之间可以传递结果对象(result object)。结果对象里包含了数据行,它们不是以流的方式来传递的。而是等一个作业项执行完了,再传递给下一个作业项。默认情况下,所有的作业项都是以串行的方式执行的。

作业跳:作业之间的连线称为作业跳。作业里每个作业项的不同运行结果决定了作业的不同执行路径。对作业项的运行结果判断如下:

1,无条件执行:不论上一个作业项执行成功与否,下一个作业项都会执行。标识为,黑色的连线,上面有一个锁的图标

2,当运行结果为真时执行:标识为,绿色的连线,上面有一个钩号

3,当运行结果为假时执行:标识为,红色的连线,上面有一个红色的停止图标

Kettle使用回溯算法来执行所有的作业项。即执行作业中的某条路径的某个节点时,要依次执行这个节点的所有子路径,直到没有再可以执行的子路径,就返回该节点的上一个节点,再反复该过程。

注意:在作业中定义的跳是控制流,在转换中定义的跳是数据流。

 

作业(job)。作业按照一定的顺序完成,因为转换以并行方式执行的,就需要一个可以串行执行的作业来处理一系列按照顺序完成的操作。一个作业包括一个或者多个作业项,这些作业项以某种顺序来执行。作业执行顺序由作业项之间的跳(job hop)和每个作业项的执行结构来决定。如同转换,作业里面也可以包括注释。

作业项。作业项是作业的基本构成部分。如同转换的步骤,作业项也可以使用图标的方式图形化展示。作业项的注意点。新步骤的名字应该是唯一的,但是作业项可以有影子拷贝。这样可以把一个作业项放在不同的位置。这些影子拷贝里的信息都是相同的,编辑一份拷贝,其他拷贝也会随之修改。在作业项之间可以传递一个结果对象(result object)。这个结果对象里包含了数据行,它们不是以流的方式来传递的。而是等一个作业项执行完了,再传递给下一个作业项。默认情况下,所有的作业项都是以串行方式执行的,只是在特殊情况下,以并行方式执行。

kettle启动脚本介绍(window版本)。

Spoon.bat,集成开发环境。提供了一个图形化用户界面,用于创建或者编辑作业或者转换。Spoon也可以用于执行或者调试作业或者转换,它也有性能监控的功能。
Kitchen.bat,作业的命令行运行程序,可以通过Sheel脚本来调用。Scheel脚本一般通过调度程序,如cron或者Windwos计划任务,来调度执行。
Pan.bat,转换的命令运行程序,和Kitchen一样通过Sheel脚本来调用。执行转换而不是作业。
Carte.bat,轻量级的Http服务器(基于Jetty),后台运行,监听Http请求来运行一个作业。Carte用于分布式和协调跨机器执行作业,也就是Kettle的集群。