其他分享
首页 > 其他分享> > Kettle工作原理

Kettle工作原理

作者:互联网

核心概念

Job相关

Job

负责将Transformation组织在一起进而完成某一工作,通常我们需要把一个大的任务分解成几个逻辑上隔离的Job,当这几个Job都完成了,也就说明这项任务完成了。

Job Entry

Job Entry是Job内部的执行单元,每一个Job Entry用于实现特定的功能,如:验证表是否存在,发送邮件等。可以通过Job来执行另一个Job或者Transformation,也就是说Transformation和Job都可以作为Job Entry

Job Entry包含内容如下:

Job Hop

Job Hop是作业项之间的连接线。他定义了作业的执行路径。作业里每个作业项的不同运行结果决定了作业的不同执行路径。
Job Hop有如下三种执行情况:

  1. 无条件执行:不论上个作业项执行成功或者失败,下一个作业项都会执行。这是一种蓝色的连接线,上面有一个的标。
  2. 当运行结果为真时执行:当上一个作业项执行结果为真时,执行下一个作业项。通常在需要无错误执行的情况下使用。这是一条绿色的连接线,上面有对勾号的图标。
  3. 当运行结果为假时执行:当上一个作业项执行结果为假或者没有执行成功,执行一按一个作业项,这是一条红色的连接线,上面有红色停止的图标。

Transformation相关

Transformation

Transformation是对数据操作的容器,数据操作就是数据从输入到输出的一个过程,可以理解为比Job粒度更小一级的容器,我们将任务分解成Job,然后需要将Job分解成一个或多个Transformation,每个Transformation只完成一部分工作。

Step

Step是Transformation内部的最小单元,每一个Step完成一个特定的功能。

Transformation Hop

转换跳是步骤之间带箭头的连线,也是两个步骤之间的被称为行集的数据行缓存
转换跳的这种基于行集缓存的规则允许每一个步骤都是有一个独立的线程运行,这样并发程度最高。这一规则也允许数据以最小的消耗内存的数据流的方式处理。

Transformation Hop 的读写机制如下:

  1. 当行集满了,向行集写数据的步骤将停止写入,直到行集又有空间。
  2. 当行集空了,从行集读取的步骤停止读取,直到行集里又有可读的数据行。

Transformation Hop包含内容:

Job与Transformation对比

参考资料

  1. kettle工具原理:https://www.pianshen.com/article/21451697058/

标签:步骤,Kettle,作业,工作,Job,Hop,原理,执行,Transformation
来源: https://www.cnblogs.com/bettergoo/p/15780323.html