一、相关知识

Kettle工程存储方式有两种:一种是以XML形式存储,一种是以资源库方式存储。

Kettle中有两类设计分别是:Transformation(转换)与Job(作业),Transformation完成针对数据的基础转换,Job则完成整个工作流的控制。

Kettle常用三大家族:Spoon、Pan、Kitchen。
Spoon:通过图形界面方式设计、运行、调试Job与Transformation。
Pan: 通过脚本命令方式来运行Transformation。
Kitchen: 通过脚本命令方式来运行Job,一般就是通过调用Kitchen脚本来完成定时任务。

二、作业(job)

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

1.Job Entry:一个Job Entry 是一个任务的一部分,它执行某些内容。 
2.Hop:一个Hop 代表两个步骤之间的一个或者多个数据流。一个Hop 总是代表着两个Job Entry 之间的连接,并且能够被原始的Job Entry 设置,无条件的执行下一个Job Entry, 
直到执行成功或者失败。 

3.Note:一个Note 是一个任务附加的文本注释信息。

三、转换(Transformation)

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

1.Value:Value 是行的一部分,并且是包含以下类型的的数据:Strings、floating point Numbers、unlimited precision BigNumbers、Integers、Dates、或者Boolean。 
2.Row:一行包含0 个或者多个Values。 
3.Output Stream:一个Output Stream 是离开一个步骤时的行的堆栈。 
4.Input Stream:一个Input Stream 是进入一个步骤时的行的堆栈。 
5.Step:转换的一个步骤,可以是一个Stream或是其他元素。 
6.Hop:一个Hop 代表两个步骤之间的一个或者多个数据流。一个Hop 总是代表着一个步骤的输出流和一个步骤的输入流。 

7.Note:一个Note 是一个转换附加的文本注释信息。

三、认识HOP

1.什么是hop

hop(跳跃)简单理解就是控件与控件的连线

kettel useSSL设置 kettering_数据操作

2.发送方式(转换)
在转换中,控件和控件之间只有一个hop,

如果两个控件(一对多)的情况:会要求选择数据发送方式

(1)分发记录

目标步骤轮流接收记录,就是你一条我一条轮流接受

(2)复制记录

所有记录同时发送到所有目标。

kettel useSSL设置 kettering_数据操作_02

3.hop的状态(作业)

作业中,hop用来控制流程,

具有3种状态

锁:表示无论上一步执行成功还是失败,都一定会执行下一步
绿色的对号:表示上一步执行成功才会执行下一步
红色的叉号:表示上一步执行失败执行下一步

kettel useSSL设置 kettering_kettel useSSL设置_03