本文介绍了执行错误,从org.apache.hadoop.hive.ql.exec.MapRedTask返回代码1的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在执行HiveQL中的条件查询时遇到问题。基本的 select * from tablename
语句正常工作。
错误是:
总MapReduce工作= 1
启动工作1满分1
编译时确定的reduce任务的数量:1
为了改变reducer的平均负载(以字节为单位):
set hive.exec.reducers.bytes.per.reducer =< number> ;
为了限制还原器的最大数量:
set hive.exec.reducers.max =< number>
为了设置一个固定数量的简化器:
set mapred.reduce.tasks =< number>
java.net.ConnectException:在连接异常时调用/0.0.0.0:8021失败:java.net.ConnectException:连接被拒绝
在org.apache.hadoop.ipc.Client.wrapException(Client。
at org.apache.hadoop.ipc.Client.call(Client.java:1110)
at org.apache.hadoop.ipc.RPC $ Invoker.invoke(RPC.java:
at org.apache.hadoop.mapred。$ Proxy5.getProtocolVersion(Unknown Source)
at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:398)
在org.apache.hadoop.ipc.RPC.getProxy(RPC.java:384)
在org.apache.hadoop.mapred.JobClient.createRPCProxy(JobClient.java:501)
在org.apache INIT> .hadoop.mapred.JobClient.init(JobClient.java:486)$ b $ LT b。在org.apache.hadoop.mapred.JobClient&(JobClient.java:469)
。在org.apache。 hadoop.hive.ql.exec.ExecDriver.execute(ExecDriver.java:655)
在org.apache.hadoop.hive.ql.exec.MapRedTask.execute(MapRedTask.java:123)
。在要么g.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:130)
在org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57)
at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1063)
at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:900)$在org.apache.hadoop.hive.ql.Driver.run(Driver.java:748)b
$ b。在org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:209)$在org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:286)b
$ b。在org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:516)
。在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java :25)
在java.lang.reflect.Method.invoke(Method.java:597)
在org.apache.hadoop.util.Ru nJar.main(RunJar.java:186)
导致:java.net.ConnectException:连接被拒绝
在sun.nio.ch.SocketChannelImpl.checkConnect(本地方法)
在sun。 nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:574)
在org.apache.hadoop.net.SocketIOWithTimeout.connect(
....
作业提交失败,出现异常'java .net.ConnectException(调用/0.0.0.0:8021失败,连接异常:java.net.ConnectException:连接被拒绝)'
FAILED:执行错误,从org.apache.hadoop.hive.ql返回代码1 .exec.MapRedTask
我已经尝试了Eclipse IDE和Hive shell。输出是一样的。请帮助!
解决方案
这应该解决您的问题,因为此属性将设置为 true $ c
set hive.auto.convert.join.noconditionaltask = false
lockquote
hive.auto.convert.join.noconditionaltask
- Hive是否启用基于
输入文件大小将公共连接转换为mapjoin的
优化。
如果此参数打开,并且n-way联接的
表/分区的n-1的大小总和小于指定的值大小,
连接直接转换为mapjoin(没有条件
任务)。
I am facing problem in executing CONDITIONAL QUERIES IN HiveQL.The basic
select * from tablename
statement works fine. The error is :Total MapReduce jobs = 1 Launching Job 1 out of 1 Number of reduce tasks determined at compile time: 1 In order to change the average load for a reducer (in bytes): set hive.exec.reducers.bytes.per.reducer=<number> In order to limit the maximum number of reducers: set hive.exec.reducers.max=<number> In order to set a constant number of reducers: set mapred.reduce.tasks=<number> java.net.ConnectException: Call to /0.0.0.0:8021 failed on connection exception: java.net.ConnectException: Connection refused at org.apache.hadoop.ipc.Client.wrapException(Client.java:1134) at org.apache.hadoop.ipc.Client.call(Client.java:1110) at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:226) at org.apache.hadoop.mapred.$Proxy5.getProtocolVersion(Unknown Source) at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:398) at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:384) at org.apache.hadoop.mapred.JobClient.createRPCProxy(JobClient.java:501) at org.apache.hadoop.mapred.JobClient.init(JobClient.java:486) at org.apache.hadoop.mapred.JobClient.<init>(JobClient.java:469) at org.apache.hadoop.hive.ql.exec.ExecDriver.execute(ExecDriver.java:655) at org.apache.hadoop.hive.ql.exec.MapRedTask.execute(MapRedTask.java:123) at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:130) at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57) at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1063) at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:900) at org.apache.hadoop.hive.ql.Driver.run(Driver.java:748) at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:209) at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:286) at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:516) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.hadoop.util.RunJar.main(RunJar.java:186) Caused by: java.net.ConnectException: Connection refused at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:574) at org.apache.hadoop.net.SocketIOWithTimeout.connect( .... Job Submission failed with exception 'java.net.ConnectException(Call to /0.0.0.0:8021 failed on connection exception: java.net.ConnectException: Connection refused)' FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MapRedTask
I have tried from both Eclipse IDE and Hive shell .The output is same. Please Help!
解决方案This should solve your issue as this property will set to
true
by default.set hive.auto.convert.join.noconditionaltask=false
这篇关于执行错误,从org.apache.hadoop.hive.ql.exec.MapRedTask返回代码1的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!