hive查询失败(ami-3.11.0,hive-0.13.1)

tyu7yeag  于 2021-06-26  发布在  Hive
关注(0)|答案(2)|浏览(397)

此任务的诊断消息:容器[pid=3347,containerid=container\u 1490354262227\u 0013\u 01\u 000104]运行超出物理内存限制。当前使用情况:使用1 gb物理内存中的1.0 gb;使用了1.5 gb的5 gb虚拟内存。杀人容器。容器的进程树转储\u 1490354262227 \u 0013 \u 01 \u 000104:|-pid ppid pgrpid sessid cmd \u name user \u mode \u time(millis)system \u time(millis)vmem \u usage(bytes)rssmem \u usage(pages)full \u cmd \u line |-3360 3347 3347 3347(java)7596 396 1537003520 262629/usr/java/latest/bin/java-djava.net.preferipv4stack=true-dhadoop.metrics.log.level=warn-xmx864m-djava.io.tmpdir=/mnt3/var/lib/hadoop/tmp/nm local dir/usercache/hadoop/appcache/application\u 1490354262227\u 0013/container\u 1490354262227\u 0013\u 01\u 000104/tmp-dlog4j.configuration=container-log4j.properties-dyarn.app.container.log.dir=/mnt/var/log/hadoop/userlogs/application\u 1490354262227\u 0013/container\u 1490354262227\u 0013\u 000104-dyarn.app.container.log.filesize=0-dhadoop.root.logger=info,cla org.apache.hadoop.mapred.yarnchild 10.35.178.86 49938尝试\u 1490354262227 \u 0013 \u 000004 \u 3 104 |-3347 2563 3347 3347(bash)0 1 115806208 698/bin/bash-c/usr/java/latest/bin/java-djava.net.preferipv4stack=true-dhadoop.metrics.log.level=warn-xmx864m-djava.io.tmpdir=/mnt3/var/lib/hadoop/tmp/nm local dir/usercache/hadoop/appcache/application\u 1490354262227\u 0013/container\u 1490354262227\u 0013\u 01\u 000104/tmp-dlog4j.configuration=container-log4j.properties-dyarn.app.container.log.dir=/mnt/var/log/hadoop/userlogs/application\u 1490354262227\u 0013/container\u 1490354262227\u 0013\u 000104-dyarn.app.container.log.filesize=0-dhadoop.root.logger=info,cla org.apache.hadoop.mapred.yarnchild 10.35.178.86 49938尝试\u 1490354262227 \u 0013 \u m \u000004 \u 3 104 1>/mnt/var/log/hadoop/userlogs/application \u 1490354262227 \u 0013/container \u 1490354262227 \u 0013 \u 01 \u 000104/stdout 2>/mnt/var/log/hadoop/userlogs/application \u 1490354262227 \u 0013/container \u 1490354262227 \u 0013 \u 000104/stderr

h9a6wy2h

h9a6wy2h1#

如果减速器出现故障:
将distribute by partition key添加到查询中。它将在缩减器之间分发数据,因此缩减器将创建更少的分区并消耗更少的内存。
insert overwrite table items\u s3\u table partition(w\u id)选择pk、cid、fcsku、ctype、disposition、creferenceid、snapshotid、quantity、w\u id
从items\u dynamodb\u表按w\u id分发;
尝试减少每个减速机的字节数。减小此参数将增加parallelizm(减速机的数量),并可能减少每个减速机的内存消耗。 hive.exec.reducers.bytes.per.reducer=67108864; 如果没有帮助,请调整内存设置。
对于Map绘制者:

mapreduce.map.memory.mb=4096; 
mapreduce.map.java.opts=-Xmx3000m;

对于减速器:

mapreduce.reduce.memory.mb=4096; 
mapreduce.reduce.java.opts=-Xmx3000m;
shstlldc

shstlldc2#

容器[pid=3347,containerid=container\u 1490354262227\u 0013\u 01\u 000104]正在超出物理内存限制运行。当前使用情况:使用1 gb物理内存中的1.0 gb;使用了1.5 gb的5 gb虚拟内存。
看起来您的进程需要更多内存,并且超出了定义的限制。
你需要增加容器的尺寸

SET hive.tez.container.size=4096MB
SET hive.auto.convert.join.noconditionaltask.size=1370MB

请在这里阅读更多关于此的信息。

相关问题