案例介绍
通过Kettle工具,使用弱一致性对数据表Personnel_Information中的数据进行一致性处理,即利用数据表Personnel_Information中的字段GENDER中的值训练出一个健康值预测模型,用于将原始数据中的字符串特征转化为模型可识别的数字特征。
案例实现
1.打开Kettle工具,创建转换
使用Kettle工具,创建一个转换data _consistency,并添加“表输入”控件、“值映射”控件、“插入/更新”控件以及Hop跳连接线。
2.配置“表输入”控件
双击“表输入”控件,进入“表输入”配置界面;单击【新建】按钮,配置数据库连接,配置完成后单击【确认】按钮。
在SQL框中编写查询数据表interpolation_data的SQL语句,然后单击【预览】按钮,查看数据表Personnel_Information的数据是否成功从MySQL数据库中抽取到表输入流中。
3.配置“值映射”控件
双击“值映射”控件,进入“值映射”配置界面;在“使用的字段名”处的下拉框选择字段GENDER;在“字段值”框中,添加源值和目标值,这里是将Male替换成数字0,将Female替换成数字1。
4.配置“插入/更新”控件
双击“插入/更新”控件,进入“插入/更新”界面;单击【新建】按钮,配置数据库连接,配置完成后单击【确认】按钮。
单击目标表右侧的【浏览】按钮,选择目标表Personnel_ Information_New。单击【获取字段】按钮,用来指定查询数据所需要的关键字,这里选择的是Personnel_ Information_New数据表中的USERID字段和输入流里面的USERID字段;单击【获取和更新字段】按钮,用来指定需要更新的字段。
5.运行转换data_consistency
单击转换工作区顶部的按钮,运行创建的转换data _consistency。
6. 查看数据表Personnel_ Information_New中的数据
通过SQLyog工具,查看数据表Personnel_ Information_New是否已成功插入501条数据,查看结果如图所示。
7.打开Kettle工具,创建作业
通过使用Kettle工具,创建一个作业data _consistency_job,并添加“Start”控件、“转换”控件以及作业跳连接线。
8.配置“Start”控件
双击“Start”控件,进入“作业定时调度”界面;勾选“重复”处的复选框;单击“类型”处的下拉框,选择“时间间隔”定时,并设置以秒计算的间隔是5,以分钟计算的间隔是0。
9.配置“转换”控件
双击“转换”控件,进入“转换”界面;单击【浏览】按钮,选择添加转换data _consistency至作业中。
10.运行作业data_consistency_job
单击作业工作区顶部的按钮,运行创建的作业data _consistency_job。从控制台的日志输出可以看出,作业每隔5秒会执行一次转换实现数据同步并且在执行过程中会记录处理的数据量以及当前时间段处理的数据条数。