申明: 未经许可,禁止以任何形式转载,若要引用,请标注链接地址
全文共计1608字,阅读大概需要3分钟
一、任务描述
本实验任务主要完成基于ubuntu环境的使用kettle进行数据采集处理与数据关联操作的工作。通过完成本实验任务,要求学生熟练掌握使用kettle进行数据采集处理与数据关联操作的方法,为后续实验的开展奠定ETL平台基础,也为从事大数据平台运维工程师、大数据技术支持工程师等岗位工作奠定夯实的技能基础。
二、任务目标
1、掌握使用kettle进行数据采集处理与数据关联操作
三、任务环境
Ubuntu16.04、Java1.8、Kettle7.1
四、任务分析
Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。
Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。
Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。
五、 任务实施
步骤1、环境准备
右击Ubuntu操作系统桌面,从弹出菜单中选择【Open Terminal Here】命令 打开终端。
启动kettle。
图1 启动kettle
步骤2、创建Transformmations
新建一个”Transformmations”(双击Transformmations即可),然后选择”Design”栏,将”Input”下的”CSV input”(2个)和”Transform”栏下的”Select values”,”Sort rows”,然后是”Lookup”下的”Stream lookup”以及”Output”栏下的”Table output”六个图标拖进工作区。按住Shift键,鼠标拖拽”Table input”图标到”Stream lookup”图标上,产生连线。同理其他的线也连上。注意箭头方向。如图2所示
图2 创建Transformmations
设置”CSV input”相关内容(双击图表即可)。如图3-4所示。
图3 设置”CSV input”相关内容
图4 设置”CSV input”相关内容
设置”CSV input 2”相关内容(双击图表即可)。如图5-6所示。
图5 设置”CSV input 2”相关内容
图6 设置”CSV input 2”相关内容
设置”Select values”相关内容(双击图表即可)。如图7所示。
图7 设置”Select values”相关内容
设置”Stream lookup”相关内容(双击即可)。如图8-9所示。
图8 设置”Stream lookup”
图9 设置完毕
设置”Sort rows”相关参数。如图10所示。
图10 设置”Sort rows”
开启mysql服务。如图11所示。
图11 开启mysql
设置”Table output”相关参数,双击”Table output”即可,mysql数据库密码为”root”。如图12所示。
图12 设置”Table output”
设置目标表。如图13所示。
图13 设置目标表
设置字段映射,最后点击”OK”完成整个设置。如图14所示。
图14 设置字段映射
步骤3、运行任务
运行,清洗好的数据,批量导入到数据库。如图15-16所示。
图15 运行任务
图16 保存任务
查看运行结果。如图17所示。
图17 查看运行结果
重新打开一个终端,进入mysql,切换到kettleDB数据库,检验记录是否导入。如图18-19所示。
图18 进入数据库
图19 查看表数据
♥ 知识链接
Output Stream
一个Output Stream 是离开一个步骤时的行的堆栈。
♥ 温馨提示
Value:Value 是行的一部分,并且是包含以下类型的的数据:Strings、floating point Numbers、unlimited precision BigNumbers、Integers、Dates、或者Boolean。