kettle使用方法说明文档

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Kettle使用方法说明文档

1.安装程序

解压pdi-ce-4.0.0-stable.zip到任意盘符,解压后点击根目录下Spoon.bat如下图所示。

点击cancel

2.创建表到表直接抽取

本实例演示的是在Oracle数据库zhwater下的zh用户里面表sys_user转换到本地Oracle数据库orcl下的zw用户下的表sys_user。演示过程是建立transform将数据从zh.sys_user抽取到zw. sys_user 里面。两个表结构相同。

a) 建立转换

进入系统后如下图所示,双击转换。

b)创建源和目标数据库连接

c)建立转换步骤

点开【输入】——>【表输入】将表输入拉到右侧。

双击右侧的表输入,如下图,配置

点开【输出】——>【插入/更新】将其拉到右侧。

按住shift先后左键点击表输入和插入/更新的图标。

双击插入/更新图标,点击【获取字段】和【获取和更新字段】

用来查询的关键字保留主键USERID,其余删掉。

点击确定保存,点击上方验证无错误后,点击执行,如下图。

数据库中可以看到数据已从zh.sys_user抽取到zw.sys_user

D)保存文件

保存文件的文件名不能是中文,文件路径不能包含中文

3.创建带数据聚合的表到表抽取

本实例演示的是在数据库SG186ND下的basic_data用户里面的两个表sc_work_ticket 和t_sc_work_ticket。演示过程是建立transform 将数据从sc_work_ticket抽取到t_sc_work_ticket里面。即模拟基础表到主题表抽取过程。

a) 源数据获取

转换和链接创建过程见上节说明。

将表输入step拉入图中

双击表输入,配置源连接。

b) 数据分组

将【Memory Group by】拖入图中,并按住shift连接表输入和Memory Group by。

点开【Memory Group by】,将基础表中涉及维度的字段加入分组内。需要聚合的度量加入到聚合内,并在名称处重命名为主题表内对应字段名称。

注:此处聚合类型选择

如果为计数则选择【个数】。

如果为通过是否值判断个数,选择【求和】。

如果为累积值,选择【求和】。

c) 时间处理

将【Modified Java Script Value】(在脚本里面)拖入图中,并按住shift连接。

点开【Modified Java Script Value】,将处理时间语句写入。并点击下方的【获取变量】。

注:如果需要进行其他操作(去掉空值,转码等)可在此写js语句进行操作。

d) 更新/插入

将【插入/更新】(在输出里面)拉入到图中,并按住shift连接。

点开【更新/插入】,将查询关键字下方选上维度字段,更新字段下方选上聚合度量。

下图中,month_id是上部js中计算得出。流字段下的前三个字段是第二步【Memory Group by】聚合得出,后三个字段是分组字段。

下图中为抽取的源数据和目标数据。

4.定时抽取设置

a) 建立job

点击【文件】→【新建】→【作业】,如下图将【STRAT】拉入图中。

将【Transformation】拉入到图中,按住shift连接。

点开【Transformation】,将test转换加进去,并重命名job为test。

b) 设置定时抽取

双击【START】,设定自动抽取时间。下图中显示为间隔5分钟自动执行抽取。

点击执行,如下图。

点击【Launch】,执行job。到达指定时间后,自动执行job,然后进行下一次执行等待。如下图。

c) 命令行执行

编写test.bat内容如下

E:\kettle\data-integration\Kitchen.bat /norep /file E:\kettle\test.kjb其中红色部分为安装路径下Kitchen.bat文件所在位置,蓝色部分为job 文件所在位置。

注意:/norep和/file前面都有一个空格。

点击执行即可。会出现下图所示内容,表示执行过一次job,正在等待下次执行时间继续执行,不要关闭cmd窗口即可。

相关文档
最新文档