执行Hive insert语句时MR阶段报错

在执行Hive的insert语句时遇到MR阶段报错,问题源于找不到加载主类。通过检查YARN日志,确定是配置文件yarn-site.xml的问题。解决方案是更新yarn-site.xml,添加yarn.application.classpath配置,并确保值包含hadoop classpath查询到的所有内容。重启Hadoop集群和Hive服务后,插入操作成功。
摘要由CSDN通过智能技术生成

问题描述:

执行Hive insert语句时MR阶段报错
Error during job,obtaing debugging information…
在这里插入图片描述

原因分析:

查看Hive.log
在这里插入图片描述
并没有发现什么有价值的信息

网上说是因为namenode内存空间不够导致的,需要设置成本地模式

set hive.exec.mode.local.auto=true;

再次运行后提示没有设置本地目录,只能换方法
在这里插入图片描述
考虑到是MR阶段的问题,果断查看YARN的log日志

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
导出Hive数据出现报错的原因可能是由于无法将源数据从HDFS移动到目标目录导致的。根据引用中的错误信息,报错信息显示"Unable to move source",并提到了源路径和目标路径。这表明在执行任务,将数据从源路径移动到目标路径遇到了问题。 根据引用中提供的代码,导出Hive数据语句是使用"insert overwrite local directory"的方式。该语句将表中的数据插入到指定的本地目录中。然而,由于无法将数据从HDFS移动到本地目录,导致了报错。 可能的原因之一是目标目录不存在或是没有足够的权限进行写入操作。你可以确认一下目标目录"/data/hive/out"是否存在,并且对于当前用户是否具有写入权限。 另外一个可能的原因是源数据在HDFS上的路径无效或不可访问。你可以检查一下源数据路径"hdfs://node1:8020/tmp/hive/hadoop/e1f5e71d-375d-4393-a07c-fe44a4a77626/hive_2022-07-21_22-18-53_655_4722056337462286090-1/-mr-10000"是否正确,并且确保你有访问该路径的权限。 如果以上两个原因都不是问题所在,还有可能是由于其他配置或环境问题导致的。你可以检查一下相关的配置文件,如HadoopHive和Spark的配置文件,确保它们的配置正确并且与集群环境匹配。 综上所述,当导出Hive数据报错,你可以检查以下几个方面: 1. 确认目标目录是否存在并且对于当前用户具有写入权限; 2. 检查源数据在HDFS上的路径是否正确并且你具有访问权限; 3. 检查相关配置文件的配置是否正确并且与集群环境匹配。 希望以上信息对你有帮助。如果还有其他问题,请随提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值