根据Hortonworks的文档,在" uber模式"中执行Hadoop作业的方法是配置一个{{1}像这样的设置:
maprep-site.xml
对于<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.job.ubertask.enable</name>
<value>true</value>
</property>
<property>
<name>mapreduce.job.ubertask.maxmaps</name>
<value>1</value>
</property>
<property>
<name>mapreduce.job.ubertask.maxreduces</name>
<value>1</value>
</property>
<property>
<name>mapreduce.job.ubertask.maxbytes</name>
<value>134217728</value>
</property>
</configuration>
,我真的不知道要放什么,我是从mapreduce.job.ubertask.maxbytes
中的dfs.block.size
参数复制的,并且完全披露我并不是真的知道放在那里有什么价值。
hdfs-site.xml
最初根据我的预感分配了块大小,我的工作失败的原因之一是输入数据 - 需要是原子的(在某种意义上它不能被分解并输入到零碎的映射器 - 正在拆分HDFS。
尽管如此,尽管事实上这些设置的配置方式使得Hortonworks文档和其他设备有一个人认为足以在&#34; uber模式&#34;中执行作业, 不实际上是在该模式下执行,如下所示:
设置是否有问题,因为我已经配置了阻止我的作业在uber模式下执行的设置?
答案 0 :(得分:0)
OP中的那些配置设置是正常的 - 关于uber mode
的事情是,您只能拥有一个输入文件,而不是之前的多个输入文件。见这里:
17/10/12 20:42:42 INFO input.FileInputFormat: Total input files to process : 1
17/10/12 20:42:43 INFO mapreduce.JobSubmitter: number of splits:1
17/10/12 20:42:43 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1507833515636_0005
17/10/12 20:42:44 INFO impl.YarnClientImpl: Submitted application application_1507833515636_0005
17/10/12 20:42:44 INFO mapreduce.Job: The url to track the job: http://master:8088/proxy/application_1507833515636_0005/
17/10/12 20:42:44 INFO mapreduce.Job: Running job: job_1507833515636_0005
17/10/12 20:42:49 INFO mapreduce.Job: Job job_1507833515636_0005 running in uber mode : true
或直接来自马的嘴: