MRS二次开发(3/27): MapReduce任务提交样例
MRS二次开发(3/27): MapReduce任务提交样例
一、MapReduce简介
MapReduce是一个并行计算软件框架,,一个MapReduce作业(application/job)通常会把输入的数据集切分为若干独立的数据块,由map任务(task)以完全并行的方式来处理。框架会对map的输出先进行排序,然后把结果输入给reduce任务,最后返回给客户端。
二、样例背景
需求:统计女性网民网购时间总时长大于2小时的人员信息
样例数据:在样例代码的conf目录下的log1.txt和log2.txt文件,数据文件中包含三列:姓名、性别、单词网购时长
三、Windows环境样例调用步骤
环境准备,参考第一课
比对时间,与集群时间误差不能超过5分钟
检查 C:\Windows\System32\drivers\etc\hosts文件中是否包含所有集群节点的域名IP映射信息
在IDEA打开样例代码的mapreduce-example-security目录,检查SDK配置
默认自动加载依赖,如未加载,则打开后选中pom.xml文件,右键点击“Add As Maven Project”后等待项目自动将依赖下载完毕
从Manager界面下载用户认证凭据后,解压缩获取秘钥文件user.keytab和krb5.conf,将这两个文件放到样例代码的conf目录
从客户端/opt/client/Yarn/config/获取core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml 文件放到样例代码的conf目录
修改src\main\java\com\huawei\bigdata\mapreduce\examples\FemaleInfoCollector.java中的PRINCIPAL为认证用户名
右键conf目录,选择“Mark Directory as”-"Resources Root"
在src\main\java\com\huawei\bigdata\mapreduce\local\LocalRunner.java右键执行Run 启动样例代码
四、Linux环境调试步骤
前提:Linux环境有安装集群客户端
完成Windows环境样例调用步骤
在windows环境中执行打包,获取Target目录下的 MRTest-8.0.0-SNAPSHOT.jar,上传到客户端任意目录,例如/opt/
检查linux环境时间与集群误差不超过5分钟
检查linux环境的JDK版本为1.8
配置linux环境的/etc/hosts文件
将样例数据log1.txt和log2.txt上传到HDFS,例如上传到HDFS的/tmp/input目录下
在客户端节点上新建一个空目录,名字自定义,例如/opt/mrstest,将windows环境调试通过的样例代码中的conf目录上传到该目录下,即/opt/mrstest/conf
在客户端节点配置环境变量
- export YARN_USER_CLASSPATH=/opt/mrs_test/conf/:/opt/MRTest-8.0.0-SNAPSHOT.jar
执行如下命令验证linux环境下可执行MR任务
source /opt/client/bigdata_env
kinit developuser
yarn jar MRTest-8.0.0-SNAPSHOT.jar com.huawei.bigdata.mapreduce.examples.FemaleInfoCollector /tmp/input /tmp/output
五、问题互动渠道
FusonInsight 论坛入口 https://bbs.huaweicloud.com/forum/forum-1103-1.html
- 点赞
- 收藏
- 关注作者
评论(0)