无事来学学--Kettle中查询,流程,连接组件的使用

1,159 阅读3分钟

查询组件

查询是转换里面的第七个分类。查询是用来查询数据源里的数据并合并到主数据流中。

HTTP client

使用GET的方式提交请求,获取返回的页面内容。

操作实例:

image

image

自定义常量数据

用来生成一些不变的数据。

操作实例:

imageimage

指定常量数据

操作实例:

image

image

数据库查询

数据库里面的左连接。左连接就是两张表执行左关联查询,把左边的表数据全部查询出来。

操作实例:

image

image

数据库连接

可以执行两个数据库的查询,和单参数的表输入。

操作实例:

image\

image

流查询

在查询前把数据都加载到内存中,并且只能进行等值查询。

操作实例:

imageimage

流程组件

流程是转换里面的第六个分类。流程主要用来控制数据流程和数据流向。

Switch/case让数据流从一路到多路。

操作实例:

image

image

过滤记录让数据流从一路到两路。

操作实例:

image\

image

空操作一般作为数据流的终点。

在kettle的sample例子中经常使用,但是实际开发中很少使用。

操作实例:

image

image

中止是数据流的终点

如果有数据到这里,将会报错。用来校验数据的时候使用。

操作实例:

image

连接组件

 

连接是转换里面的第八个分类。连接是结果集通过关键字进行连接。

合并记录

是用于将两个不同来源的数据合并,这两个来源的数据分别为旧数据和新数据,该步骤将旧数据和新数据按照指定的关键字匹配、比较、合并。主要用于新旧数据的对比,非常好使的哦!

1)、需要设置的参数:

1.1)、旧数据来源:旧数据来源的步骤。

 

1.2)、新数据来源:新数据来源的步骤。

2)标志字段:

设置标志字段的名称,标志字段用于保存比较的结果,比较结果有下列几种。

2.1) "identical"

旧数据和新数据一样。

2.2.)"changed"  

数据发生了变化。

2.3.)"new"

新数据中有而旧数据中没有的记录。

2.4)"deleted"

旧数据中有而新数据中没有的记录。

3)关键字段:

用于定位两个数据源中的同一条记录。

3.1)比较字段

对于两个数据源中的同一条记录中,指定需要比较的字段。

3.2)合并后的数据将包括旧数据来源和新数据来源里的所有数据,对于变化的数据,使用新数据代替旧数据,同时在结果里用一个标示字段,来指定新旧数据的比较结果。

4)、注意:

4.1)、旧数据和新数据需要事先按照关键字段排序。

4.2)、旧数据和新数据要有相同的字段名称。

image\

image

4.2、记录关联,就是对两个数据流进行笛卡尔积操作。

imageimage

4.3、记录集连接就像数据库的左连接、右连接、内连接、外连接。注意:在进行记录集连接之前,应该要对记录集进行排序。

image