本文介绍如何配置Hadoop MapReduce类型的作业。
操作步骤
- 进入数据开发的项目列表页面。
- 通过阿里云账号登录阿里云E-MapReduce控制台。
- 在顶部菜单栏处,根据实际情况选择地域和资源组。
- 单击上方的数据开发页签。
- 单击待编辑项目所在行的作业编辑。
- 新建Hadoop MapReduce类型作业。
- 在页面左侧,在需要操作的文件夹上单击右键,选择新建作业。
- 在新建作业对话框中,输入作业名称和作业描述,从作业类型下拉列表中选择MR作业类型。
表示创建的作业是一个Hadoop MapReduce作业。这种类型的作业,实际是通过以下方式提交运行。
hadoop jar xxx.jar [MainClass] -D xxx ....
- 单击确定。
- 编辑作业内容。
- 在作业内容中,填写提交该作业需要提供的命令行参数。
填写的命令行参数需要从
hadoop jar
命令后的第一个参数开始填写,即在输入框中首先填写运行该作业所需JAR包的所在路径,再填写
[MainClass]
和其它您想要设置的命令行参数。
例如,您想要提交一个Hadoop的sleep作业,该作业不读写任何数据,只提交一些mapper和reducer task到集群中,且每个task执行时需要 sleep一段时间。在Hadoop(以hadoop-2.6.0版本为例)中,该作业处于Hadoop发行版的
hadoop-mapreduce-client-jobclient-2.6.0-tests.jar包文件中。如果您通过命令行的方式提交该作业,需要执行以下命令。
hadoop jar /path/to/hadoop-mapreduce-client-jobclient-2.6.0-tests.jar sleep -m 3 -r 3 -mt 100 -rt 100
而在E-MapReduce中配置这个作业,则应在
作业内容输入框中填写以下内容。
/path/to/hadoop-mapreduce-client-jobclient-2.6.0-tests.jar sleep -m 3 -r 3 -mt 100 -rt 100
说明 您也可以单击下方的+插入OSS路径,选择文件前缀为OSSREF,从文件路径中进行浏览和选择,系统会自动补齐OSS上Hadoop MapReduce脚本的路径。
- 单击保存,作业内容编辑完成。
上面示例中,sleep作业并没有数据的输入输出,如果作业要读取数据,并输出处理结果(例如Wordcount),则需要指定数据的Input和Output路径。
您可以读写E-MapReduce集群HDFS或OSS上的数据。如果需要读写OSS上的数据,只需要在填写Input和Output路径时,将数据路径写成OSS上的路径地址即可。
jar ossref://emr/checklist/jars/chengtao/hadoop/hadoop-mapreduce-examples-2.6.0.jar randomtextwriter -D mapreduce.randomtextwriter.totalbytes=320000 oss://emr/checklist/data/chengtao/hadoop/Wordcount/Input