如何更改mapreduce/hive作业中的物理内存?

如何更改mapreduce/hive作业中的物理内存?,hive,mapreduce,amazon-emr,Hive,Mapreduce,Amazon Emr,我正在尝试在一个包含40个工作节点和单个主节点的EMR集群上运行配置单元INSERT OVERWRITE查询 但是,在运行INSERT OVERWRITE查询时,只要到达 Stage-1 map=100%,reduce=100%,累计CPU 180529.86秒 在这种状态下,我得到以下错误: Ended Job = job_1599289114675_0001 with errors Diagnostic Messages for this Task: Container [pid=9944,

我正在尝试在一个包含40个工作节点和单个主节点的EMR集群上运行配置单元
INSERT OVERWRITE
查询

但是,在运行
INSERT OVERWRITE
查询时,只要到达
Stage-1 map=100%,reduce=100%,累计CPU 180529.86秒

在这种状态下,我得到以下错误:

Ended Job = job_1599289114675_0001 with errors
Diagnostic Messages for this Task:
Container [pid=9944,containerID=container_1599289114675_0001_01_041995] is running beyond physical memory limits. Current usage: 1.5 GB of 1.5 GB physical memory used; 3.2 GB of 7.5 GB virtual memory used. Killing container.
Dump of the process-tree for container_1599289114675_0001_01_041995 :
我不确定如何更改1.5 GB的物理内存号。在我的配置中,我看不到这样的数字,我也不明白1.5 GB的数字是如何计算出来的。
我甚至尝试将
“纱线.节点管理器.vmem pmem比率”:“5”
更改为5,正如一些论坛建议的那样。但不管这种变化,我仍然得到了错误

这是作业的开始方式:

Number of reduce tasks not specified. Estimated from input data size: 942
Hadoop job information for Stage-1: number of mappers: 910; number of reducers: 942
这就是我的集群的外观。我无法理解必须更改哪些设置才能避免出现此问题。这也可能是由于Tez设置的原因吗?虽然我没有把它当作引擎


如果您有任何建议,我们将不胜感激。

在打开配置单元控制台时,请将以下内容附加到命令中

--hiveconf mapreduce.map.memory.mb=8192 --hiveconf mapreduce.reduce.memory.mb=8192 --hiveconf mapreduce.map.java.opts=-Xmx7600M
如果仍然出现Java堆错误,请尝试增加到更高的值,但请确保mapreduce.map.Java.opts不超过mapreduce.map.memory.mb