本文介绍如何配置Hadoop MapReduce类型的作业。

前提条件

已创建好项目,详情请参见 项目管理

操作步骤

  1. 通过主账号登录阿里云E-MapReduce控制台
  2. 在顶部菜单栏处,根据实际情况选择地域(Region)和资源组
  3. 单击上方的数据开发页签.。
  4. 项目列表页面,单击待编辑项目所在行的作业编辑
  5. 作业编辑区域,在需要操作的文件夹上,右键选择新建作业
  6. 输入作业名称作业描述,在作业类型下拉列表中选择MR作业类型。
    表示创建的作业是一个Hadoop MapReduce作业。这种类型的作业,其运行实际是通过以下方式提交的Hadoop MapReduce作业。
    hadoop jar xxx.jar [MainClass] -Dxxx ....
  7. 单击确定
  8. 作业内容中,填写提交该作业需要提供的命令行参数。
    填写的命令行参数需要从 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脚本的路径。
  9. 单击保存,作业配置即定义完成。
    上面示例中,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

问题反馈

如果您在使用阿里云E-MapReduce过程中有任何疑问,欢迎您扫描下面的二维码加入钉钉群进行反馈。

emr_dingding