1.在使用hive时进行单表查询没问题,但是使用join查询报错,错误信息如下:

2.分析日志,估计是reduce task为0的原因,于是就测试了下(测试的时候,设置reduce task的数量为0),果然报一样的错误,错误信息如下:

解决办法:删除hive使用的mysql数据库,重新配置,设置hive的reduce task的默认个数为1,而不是-1,然后就好了。
在hive-site.xml中配置参数mapred.reduce.tasks=1,重新启动hive,就ok了
<property>
<name>mapred.reduce.tasks</name>
<value>1</value>
<description/>
</property>
测试代码见附件。。。。。
参考:http://blog.youkuaiyun.com/wisgood/article/details/42125367
Hive join查询报错及解决方案
当尝试在Hive中执行join查询时遇到错误,分析指出可能是由于reduce任务为0导致。通过删除并重新配置Hive使用的MySQL数据库,设置`mapred.reduce.tasks`为1(默认为-1),问题得到解决。在`hive-site.xml`中添加配置并重启Hive服务,测试成功。
8318

被折叠的 条评论
为什么被折叠?



