hive报错Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
hive出現(xiàn)報錯
Error: Error while processing statement: FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask (state=08S01,code=2)整理了網(wǎng)上找到的一些解決方法,希望對大家有所幫助:
方法一:
在運行sql命令前運行以下命令
set hive.support.concurrency=false;方法二:
yarn資源不足,修改hadoop配置文件yarn-site.xml,參數(shù)不固定
<property><name>yarn.scheduler.minimum-allocation-mb</name><value>2048</value><description>default value is 1024</description> </property>方法三:
修改配置文件yarn-site.xml ,參數(shù)不固定
<property><name>yarn.scheduler.maximum-allocation-mb</name><value>2048</value> </property> <property><name>yarn.scheduler.minimum-allocation-mb</name><value>2048</value> </property> <property><name>yarn.nodemanager.vmem-pmem-ratio</name><value>2.1</value> </property> <property><name>mapred.child.java.opts</name><value>-Xmx1024m</value> </property>方法四:
數(shù)據(jù)量太大,內(nèi)存溢出,在運行sql命令前設(shè)置參數(shù),參數(shù)不固定,根據(jù)自身需要修改
# map階段內(nèi)存不足 set mapreduce.map.memory.mb=10150; set mapreduce.map.java.opts=-Xmx6144m; # reduce階段內(nèi)存不足 set mapreduce.reduce.memory.mb=10150; set mapreduce.reduce.java.opts=-Xmx8120m;方法五:
各個節(jié)點時間不同步
# 查看集群時間 date # 同步時間 ntpdate cn.pool.ntp.org # 或者使用這一條指令 ntpdate -u ntp.api.bz方法六:
hadoop版本與hive版本不兼容,建議查一下兼容表確認(rèn)。
方法七:
修改配置文件yarn-site.xml
#Yarn可使用的物理內(nèi)存總量,該值不能大于節(jié)點的內(nèi)存 yarn.nodemanager.resource.memory-mb #單個任務(wù)可申請的物理內(nèi)存 yarn.scheduler.maximum-allocation-mb方法八:
分區(qū)數(shù)量太多
# 是否允許動態(tài)分區(qū) hive.exec.dynamic.partition=true; # 允許最大的動態(tài)分區(qū) hive.exec.max.dynamic.partitions=1000; # 單個節(jié)點允許最大分區(qū) hive.exec.max.dynamic.partitions.pernode=100;方法九:
關(guān)閉自動裝載
set hive.auto.convert.join= false;方法十:
hive啟動堆棧內(nèi)存不足
修改配置文件hadoop-env.sh
hive下的bin目錄下的配置文件hive-config.sh
export HADOOP_HEAPSIZE=${HADOOP_HEAPSIZE:-2048}方法十一:
hive執(zhí)行內(nèi)存不足
set hive.exec.dynamic.partition.mode=nonstrict; set hive.exec.dynamic.partition=true; set hive.exec.parallel=true; set hive.support.concurrency=false; set mapreduce.map.memory.mb=4128;方法十二:
關(guān)閉集群,重啟虛擬機(jī)。
我的修改經(jīng)歷:
運行hive程序后出現(xiàn)報錯,先去查看了hive的日志
貌似是這個地方出了問題,然后又到ui界面查看job_1656464646163_0001進(jìn)程
查看他的日志,發(fā)現(xiàn)了新問題
想到了利用命令行查看日志錯誤
發(fā)現(xiàn)問題
總結(jié)
以上是生活随笔為你收集整理的hive报错Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分享百度短网址生成工具和接口 mr.ba
- 下一篇: HQL 报 return code 2