Kettle系列教程-第八章:转换流程-转换组件

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

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

本章说明

本章介绍一下转换分类下几个简单的组件:排序记录、去除重复记录、拆分字段、字段选择。其中在使用【去除重复记录】组件之前一定要对去重的字段进行排序:
img
本章使用一个小示例来介绍这几个组件的使用,数据准备如下:
img
要求目标表数据如下,即需要把原数据中name列不规范的数据处理掉并进行去重:
img
有人可能会说了,这个需求一个简单的SQL就可以做到,干嘛还要借助其他工具?首先,我只是用一个小示例来介绍这些组件的使用;其次Kettle是个专业的数据处理工具,在复杂处理逻辑下,最好是将这些处理步骤交给Kettle来做,而不是全部扔给数据库去做;另外,如果数据源是Excel或者文本文件的话,还能写SQL吗?
拖出如下组件构成一个完整的转换流程:
img
【排序记录】,以id字段进行排序:
img
【去除重复记录】,同样选择id字段:
img
【拆分字段】,选择需要拆分的字段name,指定分隔符”,“,分析原数据得知字段拆分后会有两个新字段,分别指定两个新字段相关信息(字段名、字段类型、去除空格类型):
img
【字段选择】,第一个选项卡【选择和修改】,用于选择需要保留的字段和修改字段名;【移除】选项卡用于移除不需要的字段;【元数据】选项卡用于修改数据流的元数据,比如数据类型、数据格式、字符集编码等。【选择和修改】与【移除】这两个选项卡只需要配置其中一个即可。这里我们移除掉name2字段并修改name1字段名为new_name
img
最后再修改下表输出配置,勾选上【裁剪表】选项,用于清空旧数据,并指定数据库字段,修改字段映射关系如下:
img
配置完成,保存,执行,查看结果:
img

本章完!
下一章:脚本组件