2

当我尝试从 shell 运行“hive”命令时,出现以下错误:

'线程“主”java.io.IOException 中的异常:Mkdirs 未能在 org.apache.hadoop.util.RunJar.ensureDirectory(RunJar.java:100) 在 org.apache 创建 /tmp/hadoop-USERNAME/hadoop-unjar1448268252380539144 .hadoop.util.RunJar.main(RunJar.java:162)'。

但是当我尝试在 PHP 脚本中选择查询时,我们收到以下错误:

'失败:Hive 内部错误:java.lang.RuntimeException(org.apache.hadoop.ipc.RemoteException:org.apache.hadoop.hdfs.server.namenode.SafeModeException:无法创建目录 /tmp/hive-root/hive_2015-06 -29_18-03-29_493_5508174623301334280。名称节点处于安全模式。NN 上的资源不足。必须手动关闭安全模式。在 org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirsInternal(FSNamesystem.java:2140 ) 在 org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirs(FSNamesystem.java:2114) 在 org.apache.hadoop.hdfs.server.namenode.NameNode.mkdirs(NameNode.java:892) 在太阳。 reflect.GeneratedMethodAccessor2286.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.hadoop.ipc。RPC$Server.call(RPC.java:557)'

4

2 回答 2

0

这是因为集群自动进入了安全模式。我们通过释放/添加一些磁盘空间来修复它。

于 2015-07-08T13:10:05.237 回答
0

“df -h”命令显示:

tmpfs 4,9G 0 4,9G 0% /dev/shm

分区是免费的。即使我没有删除任何数据,问题也出乎意料地消失了。hive 实例上还有另一个问题。当我尝试在某些字段上启动选择查询时,hive cli map 减少返回此错误:

Ended Job = job_201409031055_6624 with errors 作业期间出错,正在获取调试信息...正在检查任务 ID:task_201409031055_6624_m_000002(以及更多)来自作业 job_201409031055_6624

失败次数最多的任务(4):

任务编号:task_201409031055_6624_m_000000

网址:

http://cosmosmaster-gi:50030/taskdetails.jsp?jobid=job_201409031055_6624&tipid=task_201409031055_6624_m_000000

失败:执行错误,从 org.apache.hadoop.hive.ql.exec.MapRedTask 返回代码 2 已启动 MapReduce 作业:作业 0:映射:1 HDFS 读取:0 HDFS 写入:0 FAIL MapReduce CPU 总花费时间:0 毫秒

于 2015-07-09T09:10:14.910 回答