Kettle 培训手册
Etl 介绍
ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于
金融 IT 来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种
etl 工具的使用,必不可少。
Kettle 是一款国外开源的 etl 工具,纯 java 编写,绿色无需安装,数据抽取高
效稳定。Kettle 中有两种脚本文件,transformation 和 job,transformation 完成针
对数据的基础转换,job 则完成整个工作流的控制。
kettle 部署运行
将 kettle2.5.1 文件夹拷贝到本地路径,例如 D 盘根目录。
双击运行 kettle 文件夹下的 spoon.bat 文件,出现 kettle 欢迎界面:
稍等几秒
选择没有资源库,打开 kettle 主界面
创建 transformation,job
点击页面左上角的 创建一个新的 transformation,点击 保存到本地路
径,例如保存到 D:/etltest 下,保存文件名为 EtltestTrans,kettle 默认 transformation
文件保存后后缀名为 ktr
点击页面左上角的 创建一个新的 job,点击 保存到本地路径,例如保
存到 D:/etltest 下,保存文件名为 EtltestJob,kettle 默认 job 文件保存后后缀名为
kjb
创建数据库连接
在 transformation 页面下,点击左边的【Main Tree】,双击【DB 连接】,进行
数据库连接配置。
Connection name 自命名连接名称
Connection type 选择需要连接的数据库
Method of access 选择连接类型
Server host name 写入数据库服务器的 ip 地址
Database name 写入数据库名
Port number 写入端口号
Username 写入用户名
Password 写入密码
例如如下配置:
点击【test】,如果出现如下提示则说明配置成功
点击关闭,再点击确定保存数据库连接。
一个简单的 ktr 例子
目标:
从交易表(trade),帐户表(account),客户表(cust)抽数交易相关的所有
信息,并判断对公对私分别进行处理,输出到文本文件中。
操作步骤:
在 EtltestTrans 页面下,点击左侧的【Core Objects】,点击【Input】,选中【表
输入】,拖动到主窗口释放鼠标。
双击【表输入】图标
数据库连接选择刚刚创建好的 etltest 数据库连接,在主窗口写入对应的查询
语句
Select * from trade
点击确定完成。
点击左侧的【Lookup】,选中【数据库查询】,拖动到主窗口释放鼠标。
按住 shift 键,用鼠标点中刚才创建的【表输入】,拖动到【数据库查询】上,
则建立了两个环节之间的连接。
双击【数据库查询】图标
步骤名称写入 account 表查询,数据库连接选择刚刚创建好的 etltest 数据库
连接,查询的表写入 account,查询所需的关键字中,表字段写入 acctno,比较
操作符写入“=”,字段 1 写入 acctno。
在查询表返回的值里面写入 custno,确定完成。
同上,再创建一个数据库查询,命名为 cust 表查询,查询的表写入 cust,查
询所需的关键字写入 custno=custno,查询表返回的值写入 custname,custid,
custtype