1、文件夹介绍
下载Kettle6.1解压后出现下图相关文件夹以及文件夹介绍说明:
Lib:存放Kettle的核心(core)jar包、工作引擎(engine)jar包、数据库(DB) jar包、图形界面(UI) jar包。
Plugins:存放Kettle自定义插件时,需要把自定义好的插件打成jar放在此目录。
Docs:存放Kettle各种语言版本的API文档。
Pwd:存放Kettle配置集群时所需要的配置文件与加密文件。
Libswt:存放Kettle对应不同平台的相关UI jar包。
Samples:存放Kettle自带的一些Job与Trans实例(建议大家多去查看)。
Launcher:存放Kettle Spoon加载的一些配置信息。
Ui:存放Kettle初始化使用到的图片及配置信息。
2、运行Kettle
说明:打开Kettle时弹出的窗口提示以资源库方式登录相关信息,工程存储方式是以XML文件方式来进行存储,所以我就直接点击“没有资源库”。
3、Kettle使用及组件介绍
3.1 Kettle使用
Kettle提供了资源库方式的方式来整合所有的工作,但是因为资源库移植不方便,所以我们选择没有资源库;
1)创建一个新的transformation,点击 保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation文件保存后后缀名为ktr;
2)创建一个新的job,点击 保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb;
类别 |
环节名称 |
功能说明 |
Input |
文本文件输入 |
从本地文本文件输入数据 |
表输入 |
从数据库表中输入数据 |
|
获取系统信息 |
读取系统信息输入数据 |
|
Output |
文本文件输出 |
将处理结果输出到文本文件 |
表输出 |
将处理结果输出到数据库表 |
|
插入/更新 |
根据处理结果对数据库表机型插入更新,如果数据库中不存在相关记录则插入,否则为更新。会根据查询条件中字段进行判断 |
|
更新 |
根据处理结果对数据库进行更新,若需要更新的数据在数据库表中无记录,则会报错停止 |
|
删除 |
根据处理结果对数据库记录进行删除,若需要删除的数据在数据库表中无记录,则会报错停止 |
|
Lookup |
数据库查询 |
根据设定的查询条件,对目标表进行查询,返回需要的结果字段 |
流查询 |
将目标表读取到内存,通过查询条件对内存中数据集进行查询 |
|
调用DB存储过程 |
调用数据库存储过程 |
|
Transform |
字段选择 |
选择需要的字段,过滤掉不要的字段,也可做数据库字段对应 |
过滤记录 |
根据条件对记录进行分类 |
|
排序记录 |
将数据根据某以条件,进行排序 |
|
空操作 |
无操作 |
|
增加常量 |
增加需要的常量字段 |
|
Scripting |
Modified Java Script Value |
扩展功能,编写JavaScript脚本,对数据进行相应处理 |
Mapping |
映射(子转换) |
数据映射 |
Job |
Sat Variables |
设置环境变量 |
Get Variables |
获取环境变量 |
类别 |
环节名称 |
功能说明 |
Job entries |
START |
开始 |
DUMMY |
结束 |
|
Transformation |
引用Transformation流程 |
|
Job |
引用Job流程 |
|
Shell |
调用Shell脚本 |
|
SQL |
执行sql语句 |
|
FTP |
通过FTP下载 |
|
Table exists |
检查目标表是否存在,返回布尔值 |
|
File exists |
检查文件是否存在,返回布尔值 |
|
Javascript |
执行JavaScript脚本 |
|
Create file |
创建文件 |
|
Delete file |
删除文件 |
|
Wait for file |
等待文件,文件出现后继续下一个环节 |
|
File Compare |
文件比较,返回布尔值 |
|
Wait for |
等待时间,设定一段时间,kettle流程处于等待状态 |
|
Zip file |
压缩文件为ZIP包 |