一、什么是kettle
kettle也称PDI,数据整合工具
kettle的官网:https://community.hitachivantara.com/s/article/data-integration-kettle
二、kettle概念模型
1、kettle执行分为两个层次:Job(作业)和Transformation(转换)
Job:可以有多个Transformation同时存在,Job进行调度
Transformation中有多个步骤(组件):数据的读取、数据处理(如多余字段的过滤、修改等)、往HDFS中加载
2、转换包含两个部分:Step(步骤)和Hop(跳)
步骤也叫组件,Transformation中的多个组成部分
跳也叫连接,多个步骤之间的连接(消息队列)
三、Kettle核心组件
1、Spoon:图形化界面工具,操作Job和Transformation都可以在这个界面中完成
2、Pan:用于终端执行Transformation,没有图形化界面
3、Kitchen:Job执行器(命令行方式),在终端执行Job,没有图形化界面
4、Carte:远程执行Job或Transformation,Kettle通过Carte建立集群
四、Kettle的特点及应用场景
特点:
1、免费开源,基于java的免费开源软件,对商业用户没有限制
2、在windows、linux、unix上运行,不需要安装
3、支持不同数据库
4、图形化界面
5、定时功能
应用场景:
1、数据库之间数据的迁移
2、数据库导出数据到文件
3、导入大规模数据到数据库
4、数据清洗
五、Kettle下载与安装
下载:
安装:解压后双击Spoon.bat即可启动kettle
六、入门案例
1、需求:读取csv文件,转换成Excel文件
在输入中选择csv,输出中选择excel,按住shift建立跳,保存并运行
注意:
各个转换中每个步骤的启动顺序是不固定的
但是当有多个转换时,Job可以控制步骤的执行顺序
2、每一个Job必须由start开头,绿色箭头代表成功后执行下一步骤,红色箭头代表失败后执行下一步骤,黄色箭头代表无条件执行