一,全量加载
1.打开kettle工具,创建转换
打开kettle工具创建转换full_load,并添加“执行SQL脚本”控件,“表输入”控件,“表输出”控件以及Hop跳连接线,如图:
2.配置“执行SQL脚本”控件
双击上图中的“执行SQL”控件,进入“执行SQL语句”界面,如图:
单击“新建”按钮,配置数据库连接,配置完成后单击“确认”按钮,如图:
在SQL框中编写删除数据表full_target中的数据的SQL语句,如图:
3.配置“表输入”控件
双击“表输入”控件,进入“表输入”配置界面,在SQL框中编写查询full_source数据表的SQL语句,如图所示:
单击【预览】按钮,查看full_source数据表的数据是否成功从MySQL数据库中抽取到表输入流中,如图所示:
4.配置“表输出”控件
双击“表输出”控件,进入“表输出”配置界面;单击目标表处的【浏览】按钮,选择输出的目标表,即数据表full_target,这里不需要新建数据库连接,只需要选择已创建的数据库连接即可,如图所示。
5.运行转换full_load
单击转换工作区顶部的运行按钮,运行创建的转换full_load,实现将数据表full_source中的数据全量加载到数据表full_target中,如图所:
6.查看数据表full_target中的数据
通过SQLyog工具,查看数据表full_target是否已成功加载到数据,查看结果如图所示:
二,增量加载
1.打开kettle工具,创建转换
使用Kettle工具,创建一个转换incremental_load,并添加表输入控件、插入/更新控件以及Hop跳连接线,具体如图所示:
2.配置“表输入”控件
双击“表输入”控件,进入“表输入”配置界面,单击【新建】按钮,配置数据库连接,配置完成后单击【确认】按钮。MySQL数据库连接的配置,具体如图所示:
3.配置“插入\更新”控件
双击“插入/更新”控件,进入“插入/更新”配置界面,单击【新建】按钮,配置数据库连接,配置完成后单击【确认】按钮。MySQL数据库连接的配置,具体如图所示:
单击目标表处的【浏览】按钮,弹出“数据库浏览器”窗口,选择目标表incremental_target,具体如图所示:
单击【获取字段】按钮,用来指定查询数据所需要的关键字,这里通过比较数据表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
单击转换工作区顶部的运行按钮,运行创建的转换incremental_load,实现将数据表incremental_source中的数据增量加载到数据表incremental_target中,如图所示:
6.查看数据表incremental_target中的数据
通过SQLyog工具,查看数据表incremental_target是否已成功加载到数据,查看结果如图所示: