一.全量加载
1.打开Kettle工具,创建转换
使用Kettle工具,创建一个转换full_load,并添加执行SQL脚本控件、表输入控件、表输出控件。
2.配置执行SQL脚本控件
1)双击“执行SQL脚本”控件,进入“执行SQL语句”界面。单击【新建】按钮,配置数据库连接,配置完成后单击【确认】按钮。MySQL数据库连接的配置;在SQL框中编写删除数据表full_target中数据的SQL语句。
3.配置表输入控件
1)双击“表输入”控件,进入“表输入”配置界面,在SQL框中编写查询full_source数据表的SQL语句。
2)单击【预览】按钮,查看full_source数据表的数据是否成功从MySQL数据库中抽取到表输入流中。
4.配置表输出控件
双击“表输出”控件,进入“表输出”配置界面;单击目标表处的【浏览】按钮,选择输出的目标表,即数据表full_target。
5.运行转换full_load
6.查看数据表full_target中的数据
二.增量加载
1.打开Kettle工具,创建转换
使用Kettle工具,创建一个转换incremental_load,并添加表输入控件、插入/更新控件。
2.配置表输入控件
1)双击“表输入”控件,进入“表输入”配置界面,单击【新建】按钮,配置数据库连接,配置完成后单击【确认】按钮。
2)在SQL框中编写查询数据表incremental_source的SQL语句,然后单击【预览】按钮,查看数据表incremental_source的数据是否成功从MySQL数据库中抽取到表输入流中。
3.配置插入/更新控件
1)双击“插入/更新”控件,进入“插入/更新”配置界面,单击【新建】按钮,配置数据库连接,配置完成后单击【确认】按钮。
2)单击目标表处的【浏览】按钮,弹出“数据库浏览器”窗口,选择目标表incremental_target。
3)单击【获取字段】按钮,用来指定查询数据所需要的关键字,这里通过比较数据表incremental_target的字段id与输入流里的字段id是否一致为关键条件,更新数据表中的其它字段数据;单击【获取和更新字段】按钮,用来指定需要更新的字段。
4.修改数据表incremental_source中的数据
在数据表incremental_source中新增一条id为6、name为Mary、age为23的数据;对数据表incremental_source中id为2的数据进行修改,即将这条数据的年龄(age)改为25。修改后的数据表incremental_source中的数据内容如图所示。
5.运行转换incremental_load
6.查看数据表incremental_target中的数据