Hadoop-hadoop中hive查询布到服务器后只能SELECT * 查具体字段就错误,什么原因?

Hadoop-hadoop中hive查询布到服务器后只能SELECT * 查具体字段就错误,什么原因?

浮生未歇 发布于 2017-07-08 字数 797 浏览 1171 回复 2

当 select xx,xx from table 这样查询具体的字段时 就无法成功
只有 select * from table 才好使
报错 :
Total MapReduce jobs = 1
Launching Job 1 out of 1
Number of reduce tasks is set to 0 since there's no reduce operator
Starting Job = job_201203131446_0045, Tracking URL = http://dop-tel-tj-tj-028:50030/jobdetails.jsp?jobid=job_201203131446_0045
Kill Command = /usr/local/cloudera/hadoop-0.20.2-cdh3u3/bin/hadoop job -Dmapred.job.tracker=dop-tel-tj-tj-028:8021 -kill job_201203131446_0045
2012-03-16 14:56:46,855 Stage-1 map = 0%, reduce = 0%
2012-03-16 14:57:08,938 Stage-1 map = 100%, reduce = 100%
Ended Job = job_201203131446_0045 with errors
FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.MapRedTask

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夜无邪 2017-10-11 2 楼

应该是在map/reduce的时候,hadoop访问不了hbase数据库,请看一下/hadoop/hadoop/lib路径下是否有hbase.jar包,如果是升级后的,要替换最新的hbase.jar包。

最有效的办法是:在所有hadoop的机器上,无论主从,在lib文件夹下,拷贝hbase的jar包hbase-0.90.3.jar,在conf下拷贝hbase-site.xml

这里注意hbase-site.xml里面需要配置:

<property>
<name>hbase.zookeeper.quorum</name>
<value>dfsname1.cptrue.com</value>
<description>The directory shared by region servers.
</description>
</property>

重启hadoop,然后重新打开hive, 运行!

按照上面你试试!

虐人心 2017-08-29 1 楼

应该是map/reduce相关的配制有问题,select * from table这个语句hive解析时就不会使用map/reduce任务,而select xx,xx from table 会启动map/reduce任务。进一步看一下hadoop中的log信息应该可以定位问题的所在。