本实验任务主要完成基于ubuntu环境的使用kettle处理HDFS上的数据并写回HDFS的工作。通过完成本实验任务,要求学生熟练掌握使用kettle处理HDFS上的数据并写回HDFS的方法,为后续实验的开展奠定ETL平台基础,也为从事大数据平台运维工程师、大数据技术支持工程师等岗位工作奠定夯实的技能基础。
1、掌握使用kettle处理HDFS上的数据并写回HDFS
Ubuntu、Java1.8、Kettle7.1
Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。
Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。
Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。
在节点master上执行命令【start-all.sh
】。如图1所示。
图1 启动Hadoop
启动成功后,出现以下进程信息。如图2-4所示。
图2 master节点进程
启动kettle。如图3所示
图3 启动kettle
修改语言,Tools->Options->Look&Feel设置,设置完重启即可。如图4所示
图4 修改语言
新建一个”Transformmations”(双击Transformmations也可)。如图5所示
图5 创建Transformmations
配置hadoop集群连接并测试。如图6-7所示。
图6 创建集群配置
图7 集群配置及测试
创建一个hadoop文件输入步骤,并编辑(双击图表即可)。如图8-11所示。
图8 创建步骤
图9 设置相关内容
图10 设置相关内容
图11 设置相关内容
创建一个字段选择步骤,按住Shift键,鼠标拖拽“Hadoop File Input“图标到“字段选择“图标上,产生连线,注意箭头方向。,并编辑(双击图表即可)。如图12所示。
图12 创建步骤并设置
创建一个剪切字符串步骤,按住Shift键,鼠标拖拽“字段选择“图标到“剪切字符串“图标上,产生连线,注意箭头方向,并编辑(双击图表即可)。如图13所示。
图13 创建步骤并设置相关内容
创建一个过滤记录步骤,按住Shift键,鼠标拖拽“剪切字符串“图标到“过滤记录“图标上,产生连线,注意箭头方向,并编辑(双击图表即可)。如图14所示。
图14 创建步骤并设置相关内容
创建一个过滤记录步骤,按住Shift键,鼠标拖拽“过滤记录“图标到“Hadoop File Output“图标上,产生连线,注意箭头方向,并编辑(双击图表即可)。如图15-18所示。
图15 创建步骤
图16 设置相关内容
图17 设置相关内容
图18 设置相关内容
运行,清洗好的数据,批量导入到HDFS系统。如图19-20所示。
图19 运行任务
图20 保存任务
查看运行结果。如图21所示。
图21 查看运行结果
重新打开一个终端,检验记录是否导入。如图22所示。
图22 查看数据
♥ 知识链接
Step
转换的一个步骤,可以是一个Stream或是其他元素。
♥ 温馨提示
Spoon 是一个图形用户界面,它允许你运行转换或者任务,其中转换是用Pan 工具来运行,任务是用Kitchen 来运行。Pan 是一个数据转换引擎,它可以执行很多功能,例如:从不同的数据源读取、操作和写入数据。Kitchen 是一个可以运行利用XML 或数据资源库描述的任务。通常任务是在规定的时间间隔内用批处理的模式自动运行。