【实验目的】
1.利用Kettle的“表输入”,“表输入出”,”JavaScript代码”组件,实现数据全量更新。
2.熟练掌握“JavaScript代码”,“表输入”,“表输入出”组件的使用,实现数据全量更新。

【实验原理】
通过“表输入”对MySQL表格的数据读入,然后通过“JavaScript代码”更新抽取数据的时间,再通过“表输入出”保存表格到MySQL数据库。

【实验环境】
操作系统:Windows10 
Kettle版本:7.1.0.0
jdk版本:1.8.0及以上版本

【实验步骤】

一、建立转换

双击spoon.bat打开kettle。(1)点击新建按钮,在下拉菜单中点击选择"转换"即可创建;(2)然后点击"保存"重命名该转换文件,保存在某个指定的路径;(3)选择输入步骤、输出步骤和跳。

kettle 输出mongodb 更新 kettle怎么增量更新_字段

二、各组件的配置

1.使用Navicat向数据库mysql导入数据表:‘课程信息表’,导入结果如下:

kettle 输出mongodb 更新 kettle怎么增量更新_字段_02

2.“表输入”的配置:

Step1:双击‘表输入’组件,新建数据库的连接并进行测试,

kettle 输出mongodb 更新 kettle怎么增量更新_kettle 输出mongodb 更新_03

Step2:连接成功后,获取表的字段名称

kettle 输出mongodb 更新 kettle怎么增量更新_kettle 输出mongodb 更新_04

2.“JavaScript代码”的配置:

双击“HTTP client”组件,编写Script1的代码,并获取其相应字段名称和类型。

kettle 输出mongodb 更新 kettle怎么增量更新_大数据_05

3.“表输出”的配置:

双击‘表输出’组件,选择目标表的名称,并使用SQL语句进行创建:

kettle 输出mongodb 更新 kettle怎么增量更新_大数据_06

4.“表输出2”的配置:

双击‘表输出2’组件,选择目标表的名称,并使用SQL语句进行创建:

kettle 输出mongodb 更新 kettle怎么增量更新_字段_07

三、执行转换

点击按钮,执行转换,结果如下:

kettle 输出mongodb 更新 kettle怎么增量更新_MySQL_08

四、实验结果:

输入文件‘课程信息表.xlsx’:

kettle 输出mongodb 更新 kettle怎么增量更新_kettle 输出mongodb 更新_09

输出文件‘test4_tableout’:

kettle 输出mongodb 更新 kettle怎么增量更新_kettle 输出mongodb 更新_10

输出文件‘test4_tableout2’:

kettle 输出mongodb 更新 kettle怎么增量更新_kettle 输出mongodb 更新_11

五、实验中遇到的困难:

表输入和表输出的数据库连接前后要一致(实验过程中,因不经意间改变了表输入步骤的数据库连接名称,致使表输出一直报错)

六、实验总结

本次试验主要是通过一个表输入,两个表输出来实现数据全量更新。一条经过JavaScript代码的处理,在数据表里添加表输出时的时间字段,另一条直接进行表输出,这两条过程的输出结果形成一个对比,实现数据的比较更新。

附 件:

kettle 输出mongodb 更新 kettle怎么增量更新_数据_12